@discordeno/rest 19.0.0-next.e05a65c → 19.0.0-next.f6bd769

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.
package/dist/manager.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Queue } from './queue.js';
2
- import type { ApplicationCommandPermissions, BigString, Camelize, CreateApplicationCommand, CreateAutoModerationRuleOptions, CreateChannelInvite, CreateForumPostWithMessage, CreateGuildChannel, CreateGuildEmoji, CreateMessageOptions, CreateScheduledEvent, CreateStageInstance, DeleteWebhookMessageOptions, DiscordActiveThreads, DiscordApplication, DiscordApplicationCommand, DiscordApplicationCommandPermissions, DiscordArchivedThreads, DiscordAutoModerationRule, DiscordChannel, DiscordEmoji, DiscordFollowedChannel, DiscordGetGatewayBot, DiscordIntegration, DiscordInvite, DiscordInviteMetadata, DiscordMember, DiscordMemberWithUser, DiscordMessage, DiscordScheduledEvent, DiscordStageInstance, DiscordStickerPack, DiscordTemplate, DiscordThreadMember, DiscordUser, DiscordWebhook, EditAutoModerationRuleOptions, EditChannelPermissionOverridesOptions, EditMessage, EditScheduledEvent, EditStageInstanceOptions, ExecuteWebhook, GetGuildPruneCountQuery, GetInvite, GetMessagesOptions, GetScheduledEvents, GetScheduledEventUsers, GetWebhookMessageOptions, InteractionCallbackData, InteractionResponse, ListArchivedThreads, ListGuildMembers, ModifyChannel, ModifyGuildChannelPositions, ModifyGuildEmoji, ModifyWebhook, SearchMembers, StartThreadWithMessage, StartThreadWithoutMessage, WithReason, CreateGuild, CreateGuildRole, DiscordGuild, DiscordRole, EditGuildRole, ModifyRolePositions } from '@discordeno/types';
2
+ import type { ApplicationCommandPermissions, BigString, Camelize, CreateApplicationCommand, CreateAutoModerationRuleOptions, CreateChannelInvite, CreateForumPostWithMessage, CreateGuild, CreateGuildChannel, CreateGuildEmoji, CreateGuildRole, CreateMessageOptions, CreateScheduledEvent, CreateStageInstance, DeleteWebhookMessageOptions, DiscordActiveThreads, DiscordApplication, DiscordApplicationCommand, DiscordApplicationCommandPermissions, DiscordArchivedThreads, DiscordAutoModerationRule, DiscordChannel, DiscordEmoji, DiscordFollowedChannel, DiscordGetGatewayBot, DiscordGuild, DiscordIntegration, DiscordInvite, DiscordInviteMetadata, DiscordMember, DiscordMemberWithUser, DiscordMessage, DiscordRole, DiscordScheduledEvent, DiscordStageInstance, DiscordStickerPack, DiscordTemplate, DiscordThreadMember, DiscordUser, DiscordWebhook, EditAutoModerationRuleOptions, EditChannelPermissionOverridesOptions, EditGuildRole, EditMessage, EditScheduledEvent, EditStageInstanceOptions, ExecuteWebhook, GetGuildPruneCountQuery, GetInvite, GetMessagesOptions, GetScheduledEvents, GetScheduledEventUsers, GetWebhookMessageOptions, InteractionCallbackData, InteractionResponse, ListArchivedThreads, ListGuildMembers, ModifyChannel, ModifyGuildChannelPositions, ModifyGuildEmoji, ModifyRolePositions, ModifyWebhook, SearchMembers, StartThreadWithMessage, StartThreadWithoutMessage, WithReason, AtLeastOne, CreateGuildStickerOptions, DiscordAuditLog, DiscordBan, DiscordSticker, DiscordVanityUrl, DiscordVoiceRegion, EditGuildStickerOptions, GetBans, GetGuildAuditLog, ModifyGuild } from '@discordeno/types';
3
3
  import type { InvalidRequestBucket } from './invalidBucket.js';
4
4
  export declare function createRestManager(options: CreateRestManagerOptions): RestManager;
5
5
  export interface CreateRestManagerOptions {
@@ -134,6 +134,8 @@ export interface RestManager {
134
134
  guilds: {
135
135
  /** Routes for handling a non-specific guild. */
136
136
  all: () => string;
137
+ /** Route for handling audit logs in a guild. */
138
+ auditlogs: (guildId: BigString, options?: GetGuildAuditLog) => string;
137
139
  /** Routes for a guilds automoderation. */
138
140
  automod: {
139
141
  /** Route for handling a guild's automoderation. */
@@ -172,6 +174,8 @@ export interface RestManager {
172
174
  members: {
173
175
  /** Route for handling a specific guild member's ban. */
174
176
  ban: (guildId: BigString, userId: BigString) => string;
177
+ /** Route for handling non-specific bans in a guild. */
178
+ bans: (guildId: BigString, options?: GetBans) => string;
175
179
  /** Route for handling a the bot guild member. */
176
180
  bot: (guildId: BigString) => string;
177
181
  /** Route for handling a specific guild member. */
@@ -194,6 +198,10 @@ export interface RestManager {
194
198
  /** Route for handling non-specific guild's templates. */
195
199
  all: (guildId: BigString) => string;
196
200
  };
201
+ /** Route for handling a guild's vanity url. */
202
+ vanity: (guildId: BigString) => string;
203
+ /** Route for handling a guild's regions. */
204
+ regions: (guildId: BigString) => string;
197
205
  /** Routes for handling a guild's roles. */
198
206
  roles: {
199
207
  /** Route for handling a specific guild role. */
@@ -203,6 +211,10 @@ export interface RestManager {
203
211
  /** Route for handling a members roles in a guild. */
204
212
  member: (guildId: BigString, memberId: BigString, roleId: BigString) => string;
205
213
  };
214
+ /** Route for handling a specific guild sticker. */
215
+ stickers: (guildId: BigString) => string;
216
+ /** Route for handling non-specific guild stickers. */
217
+ sticker: (guildId: BigString, stickerId: BigString) => string;
206
218
  };
207
219
  /** Routes for interaction related endpoints. */
208
220
  interactions: {
@@ -234,9 +246,13 @@ export interface RestManager {
234
246
  message: (applicationId: BigString, token: string, messageId: BigString) => string;
235
247
  };
236
248
  };
249
+ /** Route for handling a sticker. */
250
+ sticker: (stickerId: BigString) => string;
237
251
  };
238
252
  /** Check the rate limits for a url or a bucket. */
239
253
  checkRateLimits: (url: string) => number | false;
254
+ /** Reshapes and modifies the obj as needed to make it ready for discords api. */
255
+ changeToDiscordFormat: (obj: any) => any;
240
256
  /** Creates the request body and headers that are necessary to send a request. Will handle different types of methods and everything necessary for discord. */
241
257
  createRequest: (options: CreateRequestBodyOptions) => RequestBody;
242
258
  /** This will create a infinite loop running in 1 seconds using tail recursion to keep rate limits clean. When a rate limit resets, this will remove it so the queue can proceed. */
@@ -837,6 +853,19 @@ export interface RestManager {
837
853
  };
838
854
  /** Guild related helper methods */
839
855
  guilds: {
856
+ /**
857
+ * Gets a guild's audit log.
858
+ *
859
+ * @param guildId - The ID of the guild to get the audit log of.
860
+ * @param options - The parameters for the fetching of the audit log.
861
+ * @returns An instance of {@link AuditLog}.
862
+ *
863
+ * @remarks
864
+ * Requires the `VIEW_AUDIT_LOG` permission.
865
+ *
866
+ * @see {@link https://discord.com/developers/docs/resources/audit-log#get-guild-audit-log}
867
+ */
868
+ auditlogs: (guildId: BigString, options?: GetGuildAuditLog) => Promise<Camelize<DiscordAuditLog>>;
840
869
  automod: {
841
870
  /**
842
871
  * Creates an automod rule in a guild.
@@ -912,6 +941,34 @@ export interface RestManager {
912
941
  rules: (guildId: BigString) => Promise<Camelize<DiscordAutoModerationRule[]>>;
913
942
  };
914
943
  };
944
+ /**
945
+ * Gets a ban by user ID.
946
+ *
947
+ * @param guildId - The ID of the guild to get the ban from.
948
+ * @param userId - The ID of the user to get the ban for.
949
+ * @returns An instance of {@link DiscordBan}.
950
+ *
951
+ * @remarks
952
+ * Requires the `BAN_MEMBERS` permission.
953
+ *
954
+ * @see {@link https://discord.com/developers/docs/resources/guild#get-guild-ban}
955
+ */
956
+ ban: (guildId: BigString, userId: BigString) => Promise<Camelize<DiscordBan>>;
957
+ /**
958
+ * Gets the list of bans for a guild.
959
+ *
960
+ * @param guildId - The ID of the guild to get the list of bans for.
961
+ * @param options - The parameters for the fetching of the list of bans.
962
+ * @returns A collection of {@link DiscordBan} objects assorted by user ID.
963
+ *
964
+ * @remarks
965
+ * Requires the `BAN_MEMBERS` permission.
966
+ *
967
+ * Users are ordered by their IDs in _ascending_ order.
968
+ *
969
+ * @see {@link https://discord.com/developers/docs/resources/guild#get-guild-bans}
970
+ */
971
+ bans: (guildId: BigString, options?: GetBans) => Promise<Camelize<DiscordBan[]>>;
915
972
  /**
916
973
  * Creates a guild.
917
974
  *
@@ -951,6 +1008,25 @@ export interface RestManager {
951
1008
  * @see {@link https://discord.com/developers/docs/resources/guild#delete-guild}
952
1009
  */
953
1010
  delete: (guildId: BigString) => Promise<void>;
1011
+ /**
1012
+ * Edits a guild's settings.
1013
+ *
1014
+ * @param guildId - The ID of the guild to edit.
1015
+ * @param shardId - The ID of the shard the guild is in.
1016
+ * @param options - The parameters for the edit of the guild.
1017
+ * @returns An instance of the edited {@link Guild}.
1018
+ *
1019
+ * @remarks
1020
+ * Requires the `MANAGE_GUILD` permission.
1021
+ *
1022
+ * If attempting to add or remove the {@link GuildFeatures.Community} feature:
1023
+ * - Requires the `ADMINISTRATOR` permission.
1024
+ *
1025
+ * Fires a _Guild Update_ gateway event.
1026
+ *
1027
+ * @see {@link https://discord.com/developers/docs/resources/guild#modify-guild}
1028
+ */
1029
+ edit: (guildId: BigString, options: ModifyGuild) => Promise<Camelize<DiscordGuild>>;
954
1030
  /**
955
1031
  * Gets the list of emojis for a guild.
956
1032
  *
@@ -1057,6 +1133,18 @@ export interface RestManager {
1057
1133
  }>>;
1058
1134
  };
1059
1135
  };
1136
+ /**
1137
+ * Gets a guild by its ID.
1138
+ *
1139
+ * @param guildId - The ID of the guild to get.
1140
+ * @param options - The parameters for the fetching of the guild.
1141
+ * @returns An instance of {@link Guild}.
1142
+ *
1143
+ * @see {@link https://discord.com/developers/docs/resources/guild#get-guild}
1144
+ */
1145
+ get: (guildId: BigString, options?: {
1146
+ counts?: boolean;
1147
+ }) => Promise<Camelize<DiscordGuild>>;
1060
1148
  /** Methods related to a guild's integrations. */
1061
1149
  integrations: {
1062
1150
  /**
@@ -1145,6 +1233,75 @@ export interface RestManager {
1145
1233
  */
1146
1234
  list: (guildId: BigString) => Promise<Camelize<DiscordInviteMetadata[]>>;
1147
1235
  };
1236
+ /** Methods related to stickers in a guild. */
1237
+ stickers: {
1238
+ /**
1239
+ * Create a new sticker for the guild.
1240
+ *
1241
+ * @param guildId The ID of the guild to get
1242
+ * @return A {@link DiscordSticker}
1243
+ *
1244
+ * @remarks
1245
+ * Requires the `MANAGE_EMOJIS_AND_STICKERS` permission.
1246
+ * Fires a Guild Stickers Update Gateway event.
1247
+ * Every guilds has five free sticker slots by default, and each Boost level will grant access to more slots.
1248
+ * Lottie stickers can only be uploaded on guilds that have either the `VERIFIED` and/or the `PARTNERED` guild feature.
1249
+ *
1250
+ * @see {@link https://discord.com/developers/docs/resources/sticker#create-guild-sticker}
1251
+ */
1252
+ create: (guildId: BigString, options: CreateGuildStickerOptions) => Promise<Camelize<DiscordSticker>>;
1253
+ /**
1254
+ * Delete a new sticker for the guild.
1255
+ *
1256
+ * @param guildId The ID of the guild to get
1257
+ * @return A {@link DiscordSticker}
1258
+ *
1259
+ * @remarks
1260
+ * Requires the `MANAGE_EMOJIS_AND_STICKERS` permission.
1261
+ * Fires a Guild Stickers Update Gateway event.
1262
+ * Every guilds has five free sticker slots by default, and each Boost level will grant access to more slots.
1263
+ * Lottie stickers can only be uploaded on guilds that have either the `VERIFIED` and/or the `PARTNERED` guild feature.
1264
+ *
1265
+ * @see {@link https://discord.com/developers/docs/resources/sticker#delete-guild-sticker}
1266
+ */
1267
+ delete: (guildId: BigString, stickerId: BigString, reason?: string) => Promise<void>;
1268
+ /**
1269
+ * Edit the given sticker.
1270
+ *
1271
+ * @param guildId The ID of the guild to get
1272
+ * @return A {@link DiscordSticker}
1273
+ *
1274
+ * @remarks
1275
+ * Requires the `MANAGE_EMOJIS_AND_STICKERS` permission.
1276
+ * Fires a Guild Stickers Update Gateway event.
1277
+ *
1278
+ * @see {@link https://discord.com/developers/docs/resources/sticker#modify-guild-sticker}
1279
+ */
1280
+ edit: (guildId: BigString, stickerId: BigString, options: AtLeastOne<EditGuildStickerOptions>) => Promise<Camelize<DiscordSticker>>;
1281
+ /**
1282
+ * Returns a sticker object for the given guild and sticker IDs.
1283
+ *
1284
+ * @param guildId The ID of the guild to get
1285
+ * @param stickerId The ID of the sticker to get
1286
+ * @return A {@link DiscordSticker}
1287
+ *
1288
+ * @remarks Includes the user field if the bot has the `MANAGE_EMOJIS_AND_STICKERS` permission.
1289
+ *
1290
+ * @see {@link https://discord.com/developers/docs/resources/sticker#get-guild-sticker}
1291
+ */
1292
+ sticker: (guildId: BigString, stickerId: BigString) => Promise<Camelize<DiscordSticker>>;
1293
+ /**
1294
+ * Returns an array of sticker objects for the given guild.
1295
+ *
1296
+ * @param guildId The ID of the guild to get
1297
+ * @returns A collection of {@link DiscordSticker} objects assorted by sticker ID.
1298
+ *
1299
+ * @remarks Includes user fields if the bot has the `MANAGE_EMOJIS_AND_STICKERS` permission.
1300
+ *
1301
+ * @see {@link https://discord.com/developers/docs/resources/sticker#list-guild-stickers}
1302
+ */
1303
+ stickers: (guildId: BigString) => Promise<Camelize<DiscordSticker[]>>;
1304
+ };
1148
1305
  /** Methods related to a guild's templates. */
1149
1306
  templates: {
1150
1307
  /**
@@ -1823,7 +1980,39 @@ export interface RestManager {
1823
1980
  */
1824
1981
  remove: (guildId: BigString, userId: BigString, roleId: BigString, reason?: string) => Promise<void>;
1825
1982
  };
1983
+ /**
1984
+ * Gets information about the vanity url of a guild.
1985
+ *
1986
+ * @param guildId - The ID of the guild to get the vanity url information for.
1987
+ * @returns An instance of {@link VanityUrl}.
1988
+ *
1989
+ * @remarks
1990
+ * Requires the `MANAGE_GUILD` permission.
1991
+ *
1992
+ * The `code` property will be `null` if the guild does not have a set vanity url.
1993
+ *
1994
+ * @see {@link https://discord.com/developers/docs/resources/guild#get-guild-vanity-url}
1995
+ */
1996
+ vanity: (guildId: BigString) => Promise<Camelize<DiscordVanityUrl>>;
1997
+ /**
1998
+ * Gets the list of voice regions for a guild.
1999
+ *
2000
+ * @param guildId - The ID of the guild to get the voice regions for.
2001
+ * @returns A collection of {@link VoiceRegions | VoiceRegion} objects assorted by voice region ID.
2002
+ *
2003
+ * @see {@link https://discord.com/developers/docs/resources/guild#get-guild-voice-regions}
2004
+ */
2005
+ regions: (guildId: BigString) => Promise<Camelize<DiscordVoiceRegion[]>>;
1826
2006
  };
2007
+ /**
2008
+ * Returns a sticker object for the given sticker ID.
2009
+ *
2010
+ * @param stickerId The ID of the sticker to get
2011
+ * @returns A {@link DiscordSticker}
2012
+ *
2013
+ * @see {@link https://discord.com/developers/docs/resources/sticker#get-sticker}
2014
+ */
2015
+ sticker: (stickerId: BigString) => Promise<Camelize<DiscordSticker>>;
1827
2016
  /** Webhook related helper methods. */
1828
2017
  webhooks: {
1829
2018
  /**
@@ -2157,6 +2346,21 @@ export interface RestManager {
2157
2346
  * @see {@link https://discord.com/developers/docs/interactions/application-commands#create-guild-application-command}
2158
2347
  */
2159
2348
  createGuildApplicationCommand: (command: CreateApplicationCommand, guildId: BigString) => Promise<Camelize<DiscordApplicationCommand>>;
2349
+ /**
2350
+ * Create a new sticker for the guild.
2351
+ *
2352
+ * @param guildId The ID of the guild to get
2353
+ * @return A {@link DiscordSticker}
2354
+ *
2355
+ * @remarks
2356
+ * Requires the `MANAGE_EMOJIS_AND_STICKERS` permission.
2357
+ * Fires a Guild Stickers Update Gateway event.
2358
+ * Every guilds has five free sticker slots by default, and each Boost level will grant access to more slots.
2359
+ * Lottie stickers can only be uploaded on guilds that have either the `VERIFIED` and/or the `PARTNERED` guild feature.
2360
+ *
2361
+ * @see {@link https://discord.com/developers/docs/resources/sticker#create-guild-sticker}
2362
+ */
2363
+ createGuildSticker: (guildId: BigString, options: CreateGuildStickerOptions) => Promise<Camelize<DiscordSticker>>;
2160
2364
  /**
2161
2365
  * Creates a template from a guild.
2162
2366
  *
@@ -2364,6 +2568,21 @@ export interface RestManager {
2364
2568
  * @see {@link https://discord.com/developers/docs/interactions/application-commands#delete-guild-application-command}
2365
2569
  */
2366
2570
  deleteGuildApplicationCommand: (commandId: BigString, guildId: BigString) => Promise<void>;
2571
+ /**
2572
+ * Delete a new sticker for the guild.
2573
+ *
2574
+ * @param guildId The ID of the guild to get
2575
+ * @return A {@link DiscordSticker}
2576
+ *
2577
+ * @remarks
2578
+ * Requires the `MANAGE_EMOJIS_AND_STICKERS` permission.
2579
+ * Fires a Guild Stickers Update Gateway event.
2580
+ * Every guilds has five free sticker slots by default, and each Boost level will grant access to more slots.
2581
+ * Lottie stickers can only be uploaded on guilds that have either the `VERIFIED` and/or the `PARTNERED` guild feature.
2582
+ *
2583
+ * @see {@link https://discord.com/developers/docs/resources/sticker#delete-guild-sticker}
2584
+ */
2585
+ deleteGuildSticker: (guildId: BigString, stickerId: BigString, reason?: string) => Promise<void>;
2367
2586
  /**
2368
2587
  * Deletes a template from a guild.
2369
2588
  *
@@ -2659,6 +2878,25 @@ export interface RestManager {
2659
2878
  * @see {@link https://discord.com/developers/docs/interactions/application-commands#edit-global-application-command}
2660
2879
  */
2661
2880
  editGlobalApplicationCommand: (commandId: BigString, options: CreateApplicationCommand) => Promise<Camelize<DiscordApplicationCommand>>;
2881
+ /**
2882
+ * Edits a guild's settings.
2883
+ *
2884
+ * @param guildId - The ID of the guild to edit.
2885
+ * @param shardId - The ID of the shard the guild is in.
2886
+ * @param options - The parameters for the edit of the guild.
2887
+ * @returns An instance of the edited {@link Guild}.
2888
+ *
2889
+ * @remarks
2890
+ * Requires the `MANAGE_GUILD` permission.
2891
+ *
2892
+ * If attempting to add or remove the {@link GuildFeatures.Community} feature:
2893
+ * - Requires the `ADMINISTRATOR` permission.
2894
+ *
2895
+ * Fires a _Guild Update_ gateway event.
2896
+ *
2897
+ * @see {@link https://discord.com/developers/docs/resources/guild#modify-guild}
2898
+ */
2899
+ editGuild: (guildId: BigString, options: ModifyGuild) => Promise<Camelize<DiscordGuild>>;
2662
2900
  /**
2663
2901
  * Edits an application command registered in a guild.
2664
2902
  *
@@ -2670,6 +2908,19 @@ export interface RestManager {
2670
2908
  * @see {@link https://discord.com/developers/docs/interactions/application-commands#edit-guild-application-command}
2671
2909
  */
2672
2910
  editGuildApplicationCommand: (commandId: BigString, guildId: BigString, options: CreateApplicationCommand) => Promise<Camelize<DiscordApplicationCommand>>;
2911
+ /**
2912
+ * Edit the given sticker.
2913
+ *
2914
+ * @param guildId The ID of the guild to get
2915
+ * @return A {@link DiscordSticker}
2916
+ *
2917
+ * @remarks
2918
+ * Requires the `MANAGE_EMOJIS_AND_STICKERS` permission.
2919
+ * Fires a Guild Stickers Update Gateway event.
2920
+ *
2921
+ * @see {@link https://discord.com/developers/docs/resources/sticker#modify-guild-sticker}
2922
+ */
2923
+ editGuildSticker: (guildId: BigString, stickerId: BigString, options: AtLeastOne<EditGuildStickerOptions>) => Promise<Camelize<DiscordSticker>>;
2673
2924
  /**
2674
2925
  * Edits a template's settings.
2675
2926
  *
@@ -2911,6 +3162,19 @@ export interface RestManager {
2911
3162
  * @see {@link https://discord.com/developers/docs/interactions/application-commands#get-guild-application-command-permissions}
2912
3163
  */
2913
3164
  getApplicationCommandPermissions: (guildId: BigString) => Promise<Camelize<DiscordApplicationCommandPermissions[]>>;
3165
+ /**
3166
+ * Gets a guild's audit log.
3167
+ *
3168
+ * @param guildId - The ID of the guild to get the audit log of.
3169
+ * @param options - The parameters for the fetching of the audit log.
3170
+ * @returns An instance of {@link AuditLog}.
3171
+ *
3172
+ * @remarks
3173
+ * Requires the `VIEW_AUDIT_LOG` permission.
3174
+ *
3175
+ * @see {@link https://discord.com/developers/docs/resources/audit-log#get-guild-audit-log}
3176
+ */
3177
+ getAuditLog: (guildId: BigString, options?: GetGuildAuditLog) => Promise<Camelize<DiscordAuditLog>>;
2914
3178
  /**
2915
3179
  * Gets an automod rule by its ID.
2916
3180
  *
@@ -2936,6 +3200,34 @@ export interface RestManager {
2936
3200
  * @see {@link https://discord.com/developers/docs/resources/auto-moderation#list-auto-moderation-rules-for-guild}
2937
3201
  */
2938
3202
  getAutomodRules: (guildId: BigString) => Promise<Camelize<DiscordAutoModerationRule[]>>;
3203
+ /**
3204
+ * Gets a ban by user ID.
3205
+ *
3206
+ * @param guildId - The ID of the guild to get the ban from.
3207
+ * @param userId - The ID of the user to get the ban for.
3208
+ * @returns An instance of {@link DiscordBan}.
3209
+ *
3210
+ * @remarks
3211
+ * Requires the `BAN_MEMBERS` permission.
3212
+ *
3213
+ * @see {@link https://discord.com/developers/docs/resources/guild#get-guild-ban}
3214
+ */
3215
+ getBan: (guildId: BigString, userId: BigString) => Promise<Camelize<DiscordBan>>;
3216
+ /**
3217
+ * Gets the list of bans for a guild.
3218
+ *
3219
+ * @param guildId - The ID of the guild to get the list of bans for.
3220
+ * @param options - The parameters for the fetching of the list of bans.
3221
+ * @returns A collection of {@link DiscordBan} objects assorted by user ID.
3222
+ *
3223
+ * @remarks
3224
+ * Requires the `BAN_MEMBERS` permission.
3225
+ *
3226
+ * Users are ordered by their IDs in _ascending_ order.
3227
+ *
3228
+ * @see {@link https://discord.com/developers/docs/resources/guild#get-guild-bans}
3229
+ */
3230
+ getBans: (guildId: BigString, options?: GetBans) => Promise<Camelize<DiscordBan[]>>;
2939
3231
  /**
2940
3232
  * Gets a channel by its ID.
2941
3233
  *
@@ -3050,6 +3342,18 @@ export interface RestManager {
3050
3342
  * @see {@link https://discord.com/developers/docs/interactions/application-commands#get-global-application-commands}
3051
3343
  */
3052
3344
  getGlobalApplicationCommands: () => Promise<Camelize<DiscordApplicationCommand[]>>;
3345
+ /**
3346
+ * Gets a guild by its ID.
3347
+ *
3348
+ * @param guildId - The ID of the guild to get.
3349
+ * @param options - The parameters for the fetching of the guild.
3350
+ * @returns An instance of {@link Guild}.
3351
+ *
3352
+ * @see {@link https://discord.com/developers/docs/resources/guild#get-guild}
3353
+ */
3354
+ getGuild: (guildId: BigString, options?: {
3355
+ counts?: boolean;
3356
+ }) => Promise<Camelize<DiscordGuild>>;
3053
3357
  /**
3054
3358
  * Gets a guild application command by its ID.
3055
3359
  *
@@ -3069,6 +3373,29 @@ export interface RestManager {
3069
3373
  * @see {@link https://discord.com/developers/docs/interactions/application-commands#get-global-application-commandss}
3070
3374
  */
3071
3375
  getGuildApplicationCommands: (guildId: BigString) => Promise<Camelize<DiscordApplicationCommand[]>>;
3376
+ /**
3377
+ * Returns a sticker object for the given guild and sticker IDs.
3378
+ *
3379
+ * @param guildId The ID of the guild to get
3380
+ * @param stickerId The ID of the sticker to get
3381
+ * @return A {@link DiscordSticker}
3382
+ *
3383
+ * @remarks Includes the user field if the bot has the `MANAGE_EMOJIS_AND_STICKERS` permission.
3384
+ *
3385
+ * @see {@link https://discord.com/developers/docs/resources/sticker#get-guild-sticker}
3386
+ */
3387
+ getGuildSticker: (guildId: BigString, stickerId: BigString) => Promise<Camelize<DiscordSticker>>;
3388
+ /**
3389
+ * Returns an array of sticker objects for the given guild.
3390
+ *
3391
+ * @param guildId The ID of the guild to get
3392
+ * @returns A collection of {@link DiscordSticker} objects assorted by sticker ID.
3393
+ *
3394
+ * @remarks Includes user fields if the bot has the `MANAGE_EMOJIS_AND_STICKERS` permission.
3395
+ *
3396
+ * @see {@link https://discord.com/developers/docs/resources/sticker#list-guild-stickers}
3397
+ */
3398
+ getGuildStickers: (guildId: BigString) => Promise<Camelize<DiscordSticker[]>>;
3072
3399
  /**
3073
3400
  * Gets a template by its code.
3074
3401
  *
@@ -3282,6 +3609,15 @@ export interface RestManager {
3282
3609
  * @see {@link https://discord.com/developers/docs/resources/stage-instance#get-stage-instance}
3283
3610
  */
3284
3611
  getStageInstance: (channelId: BigString) => Promise<Camelize<DiscordStageInstance>>;
3612
+ /**
3613
+ * Returns a sticker object for the given sticker ID.
3614
+ *
3615
+ * @param stickerId The ID of the sticker to get
3616
+ * @returns A {@link DiscordSticker}
3617
+ *
3618
+ * @see {@link https://discord.com/developers/docs/resources/sticker#get-sticker}
3619
+ */
3620
+ getSticker: (stickerId: BigString) => Promise<Camelize<DiscordSticker>>;
3285
3621
  /**
3286
3622
  * Gets a thread member by their user ID.
3287
3623
  *
@@ -3311,6 +3647,29 @@ export interface RestManager {
3311
3647
  * @returns {Camelize<DiscordUser>}
3312
3648
  */
3313
3649
  getUser: (id: BigString) => Promise<Camelize<DiscordUser>>;
3650
+ /**
3651
+ * Gets information about the vanity url of a guild.
3652
+ *
3653
+ * @param guildId - The ID of the guild to get the vanity url information for.
3654
+ * @returns An instance of {@link VanityUrl}.
3655
+ *
3656
+ * @remarks
3657
+ * Requires the `MANAGE_GUILD` permission.
3658
+ *
3659
+ * The `code` property will be `null` if the guild does not have a set vanity url.
3660
+ *
3661
+ * @see {@link https://discord.com/developers/docs/resources/guild#get-guild-vanity-url}
3662
+ */
3663
+ getVanityUrl: (guildId: BigString) => Promise<Camelize<DiscordVanityUrl>>;
3664
+ /**
3665
+ * Gets the list of voice regions for a guild.
3666
+ *
3667
+ * @param guildId - The ID of the guild to get the voice regions for.
3668
+ * @returns A collection of {@link VoiceRegions | VoiceRegion} objects assorted by voice region ID.
3669
+ *
3670
+ * @see {@link https://discord.com/developers/docs/resources/guild#get-guild-voice-regions}
3671
+ */
3672
+ getVoiceRegions: (guildId: BigString) => Promise<Camelize<DiscordVoiceRegion[]>>;
3314
3673
  /**
3315
3674
  * Gets a webhook by its ID.
3316
3675
  *