oceanic.js 1.11.3-dev.fb35174 → 1.12.1-dev.06672ae

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 (81) hide show
  1. package/README.md +0 -1
  2. package/dist/lib/Client.js +3 -1
  3. package/dist/lib/Constants.d.ts +68 -11
  4. package/dist/lib/Constants.js +78 -8
  5. package/dist/lib/gateway/Shard.d.ts +4 -1
  6. package/dist/lib/gateway/Shard.js +27 -7
  7. package/dist/lib/gateway/ShardManager.js +2 -2
  8. package/dist/lib/gateway/compression/zlib-sync.js +2 -2
  9. package/dist/lib/gateway/compression/zstd.d.ts +1 -5
  10. package/dist/lib/gateway/compression/zstd.js +5 -18
  11. package/dist/lib/gateway/events.d.ts +5 -0
  12. package/dist/lib/gateway/events.js +46 -3
  13. package/dist/lib/index.d.ts +1 -0
  14. package/dist/lib/index.js +4 -2
  15. package/dist/lib/rest/RequestHandler.js +2 -2
  16. package/dist/lib/routes/Applications.d.ts +20 -1
  17. package/dist/lib/routes/Applications.js +74 -10
  18. package/dist/lib/routes/Channels.d.ts +9 -1
  19. package/dist/lib/routes/Channels.js +33 -59
  20. package/dist/lib/routes/Guilds.d.ts +42 -1
  21. package/dist/lib/routes/Guilds.js +141 -120
  22. package/dist/lib/routes/Interactions.d.ts +5 -3
  23. package/dist/lib/routes/Interactions.js +30 -11
  24. package/dist/lib/routes/Miscellaneous.d.ts +6 -0
  25. package/dist/lib/routes/Miscellaneous.js +12 -1
  26. package/dist/lib/routes/Users.js +9 -4
  27. package/dist/lib/routes/Webhooks.js +27 -28
  28. package/dist/lib/structures/Application.d.ts +7 -1
  29. package/dist/lib/structures/Application.js +10 -1
  30. package/dist/lib/structures/ApplicationCommand.d.ts +3 -1
  31. package/dist/lib/structures/ApplicationCommand.js +5 -1
  32. package/dist/lib/structures/Attachment.d.ts +8 -0
  33. package/dist/lib/structures/Attachment.js +11 -1
  34. package/dist/lib/structures/AutocompleteInteraction.d.ts +4 -2
  35. package/dist/lib/structures/AutocompleteInteraction.js +6 -2
  36. package/dist/lib/structures/Base.js +5 -4
  37. package/dist/lib/structures/ClientApplication.d.ts +6 -1
  38. package/dist/lib/structures/ClientApplication.js +8 -1
  39. package/dist/lib/structures/CommandInteraction.d.ts +17 -12
  40. package/dist/lib/structures/CommandInteraction.js +30 -23
  41. package/dist/lib/structures/ComponentInteraction.d.ts +17 -14
  42. package/dist/lib/structures/ComponentInteraction.js +28 -25
  43. package/dist/lib/structures/Entitlement.d.ts +2 -2
  44. package/dist/lib/structures/Entitlement.js +5 -5
  45. package/dist/lib/structures/Guild.d.ts +31 -2
  46. package/dist/lib/structures/Guild.js +41 -1
  47. package/dist/lib/structures/Invite.d.ts +3 -1
  48. package/dist/lib/structures/Invite.js +4 -1
  49. package/dist/lib/structures/Message.d.ts +3 -3
  50. package/dist/lib/structures/Message.js +25 -16
  51. package/dist/lib/structures/ModalSubmitInteraction.d.ts +16 -13
  52. package/dist/lib/structures/ModalSubmitInteraction.js +26 -18
  53. package/dist/lib/structures/PingInteraction.d.ts +2 -2
  54. package/dist/lib/structures/PingInteraction.js +2 -2
  55. package/dist/lib/structures/Soundboard.d.ts +42 -0
  56. package/dist/lib/structures/Soundboard.js +73 -0
  57. package/dist/lib/structures/Subscription.d.ts +25 -0
  58. package/dist/lib/structures/Subscription.js +38 -0
  59. package/dist/lib/structures/User.d.ts +0 -5
  60. package/dist/lib/structures/User.js +1 -7
  61. package/dist/lib/types/applications.d.ts +89 -8
  62. package/dist/lib/types/channels.d.ts +354 -189
  63. package/dist/lib/types/client.d.ts +7 -2
  64. package/dist/lib/types/events.d.ts +15 -3
  65. package/dist/lib/types/gateway-raw.d.ts +39 -3
  66. package/dist/lib/types/gateway.d.ts +10 -2
  67. package/dist/lib/types/guilds.d.ts +28 -0
  68. package/dist/lib/types/interactions.d.ts +65 -7
  69. package/dist/lib/types/json.d.ts +27 -6
  70. package/dist/lib/types/webhooks.d.ts +6 -2
  71. package/dist/lib/util/Errors.d.ts +4 -0
  72. package/dist/lib/util/Errors.js +9 -2
  73. package/dist/lib/util/Routes.d.ts +7 -2
  74. package/dist/lib/util/Routes.js +18 -8
  75. package/dist/lib/util/Util.d.ts +9 -6
  76. package/dist/lib/util/Util.js +100 -13
  77. package/dist/lib/util/interactions/MessageInteractionResponse.d.ts +5 -2
  78. package/dist/lib/util/interactions/MessageInteractionResponse.js +9 -7
  79. package/dist/package.json +8 -9
  80. package/esm.mjs +2 -0
  81. package/package.json +8 -9
@@ -21,6 +21,8 @@ class ComponentInteraction extends Interaction_1.default {
21
21
  _cachedGuild;
22
22
  /** The permissions the bot has in the channel this interaction was sent from. If in a dm/group dm, this will contain `ATTACH_FILES`, `EMBED_LINKS`, and `MENTION_EVERYONE`. In addition, `USE_EXTERNAL_EMOJIS` will be included for DMs with the app's bot user. */
23
23
  appPermissions;
24
+ /** The maximum size limit per attachment. This will be 10MiB by default, unless the user that created this interaction has a Nitro subscription or the guild it was sent from has been boosted to level 2 or above. */
25
+ attachmentSizeLimit;
24
26
  /** Details about the authorizing user or server for the installation(s) relevant to the interaction. See [Discord's docs](https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-authorizing-integration-owners-object) for more information. */
25
27
  authorizingIntegrationOwners;
26
28
  /** The ID of the channel this interaction was sent from. */
@@ -53,6 +55,7 @@ class ComponentInteraction extends Interaction_1.default {
53
55
  data.message.guild_id = data.guild_id;
54
56
  }
55
57
  this.appPermissions = new Permission_1.default(data.app_permissions ?? "0");
58
+ this.attachmentSizeLimit = data.attachment_size_limit;
56
59
  this.authorizingIntegrationOwners = data.authorizing_integration_owners;
57
60
  this.channelID = data.channel_id;
58
61
  this.context = data.context;
@@ -137,30 +140,26 @@ class ComponentInteraction extends Interaction_1.default {
137
140
  return this._cachedGuild === null ? this._cachedGuild : (this._cachedGuild = null);
138
141
  }
139
142
  /**
140
- * Create a followup message. Note that the returned class is not a message. The message is located in the property {@link MessageInteractionResponse#message | message}.
143
+ * Create a followup message.
144
+ * Note that the returned class is not a message. It is a wrapper around the interaction response. The {@link MessageInteractionResponse#getMessage | getMessage} function can be used to get the message.
141
145
  * @param options The options for creating the followup message.
142
146
  */
143
147
  async createFollowup(options) {
144
148
  const message = await this.client.rest.interactions.createFollowupMessage(this.applicationID, this.token, options);
145
- return new MessageInteractionResponse_1.default(this, message, "followup");
149
+ return new MessageInteractionResponse_1.default(this, message, "followup", null);
146
150
  }
147
151
  /**
148
152
  * Create a message through this interaction. This is an initial response, and more than one initial response cannot be used. Use {@link ComponentInteraction#createFollowup | createFollowup}.
149
- * Note that the returned class is not a message. This initial response does not return a message. You will need to call {@link MessageInteractionResponse#getMessage | MessageInteractionResponse#getMessage} on the returned class,
150
- * or {@link ComponentInteraction#getOriginal | getOriginal}.
151
- * @note You cannot attach files in an initial response. Defer the interaction, then use {@link ComponentInteraction#createFollowup | createFollowup}.
153
+ * Note that the returned class is not a message. It is a wrapper around the interaction response. The {@link MessageInteractionResponse#getMessage | getMessage} function can be used to get the message.
152
154
  * @param options The options for the message.
153
155
  */
154
156
  async createMessage(options) {
155
157
  if (this.acknowledged) {
156
158
  throw new TypeError("Interactions cannot have more than one initial response.");
157
159
  }
158
- if ("files" in options && options.files.length !== 0) {
159
- this.client.emit("warn", "You cannot attach files in an initial response. Defer the interaction, then use createFollowup.");
160
- }
161
160
  this.acknowledged = true;
162
- await this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.CHANNEL_MESSAGE_WITH_SOURCE, data: options });
163
- return new MessageInteractionResponse_1.default(this, null, "initial");
161
+ const cb = await this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.CHANNEL_MESSAGE_WITH_SOURCE, data: options }, true);
162
+ return new MessageInteractionResponse_1.default(this, null, "initial", cb);
164
163
  }
165
164
  /**
166
165
  * Respond to this interaction with a modal. This is an initial response, and more than one initial response cannot be used.
@@ -171,7 +170,7 @@ class ComponentInteraction extends Interaction_1.default {
171
170
  throw new TypeError("Interactions cannot have more than one initial response.");
172
171
  }
173
172
  this.acknowledged = true;
174
- return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.MODAL, data: options });
173
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.MODAL, data: options }, true);
175
174
  }
176
175
  /**
177
176
  * Defer this interaction with a `DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE` response. This is an initial response, and more than one initial response cannot be used.
@@ -182,7 +181,7 @@ class ComponentInteraction extends Interaction_1.default {
182
181
  throw new TypeError("Interactions cannot have more than one initial response.");
183
182
  }
184
183
  this.acknowledged = true;
185
- return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE, data: { flags } });
184
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE, data: { flags } }, true);
186
185
  }
187
186
  /**
188
187
  * Defer this interaction with a `DEFERRED_UPDATE_MESSAGE` response. This is an initial response, and more than one initial response cannot be used.
@@ -193,7 +192,7 @@ class ComponentInteraction extends Interaction_1.default {
193
192
  throw new TypeError("Interactions cannot have more than one initial response.");
194
193
  }
195
194
  this.acknowledged = true;
196
- return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.DEFERRED_UPDATE_MESSAGE, data: { flags } });
195
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.DEFERRED_UPDATE_MESSAGE, data: { flags } }, true);
197
196
  }
198
197
  /**
199
198
  * Delete a follow-up message.
@@ -232,7 +231,7 @@ class ComponentInteraction extends Interaction_1.default {
232
231
  throw new TypeError("Interactions cannot have more than one initial response.");
233
232
  }
234
233
  this.acknowledged = true;
235
- return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.UPDATE_MESSAGE, data: options });
234
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.UPDATE_MESSAGE, data: options }, true);
236
235
  }
237
236
  /**
238
237
  * Get a followup message.
@@ -267,6 +266,16 @@ class ComponentInteraction extends Interaction_1.default {
267
266
  || this.data.componentType === Constants_1.ComponentTypes.MENTIONABLE_SELECT
268
267
  || this.data.componentType === Constants_1.ComponentTypes.USER_SELECT;
269
268
  }
269
+ /**
270
+ * Launch the bot's activity. This is an initial response, and more than one initial response cannot be used.
271
+ */
272
+ async launchActivity() {
273
+ if (this.acknowledged) {
274
+ throw new TypeError("Interactions cannot have more than one initial response.");
275
+ }
276
+ this.acknowledged = true;
277
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.LAUNCH_ACTIVITY }, true);
278
+ }
270
279
  /**
271
280
  * Show a "premium required" response to the user. This is an initial response, and more than one initial response cannot be used.
272
281
  * @deprecated The {@link Constants~InteractionResponseTypes.PREMIUM_REQUIRED | PREMIUM_REQUIRED} interaction response type is now deprecated in favor of using {@link Types/Channels~PremiumButton | custom premium buttons}.
@@ -276,27 +285,21 @@ class ComponentInteraction extends Interaction_1.default {
276
285
  throw new TypeError("Interactions cannot have more than one initial response.");
277
286
  }
278
287
  this.acknowledged = true;
279
- return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.PREMIUM_REQUIRED, data: {} });
288
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.PREMIUM_REQUIRED }, true);
280
289
  }
281
290
  /**
282
291
  * Reply to this interaction. If the interaction hasn't been acknowledged, {@link ComponentInteraction#createMessage | createMessage} is used. Else, {@link ComponentInteraction#createFollowup | createFollowup} is used.
283
- * Note the returned class is not a message. Depending on which method was used, the returned class may or may not have the sent message. {@link MessageInteractionResponse#hasMessage | hasMessage} can be used for type narrowing
284
- * to check if {@link MessageInteractionResponse#message | message} is present. If it is not, the {@link MessageInteractionResponse#getMessage | getMessage} can be used.
285
- * @note Due to atachments not being able to be sent in initial responses, attachments will cause a deferred response, if the interaction has not been acknowledged.
292
+ * Note that the returned class is not a message. It is a wrapper around the interaction response. The {@link MessageInteractionResponse#getMessage | getMessage} function can be used to get the message.
286
293
  * @param options The options for the message.
287
294
  */
288
295
  async reply(options) {
289
- let useFollowup = this.acknowledged;
290
- if (!useFollowup && options.files && options.files.length !== 0) {
291
- await this.defer(options.flags);
292
- useFollowup = true;
293
- }
294
- return useFollowup ? this.createFollowup(options) : this.createMessage(options);
296
+ return this.acknowledged ? this.createFollowup(options) : this.createMessage(options);
295
297
  }
296
298
  toJSON() {
297
299
  return {
298
300
  ...super.toJSON(),
299
301
  appPermissions: this.appPermissions.toJSON(),
302
+ attachmentSizeLimit: this.attachmentSizeLimit,
300
303
  authorizingIntegrationOwners: this.authorizingIntegrationOwners,
301
304
  channelID: this.channelID,
302
305
  context: this.context,
@@ -311,4 +314,4 @@ class ComponentInteraction extends Interaction_1.default {
311
314
  }
312
315
  }
313
316
  exports.default = ComponentInteraction;
314
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tcG9uZW50SW50ZXJhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvc3RydWN0dXJlcy9Db21wb25lbnRJbnRlcmFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBbUM7QUFDbkMsd0VBQXdDO0FBQ3hDLGdFQUFnQztBQUVoQyw4REFBOEI7QUFDOUIsc0VBQXNDO0FBQ3RDLDBFQUEwQztBQUUxQywwREFBMEI7QUFDMUIsMERBQTBCO0FBQzFCLHNHQUFzRTtBQXFCdEUsNENBTXNCO0FBQ3RCLG1IQUFtRjtBQUNuRixzRkFBc0Q7QUFDdEQsMkNBQStDO0FBQy9DLHlIQUErSztBQUUvSywwQ0FBMEM7QUFDMUMsTUFBcUIsb0JBQWlNLFNBQVEscUJBQVc7SUFDN04sY0FBYyxDQUFtRDtJQUNqRSxZQUFZLENBQTREO0lBQ2hGLG9RQUFvUTtJQUNwUSxjQUFjLENBQWE7SUFDM0IsdVJBQXVSO0lBQ3ZSLDRCQUE0QixDQUErQjtJQUMzRCw0REFBNEQ7SUFDNUQsU0FBUyxDQUFTO0lBQ2xCLGtEQUFrRDtJQUNsRCxPQUFPLENBQTJCO0lBQ2xDLGdEQUFnRDtJQUNoRCxJQUFJLENBQXNIO0lBQzFILG9HQUFvRztJQUNwRyxZQUFZLENBQXVDO0lBQ25ELHlFQUF5RTtJQUN6RSxPQUFPLENBQTZEO0lBQ3BFLGdKQUFnSjtJQUNoSixXQUFXLENBQWtFO0lBQzdFLHVFQUF1RTtJQUN2RSxZQUFZLENBQXVGO0lBQ25HLGdHQUFnRztJQUNoRyxNQUFNLENBQVM7SUFDZiw4RkFBOEY7SUFDOUYsTUFBTSxDQUE2RDtJQUNuRSxpSEFBaUg7SUFDakgsaUJBQWlCLENBQXFFO0lBQ3RGLDJDQUEyQztJQUMzQyxPQUFPLENBQWE7SUFFcEIsOENBQThDO0lBQzlDLElBQUksQ0FBTztJQUNYLFlBQVksSUFBb0MsRUFBRSxNQUFjO1FBQzVELEtBQUssQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDcEIs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
317
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tcG9uZW50SW50ZXJhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvc3RydWN0dXJlcy9Db21wb25lbnRJbnRlcmFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBbUM7QUFDbkMsd0VBQXdDO0FBQ3hDLGdFQUFnQztBQUVoQyw4REFBOEI7QUFDOUIsc0VBQXNDO0FBQ3RDLDBFQUEwQztBQUUxQywwREFBMEI7QUFDMUIsMERBQTBCO0FBQzFCLHNHQUFzRTtBQXFCdEUsNENBTXNCO0FBQ3RCLG1IQUFtRjtBQUNuRixzRkFBc0Q7QUFDdEQsMkNBQStDO0FBQy9DLHlIQUErSztBQUUvSywwQ0FBMEM7QUFDMUMsTUFBcUIsb0JBQWlNLFNBQVEscUJBQVc7SUFDN04sY0FBYyxDQUFtRDtJQUNqRSxZQUFZLENBQTREO0lBQ2hGLG9RQUFvUTtJQUNwUSxjQUFjLENBQWE7SUFDM0IsdU5BQXVOO0lBQ3ZOLG1CQUFtQixDQUFTO0lBQzVCLHVSQUF1UjtJQUN2Uiw0QkFBNEIsQ0FBK0I7SUFDM0QsNERBQTREO0lBQzVELFNBQVMsQ0FBUztJQUNsQixrREFBa0Q7SUFDbEQsT0FBTyxDQUEyQjtJQUNsQyxnREFBZ0Q7SUFDaEQsSUFBSSxDQUFzSDtJQUMxSCxvR0FBb0c7SUFDcEcsWUFBWSxDQUF1QztJQUNuRCx5RUFBeUU7SUFDekUsT0FBTyxDQUE2RDtJQUNwRSxnSkFBZ0o7SUFDaEosV0FBVyxDQUFrRTtJQUM3RSx1RUFBdUU7SUFDdkUsWUFBWSxDQUF1RjtJQUNuRyxnR0FBZ0c7SUFDaEcsTUFBTSxDQUFTO0lBQ2YsOEZBQThGO0lBQzlGLE1BQU0sQ0FBNkQ7SUFDbkUsaUhBQWlIO0lBQ2pILGlCQUFpQixDQUFxRTtJQUN0RiwyQ0FBMkM7SUFDM0MsT0FBTyxDQUFhO0lBRXBCLDhDQUE4QztJQUM5QyxJQUFJLENBQU87SUFDWCxZQUFZLElBQW9DLEVBQUUsTUFBYztRQUM1RCxLQUFLLENBQUMs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
@@ -4,8 +4,8 @@ import type Client from "../Client";
4
4
  import type { JSONEntitlement } from "../types";
5
5
  /** Represents an entitlement. */
6
6
  export default class Entitlement extends BaseEntitlement {
7
- endsAt: Date;
8
- startsAt: Date;
7
+ endsAt: Date | null;
8
+ startsAt: Date | null;
9
9
  subscriptionID: string;
10
10
  constructor(data: RawEntitlement, client: Client);
11
11
  toJSON(): JSONEntitlement;
@@ -9,18 +9,18 @@ class Entitlement extends BaseEntitlement_1.default {
9
9
  subscriptionID;
10
10
  constructor(data, client) {
11
11
  super(data, client);
12
- this.endsAt = new Date(data.ends_at);
13
- this.startsAt = new Date(data.starts_at);
12
+ this.endsAt = data.ends_at ? new Date(data.ends_at) : null;
13
+ this.startsAt = data.starts_at ? new Date(data.starts_at) : null;
14
14
  this.subscriptionID = data.subscription_id;
15
15
  }
16
16
  toJSON() {
17
17
  return {
18
18
  ...super.toJSON(),
19
- endsAt: this.endsAt.getTime(),
20
- startsAt: this.startsAt.getTime(),
19
+ endsAt: this.endsAt?.getTime() || null,
20
+ startsAt: this.startsAt?.getTime() || null,
21
21
  subscriptionID: this.subscriptionID
22
22
  };
23
23
  }
24
24
  }
25
25
  exports.default = Entitlement;
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW50aXRsZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvc3RydWN0dXJlcy9FbnRpdGxlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnRkFBZ0Q7QUFLaEQsaUNBQWlDO0FBQ2pDLE1BQXFCLFdBQVksU0FBUSx5QkFBZTtJQUNwRCxNQUFNLENBQU87SUFDYixRQUFRLENBQU87SUFDZixjQUFjLENBQVM7SUFDdkIsWUFBWSxJQUFvQixFQUFFLE1BQWM7UUFDNUMsS0FBSyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDL0MsQ0FBQztJQUVRLE1BQU07UUFDWCxPQUFPO1lBQ0gsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ2pCLE1BQU0sRUFBVSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtZQUNyQyxRQUFRLEVBQVEsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUU7WUFDdkMsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO1NBQ3RDLENBQUM7SUFDTixDQUFDO0NBQ0o7QUFuQkQsOEJBbUJDIn0=
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW50aXRsZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvc3RydWN0dXJlcy9FbnRpdGxlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnRkFBZ0Q7QUFLaEQsaUNBQWlDO0FBQ2pDLE1BQXFCLFdBQVksU0FBUSx5QkFBZTtJQUNwRCxNQUFNLENBQWM7SUFDcEIsUUFBUSxDQUFjO0lBQ3RCLGNBQWMsQ0FBUztJQUN2QixZQUFZLElBQW9CLEVBQUUsTUFBYztRQUM1QyxLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDM0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNqRSxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDL0MsQ0FBQztJQUVRLE1BQU07UUFDWCxPQUFPO1lBQ0gsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ2pCLE1BQU0sRUFBVSxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLElBQUk7WUFDOUMsUUFBUSxFQUFRLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLElBQUksSUFBSTtZQUNoRCxjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7U0FDdEMsQ0FBQztJQUNOLENBQUM7Q0FDSjtBQW5CRCw4QkFtQkMifQ==
@@ -22,11 +22,12 @@ import type Webhook from "./Webhook";
22
22
  import AuditLogEntry from "./AuditLogEntry";
23
23
  import type Entitlement from "./Entitlement";
24
24
  import type TestEntitlement from "./TestEntitlement";
25
+ import Soundboard from "./Soundboard";
25
26
  import { type DefaultMessageNotificationLevels, type ExplicitContentFilterLevels, type GuildFeature, type GuildNSFWLevels, type ImageFormat, type MFALevels, type PremiumTiers, type VerificationLevels, type ChannelTypeMap } from "../Constants";
26
27
  import type Client from "../Client";
27
28
  import TypedCollection from "../util/TypedCollection";
28
- import type { AnyGuildChannel, AnyGuildChannelWithoutThreads, AnyTextableGuildChannel, AnyThreadChannel, AnyInviteChannel, RawGuildChannel, RawThreadChannel, GuildChannelsWithoutThreads, RawInvite } from "../types/channels";
29
- import type { AddMemberOptions, BeginPruneOptions, CreateBanOptions, CreateChannelOptions, CreateGuildEmojiOptions, CreateRoleOptions, EditCurrentMemberOptions, EditCurrentUserVoiceStateOptions, EditGuildEmojiOptions, EditGuildOptions, EditMemberOptions, EditRoleOptions, EditRolePositionsEntry, EditUserVoiceStateOptions, EditWelcomeScreenOptions, GetBansOptions, GetMembersOptions, GetPruneCountOptions, GuildEmoji, ModifyChannelPositionsEntry, RawGuild, RawMember, RawRole, SearchMembersOptions, WelcomeScreen, WidgetImageStyle, WidgetSettings, RawIntegration, Widget, GetActiveThreadsResponse, Ban, GetVanityURLResponse, RawWidget, RawStageInstance, EditMFALevelOptions, RESTMember, CreateStickerOptions, Sticker, EditStickerOptions, Onboarding, EditOnboardingOptions, RawGuildEmoji, RawSticker, InventorySettings, EditIncidentActionsOptions, IncidentActions, BulkBanOptions, BulkBanResponse, MemberSearchOptions, MemberSearchResults } from "../types/guilds";
29
+ import type { AnyGuildChannel, AnyGuildChannelWithoutThreads, AnyTextableGuildChannel, AnyThreadChannel, AnyInviteChannel, RawGuildChannel, RawThreadChannel, GuildChannelsWithoutThreads, RawInvite, RawSoundboard } from "../types/channels";
30
+ import type { AddMemberOptions, BeginPruneOptions, CreateBanOptions, CreateChannelOptions, CreateGuildEmojiOptions, CreateRoleOptions, EditCurrentMemberOptions, EditCurrentUserVoiceStateOptions, EditGuildEmojiOptions, EditGuildOptions, EditMemberOptions, EditRoleOptions, EditRolePositionsEntry, EditUserVoiceStateOptions, EditWelcomeScreenOptions, GetBansOptions, GetMembersOptions, GetPruneCountOptions, GuildEmoji, ModifyChannelPositionsEntry, RawGuild, RawMember, RawRole, SearchMembersOptions, WelcomeScreen, WidgetImageStyle, WidgetSettings, RawIntegration, Widget, GetActiveThreadsResponse, Ban, GetVanityURLResponse, RawWidget, RawStageInstance, EditMFALevelOptions, RESTMember, CreateStickerOptions, Sticker, EditStickerOptions, Onboarding, EditOnboardingOptions, RawGuildEmoji, RawSticker, InventorySettings, EditIncidentActionsOptions, IncidentActions, BulkBanOptions, BulkBanResponse, MemberSearchOptions, MemberSearchResults, CreateSoundboardSoundOptions, EditSoundboardSoundOptions } from "../types/guilds";
30
31
  import type { CreateScheduledEventOptions, EditScheduledEventOptions, GetScheduledEventUsersOptions, RawScheduledEvent, ScheduledEventUser } from "../types/scheduled-events";
31
32
  import type { CreateAutoModerationRuleOptions, EditAutoModerationRuleOptions, RawAutoModerationRule } from "../types/auto-moderation";
32
33
  import type { AuditLog, GetAuditLogOptions, RawAuditLogEntry } from "../types/audit-log";
@@ -139,6 +140,8 @@ export default class Guild extends Base {
139
140
  safetyAlertsChannelID: string | null;
140
141
  /** The scheduled events in this guild. */
141
142
  scheduledEvents: TypedCollection<RawScheduledEvent, GuildScheduledEvent>;
143
+ /** The soundboard sounds in this guild. */
144
+ soundboardSounds: TypedCollection<RawSoundboard, Soundboard>;
142
145
  /** The invite splash hash of this guild. */
143
146
  splash: string | null;
144
147
  /** The stage instances in this guild. */
@@ -243,6 +246,11 @@ export default class Guild extends Base {
243
246
  * @param options The options for creating the scheduled event.
244
247
  */
245
248
  createScheduledEvent(options: CreateScheduledEventOptions): Promise<GuildScheduledEvent>;
249
+ /**
250
+ * Create a soundboard sound.
251
+ * @param options The options for creating the soundboard sound.
252
+ */
253
+ createSoundboardSound(options: CreateSoundboardSoundOptions): Promise<Soundboard>;
246
254
  /**
247
255
  * Create a sticker.
248
256
  * @param options The options for creating the sticker.
@@ -293,6 +301,12 @@ export default class Guild extends Base {
293
301
  * @param reason The reason for deleting the scheduled event. Discord's docs do not explicitly state a reason can be provided, so it may not be used.
294
302
  */
295
303
  deleteScheduledEvent(eventID: string, reason?: string): Promise<void>;
304
+ /**
305
+ * Delete a soundboard sound.
306
+ * @param soundID The ID of the soundboard sound.
307
+ * @param reason The reason for deleting the soundboard sound.
308
+ */
309
+ deleteSoundboardSound(soundID: string, reason?: string): Promise<void>;
296
310
  /**
297
311
  * Delete a sticker.
298
312
  * @param stickerID The ID of the sticker to delete.
@@ -397,6 +411,12 @@ export default class Guild extends Base {
397
411
  * @param options The options for editing the scheduled event.
398
412
  */
399
413
  editScheduledEvent(options: EditScheduledEventOptions): Promise<GuildScheduledEvent>;
414
+ /**
415
+ * Edit a soundboard sound.
416
+ * @param soundID The ID of the soundboard sound.
417
+ * @param options The options for editing the soundboard sound.
418
+ */
419
+ editSoundboardSound(soundID: string, options: EditSoundboardSoundOptions): Promise<Soundboard>;
400
420
  /**
401
421
  * Edit a sticker.
402
422
  * @param options The options for editing the sticker.
@@ -553,6 +573,15 @@ export default class Guild extends Base {
553
573
  * @param withUserCount If the number of users subscribed to the event should be included.
554
574
  */
555
575
  getScheduledEvents(withUserCount?: number): Promise<Array<GuildScheduledEvent>>;
576
+ /**
577
+ * Get a soundboard sound.
578
+ * @param soundID The ID of the soundboard sound to get.
579
+ */
580
+ getSoundboardSound(soundID: string): Promise<Soundboard>;
581
+ /**
582
+ * Get this guild's soundboard sounds.
583
+ */
584
+ getSoundboardSounds(): Promise<Array<Soundboard>>;
556
585
  /**
557
586
  * Get a sticker. Response will include a user if the client has the `MANAGE_EMOJIS_AND_STICKERS` permissions.
558
587
  * @param stickerID The ID of the sticker to get.