@devvit/reddit 0.11.17-next-2025-05-28-417d95f5a.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 (97) hide show
  1. package/LICENSE +26 -0
  2. package/README.md +5 -0
  3. package/RedditClient.d.ts +1155 -0
  4. package/RedditClient.d.ts.map +1 -0
  5. package/RedditClient.js +1417 -0
  6. package/common.d.ts +10 -0
  7. package/common.d.ts.map +1 -0
  8. package/common.js +5 -0
  9. package/getReddit.d.ts +3 -0
  10. package/getReddit.d.ts.map +1 -0
  11. package/getReddit.js +8 -0
  12. package/getRedditApiPlugins.d.ts +23 -0
  13. package/getRedditApiPlugins.d.ts.map +1 -0
  14. package/getRedditApiPlugins.js +25 -0
  15. package/getUserActionsPlugin.d.ts +6 -0
  16. package/getUserActionsPlugin.d.ts.map +1 -0
  17. package/getUserActionsPlugin.js +12 -0
  18. package/graphql/GraphQL.d.ts +10 -0
  19. package/graphql/GraphQL.d.ts.map +1 -0
  20. package/graphql/GraphQL.js +27 -0
  21. package/helpers/makeGettersEnumerable.d.ts +2 -0
  22. package/helpers/makeGettersEnumerable.d.ts.map +1 -0
  23. package/helpers/makeGettersEnumerable.js +19 -0
  24. package/helpers/permissions.d.ts +6 -0
  25. package/helpers/permissions.d.ts.map +1 -0
  26. package/helpers/permissions.js +24 -0
  27. package/helpers/richtextToString.d.ts +3 -0
  28. package/helpers/richtextToString.d.ts.map +1 -0
  29. package/helpers/richtextToString.js +14 -0
  30. package/helpers/textFallbackToRichtext.d.ts +4 -0
  31. package/helpers/textFallbackToRichtext.d.ts.map +1 -0
  32. package/helpers/textFallbackToRichtext.js +14 -0
  33. package/index.d.ts +3 -0
  34. package/index.d.ts.map +1 -0
  35. package/index.js +1 -0
  36. package/models/Comment.d.ts +138 -0
  37. package/models/Comment.d.ts.map +1 -0
  38. package/models/Comment.js +597 -0
  39. package/models/Flair.d.ts +171 -0
  40. package/models/Flair.d.ts.map +1 -0
  41. package/models/Flair.js +293 -0
  42. package/models/Listing.d.ts +53 -0
  43. package/models/Listing.d.ts.map +1 -0
  44. package/models/Listing.js +101 -0
  45. package/models/ModAction.d.ts +32 -0
  46. package/models/ModAction.d.ts.map +1 -0
  47. package/models/ModAction.js +70 -0
  48. package/models/ModMail.d.ts +655 -0
  49. package/models/ModMail.d.ts.map +1 -0
  50. package/models/ModMail.js +723 -0
  51. package/models/ModNote.d.ts +57 -0
  52. package/models/ModNote.d.ts.map +1 -0
  53. package/models/ModNote.js +103 -0
  54. package/models/Post.d.ts +491 -0
  55. package/models/Post.d.ts.map +1 -0
  56. package/models/Post.js +1022 -0
  57. package/models/PrivateMessage.d.ts +52 -0
  58. package/models/PrivateMessage.d.ts.map +1 -0
  59. package/models/PrivateMessage.js +126 -0
  60. package/models/Subreddit.d.ts +606 -0
  61. package/models/Subreddit.d.ts.map +1 -0
  62. package/models/Subreddit.js +750 -0
  63. package/models/User.d.ts +238 -0
  64. package/models/User.d.ts.map +1 -0
  65. package/models/User.js +458 -0
  66. package/models/Vault.d.ts +32 -0
  67. package/models/Vault.d.ts.map +1 -0
  68. package/models/Vault.js +25 -0
  69. package/models/Widget.d.ts +133 -0
  70. package/models/Widget.d.ts.map +1 -0
  71. package/models/Widget.js +467 -0
  72. package/models/WikiPage.d.ts +137 -0
  73. package/models/WikiPage.d.ts.map +1 -0
  74. package/models/WikiPage.js +329 -0
  75. package/models/index.d.ts +14 -0
  76. package/models/index.d.ts.map +1 -0
  77. package/models/index.js +13 -0
  78. package/package.json +46 -0
  79. package/tests/comment.api.test.d.ts.map +1 -0
  80. package/tests/flair.api.test.d.ts.map +1 -0
  81. package/tests/modmail.api.test.d.ts.map +1 -0
  82. package/tests/modnote.api.test.d.ts.map +1 -0
  83. package/tests/post.api.test.d.ts.map +1 -0
  84. package/tests/subreddit.api.test.d.ts.map +1 -0
  85. package/tests/user.api.test.d.ts.map +1 -0
  86. package/tests/utils/createTestPreview.d.ts +2 -0
  87. package/tests/utils/createTestPreview.d.ts.map +1 -0
  88. package/tests/utils/createTestPreview.js +5 -0
  89. package/tests/utils/redditApiPluginsMock.d.ts +203 -0
  90. package/tests/utils/redditApiPluginsMock.d.ts.map +1 -0
  91. package/tests/utils/redditApiPluginsMock.js +202 -0
  92. package/tests/utils/runWithTestContext.d.ts +4 -0
  93. package/tests/utils/runWithTestContext.d.ts.map +1 -0
  94. package/tests/utils/runWithTestContext.js +12 -0
  95. package/tests/utils/userActionsPluginMock.d.ts +6 -0
  96. package/tests/utils/userActionsPluginMock.d.ts.map +1 -0
  97. package/tests/utils/userActionsPluginMock.js +5 -0
@@ -0,0 +1,606 @@
1
+ import type { AboutLocationRequest, SubredditAboutResponse_AboutData } from '@devvit/protos';
2
+ import type { Prettify } from '@devvit/shared-types/Prettify.js';
3
+ import type { T5ID } from '@devvit/shared-types/tid.js';
4
+ import { Comment } from './Comment.js';
5
+ import type { CreateFlairTemplateOptions, GetUserFlairBySubredditResponse, UserFlairPageOptions } from './Flair.js';
6
+ import { FlairTemplate } from './Flair.js';
7
+ import { Listing } from './Listing.js';
8
+ import type { GetModerationLogOptions as _GetModerationLogOptions, ModAction } from './ModAction.js';
9
+ import type { GetPostsOptionsWithTimeframe, SubmitLinkOptions, SubmitSelfPostOptions } from './Post.js';
10
+ import { Post } from './Post.js';
11
+ import type { BanUserOptions, BanWikiContributorOptions, GetSubredditUsersByTypeOptions, ModeratorPermission } from './User.js';
12
+ import { User } from './User.js';
13
+ type GetModerationLogOptions = Omit<_GetModerationLogOptions, 'subredditName'>;
14
+ type GetUsersOptions = Omit<GetSubredditUsersByTypeOptions, 'subredditName' | 'type'>;
15
+ export type SubredditType = 'public' | 'private' | 'restricted' | 'employees_only' | 'gold_only' | 'gold_restricted' | 'archived' | 'user';
16
+ export declare enum AboutLocations {
17
+ Reports = "reports",
18
+ Spam = "spam",
19
+ Modqueue = "modqueue",
20
+ Unmoderated = "unmoderated",
21
+ Edited = "edited"
22
+ }
23
+ export type AboutSubredditTypes = 'comment' | 'post' | 'all';
24
+ type AboutSubredditOptions<T extends AboutSubredditTypes> = Omit<AboutSubredditHelperOptions<T>, 'location' | 'subreddit'>;
25
+ export type ModLogOptions<T extends AboutSubredditTypes> = Omit<AboutSubredditHelperOptions<T>, 'location'>;
26
+ type AboutSubredditHelperOptions<T extends AboutSubredditTypes> = Prettify<{
27
+ type: T;
28
+ } & AboutLocationRequest>;
29
+ export type CommentMediaTypes = 'giphy' | 'static' | 'animated' | 'expression';
30
+ export type FlairSettings = {
31
+ enabled: boolean;
32
+ usersCanAssign: boolean;
33
+ userFlairBackgroundColor?: string | undefined;
34
+ userFlairTextColor?: string | undefined;
35
+ };
36
+ export type GetUserFlairOptions = UserFlairPageOptions & {
37
+ /** If provide the method will return the flairs for the provided users, if not provided
38
+ * it will return a list of all users assigned flairs in the subreddit */
39
+ usernames?: string[];
40
+ };
41
+ /**
42
+ * An individual Removal Reason object.
43
+ */
44
+ export type RemovalReason = {
45
+ /**
46
+ * The ID of the removal reason.
47
+ */
48
+ id: string;
49
+ /**
50
+ * The message associated with the removal reason.
51
+ */
52
+ message: string;
53
+ /**
54
+ * The title of the removal reason.
55
+ */
56
+ title: string;
57
+ };
58
+ export type SubredditSettings = {
59
+ /**
60
+ * Whether the subreddit accepts followers or not.
61
+ */
62
+ acceptFollowers: boolean;
63
+ /**
64
+ * Whether all content posted on the subreddit is original.
65
+ */
66
+ allOriginalContent: boolean;
67
+ /**
68
+ * Whether users are allowed to create chat posts on the subreddit.
69
+ */
70
+ allowChatPostCreation: boolean;
71
+ /**
72
+ * Whether the subreddit can be discovered through search.
73
+ */
74
+ allowDiscovery: boolean;
75
+ /**
76
+ * Whether the subreddit allows galleries.
77
+ */
78
+ allowGalleries: boolean;
79
+ /**
80
+ * Whether the subreddit allows images.
81
+ */
82
+ allowImages: boolean;
83
+ /**
84
+ * Whether the subreddit allows polls.
85
+ */
86
+ allowPolls: boolean;
87
+ /**
88
+ * Whether contributors are allowed to make predictions on the subreddit.
89
+ */
90
+ allowPredictionContributors: boolean;
91
+ /**
92
+ * Whether predictions are allowed on the subreddit.
93
+ */
94
+ allowPredictions: boolean;
95
+ /**
96
+ * Whether prediction tournaments are allowed on the subreddit.
97
+ */
98
+ allowPredictionsTournament: boolean;
99
+ /**
100
+ * Whether talks are allowed on the subreddit.
101
+ */
102
+ allowTalks: boolean;
103
+ /**
104
+ * Whether video GIFs are allowed on the subreddit.
105
+ */
106
+ allowVideoGifs: boolean;
107
+ /**
108
+ * Whether videos are allowed on the subreddit.
109
+ */
110
+ allowVideos: boolean;
111
+ /**
112
+ * Whether chat posts are enabled on the subreddit.
113
+ */
114
+ chatPostEnabled: boolean;
115
+ /**
116
+ * Whether collections are enabled on the subreddit.
117
+ */
118
+ collectionsEnabled: boolean;
119
+ /**
120
+ * Whether crossposts can be made to this subreddit.
121
+ */
122
+ crosspostable: boolean;
123
+ /**
124
+ * Whether emojis are enabled on the subreddit.
125
+ */
126
+ emojisEnabled: boolean;
127
+ /**
128
+ * Whether event posts are enabled on the subreddit.
129
+ */
130
+ eventPostsEnabled: boolean;
131
+ /**
132
+ * Whether link flairs are enabled on the subreddit.
133
+ */
134
+ linkFlairEnabled: boolean;
135
+ /**
136
+ * Whether the Original Content tag is enabled.
137
+ */
138
+ originalContentTagEnabled: boolean;
139
+ /**
140
+ * Whether commenting is restricted in the subreddit.
141
+ */
142
+ restrictCommenting: boolean;
143
+ /**
144
+ * Whether posting is restricted in the subreddit.
145
+ */
146
+ restrictPosting: boolean;
147
+ /**
148
+ * Whether posts in the subreddit should be automatically archived after 6 months.
149
+ */
150
+ shouldArchivePosts: boolean;
151
+ /**
152
+ * Whether the Spoiler tag is enabled.
153
+ */
154
+ spoilersEnabled: boolean;
155
+ /**
156
+ * Whether the wiki is enabled for the subreddit.
157
+ */
158
+ wikiEnabled: boolean;
159
+ /**
160
+ * The types of post allowed in this subreddit. Either "any", "link", or "self".
161
+ */
162
+ allowedPostType: 'any' | 'link' | 'self';
163
+ /**
164
+ * List of allowed media types in the comments made in the subreddit.
165
+ */
166
+ allowedMediaInComments: CommentMediaTypes[];
167
+ /**
168
+ * a 6-digit rgb hex color of the banner e.g. `#AABBCC`,
169
+ */
170
+ bannerBackgroundColor?: string | undefined;
171
+ /**
172
+ * The background image of the banner.
173
+ */
174
+ bannerBackgroundImage?: string | undefined;
175
+ /**
176
+ * The URL of the banner image.
177
+ */
178
+ bannerImage?: string | undefined;
179
+ /**
180
+ * The URL of the community icon.
181
+ */
182
+ communityIcon?: string | undefined;
183
+ /**
184
+ * The header title.
185
+ */
186
+ headerTitle?: string | undefined;
187
+ /**
188
+ * The 6-digit rgb hex color of the subreddit's key color, e.g. `#AABBCC`,
189
+ */
190
+ keyColor?: string | undefined;
191
+ /**
192
+ * Banner image used on mobile apps.
193
+ */
194
+ mobileBannerImage?: string | undefined;
195
+ /**
196
+ * The 6-digit rgb hex color of the subreddit's primary color, e.g. `#AABBCC`,
197
+ */
198
+ primaryColor?: string | undefined;
199
+ /**
200
+ * The user flair settings for the subreddit.
201
+ */
202
+ userFlairs: FlairSettings;
203
+ /**
204
+ * The post flair settings for the subreddit.
205
+ */
206
+ postFlairs: FlairSettings;
207
+ /**
208
+ * HTTP URL to the subreddit
209
+ */
210
+ url: string;
211
+ };
212
+ export type SubredditLeaderboardSummaryRow = {
213
+ title: string;
214
+ key: string;
215
+ value: number;
216
+ };
217
+ export type SubredditLeaderboardSummary = {
218
+ data: SubredditLeaderboardSummaryRow[];
219
+ };
220
+ /**
221
+ * An individual Leaderboard object.
222
+ */
223
+ export type SubredditLeaderboard = {
224
+ id: string;
225
+ summary: SubredditLeaderboardSummary;
226
+ };
227
+ export type BackgroundImagePosition = 'cover' | 'tiled' | 'centered';
228
+ export type BannerHeight = 'small' | 'medium' | 'large';
229
+ export type CommunityNameFormat = 'slashtag' | 'pretty' | 'hide';
230
+ export type CustomizationFlag = 'default' | 'custom';
231
+ export type ImagePosition = 'cover' | 'tiled';
232
+ export type MenuPosition = 'default' | 'overlay';
233
+ export type PositionedImagePosition = 'left' | 'right' | 'centered';
234
+ export type Visibility = 'show' | 'hide';
235
+ /**
236
+ * A class representing the styles of a Subreddit.
237
+ */
238
+ export type SubredditStyles = {
239
+ backgroundColor?: string;
240
+ backgroundImage?: string;
241
+ backgroundImagePosition?: BackgroundImagePosition;
242
+ bannerBackgroundColor?: string;
243
+ bannerBackgroundImage?: string;
244
+ bannerBackgroundImagePosition?: ImagePosition;
245
+ bannerCommunityName?: string;
246
+ bannerCommunityNameFormat?: CommunityNameFormat;
247
+ bannerHeight?: BannerHeight;
248
+ bannerOverlayColor?: string;
249
+ bannerPositionedImage?: string;
250
+ bannerPositionedImagePosition?: PositionedImagePosition;
251
+ bannerShowCommunityIcon?: Visibility;
252
+ highlightColor?: string;
253
+ icon?: string;
254
+ legacyBannerBackgroundImage?: string;
255
+ legacyPrimaryColor?: string;
256
+ menuBackgroundBlur?: number;
257
+ menuBackgroundColor?: string;
258
+ menuBackgroundImage?: string;
259
+ menuBackgroundOpacity?: number;
260
+ menuLinkColorActive?: string;
261
+ menuLinkColorHover?: string;
262
+ menuLinkColorInactive?: string;
263
+ menuPosition?: MenuPosition;
264
+ mobileBannerImage?: string;
265
+ mobileKeyColor?: string;
266
+ postBackgroundColor?: string;
267
+ postBackgroundImage?: string;
268
+ postBackgroundImagePosition?: ImagePosition;
269
+ postDownvoteCountColor?: string;
270
+ postDownvoteIconActive?: string;
271
+ postDownvoteIconInactive?: string;
272
+ postPlaceholderImage?: string;
273
+ postPlaceholderImagePosition?: ImagePosition;
274
+ postTitleColor?: string;
275
+ postUpvoteCountColor?: string;
276
+ postUpvoteIconActive?: string;
277
+ postUpvoteIconInactive?: string;
278
+ postVoteIcons?: CustomizationFlag;
279
+ primaryColor?: string;
280
+ secondaryBannerPositionedImage?: string;
281
+ sidebarWidgetBackgroundColor?: string;
282
+ sidebarWidgetHeaderColor?: string;
283
+ submenuBackgroundColor?: string;
284
+ submenuBackgroundStyle?: CustomizationFlag;
285
+ };
286
+ export declare class SubredditDescription {
287
+ markdown?: string;
288
+ }
289
+ export declare class SubredditWikiSettings {
290
+ wikiEditMode?: WikiEditMode;
291
+ }
292
+ export type WikiEditMode = 'disabled' | 'modonly' | 'anyone';
293
+ export type PostType = 'link' | 'image' | 'video' | 'text' | 'spoiler' | 'poll' | 'gallery' | 'talk' | 'prediction' | 'videogif' | 'streaming' | 'crosspost';
294
+ export type PostCapabilities = 'ama';
295
+ export declare class AuthorFlairSettings {
296
+ isEnabled?: boolean;
297
+ isSelfAssignabled?: boolean;
298
+ }
299
+ export declare class PostFlairSettings {
300
+ isEnabled?: boolean;
301
+ isSelfAssignabled?: boolean;
302
+ }
303
+ /**
304
+ * A class representing information about a Subreddit.
305
+ */
306
+ export type SubredditInfo = {
307
+ id?: T5ID;
308
+ name?: string;
309
+ createdAt?: Date;
310
+ type?: SubredditType;
311
+ title?: string;
312
+ description?: SubredditDescription;
313
+ detectedLanguage?: string;
314
+ subscribersCount?: number;
315
+ activeCount?: number;
316
+ isNsfw?: boolean;
317
+ isQuarantined?: boolean;
318
+ isDiscoveryAllowed?: boolean;
319
+ isPredictionContributorsAllowed?: boolean;
320
+ isPredictionAllowed?: boolean;
321
+ isPredictionsTournamentAllowed?: boolean;
322
+ isChatPostCreationAllowed?: boolean;
323
+ isChatPostFeatureEnabled?: boolean;
324
+ isCrosspostingAllowed?: boolean;
325
+ isEmojisEnabled?: boolean;
326
+ isCommentingRestricted?: boolean;
327
+ isPostingRestricted?: boolean;
328
+ isArchivePostsEnabled?: boolean;
329
+ isSpoilerAvailable?: boolean;
330
+ allAllowedPostTypes?: PostType[];
331
+ allowedPostCapabilities?: PostCapabilities[];
332
+ allowedMediaInComments?: CommentMediaTypes[];
333
+ authorFlairSettings?: AuthorFlairSettings;
334
+ postFlairSettings?: PostFlairSettings;
335
+ wikiSettings?: SubredditWikiSettings;
336
+ };
337
+ /**
338
+ * A class representing a subreddit.
339
+ */
340
+ export declare class Subreddit {
341
+ #private;
342
+ /**
343
+ * @internal
344
+ */
345
+ constructor(data: Partial<SubredditAboutResponse_AboutData>);
346
+ /**
347
+ * The ID (starting with t5_) of the subreddit to retrieve. e.g. t5_2qjpg
348
+ */
349
+ get id(): T5ID;
350
+ /**
351
+ * The name of a subreddit omitting the r/.
352
+ */
353
+ get name(): string;
354
+ /**
355
+ * The creation date of the subreddit.
356
+ */
357
+ get createdAt(): Date;
358
+ /**
359
+ * The type of subreddit (public, private, etc.).
360
+ */
361
+ get type(): SubredditType;
362
+ /**
363
+ * The title of the subreddit.
364
+ */
365
+ get title(): string | undefined;
366
+ /**
367
+ * The description of the subreddit.
368
+ */
369
+ get description(): string | undefined;
370
+ /**
371
+ * The language of the subreddit.
372
+ */
373
+ get language(): string;
374
+ /**
375
+ * The number of subscribers of the subreddit.
376
+ */
377
+ get numberOfSubscribers(): number;
378
+ /**
379
+ * The number of active users of the subreddit.
380
+ */
381
+ get numberOfActiveUsers(): number;
382
+ /**
383
+ * Whether the subreddit is marked as NSFW (Not Safe For Work).
384
+ */
385
+ get nsfw(): boolean;
386
+ /**
387
+ * The settings of the subreddit.
388
+ */
389
+ get settings(): SubredditSettings;
390
+ /**
391
+ * Whether the user flairs are enabled for this subreddit.
392
+ */
393
+ get userFlairsEnabled(): boolean;
394
+ /**
395
+ * Whether the post flairs are enabled for this subreddit.
396
+ */
397
+ get postFlairsEnabled(): boolean;
398
+ /**
399
+ * Whether the user can assign user flairs.
400
+ * This is only true if the user flairs are enabled.
401
+ */
402
+ get usersCanAssignUserFlairs(): boolean;
403
+ /**
404
+ * Whether the user can assign post flairs.
405
+ * This is only true if the post flairs are enabled.
406
+ */
407
+ get usersCanAssignPostFlairs(): boolean;
408
+ /**
409
+ * Returns the HTTP URL for the subreddit.
410
+ * (R2 bug: subreddit.url is a permalink path and does not return a fully qualified URL in subreddit.url)
411
+ */
412
+ get url(): string;
413
+ /**
414
+ * Returns a permalink path
415
+ * (R2 bug: subreddit.url is a permalink, and does not have a subreddit.permalink field)
416
+ */
417
+ get permalink(): string;
418
+ toJSON(): Pick<Subreddit, 'id' | 'name' | 'createdAt' | 'type' | 'title' | 'description' | 'language' | 'nsfw' | 'numberOfSubscribers' | 'numberOfActiveUsers' | 'settings'>;
419
+ submitPost(options: SubmitLinkOptions | SubmitSelfPostOptions): Promise<Post>;
420
+ getControversialPosts(options?: Omit<GetPostsOptionsWithTimeframe, 'subredditName'>): Listing<Post>;
421
+ getTopPosts(options?: Omit<GetPostsOptionsWithTimeframe, 'subredditName'>): Listing<Post>;
422
+ getApprovedUsers(options?: GetUsersOptions): Listing<User>;
423
+ approveUser(username: string): Promise<void>;
424
+ removeUser(username: string): Promise<void>;
425
+ getWikiContributors(options?: GetUsersOptions): Listing<User>;
426
+ addWikiContributor(username: string): Promise<void>;
427
+ removeWikiContributor(username: string): Promise<void>;
428
+ getBannedUsers(options?: GetUsersOptions): Listing<User>;
429
+ banUser(options: Omit<BanUserOptions, 'subredditName'>): Promise<void>;
430
+ unbanUser(username: string): Promise<void>;
431
+ getBannedWikiContributors(options?: GetUsersOptions): Listing<User>;
432
+ banWikiContributor(options: Omit<BanWikiContributorOptions, 'subredditName'>): Promise<void>;
433
+ unbanWikiContributor(username: string): Promise<void>;
434
+ getModerators(options?: GetUsersOptions): Listing<User>;
435
+ inviteModerator(username: string, permissions?: ModeratorPermission[]): Promise<void>;
436
+ revokeModeratorInvite(username: string): Promise<void>;
437
+ removeModerator(username: string): Promise<void>;
438
+ setModeratorPermissions(username: string, permissions: ModeratorPermission[]): Promise<void>;
439
+ getMutedUsers(options?: GetUsersOptions): Listing<User>;
440
+ muteUser(username: string, note?: string): Promise<void>;
441
+ unmuteUser(username: string): Promise<void>;
442
+ getModerationLog(options: GetModerationLogOptions): Listing<ModAction>;
443
+ getUserFlairTemplates(): Promise<FlairTemplate[]>;
444
+ getPostFlairTemplates(): Promise<FlairTemplate[]>;
445
+ createPostFlairTemplate(options: Omit<CreateFlairTemplateOptions, 'subredditName'>): Promise<FlairTemplate>;
446
+ createUserFlairTemplate(options: Omit<CreateFlairTemplateOptions, 'subredditName'>): Promise<FlairTemplate>;
447
+ /**
448
+ * Get the user flair for the given subreddit. If `usernames` is provided then it will return only the
449
+ * flair for the specified users. If retrieving the list of flair for a given subreddit and the list is long
450
+ * then this method will return a `next` field which can be passed into the `after` field on the next call to
451
+ * retrieve the next slice of data. To retrieve the previous slice of data pass the `prev` field into the `before` field
452
+ * during the subsequent call.
453
+ *
454
+ * @param options See interface
455
+ *
456
+ * @example
457
+ * ```ts
458
+ * const subredditName = "mysubreddit"
459
+ * const subreddit = await reddit.getSubredditByName(subredditName)
460
+ * const response = await subreddit.getUserFlair();
461
+ * const userFlairList = response.users
462
+ * ```
463
+ * @example
464
+ * ```ts
465
+ * const response = await subreddit.getUserFlair({ after: "t2_awefae"});
466
+ * const userFlairList = response.users
467
+ * ```
468
+ *
469
+ * @example
470
+ * ```ts
471
+ * const response = await subreddit.getUserFlair({ usernames: ['toxictoad', 'badapple']});
472
+ * const userFlairList = response.users
473
+ * ```
474
+ */
475
+ getUserFlair(options?: GetUserFlairOptions): Promise<GetUserFlairBySubredditResponse>;
476
+ /**
477
+ * Return a listing of things requiring moderator review, such as reported things and items.
478
+ *
479
+ * @param options
480
+ *
481
+ * @example
482
+ * ```ts
483
+ * const subreddit = await reddit.getSubredditByName("mysubreddit")
484
+ * let listing = await subreddit.getModQueue();
485
+ * console.log("Posts and Comments: ", await listing.all())
486
+ * listing = await subreddit.getModQueue({ type: "post"});
487
+ * console.log("Posts: ", await listing.all())
488
+ * ```
489
+ */
490
+ getModQueue(options: AboutSubredditOptions<'comment'>): Listing<Comment>;
491
+ getModQueue(options: AboutSubredditOptions<'post'>): Listing<Post>;
492
+ getModQueue(options?: AboutSubredditOptions<'all'>): Listing<Post | Comment>;
493
+ /**
494
+ * Return a listing of things that have been reported.
495
+ *
496
+ * @param options
497
+ *
498
+ * @example
499
+ * ```ts
500
+ * const subreddit = await reddit.getSubredditByName("mysubreddit")
501
+ * let listing = await subreddit.getReports();
502
+ * console.log("Posts and Comments: ", await listing.all())
503
+ * listing = await subreddit.getReports({ type: "post"});
504
+ * console.log("Posts: ", await listing.all())
505
+ * ```
506
+ */
507
+ getReports(options: AboutSubredditOptions<'comment'>): Listing<Comment>;
508
+ getReports(options: AboutSubredditOptions<'post'>): Listing<Post>;
509
+ getReports(options?: AboutSubredditOptions<'all'>): Listing<Post | Comment>;
510
+ /**
511
+ * Return a listing of things that have been marked as spam or otherwise removed.
512
+ *
513
+ * @param options
514
+ *
515
+ * @example
516
+ * ```ts
517
+ * const subreddit = await reddit.getSubredditByName("mysubreddit")
518
+ * let listing = await subreddit.getSpam();
519
+ * console.log("Posts and Comments: ", await listing.all())
520
+ * listing = await subreddit.getSpam({ type: "post"});
521
+ * console.log("Posts: ", await listing.all())
522
+ * ```
523
+ */
524
+ getSpam(options: AboutSubredditOptions<'comment'>): Listing<Comment>;
525
+ getSpam(options: AboutSubredditOptions<'post'>): Listing<Post>;
526
+ getSpam(options?: AboutSubredditOptions<'all'>): Listing<Post | Comment>;
527
+ /**
528
+ * Return a listing of things that have yet to be approved/removed by a mod.
529
+ *
530
+ * @param options
531
+ *
532
+ * @example
533
+ * ```ts
534
+ * const subreddit = await reddit.getSubredditByName("mysubreddit")
535
+ * let listing = await subreddit.getUnmoderated();
536
+ * console.log("Posts and Comments: ", await listing.all())
537
+ * listing = await subreddit.getUnmoderated({ type: "post"});
538
+ * console.log("Posts: ", await listing.all())
539
+ * ```
540
+ */
541
+ getUnmoderated(options: AboutSubredditOptions<'comment'>): Listing<Comment>;
542
+ getUnmoderated(options: AboutSubredditOptions<'post'>): Listing<Post>;
543
+ getUnmoderated(options?: AboutSubredditOptions<'all'>): Listing<Post | Comment>;
544
+ /**
545
+ * Return a listing of things that have been edited recently.
546
+ *
547
+ * @param options
548
+ *
549
+ * @example
550
+ * ```ts
551
+ * const subreddit = await reddit.getSubredditByName("mysubreddit")
552
+ * let listing = await subreddit.getEdited();
553
+ * console.log("Posts and Comments: ", await listing.all())
554
+ * listing = await subreddit.getEdited({ type: "post"});
555
+ * console.log("Posts: ", await listing.all())
556
+ * ```
557
+ */
558
+ getEdited(options: AboutSubredditOptions<'comment'>): Listing<Comment>;
559
+ getEdited(options: AboutSubredditOptions<'post'>): Listing<Post>;
560
+ getEdited(options?: AboutSubredditOptions<'all'>): Listing<Post | Comment>;
561
+ /** @internal */
562
+ static aboutLocation(options: AboutSubredditHelperOptions<AboutSubredditTypes>): Listing<Post | Comment>;
563
+ /**
564
+ * Return a listing of things specified by their fullnames.
565
+ *
566
+ * @param ids Array of thing full ids (e.g. t3_abc123)
567
+ * @example
568
+ * ```ts
569
+ * const subreddit = await reddit.getSubredditByName('askReddit');
570
+ * const listing = subreddit.getCommentsAndPostsByIds(['t3_abc123', 't1_xyz123']);
571
+ * const items = await listing.all();
572
+ * console.log(items) // [Post, Comment]
573
+ * ```
574
+ */
575
+ getCommentsAndPostsByIds(ids: string[]): Listing<Post | Comment>;
576
+ /** @internal */
577
+ static addRemovalReason(subredditName: string, title: string, message: string): Promise<string>;
578
+ /** @internal */
579
+ static getRemovalReasons(subredditName: string): Promise<RemovalReason[]>;
580
+ /** @internal */
581
+ static getFromMetadata(): Promise<Subreddit | undefined>;
582
+ /** @internal */
583
+ static getById(id: T5ID): Promise<Subreddit | undefined>;
584
+ /** @internal */
585
+ static getByName(subredditName: string): Promise<Subreddit>;
586
+ }
587
+ /**
588
+ * Gets a {@link SubredditInfo} object by ID
589
+ *
590
+ * @param {string} subredditId - The ID (starting with t5_) of the subreddit to retrieve. e.g. t5_2qjpg
591
+ * @returns {Promise<SubredditInfo>} A Promise that resolves a SubredditInfo object.
592
+ */
593
+ export declare function getSubredditInfoById(subredditId: string): Promise<SubredditInfo>;
594
+ /**
595
+ * Gets a {@link SubredditInfo} object by name
596
+ *
597
+ * @param {string} subredditName The name of a subreddit omitting the r/. This is case-insensitive.
598
+ * @returns {Promise<SubredditInfo>} A Promise that resolves a SubredditInfo object.
599
+ */
600
+ export declare function getSubredditInfoByName(subredditName: string): Promise<SubredditInfo>;
601
+ export declare function getSubredditLeaderboard(subredditId: string): Promise<SubredditLeaderboard>;
602
+ export declare function getSubredditStyles(subredditId: string): Promise<SubredditStyles>;
603
+ /** @internal */
604
+ export declare function getSubredditNameById(id: T5ID): Promise<string | undefined>;
605
+ export {};
606
+ //# sourceMappingURL=Subreddit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Subreddit.d.ts","sourceRoot":"","sources":["../../src/models/Subreddit.ts"],"names":[],"mappings":"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"}