appBskyNotificationPutPreferencesV2 function

Future<XRPCResponse<NotificationPutPreferencesV2Output>> appBskyNotificationPutPreferencesV2({
  1. ChatPreference? chat,
  2. FilterablePreference? follow,
  3. FilterablePreference? like,
  4. FilterablePreference? likeViaRepost,
  5. FilterablePreference? mention,
  6. FilterablePreference? quote,
  7. FilterablePreference? reply,
  8. FilterablePreference? repost,
  9. FilterablePreference? repostViaRepost,
  10. Preference? starterpackJoined,
  11. Preference? subscribedPost,
  12. Preference? unverified,
  13. Preference? verified,
  14. required ServiceContext $ctx,
  15. String? $service,
  16. Map<String, String>? $headers,
  17. Map<String, String>? $unknown,
})

Set notification-related preferences for an account. Requires auth.

Implementation

Future<XRPCResponse<NotificationPutPreferencesV2Output>>
appBskyNotificationPutPreferencesV2({
  ChatPreference? chat,
  FilterablePreference? follow,
  FilterablePreference? like,
  FilterablePreference? likeViaRepost,
  FilterablePreference? mention,
  FilterablePreference? quote,
  FilterablePreference? reply,
  FilterablePreference? repost,
  FilterablePreference? repostViaRepost,
  Preference? starterpackJoined,
  Preference? subscribedPost,
  Preference? unverified,
  Preference? verified,
  required ServiceContext $ctx,
  String? $service,
  Map<String, String>? $headers,
  Map<String, String>? $unknown,
}) async => await $ctx.post(
  ns.appBskyNotificationPutPreferencesV2,
  service: $service,
  headers: {'Content-type': 'application/json', ...?$headers},
  body: {
    ...?$unknown,
    if (chat != null) 'chat': const ChatPreferenceConverter().toJson(chat),
    if (follow != null)
      'follow': const FilterablePreferenceConverter().toJson(follow),
    if (like != null)
      'like': const FilterablePreferenceConverter().toJson(like),
    if (likeViaRepost != null)
      'likeViaRepost': const FilterablePreferenceConverter().toJson(
        likeViaRepost,
      ),
    if (mention != null)
      'mention': const FilterablePreferenceConverter().toJson(mention),
    if (quote != null)
      'quote': const FilterablePreferenceConverter().toJson(quote),
    if (reply != null)
      'reply': const FilterablePreferenceConverter().toJson(reply),
    if (repost != null)
      'repost': const FilterablePreferenceConverter().toJson(repost),
    if (repostViaRepost != null)
      'repostViaRepost': const FilterablePreferenceConverter().toJson(
        repostViaRepost,
      ),
    if (starterpackJoined != null)
      'starterpackJoined': const PreferenceConverter().toJson(
        starterpackJoined,
      ),
    if (subscribedPost != null)
      'subscribedPost': const PreferenceConverter().toJson(subscribedPost),
    if (unverified != null)
      'unverified': const PreferenceConverter().toJson(unverified),
    if (verified != null)
      'verified': const PreferenceConverter().toJson(verified),
  },
  to: const NotificationPutPreferencesV2OutputConverter().fromJson,
);