lemmy-js-client 1.0.0-rename-timestamp-to-at.4 → 1.0.0-rename-person-banned.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/README.md +6 -0
  2. package/dist/http.d.ts +54 -28
  3. package/dist/http.js +164 -56
  4. package/dist/index.d.ts +48 -30
  5. package/dist/other_types.d.ts +8 -2
  6. package/dist/types/{ModAdd.d.ts → AdminAdd.d.ts} +4 -4
  7. package/dist/types/AdminAddId.d.ts +1 -0
  8. package/dist/types/{ModAddView.d.ts → AdminAddView.d.ts} +3 -3
  9. package/dist/types/{ModBan.d.ts → AdminBan.d.ts} +3 -3
  10. package/dist/types/AdminBanId.d.ts +1 -0
  11. package/dist/types/{ModBanView.d.ts → AdminBanView.d.ts} +3 -3
  12. package/dist/types/{ModRemoveCommunity.d.ts → AdminRemoveCommunity.d.ts} +3 -3
  13. package/dist/types/AdminRemoveCommunityId.d.ts +1 -0
  14. package/dist/types/AdminRemoveCommunityView.d.ts +11 -0
  15. package/dist/types/Comment.d.ts +4 -0
  16. package/dist/types/CommentReportView.d.ts +3 -1
  17. package/dist/types/CommentResponse.d.ts +0 -2
  18. package/dist/types/CommentSlimView.d.ts +2 -6
  19. package/dist/types/CommentView.d.ts +4 -5
  20. package/dist/types/CommunityActions.d.ts +2 -0
  21. package/dist/types/CommunityNotificationsMode.d.ts +4 -0
  22. package/dist/types/CommunityReportView.d.ts +4 -0
  23. package/dist/types/CommunityView.d.ts +0 -2
  24. package/dist/types/CreateCommunityTag.d.ts +3 -1
  25. package/dist/types/CreateMultiCommunity.d.ts +5 -0
  26. package/dist/types/CreateOrDeleteMultiCommunityEntry.d.ts +6 -0
  27. package/dist/types/CreateSite.d.ts +16 -12
  28. package/dist/types/EditSite.d.ts +26 -12
  29. package/dist/types/ExportDataResponse.d.ts +13 -0
  30. package/dist/types/FederationError.d.ts +4 -2
  31. package/dist/types/FollowMultiCommunity.d.ts +5 -0
  32. package/dist/types/GetMultiCommunity.d.ts +4 -0
  33. package/dist/types/GetMultiCommunityResponse.d.ts +6 -0
  34. package/dist/types/GetPosts.d.ts +2 -0
  35. package/dist/types/InstanceActions.d.ts +6 -2
  36. package/dist/types/LemmyErrorType.d.ts +16 -134
  37. package/dist/types/LinkMetadata.d.ts +4 -0
  38. package/dist/types/ListMultiCommunities.d.ts +5 -0
  39. package/dist/types/ListMultiCommunitiesResponse.d.ts +4 -0
  40. package/dist/types/{ListInbox.d.ts → ListNotifications.d.ts} +3 -3
  41. package/dist/types/{ListInboxResponse.d.ts → ListNotificationsResponse.d.ts} +3 -3
  42. package/dist/types/ListingType.d.ts +1 -1
  43. package/dist/types/LocalImage.d.ts +1 -1
  44. package/dist/types/LocalSite.d.ts +5 -0
  45. package/dist/types/LocalSiteRateLimit.d.ts +14 -14
  46. package/dist/types/LocalUser.d.ts +2 -0
  47. package/dist/types/LocalUserView.d.ts +2 -2
  48. package/dist/types/LockComment.d.ts +6 -0
  49. package/dist/types/MarkNotificationAsRead.d.ts +8 -0
  50. package/dist/types/{ModAddCommunity.d.ts → ModAddToCommunity.d.ts} +3 -3
  51. package/dist/types/ModAddToCommunityId.d.ts +1 -0
  52. package/dist/types/{ModAddCommunityView.d.ts → ModAddToCommunityView.d.ts} +3 -3
  53. package/dist/types/ModEditPost.d.ts +10 -0
  54. package/dist/types/ModLockComment.d.ts +14 -0
  55. package/dist/types/ModLockCommentId.d.ts +1 -0
  56. package/dist/types/ModLockCommentView.d.ts +14 -0
  57. package/dist/types/ModlogActionType.d.ts +1 -1
  58. package/dist/types/ModlogCombinedView.d.ts +16 -13
  59. package/dist/types/MultiCommunity.d.ts +17 -0
  60. package/dist/types/MultiCommunity.js +2 -0
  61. package/dist/types/MultiCommunityFollow.d.ts +8 -0
  62. package/dist/types/MultiCommunityFollow.js +2 -0
  63. package/dist/types/MultiCommunityId.d.ts +1 -0
  64. package/dist/types/MultiCommunityView.d.ts +6 -0
  65. package/dist/types/MultiCommunityView.js +2 -0
  66. package/dist/types/MyUserInfo.d.ts +2 -1
  67. package/dist/types/NotePerson.d.ts +10 -0
  68. package/dist/types/NotePerson.js +2 -0
  69. package/dist/types/Notification.d.ts +16 -0
  70. package/dist/types/Notification.js +2 -0
  71. package/dist/types/NotificationData.d.ts +10 -0
  72. package/dist/types/NotificationData.js +2 -0
  73. package/dist/types/NotificationDataType.d.ts +4 -0
  74. package/dist/types/NotificationDataType.js +3 -0
  75. package/dist/types/NotificationId.d.ts +1 -0
  76. package/dist/types/NotificationId.js +3 -0
  77. package/dist/types/NotificationTypes.d.ts +4 -0
  78. package/dist/types/NotificationTypes.js +3 -0
  79. package/dist/types/NotificationView.d.ts +6 -0
  80. package/dist/types/NotificationView.js +2 -0
  81. package/dist/types/OpenGraphData.d.ts +4 -0
  82. package/dist/types/PersonActions.d.ts +20 -0
  83. package/dist/types/PersonView.d.ts +4 -4
  84. package/dist/types/PostActions.d.ts +2 -0
  85. package/dist/types/PostActions.js +0 -1
  86. package/dist/types/PostNotificationsMode.d.ts +4 -0
  87. package/dist/types/PostNotificationsMode.js +3 -0
  88. package/dist/types/PostOrCommentOrPrivateMessage.d.ts +10 -0
  89. package/dist/types/PostOrCommentOrPrivateMessage.js +2 -0
  90. package/dist/types/PostReportView.d.ts +3 -1
  91. package/dist/types/PostView.d.ts +4 -5
  92. package/dist/types/PrivateMessage.d.ts +0 -1
  93. package/dist/types/PrivateMessageReportView.d.ts +2 -0
  94. package/dist/types/SaveUserSettings.d.ts +8 -0
  95. package/dist/types/Search.d.ts +1 -1
  96. package/dist/types/SearchCombinedView.d.ts +4 -1
  97. package/dist/types/SearchType.d.ts +1 -1
  98. package/dist/types/Tag.d.ts +6 -14
  99. package/dist/types/TagsView.d.ts +1 -1
  100. package/dist/types/UpdateCommunityNotifications.d.ts +9 -0
  101. package/dist/types/UpdateCommunityNotifications.js +2 -0
  102. package/dist/types/UpdateCommunityTag.d.ts +3 -2
  103. package/dist/types/UpdateMultiCommunity.d.ts +7 -0
  104. package/dist/types/UpdateMultiCommunity.js +2 -0
  105. package/dist/types/UpdatePostNotifications.d.ts +9 -0
  106. package/dist/types/UpdatePostNotifications.js +2 -0
  107. package/dist/types/UserBlockInstanceCommunitiesParams.d.ts +8 -0
  108. package/dist/types/UserBlockInstanceCommunitiesParams.js +2 -0
  109. package/dist/types/{UserBlockInstanceParams.d.ts → UserBlockInstancePersonsParams.d.ts} +2 -2
  110. package/dist/types/UserBlockInstancePersonsParams.js +2 -0
  111. package/dist/types/UserSettingsBackup.d.ts +27 -0
  112. package/dist/types/UserSettingsBackup.js +2 -0
  113. package/dist/types/VoteView.d.ts +1 -0
  114. package/package.json +6 -5
  115. package/dist/types/CommentReply.d.ts +0 -13
  116. package/dist/types/CommentReplyId.d.ts +0 -4
  117. package/dist/types/CommentReplyView.d.ts +0 -32
  118. package/dist/types/InboxCombinedView.d.ts +0 -13
  119. package/dist/types/InboxDataType.d.ts +0 -4
  120. package/dist/types/MarkCommentReplyAsRead.d.ts +0 -8
  121. package/dist/types/MarkPersonCommentMentionAsRead.d.ts +0 -8
  122. package/dist/types/MarkPersonPostMentionAsRead.d.ts +0 -8
  123. package/dist/types/MarkPrivateMessageAsRead.d.ts +0 -8
  124. package/dist/types/ModAddCommunityId.d.ts +0 -1
  125. package/dist/types/ModAddId.d.ts +0 -1
  126. package/dist/types/ModBanId.d.ts +0 -1
  127. package/dist/types/ModRemoveCommunityId.d.ts +0 -1
  128. package/dist/types/ModRemoveCommunityView.d.ts +0 -11
  129. package/dist/types/PersonCommentMention.d.ts +0 -13
  130. package/dist/types/PersonCommentMentionId.d.ts +0 -4
  131. package/dist/types/PersonCommentMentionView.d.ts +0 -30
  132. package/dist/types/PersonPostMention.d.ts +0 -13
  133. package/dist/types/PersonPostMentionId.d.ts +0 -4
  134. package/dist/types/PersonPostMentionView.d.ts +0 -32
  135. /package/dist/types/{CommentReply.js → AdminAdd.js} +0 -0
  136. /package/dist/types/{CommentReplyId.js → AdminAddId.js} +0 -0
  137. /package/dist/types/{CommentReplyView.js → AdminAddView.js} +0 -0
  138. /package/dist/types/{InboxCombinedView.js → AdminBan.js} +0 -0
  139. /package/dist/types/{InboxDataType.js → AdminBanId.js} +0 -0
  140. /package/dist/types/{ListInbox.js → AdminBanView.js} +0 -0
  141. /package/dist/types/{ListInboxResponse.js → AdminRemoveCommunity.js} +0 -0
  142. /package/dist/types/{ModAddCommunityId.js → AdminRemoveCommunityId.js} +0 -0
  143. /package/dist/types/{MarkCommentReplyAsRead.js → AdminRemoveCommunityView.js} +0 -0
  144. /package/dist/types/{ModAddId.js → CommunityNotificationsMode.js} +0 -0
  145. /package/dist/types/{ModBanId.js → CreateMultiCommunity.js} +0 -0
  146. /package/dist/types/{MarkPersonCommentMentionAsRead.js → CreateOrDeleteMultiCommunityEntry.js} +0 -0
  147. /package/dist/types/{MarkPersonPostMentionAsRead.js → ExportDataResponse.js} +0 -0
  148. /package/dist/types/{MarkPrivateMessageAsRead.js → FollowMultiCommunity.js} +0 -0
  149. /package/dist/types/{ModAdd.js → GetMultiCommunity.js} +0 -0
  150. /package/dist/types/{ModAddCommunity.js → GetMultiCommunityResponse.js} +0 -0
  151. /package/dist/types/{ModAddCommunityView.js → ListMultiCommunities.js} +0 -0
  152. /package/dist/types/{ModAddView.js → ListMultiCommunitiesResponse.js} +0 -0
  153. /package/dist/types/{ModBan.js → ListNotifications.js} +0 -0
  154. /package/dist/types/{ModBanView.js → ListNotificationsResponse.js} +0 -0
  155. /package/dist/types/{ModRemoveCommunity.js → LockComment.js} +0 -0
  156. /package/dist/types/{ModRemoveCommunityView.js → MarkNotificationAsRead.js} +0 -0
  157. /package/dist/types/{PersonCommentMention.js → ModAddToCommunity.js} +0 -0
  158. /package/dist/types/{ModRemoveCommunityId.js → ModAddToCommunityId.js} +0 -0
  159. /package/dist/types/{PersonCommentMentionView.js → ModAddToCommunityView.js} +0 -0
  160. /package/dist/types/{PersonPostMention.js → ModEditPost.js} +0 -0
  161. /package/dist/types/{PersonPostMentionView.js → ModLockComment.js} +0 -0
  162. /package/dist/types/{PersonCommentMentionId.js → ModLockCommentId.js} +0 -0
  163. /package/dist/types/{UserBlockInstanceParams.js → ModLockCommentView.js} +0 -0
  164. /package/dist/types/{PersonPostMentionId.js → MultiCommunityId.js} +0 -0
@@ -0,0 +1,13 @@
1
+ import type { PostOrCommentOrPrivateMessage } from "./PostOrCommentOrPrivateMessage";
2
+ import type { UserSettingsBackup } from "./UserSettingsBackup";
3
+ /**
4
+ * Your exported data.
5
+ */
6
+ export type ExportDataResponse = {
7
+ notifications: Array<PostOrCommentOrPrivateMessage>;
8
+ content: Array<PostOrCommentOrPrivateMessage>;
9
+ read_posts: Array<string>;
10
+ liked: Array<string>;
11
+ moderates: Array<string>;
12
+ settings: UserSettingsBackup;
13
+ };
@@ -3,8 +3,10 @@
3
3
  */
4
4
  export type FederationError = "InvalidCommunity" | "CannotCreatePostOrCommentInDeletedOrRemovedCommunity" | "CannotReceivePage" | "OnlyLocalAdminCanRemoveCommunity" | "OnlyLocalAdminCanRestoreCommunity" | "PostIsLocked" | {
5
5
  PersonIsBannedFromSite: string;
6
- } | "InvalidVoteValue" | "PageDoesNotSpecifyCreator" | "CouldntGetComments" | "CouldntGetPosts" | "FederationDisabled" | {
6
+ } | "InvalidVoteValue" | "PageDoesNotSpecifyCreator" | "FederationDisabled" | {
7
7
  DomainBlocked: string;
8
8
  } | {
9
9
  DomainNotInAllowList: string;
10
- } | "FederationDisabledByStrictAllowList" | "ContradictingFilters" | "UrlWithoutDomain" | "InboxTimeout" | "CantDeleteSite" | "ObjectIsNotPublic" | "ObjectIsNotPrivate" | "PlatformLackingPrivateCommunitySupport" | "Unreachable";
10
+ } | "FederationDisabledByStrictAllowList" | "ContradictingFilters" | "UrlWithoutDomain" | "InboxTimeout" | "CantDeleteSite" | "ObjectIsNotPublic" | "ObjectIsNotPrivate" | {
11
+ InvalidFollow: string;
12
+ } | "Unreachable";
@@ -0,0 +1,5 @@
1
+ import type { MultiCommunityId } from "./MultiCommunityId";
2
+ export type FollowMultiCommunity = {
3
+ multi_community_id: MultiCommunityId;
4
+ follow: boolean;
5
+ };
@@ -0,0 +1,4 @@
1
+ import type { MultiCommunityId } from "./MultiCommunityId";
2
+ export type GetMultiCommunity = {
3
+ id: MultiCommunityId;
4
+ };
@@ -0,0 +1,6 @@
1
+ import type { CommunityView } from "./CommunityView";
2
+ import type { MultiCommunityView } from "./MultiCommunityView";
3
+ export type GetMultiCommunityResponse = {
4
+ multi_community_view: MultiCommunityView;
5
+ communities: Array<CommunityView>;
6
+ };
@@ -1,5 +1,6 @@
1
1
  import type { CommunityId } from "./CommunityId";
2
2
  import type { ListingType } from "./ListingType";
3
+ import type { MultiCommunityId } from "./MultiCommunityId";
3
4
  import type { PaginationCursor } from "./PaginationCursor";
4
5
  import type { PostSortType } from "./PostSortType";
5
6
  /**
@@ -16,6 +17,7 @@ export type GetPosts = {
16
17
  time_range_seconds?: number;
17
18
  community_id?: CommunityId;
18
19
  community_name?: string;
20
+ multi_community_id?: MultiCommunityId;
19
21
  show_hidden?: boolean;
20
22
  /**
21
23
  * If true, then show the read posts (even if your user setting is to hide them)
@@ -1,8 +1,8 @@
1
1
  export type InstanceActions = {
2
2
  /**
3
- * When the instance was blocked.
3
+ * When the instance's communities were blocked.
4
4
  */
5
- blocked_at?: string;
5
+ blocked_communities_at?: string;
6
6
  /**
7
7
  * When this user received a site ban.
8
8
  */
@@ -11,4 +11,8 @@ export type InstanceActions = {
11
11
  * When their ban expires.
12
12
  */
13
13
  ban_expires_at?: string;
14
+ /**
15
+ * When the instance's persons were blocked.
16
+ */
17
+ blocked_persons_at?: string;
14
18
  };
@@ -4,7 +4,9 @@ export type LemmyErrorType = {
4
4
  } | {
5
5
  error: "block_keyword_too_long";
6
6
  } | {
7
- error: "couldnt_update_keywords";
7
+ error: "couldnt_update";
8
+ } | {
9
+ error: "couldnt_create";
8
10
  } | {
9
11
  error: "report_reason_required";
10
12
  } | {
@@ -16,17 +18,15 @@ export type LemmyErrorType = {
16
18
  } | {
17
19
  error: "cant_block_yourself";
18
20
  } | {
19
- error: "cant_block_admin";
21
+ error: "cant_note_yourself";
20
22
  } | {
21
- error: "couldnt_update_user";
23
+ error: "cant_block_admin";
22
24
  } | {
23
25
  error: "passwords_do_not_match";
24
26
  } | {
25
27
  error: "email_not_verified";
26
28
  } | {
27
29
  error: "email_required";
28
- } | {
29
- error: "couldnt_update_comment";
30
30
  } | {
31
31
  error: "cannot_leave_admin";
32
32
  } | {
@@ -81,8 +81,6 @@ export type LemmyErrorType = {
81
81
  error: "registration_application_is_pending";
82
82
  } | {
83
83
  error: "locked";
84
- } | {
85
- error: "couldnt_create_comment";
86
84
  } | {
87
85
  error: "max_comment_depth_reached";
88
86
  } | {
@@ -90,21 +88,15 @@ export type LemmyErrorType = {
90
88
  } | {
91
89
  error: "only_admins_can_create_communities";
92
90
  } | {
93
- error: "community_already_exists";
91
+ error: "already_exists";
94
92
  } | {
95
93
  error: "language_not_allowed";
96
- } | {
97
- error: "couldnt_update_languages";
98
- } | {
99
- error: "couldnt_update_post";
100
94
  } | {
101
95
  error: "no_post_edit_allowed";
102
96
  } | {
103
97
  error: "nsfw_not_allowed";
104
98
  } | {
105
99
  error: "edit_private_message_not_allowed";
106
- } | {
107
- error: "site_already_exists";
108
100
  } | {
109
101
  error: "application_question_required";
110
102
  } | {
@@ -116,9 +108,9 @@ export type LemmyErrorType = {
116
108
  } | {
117
109
  error: "registration_username_required";
118
110
  } | {
119
- error: "email_already_exists";
111
+ error: "email_already_taken";
120
112
  } | {
121
- error: "username_already_exists";
113
+ error: "username_already_taken";
122
114
  } | {
123
115
  error: "person_is_banned_from_community";
124
116
  } | {
@@ -132,8 +124,6 @@ export type LemmyErrorType = {
132
124
  } | {
133
125
  error: "invalid_email_address";
134
126
  message: string;
135
- } | {
136
- error: "rate_limit_error";
137
127
  } | {
138
128
  error: "invalid_name";
139
129
  } | {
@@ -150,62 +140,18 @@ export type LemmyErrorType = {
150
140
  error: "bio_length_overflow";
151
141
  } | {
152
142
  error: "alt_text_length_overflow";
153
- } | {
154
- error: "missing_totp_token";
155
- } | {
156
- error: "missing_totp_secret";
157
- } | {
158
- error: "incorrect_totp_token";
159
143
  } | {
160
144
  error: "couldnt_parse_totp_secret";
161
145
  } | {
162
146
  error: "couldnt_generate_totp";
163
147
  } | {
164
- error: "totp_already_enabled";
165
- } | {
166
- error: "couldnt_like_comment";
167
- } | {
168
- error: "couldnt_save_comment";
169
- } | {
170
- error: "couldnt_create_report";
171
- } | {
172
- error: "couldnt_resolve_report";
173
- } | {
174
- error: "community_moderator_already_exists";
175
- } | {
176
- error: "community_user_already_banned";
177
- } | {
178
- error: "community_block_already_exists";
179
- } | {
180
- error: "community_follower_already_exists";
181
- } | {
182
- error: "person_block_already_exists";
183
- } | {
184
- error: "couldnt_like_post";
185
- } | {
186
- error: "couldnt_save_post";
187
- } | {
188
- error: "couldnt_mark_post_as_read";
189
- } | {
190
- error: "couldnt_update_read_comments";
191
- } | {
192
- error: "couldnt_hide_post";
193
- } | {
194
- error: "couldnt_update_community";
195
- } | {
196
- error: "couldnt_create_person_comment_mention";
197
- } | {
198
- error: "couldnt_update_person_comment_mention";
199
- } | {
200
- error: "couldnt_create_person_post_mention";
201
- } | {
202
- error: "couldnt_update_person_post_mention";
148
+ error: "missing_totp_token";
203
149
  } | {
204
- error: "couldnt_create_post";
150
+ error: "missing_totp_secret";
205
151
  } | {
206
- error: "couldnt_create_private_message";
152
+ error: "incorrect_totp_token";
207
153
  } | {
208
- error: "couldnt_update_private_message";
154
+ error: "totp_already_enabled";
209
155
  } | {
210
156
  error: "blocked_url";
211
157
  } | {
@@ -239,8 +185,6 @@ export type LemmyErrorType = {
239
185
  error: "couldnt_send_webmention";
240
186
  } | {
241
187
  error: "contradicting_filters";
242
- } | {
243
- error: "instance_block_already_exists";
244
188
  } | {
245
189
  error: "too_many_items";
246
190
  } | {
@@ -249,8 +193,6 @@ export type LemmyErrorType = {
249
193
  error: "invalid_unix_time";
250
194
  } | {
251
195
  error: "invalid_bot_action";
252
- } | {
253
- error: "invalid_tag_name";
254
196
  } | {
255
197
  error: "tag_not_in_community";
256
198
  } | {
@@ -266,10 +208,6 @@ export type LemmyErrorType = {
266
208
  error: "oauth_login_failed";
267
209
  } | {
268
210
  error: "oauth_registration_closed";
269
- } | {
270
- error: "couldnt_create_oauth_provider";
271
- } | {
272
- error: "couldnt_update_oauth_provider";
273
211
  } | {
274
212
  error: "not_found";
275
213
  } | {
@@ -293,67 +231,11 @@ export type LemmyErrorType = {
293
231
  } | {
294
232
  error: "invalid_fetch_limit";
295
233
  } | {
296
- error: "couldnt_create_comment_reply";
297
- } | {
298
- error: "couldnt_update_comment_reply";
299
- } | {
300
- error: "couldnt_mark_comment_reply_as_read";
301
- } | {
302
- error: "couldnt_create_emoji";
303
- } | {
304
- error: "couldnt_update_emoji";
305
- } | {
306
- error: "couldnt_create_person";
307
- } | {
308
- error: "couldnt_update_person";
309
- } | {
310
- error: "couldnt_create_modlog";
311
- } | {
312
- error: "couldnt_update_modlog";
313
- } | {
314
- error: "couldnt_create_site";
315
- } | {
316
- error: "couldnt_update_site";
317
- } | {
318
- error: "couldnt_create_registration_application";
319
- } | {
320
- error: "couldnt_update_registration_application";
321
- } | {
322
- error: "couldnt_create_tag";
323
- } | {
324
- error: "couldnt_update_tag";
325
- } | {
326
- error: "couldnt_create_post_tag";
327
- } | {
328
- error: "couldnt_update_post_tag";
329
- } | {
330
- error: "couldnt_create_tagline";
331
- } | {
332
- error: "couldnt_update_tagline";
333
- } | {
334
- error: "couldnt_create_image";
335
- } | {
336
- error: "couldnt_allow_instance";
337
- } | {
338
- error: "couldnt_block_instance";
339
- } | {
340
- error: "couldnt_insert_activity";
341
- } | {
342
- error: "couldnt_create_rate_limit";
343
- } | {
344
- error: "couldnt_create_captcha_answer";
345
- } | {
346
- error: "couldnt_update_federation_queue_state";
347
- } | {
348
- error: "couldnt_create_oauth_account";
349
- } | {
350
- error: "couldnt_create_password_reset_request";
351
- } | {
352
- error: "couldnt_create_login_token";
234
+ error: "email_notifications_disabled";
353
235
  } | {
354
- error: "couldnt_update_local_site_url_blocklist";
236
+ error: "multi_community_update_wrong_user";
355
237
  } | {
356
- error: "couldnt_create_email_verification";
238
+ error: "cannot_combine_community_id_and_multi_community_id";
357
239
  } | {
358
- error: "email_notifications_disabled";
240
+ error: "multi_community_entry_limit_reached";
359
241
  };
@@ -7,5 +7,9 @@ export type LinkMetadata = {
7
7
  title?: string;
8
8
  description?: string;
9
9
  image?: DbUrl;
10
+ image_width?: number;
11
+ image_height?: number;
10
12
  embed_video_url?: DbUrl;
13
+ video_width?: number;
14
+ video_height?: number;
11
15
  };
@@ -0,0 +1,5 @@
1
+ import type { PersonId } from "./PersonId";
2
+ export type ListMultiCommunities = {
3
+ creator_id?: PersonId;
4
+ followed_only?: boolean;
5
+ };
@@ -0,0 +1,4 @@
1
+ import type { MultiCommunityView } from "./MultiCommunityView";
2
+ export type ListMultiCommunitiesResponse = {
3
+ multi_communities: Array<MultiCommunityView>;
4
+ };
@@ -1,10 +1,10 @@
1
- import type { InboxDataType } from "./InboxDataType";
1
+ import type { NotificationDataType } from "./NotificationDataType";
2
2
  import type { PaginationCursor } from "./PaginationCursor";
3
3
  /**
4
4
  * Get your inbox (replies, comment mentions, post mentions, and messages)
5
5
  */
6
- export type ListInbox = {
7
- type_?: InboxDataType;
6
+ export type ListNotifications = {
7
+ type_?: NotificationDataType;
8
8
  unread_only?: boolean;
9
9
  page_cursor?: PaginationCursor;
10
10
  page_back?: boolean;
@@ -1,10 +1,10 @@
1
- import type { InboxCombinedView } from "./InboxCombinedView";
1
+ import type { NotificationView } from "./NotificationView";
2
2
  import type { PaginationCursor } from "./PaginationCursor";
3
3
  /**
4
4
  * Get your inbox (replies, comment mentions, post mentions, and messages)
5
5
  */
6
- export type ListInboxResponse = {
7
- inbox: Array<InboxCombinedView>;
6
+ export type ListNotificationsResponse = {
7
+ notifications: Array<NotificationView>;
8
8
  /**
9
9
  * the pagination cursor to use to fetch the next page
10
10
  */
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * A listing type for post and comment list fetches.
3
3
  */
4
- export type ListingType = "All" | "Local" | "Subscribed" | "ModeratorView";
4
+ export type ListingType = "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested";
@@ -3,7 +3,7 @@ import type { PostId } from "./PostId";
3
3
  export type LocalImage = {
4
4
  pictrs_alias: string;
5
5
  published_at: string;
6
- person_id: PersonId;
6
+ person_id?: PersonId;
7
7
  /**
8
8
  * This means the image is an auto-generated thumbnail, for a post.
9
9
  */
@@ -2,6 +2,8 @@ import type { CommentSortType } from "./CommentSortType";
2
2
  import type { FederationMode } from "./FederationMode";
3
3
  import type { ListingType } from "./ListingType";
4
4
  import type { LocalSiteId } from "./LocalSiteId";
5
+ import type { MultiCommunityId } from "./MultiCommunityId";
6
+ import type { PersonId } from "./PersonId";
5
7
  import type { PostListingMode } from "./PostListingMode";
6
8
  import type { PostSortType } from "./PostSortType";
7
9
  import type { RegistrationMode } from "./RegistrationMode";
@@ -141,4 +143,7 @@ export type LocalSite = {
141
143
  * Dont send email notifications to users for new replies, mentions etc
142
144
  */
143
145
  disable_email_notifications: boolean;
146
+ suggested_communities?: MultiCommunityId;
147
+ multi_comm_follower: PersonId;
148
+ default_items_per_page: number;
144
149
  };
@@ -4,20 +4,20 @@ import type { LocalSiteId } from "./LocalSiteId";
4
4
  */
5
5
  export type LocalSiteRateLimit = {
6
6
  local_site_id: LocalSiteId;
7
- message: number;
8
- message_per_second: number;
9
- post: number;
10
- post_per_second: number;
11
- register: number;
12
- register_per_second: number;
13
- image: number;
14
- image_per_second: number;
15
- comment: number;
16
- comment_per_second: number;
17
- search: number;
18
- search_per_second: number;
7
+ message_max_requests: number;
8
+ message_interval_seconds: number;
9
+ post_max_requests: number;
10
+ post_interval_seconds: number;
11
+ register_max_requests: number;
12
+ register_interval_seconds: number;
13
+ image_max_requests: number;
14
+ image_interval_seconds: number;
15
+ comment_max_requests: number;
16
+ comment_interval_seconds: number;
17
+ search_max_requests: number;
18
+ search_interval_seconds: number;
19
19
  published_at: string;
20
20
  updated_at?: string;
21
- import_user_settings: number;
22
- import_user_settings_per_second: number;
21
+ import_user_settings_max_requests: number;
22
+ import_user_settings_interval_seconds: number;
23
23
  };
@@ -102,4 +102,6 @@ export type LocalUser = {
102
102
  show_upvotes: boolean;
103
103
  show_downvotes: VoteShow;
104
104
  show_upvote_percentage: boolean;
105
+ show_person_votes: boolean;
106
+ default_items_per_page: number;
105
107
  };
@@ -1,4 +1,3 @@
1
- import type { InstanceActions } from "./InstanceActions";
2
1
  import type { LocalUser } from "./LocalUser";
3
2
  import type { Person } from "./Person";
4
3
  /**
@@ -7,5 +6,6 @@ import type { Person } from "./Person";
7
6
  export type LocalUserView = {
8
7
  local_user: LocalUser;
9
8
  person: Person;
10
- instance_actions?: InstanceActions;
9
+ banned: boolean;
10
+ ban_expires_at?: string;
11
11
  };
@@ -0,0 +1,6 @@
1
+ import type { CommentId } from "./CommentId";
2
+ export type LockComment = {
3
+ comment_id: CommentId;
4
+ locked: boolean;
5
+ reason?: string;
6
+ };
@@ -0,0 +1,8 @@
1
+ import type { NotificationId } from "./NotificationId";
2
+ /**
3
+ * Mark a comment reply as read.
4
+ */
5
+ export type MarkNotificationAsRead = {
6
+ notification_id: NotificationId;
7
+ read: boolean;
8
+ };
@@ -1,11 +1,11 @@
1
1
  import type { CommunityId } from "./CommunityId";
2
- import type { ModAddCommunityId } from "./ModAddCommunityId";
2
+ import type { ModAddToCommunityId } from "./ModAddToCommunityId";
3
3
  import type { PersonId } from "./PersonId";
4
4
  /**
5
5
  * When someone is added as a community moderator.
6
6
  */
7
- export type ModAddCommunity = {
8
- id: ModAddCommunityId;
7
+ export type ModAddToCommunity = {
8
+ id: ModAddToCommunityId;
9
9
  mod_person_id: PersonId;
10
10
  other_person_id: PersonId;
11
11
  community_id: CommunityId;
@@ -0,0 +1 @@
1
+ export type ModAddToCommunityId = number;
@@ -1,11 +1,11 @@
1
1
  import type { Community } from "./Community";
2
- import type { ModAddCommunity } from "./ModAddCommunity";
2
+ import type { ModAddToCommunity } from "./ModAddToCommunity";
3
3
  import type { Person } from "./Person";
4
4
  /**
5
5
  * When someone is added as a community moderator.
6
6
  */
7
- export type ModAddCommunityView = {
8
- mod_add_community: ModAddCommunity;
7
+ export type ModAddToCommunityView = {
8
+ mod_add_to_community: ModAddToCommunity;
9
9
  moderator?: Person;
10
10
  community: Community;
11
11
  other_person: Person;
@@ -0,0 +1,10 @@
1
+ import type { PostId } from "./PostId";
2
+ import type { TagId } from "./TagId";
3
+ /**
4
+ * Mods can change some metadata for posts
5
+ */
6
+ export type ModEditPost = {
7
+ post_id: PostId;
8
+ nsfw?: boolean;
9
+ tags?: Array<TagId>;
10
+ };
@@ -0,0 +1,14 @@
1
+ import type { ModLockPostId } from "./ModLockPostId";
2
+ import type { PersonId } from "./PersonId";
3
+ import type { PostId } from "./PostId";
4
+ /**
5
+ * When a moderator locks a comment (prevents new replies to a comment or its children).
6
+ */
7
+ export type ModLockComment = {
8
+ id: ModLockPostId;
9
+ mod_person_id: PersonId;
10
+ comment_id: PostId;
11
+ locked: boolean;
12
+ reason?: string;
13
+ published_at: string;
14
+ };
@@ -0,0 +1 @@
1
+ export type ModLockCommentId = number;
@@ -0,0 +1,14 @@
1
+ import type { Comment } from "./Comment";
2
+ import type { Community } from "./Community";
3
+ import type { ModLockComment } from "./ModLockComment";
4
+ import type { Person } from "./Person";
5
+ /**
6
+ * When a moderator locks a comment (prevents replies to it or its children).
7
+ */
8
+ export type ModLockCommentView = {
9
+ mod_lock_comment: ModLockComment;
10
+ moderator?: Person;
11
+ other_person: Person;
12
+ comment: Comment;
13
+ community: Community;
14
+ };
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * A list of possible types for the various modlog actions.
3
3
  */
4
- export type ModlogActionType = "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModRemoveCommunity" | "ModBanFromCommunity" | "ModAddCommunity" | "ModTransferCommunity" | "ModAdd" | "ModBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance";
4
+ export type ModlogActionType = "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModLockComment" | "AdminRemoveCommunity" | "ModBanFromCommunity" | "ModAddToCommunity" | "ModTransferCommunity" | "AdminAdd" | "AdminBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance";
@@ -1,18 +1,19 @@
1
+ import type { AdminAddView } from "./AdminAddView";
1
2
  import type { AdminAllowInstanceView } from "./AdminAllowInstanceView";
3
+ import type { AdminBanView } from "./AdminBanView";
2
4
  import type { AdminBlockInstanceView } from "./AdminBlockInstanceView";
3
5
  import type { AdminPurgeCommentView } from "./AdminPurgeCommentView";
4
6
  import type { AdminPurgeCommunityView } from "./AdminPurgeCommunityView";
5
7
  import type { AdminPurgePersonView } from "./AdminPurgePersonView";
6
8
  import type { AdminPurgePostView } from "./AdminPurgePostView";
7
- import type { ModAddCommunityView } from "./ModAddCommunityView";
8
- import type { ModAddView } from "./ModAddView";
9
+ import type { AdminRemoveCommunityView } from "./AdminRemoveCommunityView";
10
+ import type { ModAddToCommunityView } from "./ModAddToCommunityView";
9
11
  import type { ModBanFromCommunityView } from "./ModBanFromCommunityView";
10
- import type { ModBanView } from "./ModBanView";
11
12
  import type { ModChangeCommunityVisibilityView } from "./ModChangeCommunityVisibilityView";
12
13
  import type { ModFeaturePostView } from "./ModFeaturePostView";
14
+ import type { ModLockCommentView } from "./ModLockCommentView";
13
15
  import type { ModLockPostView } from "./ModLockPostView";
14
16
  import type { ModRemoveCommentView } from "./ModRemoveCommentView";
15
- import type { ModRemoveCommunityView } from "./ModRemoveCommunityView";
16
17
  import type { ModRemovePostView } from "./ModRemovePostView";
17
18
  import type { ModTransferCommunityView } from "./ModTransferCommunityView";
18
19
  export type ModlogCombinedView = ({
@@ -28,12 +29,12 @@ export type ModlogCombinedView = ({
28
29
  } & AdminPurgePersonView) | ({
29
30
  type_: "AdminPurgePost";
30
31
  } & AdminPurgePostView) | ({
31
- type_: "ModAdd";
32
- } & ModAddView) | ({
33
- type_: "ModAddCommunity";
34
- } & ModAddCommunityView) | ({
35
- type_: "ModBan";
36
- } & ModBanView) | ({
32
+ type_: "AdminAdd";
33
+ } & AdminAddView) | ({
34
+ type_: "ModAddToCommunity";
35
+ } & ModAddToCommunityView) | ({
36
+ type_: "AdminBan";
37
+ } & AdminBanView) | ({
37
38
  type_: "ModBanFromCommunity";
38
39
  } & ModBanFromCommunityView) | ({
39
40
  type_: "ModFeaturePost";
@@ -44,9 +45,11 @@ export type ModlogCombinedView = ({
44
45
  } & ModLockPostView) | ({
45
46
  type_: "ModRemoveComment";
46
47
  } & ModRemoveCommentView) | ({
47
- type_: "ModRemoveCommunity";
48
- } & ModRemoveCommunityView) | ({
48
+ type_: "AdminRemoveCommunity";
49
+ } & AdminRemoveCommunityView) | ({
49
50
  type_: "ModRemovePost";
50
51
  } & ModRemovePostView) | ({
51
52
  type_: "ModTransferCommunity";
52
- } & ModTransferCommunityView);
53
+ } & ModTransferCommunityView) | ({
54
+ type_: "ModLockComment";
55
+ } & ModLockCommentView);
@@ -0,0 +1,17 @@
1
+ import type { DbUrl } from "./DbUrl";
2
+ import type { InstanceId } from "./InstanceId";
3
+ import type { MultiCommunityId } from "./MultiCommunityId";
4
+ import type { PersonId } from "./PersonId";
5
+ export type MultiCommunity = {
6
+ id: MultiCommunityId;
7
+ creator_id: PersonId;
8
+ instance_id: InstanceId;
9
+ name: string;
10
+ title?: string;
11
+ description?: string;
12
+ local: boolean;
13
+ deleted: boolean;
14
+ ap_id: DbUrl;
15
+ published_at: string;
16
+ updated_at?: string;
17
+ };