disgroove 2.0.0-dev.40377cb → 2.0.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 (61) hide show
  1. package/README.md +9 -9
  2. package/dist/lib/Client.d.ts +560 -142
  3. package/dist/lib/Client.js +1794 -124
  4. package/dist/lib/Client.js.map +1 -1
  5. package/dist/lib/constants.d.ts +7 -7
  6. package/dist/lib/constants.js +218 -218
  7. package/dist/lib/gateway/Shard.d.ts +0 -1
  8. package/dist/lib/gateway/Shard.js +65 -261
  9. package/dist/lib/gateway/Shard.js.map +1 -1
  10. package/dist/lib/gateway/ShardManager.d.ts +1 -2
  11. package/dist/lib/gateway/ShardManager.js +1 -2
  12. package/dist/lib/gateway/ShardManager.js.map +1 -1
  13. package/dist/lib/index.d.ts +0 -1
  14. package/dist/lib/index.js +0 -1
  15. package/dist/lib/index.js.map +1 -1
  16. package/dist/lib/rest/Endpoints.d.ts +3 -3
  17. package/dist/lib/rest/Endpoints.js +8 -8
  18. package/dist/lib/rest/Endpoints.js.map +1 -1
  19. package/dist/lib/rest/RequestManager.d.ts +8 -2
  20. package/dist/lib/rest/RequestManager.js +17 -10
  21. package/dist/lib/rest/RequestManager.js.map +1 -1
  22. package/dist/lib/rest/index.d.ts +0 -1
  23. package/dist/lib/rest/index.js +0 -1
  24. package/dist/lib/rest/index.js.map +1 -1
  25. package/dist/lib/structures/Webhook.js +14 -3
  26. package/dist/lib/structures/Webhook.js.map +1 -1
  27. package/dist/lib/types/application-command.d.ts +94 -20
  28. package/dist/lib/types/application-role-connection-metadata.d.ts +7 -6
  29. package/dist/lib/types/application.d.ts +24 -13
  30. package/dist/lib/types/audit-log.d.ts +15 -16
  31. package/dist/lib/types/auto-moderation.d.ts +27 -7
  32. package/dist/lib/types/channel.d.ts +170 -68
  33. package/dist/lib/types/emoji.d.ts +12 -3
  34. package/dist/lib/types/entitlements.d.ts +6 -1
  35. package/dist/lib/types/gateway-events.d.ts +11 -336
  36. package/dist/lib/types/guild-scheduled-event.d.ts +31 -8
  37. package/dist/lib/types/guild-template.d.ts +16 -4
  38. package/dist/lib/types/guild.d.ts +190 -37
  39. package/dist/lib/types/index.d.ts +2 -0
  40. package/dist/lib/types/index.js.map +1 -1
  41. package/dist/lib/types/interaction.d.ts +37 -36
  42. package/dist/lib/types/invite.d.ts +12 -12
  43. package/dist/lib/types/message-components.d.ts +12 -12
  44. package/dist/lib/types/role.d.ts +3 -3
  45. package/dist/lib/types/sku.d.ts +8 -8
  46. package/dist/lib/types/stage-instance.d.ts +12 -1
  47. package/dist/lib/types/sticker.d.ts +18 -6
  48. package/dist/lib/types/team.d.ts +5 -5
  49. package/dist/lib/types/user.d.ts +30 -7
  50. package/dist/lib/types/voice.d.ts +4 -4
  51. package/dist/lib/types/webhook.d.ts +38 -6
  52. package/dist/lib/utils/Util.d.ts +2 -13
  53. package/dist/lib/utils/Util.js +39 -535
  54. package/dist/lib/utils/Util.js.map +1 -1
  55. package/dist/lib/utils/errors.d.ts +1 -1
  56. package/dist/lib/utils/errors.js +4 -4
  57. package/dist/lib/utils/index.d.ts +0 -1
  58. package/dist/lib/utils/index.js +0 -1
  59. package/dist/lib/utils/index.js.map +1 -1
  60. package/dist/package.json +7 -7
  61. package/package.json +7 -7
@@ -33,20 +33,20 @@ export interface RawActionMetadata {
33
33
  duration_seconds: number;
34
34
  custom_message?: string;
35
35
  }
36
- export interface JSONAutoModerationRule {
36
+ export interface AutoModerationRule {
37
37
  id: string;
38
38
  guildId: string;
39
39
  name: string;
40
40
  creatorId: string;
41
41
  eventType: EventTypes;
42
42
  triggerType: TriggerTypes;
43
- triggerMetadata: JSONTriggerMetadata;
44
- actions: Array<JSONAutoModerationAction>;
43
+ triggerMetadata: TriggerMetadata;
44
+ actions: Array<AutoModerationAction>;
45
45
  enabled: boolean;
46
46
  exemptRoles: Array<string>;
47
47
  exemptChannels: Array<string>;
48
48
  }
49
- export interface JSONTriggerMetadata {
49
+ export interface TriggerMetadata {
50
50
  keywordFilter: Array<string>;
51
51
  regexPatterns: Array<string>;
52
52
  presets: KeywordPresetTypes;
@@ -54,12 +54,32 @@ export interface JSONTriggerMetadata {
54
54
  mentionTotalLimit: number;
55
55
  mentionRaidProtection: boolean;
56
56
  }
57
- export interface JSONAutoModerationAction {
57
+ export interface AutoModerationAction {
58
58
  type: ActionTypes;
59
- metadata: JSONActionMetadata;
59
+ metadata: ActionMetadata;
60
60
  }
61
- export interface JSONActionMetadata {
61
+ export interface ActionMetadata {
62
62
  channelId: string;
63
63
  durationSeconds: number;
64
64
  customMessage?: string;
65
65
  }
66
+ export interface CreateAutoModerationRuleParams {
67
+ name: string;
68
+ eventType: EventTypes;
69
+ triggerType: TriggerTypes;
70
+ triggerMetadata?: TriggerMetadata;
71
+ actions: Array<AutoModerationAction>;
72
+ enabled?: boolean;
73
+ exemptRoles?: Array<string>;
74
+ exemptChannels?: Array<string>;
75
+ }
76
+ export interface EditAutoModerationRuleParams {
77
+ name?: string;
78
+ eventType?: EventTypes;
79
+ triggerType?: TriggerTypes;
80
+ triggerMetadata?: TriggerMetadata;
81
+ actions?: Array<AutoModerationAction>;
82
+ enabled?: boolean;
83
+ exemptRoles?: Array<string>;
84
+ exemptChannels?: Array<string>;
85
+ }
@@ -1,5 +1,6 @@
1
- import type { AllowedMentionTypes, AttachmentFlags, ChannelFlags, ChannelTypes, ForumLayoutTypes, MessageActivityTypes, MessageFlags, MessageTypes, SortOrderTypes, VideoQualityModes } from "../constants";
2
- import type { RawApplication, RawGuildMember, RawUser, RawEmoji, RawSticker, RawStickerItem, RawMessageInteraction, JSONMessageInteraction, JSONStickerItem, JSONSticker, JSONEmoji, JSONUser, JSONApplication, JSONGuildMember, RawActionRow, JSONActionRow, RawResolvedData, JSONResolvedData } from ".";
1
+ import type { AllowedMentionTypes, AttachmentFlags, ChannelFlags, ChannelTypes, ForumLayoutTypes, InviteTargetTypes, MessageActivityTypes, MessageFlags, MessageTypes, SortOrderTypes, VideoQualityModes } from "../constants";
2
+ import type { RawApplication, RawGuildMember, RawUser, RawEmoji, RawSticker, RawStickerItem, RawMessageInteraction, MessageInteraction, StickerItem, Sticker, Emoji, User, Application, GuildMember, RawActionRow, ActionRow, RawResolvedData, ResolvedData } from ".";
3
+ import type { File } from "../rest";
3
4
  /** https://discord.com/developers/docs/resources/channel#channel-object-channel-structure */
4
5
  export interface RawChannel {
5
6
  id: string;
@@ -239,12 +240,12 @@ export interface RawRoleSubscriptionData {
239
240
  total_months_subscribed: number;
240
241
  is_renewal: boolean;
241
242
  }
242
- export interface JSONChannel {
243
+ export interface Channel {
243
244
  id: string;
244
245
  type: ChannelTypes;
245
246
  guildId?: string;
246
247
  position?: number;
247
- permissionOverwrites?: Array<JSONOverwrite>;
248
+ permissionOverwrites?: Array<Overwrite>;
248
249
  name?: string | null;
249
250
  topic?: string | null;
250
251
  nsfw?: boolean;
@@ -252,7 +253,7 @@ export interface JSONChannel {
252
253
  bitrate?: number;
253
254
  userLimit?: number;
254
255
  rateLimitPerUser?: number;
255
- recipients?: Array<JSONUser>;
256
+ recipients?: Array<User>;
256
257
  icon?: string | null;
257
258
  ownerId?: string;
258
259
  applicationId?: string;
@@ -263,86 +264,86 @@ export interface JSONChannel {
263
264
  videoQualityMode?: VideoQualityModes;
264
265
  messageCount?: number;
265
266
  memberCount?: number;
266
- threadMetadata?: JSONThreadMetadata;
267
- member?: JSONThreadMember;
267
+ threadMetadata?: ThreadMetadata;
268
+ member?: ThreadMember;
268
269
  defaultAutoArchiveDuration?: number;
269
270
  permissions?: string;
270
271
  flags?: ChannelFlags;
271
272
  totalMessageSent?: number;
272
- availableTags?: Array<JSONForumTag>;
273
+ availableTags?: Array<ForumTag>;
273
274
  appliedTags?: Array<string>;
274
- defaultReactionEmoji?: JSONDefaultReaction | null;
275
+ defaultReactionEmoji?: DefaultReaction | null;
275
276
  defaultThreadRateLimitPerUser?: number;
276
277
  defaultSortOrder?: SortOrderTypes | null;
277
278
  defaultForumLayout?: ForumLayoutTypes;
278
279
  }
279
- export interface JSONMessage {
280
+ export interface Message {
280
281
  id: string;
281
282
  channelId: string;
282
- author: JSONUser;
283
+ author: User;
283
284
  content: string;
284
285
  timestamp: string;
285
286
  editedTimestamp: string | null;
286
287
  tts: boolean;
287
288
  mentionEveryone: boolean;
288
- mentions: Array<JSONUser>;
289
+ mentions: Array<User>;
289
290
  mentionRoles: Array<string>;
290
- mentionChannels?: Array<JSONChannelMention>;
291
- attachments: Array<JSONAttachment>;
292
- embeds: Array<JSONEmbed>;
293
- reactions?: Array<JSONReaction>;
291
+ mentionChannels?: Array<ChannelMention>;
292
+ attachments: Array<Attachment>;
293
+ embeds: Array<Embed>;
294
+ reactions?: Array<Reaction>;
294
295
  nonce?: number | string;
295
296
  pinned: boolean;
296
297
  webhookId?: string;
297
298
  type: MessageTypes;
298
- activity?: JSONMessageActivity;
299
- application?: JSONApplication;
299
+ activity?: MessageActivity;
300
+ application?: Application;
300
301
  applicationId?: string;
301
- messageReference?: JSONMessageReference;
302
+ messageReference?: MessageReference;
302
303
  flags?: MessageFlags;
303
- referencedMessage?: JSONMessage | null;
304
- interaction?: JSONMessageInteraction;
305
- thread?: JSONChannel;
306
- components?: Array<JSONActionRow>;
307
- stickerItems?: Array<JSONStickerItem>;
308
- stickers?: Array<JSONSticker>;
304
+ referencedMessage?: Message | null;
305
+ interaction?: MessageInteraction;
306
+ thread?: Channel;
307
+ components?: Array<ActionRow>;
308
+ stickerItems?: Array<StickerItem>;
309
+ stickers?: Array<Sticker>;
309
310
  position?: number;
310
- roleSubscriptionData?: JSONRoleSubscriptionData;
311
- resolved?: JSONResolvedData;
311
+ roleSubscriptionData?: RoleSubscriptionData;
312
+ resolved?: ResolvedData;
312
313
  }
313
- export interface JSONMessageActivity {
314
+ export interface MessageActivity {
314
315
  type: MessageActivityTypes;
315
316
  partyId?: string;
316
317
  }
317
- export interface JSONMessageReference {
318
+ export interface MessageReference {
318
319
  messageId?: string;
319
320
  channelId?: string;
320
321
  guildId?: string;
321
322
  failIfNotExists?: boolean;
322
323
  }
323
- export interface JSONFollowedChannel {
324
+ export interface FollowedChannel {
324
325
  channelId: string;
325
326
  webhookId: string;
326
327
  }
327
- export interface JSONReaction {
328
+ export interface Reaction {
328
329
  count: number;
329
- countDetails: JSONReactionCountDetails;
330
+ countDetails: ReactionCountDetails;
330
331
  me: boolean;
331
332
  meBurst: boolean;
332
- emoji: JSONEmoji;
333
+ emoji: Emoji;
333
334
  burstColors: Array<string>;
334
335
  }
335
- export interface JSONReactionCountDetails {
336
+ export interface ReactionCountDetails {
336
337
  burst: number;
337
338
  normal: number;
338
339
  }
339
- export interface JSONOverwrite {
340
+ export interface Overwrite {
340
341
  id: string;
341
342
  type: number;
342
343
  allow: string;
343
344
  deny: string;
344
345
  }
345
- export interface JSONThreadMetadata {
346
+ export interface ThreadMetadata {
346
347
  archived: boolean;
347
348
  autoArchiveDuration: number;
348
349
  archiveTimestamp: string;
@@ -350,85 +351,85 @@ export interface JSONThreadMetadata {
350
351
  invitable?: boolean;
351
352
  createTimestamp?: string | null;
352
353
  }
353
- export interface JSONThreadMember {
354
+ export interface ThreadMember {
354
355
  id?: string;
355
356
  userId?: string;
356
357
  joinTimestamp: string;
357
358
  flags: number;
358
- member?: JSONGuildMember;
359
+ member?: GuildMember;
359
360
  }
360
- export interface JSONDefaultReaction {
361
+ export interface DefaultReaction {
361
362
  emojiId: string | null;
362
363
  emojiName: string | null;
363
364
  }
364
- export interface JSONForumTag {
365
+ export interface ForumTag {
365
366
  id: string;
366
367
  name: string;
367
368
  moderated: boolean;
368
369
  emojiId?: string;
369
370
  emojiName?: string;
370
371
  }
371
- export interface JSONEmbed {
372
+ export interface Embed {
372
373
  title?: string;
373
374
  type?: string;
374
375
  description?: string;
375
376
  url?: string;
376
377
  timestamp?: string;
377
378
  color?: number;
378
- footer?: JSONEmbedFooter;
379
- image?: JSONEmbedImage;
380
- thumbnail?: JSONEmbedThumbnail;
381
- video?: JSONEmbedVideo;
382
- provider?: JSONEmbedProvider;
383
- author?: JSONEmbedAuthor;
384
- fields?: Array<JSONEmbedField>;
385
- }
386
- export interface JSONEmbedThumbnail {
379
+ footer?: EmbedFooter;
380
+ image?: EmbedImage;
381
+ thumbnail?: EmbedThumbnail;
382
+ video?: EmbedVideo;
383
+ provider?: EmbedProvider;
384
+ author?: EmbedAuthor;
385
+ fields?: Array<EmbedField>;
386
+ }
387
+ export interface EmbedThumbnail {
387
388
  url: string;
388
- proxyURL?: string;
389
+ proxyUrl?: string;
389
390
  height?: number;
390
391
  width?: number;
391
392
  }
392
- export interface JSONEmbedVideo {
393
+ export interface EmbedVideo {
393
394
  url?: string;
394
- proxyURL?: string;
395
+ proxyUrl?: string;
395
396
  height?: number;
396
397
  width?: number;
397
398
  }
398
- export interface JSONEmbedImage {
399
+ export interface EmbedImage {
399
400
  url: string;
400
- proxyURL?: string;
401
+ proxyUrl?: string;
401
402
  height?: number;
402
403
  width?: number;
403
404
  }
404
- export interface JSONEmbedProvider {
405
+ export interface EmbedProvider {
405
406
  name?: string;
406
407
  url?: string;
407
408
  }
408
- export interface JSONEmbedAuthor {
409
+ export interface EmbedAuthor {
409
410
  name: string;
410
411
  url?: string;
411
- iconURL?: string;
412
- proxyIconURL?: string;
412
+ iconUrl?: string;
413
+ proxyIconUrl?: string;
413
414
  }
414
- export interface JSONEmbedFooter {
415
+ export interface EmbedFooter {
415
416
  text: string;
416
- iconURL?: string;
417
- proxyIconURL?: string;
417
+ iconUrl?: string;
418
+ proxyIconUrl?: string;
418
419
  }
419
- export interface JSONEmbedField {
420
+ export interface EmbedField {
420
421
  name: string;
421
422
  value: string;
422
423
  inline?: boolean;
423
424
  }
424
- export interface JSONAttachment {
425
+ export interface Attachment {
425
426
  id: string;
426
427
  filename: string;
427
428
  description?: string;
428
429
  contentType?: string;
429
430
  size: number;
430
431
  url: string;
431
- proxyURL: string;
432
+ proxyUrl: string;
432
433
  height?: number;
433
434
  width?: number;
434
435
  ephemeral?: boolean;
@@ -436,21 +437,122 @@ export interface JSONAttachment {
436
437
  waveform?: boolean;
437
438
  flags?: AttachmentFlags;
438
439
  }
439
- export interface JSONChannelMention {
440
+ export interface ChannelMention {
440
441
  id: string;
441
442
  guildId: string;
442
443
  type: ChannelTypes;
443
444
  name: string;
444
445
  }
445
- export interface JSONAllowedMentions {
446
+ export interface AllowedMentions {
446
447
  parse: Array<AllowedMentionTypes>;
447
448
  roles: Array<string>;
448
449
  users: Array<string>;
449
450
  repliedUser: boolean;
450
451
  }
451
- export interface JSONRoleSubscriptionData {
452
+ export interface RoleSubscriptionData {
452
453
  roleSubscriptionListingId: string;
453
454
  tierName: string;
454
455
  totalMonthsSubscribed: number;
455
456
  isRenewal: boolean;
456
457
  }
458
+ export interface EditChannelParams {
459
+ name?: string;
460
+ icon?: string;
461
+ type?: ChannelTypes;
462
+ position?: number | null;
463
+ topic?: string | null;
464
+ nsfw?: boolean | null;
465
+ rateLimitPerUser?: number | null;
466
+ bitrate?: number | null;
467
+ userLimit?: number | null;
468
+ permissionOverwrites?: Array<Overwrite> | null;
469
+ parentId?: string | null;
470
+ rtcRegion?: string | null;
471
+ videoQualityMode?: VideoQualityModes | null;
472
+ defaultAutoArchiveDuration?: number | null;
473
+ flags?: ChannelFlags;
474
+ availableTags?: Array<ForumTag>;
475
+ defaultReactionEmoji?: DefaultReaction | null;
476
+ defaultThreadRateLimitPerUser?: number;
477
+ defaultSortOrder?: SortOrderTypes | null;
478
+ defaultForumLayout?: ForumLayoutTypes;
479
+ archived?: boolean;
480
+ autoArchiveDuration?: number;
481
+ locked?: boolean;
482
+ invitable?: boolean;
483
+ appliedTags?: Array<string>;
484
+ }
485
+ export interface CreateMessageParams {
486
+ content?: string;
487
+ nonce?: string | number;
488
+ tts?: boolean;
489
+ embeds?: Array<Embed>;
490
+ allowedMentions?: AllowedMentions;
491
+ messageReference?: MessageReference;
492
+ components?: Array<ActionRow>;
493
+ stickersIds?: Array<string>;
494
+ files?: Array<File>;
495
+ attachments?: Array<Attachment>;
496
+ flags?: MessageFlags;
497
+ enforceNonce?: boolean;
498
+ }
499
+ export interface EditMessageParams {
500
+ content?: string | null;
501
+ embeds?: Array<Embed> | null;
502
+ flags?: MessageFlags | null;
503
+ allowedMentions?: AllowedMentions | null;
504
+ components?: Array<ActionRow> | null;
505
+ files?: Array<File> | null;
506
+ attachments?: Array<Attachment> | null;
507
+ }
508
+ export interface BulkDeleteMessagesParams {
509
+ messages: Array<string>;
510
+ }
511
+ export interface EditChannelPermissionsParams {
512
+ allow?: string | null;
513
+ deny?: string | null;
514
+ type: number;
515
+ }
516
+ export interface CreateChannelInviteParams {
517
+ maxAge?: number;
518
+ maxUses?: number;
519
+ temporary?: boolean;
520
+ unique?: boolean;
521
+ targetType?: InviteTargetTypes;
522
+ targetUserId?: string;
523
+ targetApplicationId?: string;
524
+ }
525
+ export interface FollowAnnouncementChannelParams {
526
+ webhookChannelId: boolean;
527
+ }
528
+ export interface AddChannelRecipientParams {
529
+ accessToken: string;
530
+ nick: string;
531
+ }
532
+ export interface CreateThreadFromMessageParams {
533
+ name: string;
534
+ autoArchiveDuration?: number;
535
+ rateLimitPerUser?: number | null;
536
+ }
537
+ export interface CreateThreadWithoutMessageParams {
538
+ name: string;
539
+ autoArchiveDuration?: number;
540
+ type?: ChannelTypes;
541
+ invitable?: boolean;
542
+ rateLimitPerUser?: number | null;
543
+ }
544
+ export interface CreateThreadParams {
545
+ name: string;
546
+ autoArchiveDuration?: number;
547
+ rateLimitPerUser?: number | null;
548
+ message: {
549
+ content?: string | null;
550
+ embeds?: Array<Embed> | null;
551
+ allowedMentions?: AllowedMentions | null;
552
+ components?: Array<ActionRow> | null;
553
+ attachments?: Array<Attachment> | null;
554
+ flags?: MessageFlags | null;
555
+ };
556
+ appliedTags?: Array<string>;
557
+ files?: Array<File> | null;
558
+ }
@@ -1,4 +1,4 @@
1
- import type { JSONUser, RawUser } from ".";
1
+ import type { User, RawUser } from ".";
2
2
  /** https://discord.com/developers/docs/resources/emoji#emoji-object-emoji-structure */
3
3
  export interface RawEmoji {
4
4
  id: string | null;
@@ -10,13 +10,22 @@ export interface RawEmoji {
10
10
  animated?: boolean;
11
11
  available?: boolean;
12
12
  }
13
- export interface JSONEmoji {
13
+ export interface Emoji {
14
14
  id: string | null;
15
15
  name: string | null;
16
16
  roles?: Array<string>;
17
- user?: JSONUser;
17
+ user?: User;
18
18
  requireColons?: boolean;
19
19
  managed?: boolean;
20
20
  animated?: boolean;
21
21
  available?: boolean;
22
22
  }
23
+ export interface CreateGuildEmojiParams {
24
+ name: string;
25
+ image: string;
26
+ roles: Array<string>;
27
+ }
28
+ export interface EditGuildEmojiParams {
29
+ name?: string;
30
+ roles?: Array<string> | null;
31
+ }
@@ -15,7 +15,7 @@ export interface RawEntitlement {
15
15
  guild_id?: string;
16
16
  subscription_id?: string;
17
17
  }
18
- export interface JSONEntitlement {
18
+ export interface Entitlement {
19
19
  id: string;
20
20
  skuId: string;
21
21
  applicationId: string;
@@ -30,3 +30,8 @@ export interface JSONEntitlement {
30
30
  guildId?: string;
31
31
  subscriptionId?: string;
32
32
  }
33
+ export interface CreateTestEntitlementParams {
34
+ skuId: string;
35
+ ownerId: string;
36
+ ownerType: number;
37
+ }