lunibee 0.1.5 → 0.1.7

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 (60) hide show
  1. package/README.md +13 -24
  2. package/dist/builders/commands.d.ts +37 -0
  3. package/dist/builders/components.d.ts +127 -12
  4. package/dist/builders/embed.d.ts +3 -1
  5. package/dist/builders/index.d.ts +2 -2
  6. package/dist/builders/index.js +319 -16
  7. package/dist/builders/index.js.map +8 -7
  8. package/dist/collection/index.d.ts +36 -0
  9. package/dist/collection/index.js +110 -6
  10. package/dist/collection/index.js.map +4 -4
  11. package/dist/core/events.d.ts +69 -3
  12. package/dist/core/index.d.ts +158 -90
  13. package/dist/core/index.js +1543 -1169
  14. package/dist/core/index.js.map +24 -23
  15. package/dist/core/permissions.d.ts +112 -53
  16. package/dist/formatters/index.d.ts +43 -3
  17. package/dist/formatters/index.js +64 -1
  18. package/dist/formatters/index.js.map +3 -3
  19. package/dist/handlers/index.js.map +2 -2
  20. package/dist/index.d.ts +5 -4
  21. package/dist/index.js +3882 -1588
  22. package/dist/index.js.map +43 -35
  23. package/dist/managers/emoji.d.ts +38 -0
  24. package/dist/managers/guild.d.ts +141 -0
  25. package/dist/managers/index.d.ts +86 -75
  26. package/dist/managers/index.js +1084 -67
  27. package/dist/managers/index.js.map +21 -16
  28. package/dist/managers/message.d.ts +7 -12
  29. package/dist/managers/user.d.ts +20 -0
  30. package/dist/rest/index.d.ts +173 -1
  31. package/dist/rest/index.js +343 -47
  32. package/dist/rest/index.js.map +8 -6
  33. package/dist/rest/redis.d.ts +37 -0
  34. package/dist/rest/routes.d.ts +26 -1
  35. package/dist/rest/store.d.ts +38 -0
  36. package/dist/rest/webhook.d.ts +2 -2
  37. package/dist/sharding/cluster.d.ts +61 -0
  38. package/dist/sharding/index.d.ts +8 -0
  39. package/dist/sharding/index.js +289 -18
  40. package/dist/sharding/index.js.map +8 -7
  41. package/dist/structures/audit-log.d.ts +26 -0
  42. package/dist/structures/base.d.ts +131 -48
  43. package/dist/structures/embed.d.ts +65 -0
  44. package/dist/structures/index.d.ts +74 -26
  45. package/dist/structures/index.js +1528 -59
  46. package/dist/structures/index.js.map +14 -8
  47. package/dist/structures/interactions.d.ts +72 -17
  48. package/dist/structures/resources.d.ts +199 -7
  49. package/dist/types/index.d.ts +605 -84
  50. package/dist/types/index.js +71 -1
  51. package/dist/types/index.js.map +3 -3
  52. package/dist/utils/index.js.map +2 -2
  53. package/dist/voice/index.d.ts +88 -0
  54. package/dist/voice/index.js +204 -5
  55. package/dist/voice/index.js.map +3 -3
  56. package/dist/ws/index.d.ts +40 -1
  57. package/dist/ws/index.js +105 -18
  58. package/dist/ws/index.js.map +4 -4
  59. package/package.json +16 -16
  60. package/dist/structures/permissions.d.ts +0 -73
@@ -186,6 +186,107 @@ export declare const ChannelType: {
186
186
  readonly GuildForum: 15;
187
187
  readonly GuildMedia: 16;
188
188
  };
189
+ /** Discord component types. */
190
+ export declare const ComponentType: {
191
+ readonly ActionRow: 1;
192
+ readonly Button: 2;
193
+ readonly StringSelect: 3;
194
+ readonly TextInput: 4;
195
+ readonly UserSelect: 5;
196
+ readonly RoleSelect: 6;
197
+ readonly MentionableSelect: 7;
198
+ readonly ChannelSelect: 8;
199
+ readonly Section: 9;
200
+ readonly TextDisplay: 10;
201
+ readonly Thumbnail: 11;
202
+ readonly MediaGallery: 12;
203
+ readonly File: 13;
204
+ readonly Separator: 14;
205
+ readonly ContentInventoryEntry: 16;
206
+ readonly Container: 17;
207
+ };
208
+ /** Discord button style types. */
209
+ export declare const ButtonStyle: {
210
+ readonly Primary: 1;
211
+ readonly Secondary: 2;
212
+ readonly Success: 3;
213
+ readonly Danger: 4;
214
+ readonly Link: 5;
215
+ readonly Premium: 6;
216
+ };
217
+ /** Discord text input style types. */
218
+ export declare const TextInputStyle: {
219
+ readonly Short: 1;
220
+ readonly Paragraph: 2;
221
+ };
222
+ /** Discord interaction response types. */
223
+ export declare const InteractionResponseType: {
224
+ readonly Pong: 1;
225
+ readonly ChannelMessage: 4;
226
+ readonly DeferredChannelMessage: 5;
227
+ readonly DeferredMessageUpdate: 6;
228
+ readonly MessageUpdate: 7;
229
+ readonly Autocomplete: 8;
230
+ readonly Modal: 9;
231
+ };
232
+ /** Discord sticker format types. */
233
+ export declare const StickerFormatType: {
234
+ readonly PNG: 1;
235
+ readonly APNG: 2;
236
+ readonly Lottie: 3;
237
+ readonly GIF: 4;
238
+ };
239
+ /** Discord sticker types. */
240
+ export declare const StickerType: {
241
+ readonly Standard: 1;
242
+ readonly Guild: 2;
243
+ };
244
+ /** Discord verification levels. */
245
+ export declare const VerificationLevel: {
246
+ readonly None: 0;
247
+ readonly Low: 1;
248
+ readonly Medium: 2;
249
+ readonly High: 3;
250
+ readonly VeryHigh: 4;
251
+ };
252
+ /** Discord premium tiers. */
253
+ export declare const PremiumTier: {
254
+ readonly None: 0;
255
+ readonly Tier1: 1;
256
+ readonly Tier2: 2;
257
+ readonly Tier3: 3;
258
+ };
259
+ /** Raw Discord embed footer object. */
260
+ export interface APIEmbedFooter {
261
+ text: string;
262
+ icon_url?: string;
263
+ proxy_icon_url?: string;
264
+ }
265
+ /** Raw Discord embed image/thumbnail/video object. */
266
+ export interface APIEmbedMedia {
267
+ url: string;
268
+ proxy_url?: string;
269
+ height?: number;
270
+ width?: number;
271
+ }
272
+ /** Raw Discord embed provider object. */
273
+ export interface APIEmbedProvider {
274
+ name?: string;
275
+ url?: string;
276
+ }
277
+ /** Raw Discord embed author object. */
278
+ export interface APIEmbedAuthor {
279
+ name: string;
280
+ url?: string;
281
+ icon_url?: string;
282
+ proxy_icon_url?: string;
283
+ }
284
+ /** Raw Discord embed field object. */
285
+ export interface APIEmbedField {
286
+ name: string;
287
+ value: string;
288
+ inline?: boolean;
289
+ }
189
290
  /** Raw Discord embed object. */
190
291
  export interface APIEmbed {
191
292
  title?: string;
@@ -194,14 +295,75 @@ export interface APIEmbed {
194
295
  url?: string;
195
296
  timestamp?: string;
196
297
  color?: number;
197
- footer?: Record<string, unknown>;
198
- image?: Record<string, unknown>;
199
- thumbnail?: Record<string, unknown>;
200
- video?: Record<string, unknown>;
201
- provider?: Record<string, unknown>;
202
- author?: Record<string, unknown>;
203
- fields?: Array<Record<string, unknown>>;
298
+ footer?: APIEmbedFooter;
299
+ image?: APIEmbedMedia;
300
+ thumbnail?: APIEmbedMedia;
301
+ video?: APIEmbedMedia;
302
+ provider?: APIEmbedProvider;
303
+ author?: APIEmbedAuthor;
304
+ fields?: APIEmbedField[];
305
+ }
306
+ /** Raw Discord select menu option. */
307
+ export interface APISelectMenuOption {
308
+ label: string;
309
+ value: string;
310
+ description?: string;
311
+ emoji?: APIPartialEmoji;
312
+ default?: boolean;
313
+ }
314
+ /** Raw Discord emoji (partial, as used in components). */
315
+ export interface APIPartialEmoji {
316
+ id?: Snowflake | null;
317
+ name?: string | null;
318
+ animated?: boolean;
319
+ }
320
+ /** Raw Discord button component. */
321
+ export interface APIButtonComponent {
322
+ type: 2;
323
+ style: number;
324
+ label?: string;
325
+ emoji?: APIPartialEmoji;
326
+ custom_id?: string;
327
+ url?: string;
328
+ sku_id?: string;
329
+ disabled?: boolean;
330
+ }
331
+ /** Raw Discord select menu component. */
332
+ export interface APISelectMenuComponent {
333
+ type: 3 | 5 | 6 | 7 | 8;
334
+ custom_id: string;
335
+ options?: APISelectMenuOption[];
336
+ channel_types?: number[];
337
+ placeholder?: string;
338
+ min_values?: number;
339
+ max_values?: number;
340
+ disabled?: boolean;
341
+ }
342
+ /** Raw Discord text input component. */
343
+ export interface APITextInputComponent {
344
+ type: 4;
345
+ custom_id: string;
346
+ style: number;
347
+ label: string;
348
+ min_length?: number;
349
+ max_length?: number;
350
+ required?: boolean;
351
+ value?: string;
352
+ placeholder?: string;
353
+ }
354
+ /** Union of all raw message component types. */
355
+ export type APIMessageActionRowComponent = APIButtonComponent | APISelectMenuComponent | APITextInputComponent;
356
+ /** Raw Discord action row component. */
357
+ export interface APIActionRowComponent {
358
+ type: 1;
359
+ id?: number;
360
+ components: APIMessageActionRowComponent[];
204
361
  }
362
+ /** Union including action rows and V2 components. */
363
+ export type APIMessageComponent = APIActionRowComponent | {
364
+ type: Exclude<number, 1>;
365
+ [key: string]: any;
366
+ };
205
367
  /** Raw Discord attachment object. */
206
368
  export interface APIAttachment {
207
369
  id: Snowflake;
@@ -218,18 +380,25 @@ export interface APIAttachment {
218
380
  waveform?: string;
219
381
  flags?: number;
220
382
  }
221
- /** Raw Discord message component object. */
222
- export interface APIMessageComponent {
383
+ /** Compact sticker item as included in messages. */
384
+ export interface APIStickerItem {
385
+ id: Snowflake;
386
+ name: string;
387
+ format_type: number;
388
+ }
389
+ /** Full Discord sticker object. */
390
+ export interface APISticker {
391
+ id: Snowflake;
392
+ pack_id?: Snowflake;
393
+ name: string;
394
+ description?: string | null;
395
+ tags?: string;
223
396
  type: number;
224
- id?: number;
225
- custom_id?: string;
226
- style?: number;
227
- label?: string;
228
- disabled?: boolean;
229
- emoji?: Record<string, unknown>;
230
- url?: string;
231
- options?: Array<Record<string, unknown>>;
232
- components?: APIMessageComponent[];
397
+ format_type: number;
398
+ available?: boolean;
399
+ guild_id?: Snowflake;
400
+ user?: UserData;
401
+ sort_value?: number;
233
402
  }
234
403
  /** Raw Discord message reference. */
235
404
  export interface APIMessageReference {
@@ -245,7 +414,7 @@ export interface APIMessageReaction {
245
414
  count_details?: Record<string, number>;
246
415
  me?: boolean;
247
416
  me_burst?: boolean;
248
- emoji: Record<string, unknown>;
417
+ emoji: APIPartialEmoji;
249
418
  burst_colors?: string[];
250
419
  }
251
420
  /** Raw Discord message object. */
@@ -277,6 +446,8 @@ export interface APIMessage {
277
446
  interaction_metadata?: Record<string, unknown>;
278
447
  thread?: Record<string, unknown>;
279
448
  components?: APIMessageComponent[];
449
+ sticker_items?: APIStickerItem[];
450
+ stickers?: APISticker[];
280
451
  position?: number;
281
452
  role_subscription_data?: Record<string, unknown>;
282
453
  purchase_notification?: Record<string, unknown>;
@@ -307,16 +478,67 @@ export interface APIChannel {
307
478
  video_quality_mode?: number;
308
479
  message_count?: number;
309
480
  member_count?: number;
310
- thread_metadata?: Record<string, unknown>;
481
+ thread_metadata?: APIThreadMetadata;
311
482
  default_auto_archive_duration?: number;
312
483
  flags?: number;
313
484
  total_message_sent?: number;
314
- available_tags?: Array<Record<string, unknown>>;
315
- default_reaction_emoji?: Record<string, unknown> | null;
485
+ available_tags?: APIForumTag[];
486
+ default_reaction_emoji?: APIPartialEmoji | null;
316
487
  default_thread_rate_limit_per_user?: number;
317
488
  default_sort_order?: number | null;
318
489
  default_forum_layout?: number;
319
490
  }
491
+ /** Raw Discord thread metadata. */
492
+ export interface APIThreadMetadata {
493
+ archived: boolean;
494
+ auto_archive_duration: number;
495
+ archive_timestamp: string;
496
+ locked: boolean;
497
+ invitable?: boolean;
498
+ create_timestamp?: string | null;
499
+ }
500
+ /** Raw Discord forum tag. */
501
+ export interface APIForumTag {
502
+ id: Snowflake;
503
+ name: string;
504
+ moderated: boolean;
505
+ emoji_id?: Snowflake | null;
506
+ emoji_name?: string | null;
507
+ }
508
+ /** Raw Discord thread member. */
509
+ export interface APIThreadMember {
510
+ id?: Snowflake;
511
+ user_id?: Snowflake;
512
+ join_timestamp: string;
513
+ flags: number;
514
+ member?: APIGuildMember;
515
+ }
516
+ /** Raw Discord role object. */
517
+ export interface APIRole {
518
+ id: Snowflake;
519
+ name: string;
520
+ color: number;
521
+ hoist: boolean;
522
+ icon?: string | null;
523
+ unicode_emoji?: string | null;
524
+ position: number;
525
+ permissions: string;
526
+ managed: boolean;
527
+ mentionable: boolean;
528
+ tags?: Record<string, unknown>;
529
+ flags?: number;
530
+ }
531
+ /** Raw Discord emoji object. */
532
+ export interface APIEmoji {
533
+ id: Snowflake | null;
534
+ name: string | null;
535
+ roles?: Snowflake[];
536
+ user?: UserData;
537
+ require_colons?: boolean;
538
+ managed?: boolean;
539
+ animated?: boolean;
540
+ available?: boolean;
541
+ }
320
542
  /** Raw Discord guild object. */
321
543
  export interface APIGuild {
322
544
  id: Snowflake;
@@ -325,7 +547,9 @@ export interface APIGuild {
325
547
  icon_hash?: string | null;
326
548
  splash?: string | null;
327
549
  discovery_splash?: string | null;
550
+ owner?: boolean;
328
551
  owner_id?: Snowflake;
552
+ permissions?: string;
329
553
  afk_channel_id?: Snowflake | null;
330
554
  afk_timeout?: number;
331
555
  widget_enabled?: boolean;
@@ -333,8 +557,9 @@ export interface APIGuild {
333
557
  verification_level?: number;
334
558
  default_message_notifications?: number;
335
559
  explicit_content_filter?: number;
336
- roles?: Array<Record<string, unknown>>;
337
- emojis?: Array<Record<string, unknown>>;
560
+ roles?: APIRole[];
561
+ emojis?: APIEmoji[];
562
+ stickers?: APISticker[];
338
563
  features?: string[];
339
564
  mfa_level?: number;
340
565
  application_id?: Snowflake | null;
@@ -347,6 +572,7 @@ export interface APIGuild {
347
572
  description?: string | null;
348
573
  banner?: string | null;
349
574
  premium_tier?: number;
575
+ premium_subscription_count?: number;
350
576
  preferred_locale?: string;
351
577
  public_updates_channel_id?: Snowflake | null;
352
578
  max_video_channel_users?: number;
@@ -354,6 +580,41 @@ export interface APIGuild {
354
580
  approximate_presence_count?: number;
355
581
  nsfw_level?: number;
356
582
  safety_alerts_channel_id?: Snowflake | null;
583
+ member_count?: number;
584
+ }
585
+ export interface APIWelcomeScreenChannel {
586
+ channel_id: Snowflake;
587
+ description: string;
588
+ emoji_id: Snowflake | null;
589
+ emoji_name: string | null;
590
+ }
591
+ export interface APIGuildWelcomeScreen {
592
+ description: string | null;
593
+ welcome_channels: APIWelcomeScreenChannel[];
594
+ }
595
+ export interface APIOnboardingPromptOption {
596
+ id: Snowflake;
597
+ channel_ids: Snowflake[];
598
+ role_ids: Snowflake[];
599
+ emoji?: APIPartialEmoji;
600
+ title: string;
601
+ description: string | null;
602
+ }
603
+ export interface APIOnboardingPrompt {
604
+ id: Snowflake;
605
+ type: number;
606
+ options: APIOnboardingPromptOption[];
607
+ title: string;
608
+ single_select: boolean;
609
+ required: boolean;
610
+ in_onboarding: boolean;
611
+ }
612
+ export interface APIGuildOnboarding {
613
+ guild_id: Snowflake;
614
+ prompts: APIOnboardingPrompt[];
615
+ default_channel_ids: Snowflake[];
616
+ enabled: boolean;
617
+ mode: number;
357
618
  }
358
619
  /** Raw Discord guild member object. */
359
620
  export interface APIGuildMember {
@@ -371,59 +632,234 @@ export interface APIGuildMember {
371
632
  communication_disabled_until?: string | null;
372
633
  guild_id?: Snowflake;
373
634
  }
374
- /** Raw Discord reaction event payload. */
375
- export interface APIMessageReactionEvent {
635
+ /** Raw Discord voice state object. */
636
+ export interface APIVoiceState {
637
+ guild_id?: Snowflake;
638
+ channel_id?: Snowflake | null;
376
639
  user_id: Snowflake;
640
+ member?: APIGuildMember;
641
+ session_id: string;
642
+ deaf: boolean;
643
+ mute: boolean;
644
+ self_deaf: boolean;
645
+ self_mute: boolean;
646
+ self_stream?: boolean;
647
+ self_video: boolean;
648
+ suppress: boolean;
649
+ request_to_speak_timestamp?: string | null;
650
+ }
651
+ /** Raw Discord voice server update event. */
652
+ export interface APIVoiceServerUpdate {
653
+ token: string;
654
+ guild_id: Snowflake;
655
+ endpoint?: string | null;
656
+ }
657
+ /** Raw Discord activity object. */
658
+ export interface APIActivity {
659
+ name: string;
660
+ type: number;
661
+ url?: string | null;
662
+ created_at: number;
663
+ state?: string | null;
664
+ details?: string | null;
665
+ emoji?: APIPartialEmoji | null;
666
+ }
667
+ /** Raw Discord presence update event. */
668
+ export interface APIPresenceUpdate {
669
+ user: {
670
+ id: Snowflake;
671
+ } & Partial<UserData>;
672
+ guild_id: Snowflake;
673
+ status: string;
674
+ activities: APIActivity[];
675
+ client_status: {
676
+ desktop?: string;
677
+ mobile?: string;
678
+ web?: string;
679
+ };
680
+ }
681
+ /** Raw Discord typing start event. */
682
+ export interface APITypingStart {
377
683
  channel_id: Snowflake;
378
- message_id: Snowflake;
379
684
  guild_id?: Snowflake;
685
+ user_id: Snowflake;
686
+ timestamp: number;
380
687
  member?: APIGuildMember;
381
- emoji: Record<string, unknown>;
382
- message_author_id?: Snowflake;
383
- burst?: boolean;
384
- type?: number;
385
688
  }
386
- /** Raw Discord message deletion event payload. */
387
- export interface APIMessageDeleteEvent {
689
+ /** Raw Discord guild preview. */
690
+ export interface APIGuildPreview {
388
691
  id: Snowflake;
692
+ name: string;
693
+ icon: string | null;
694
+ splash: string | null;
695
+ discovery_splash: string | null;
696
+ emojis: unknown[];
697
+ features: string[];
698
+ approximate_member_count: number;
699
+ approximate_presence_count: number;
700
+ description: string | null;
701
+ stickers: unknown[];
702
+ }
703
+ /** Raw Discord invite. */
704
+ export interface APIInvite {
705
+ code: string;
706
+ guild?: Partial<APIGuild>;
707
+ channel: Partial<APIChannel>;
708
+ inviter?: UserData;
709
+ target_type?: number;
710
+ target_user?: UserData;
711
+ approximate_presence_count?: number;
712
+ approximate_member_count?: number;
713
+ }
714
+ /** Raw Discord invite create event. */
715
+ export interface APIInviteCreate {
389
716
  channel_id: Snowflake;
717
+ code: string;
718
+ created_at: string;
390
719
  guild_id?: Snowflake;
720
+ inviter?: UserData;
721
+ max_age: number;
722
+ max_uses: number;
723
+ target_type?: number;
724
+ target_user?: UserData;
725
+ temporary: boolean;
726
+ uses: number;
391
727
  }
392
- /** Raw Discord bulk message deletion event payload. */
393
- export interface APIMessageDeleteBulkEvent {
394
- ids: Snowflake[];
728
+ /** Raw Discord invite delete event. */
729
+ export interface APIInviteDelete {
395
730
  channel_id: Snowflake;
396
731
  guild_id?: Snowflake;
732
+ code: string;
397
733
  }
398
- /** Raw Discord channel deletion event payload. */
399
- export interface APIChannelDeleteEvent extends APIChannel {
734
+ /** Raw Discord webhooks update event. */
735
+ export interface APIWebhooksUpdate {
736
+ guild_id: Snowflake;
737
+ channel_id: Snowflake;
400
738
  }
401
- /** Raw Discord guild deletion event payload. */
402
- export interface APIGuildDeleteEvent {
739
+ /** Raw Discord webhook object. */
740
+ export interface APIWebhook {
403
741
  id: Snowflake;
404
- unavailable?: boolean;
742
+ type: number;
743
+ guild_id?: Snowflake | null;
744
+ channel_id?: Snowflake | null;
745
+ user?: UserData;
746
+ name?: string | null;
747
+ avatar?: string | null;
748
+ token?: string;
749
+ application_id?: Snowflake | null;
750
+ url?: string;
405
751
  }
406
- /** Raw Discord thread lifecycle payload. */
407
- export interface APIThreadEvent extends APIChannel {
752
+ /** Raw Discord AutoMod action. */
753
+ export interface APIAutoModerationAction {
754
+ type: number;
755
+ metadata?: {
756
+ channel_id?: Snowflake;
757
+ duration_seconds?: number;
758
+ custom_message?: string;
759
+ };
760
+ }
761
+ /** Raw Discord audit log change object. */
762
+ export interface APIAuditLogChange {
763
+ new_value?: unknown;
764
+ old_value?: unknown;
765
+ key: string;
766
+ }
767
+ /** Raw Discord audit log entry options object. */
768
+ export interface APIAuditLogOptions {
769
+ app_id?: Snowflake;
770
+ auto_moderation_rule_name?: string;
771
+ auto_moderation_rule_trigger_type?: string;
772
+ channel_id?: Snowflake;
773
+ count?: string;
774
+ delete_member_days?: string;
775
+ id?: Snowflake;
776
+ members_removed?: string;
777
+ message_id?: Snowflake;
778
+ role_name?: string;
779
+ type?: string;
780
+ integration_type?: string;
781
+ }
782
+ /** Raw Discord audit log entry object. */
783
+ export interface APIAuditLogEntry {
784
+ target_id: string | null;
785
+ changes?: APIAuditLogChange[];
786
+ user_id: Snowflake | null;
787
+ id: Snowflake;
788
+ action_type: number;
789
+ options?: APIAuditLogOptions;
790
+ reason?: string;
791
+ }
792
+ /** Raw Discord audit log object. */
793
+ export interface APIAuditLog {
794
+ audit_log_entries: APIAuditLogEntry[];
795
+ guild_scheduled_events: APIGuildScheduledEvent[];
796
+ integrations: Array<Record<string, unknown>>;
797
+ threads: APIChannel[];
798
+ users: UserData[];
799
+ webhooks: APIWebhook[];
800
+ application_commands: APIApplicationCommand[];
801
+ auto_moderation_rules: APIAutoModerationRule[];
802
+ }
803
+ /** Raw Discord AutoMod rule object. */
804
+ export interface APIAutoModerationRule {
805
+ id: Snowflake;
408
806
  guild_id: Snowflake;
409
- member?: Record<string, unknown>;
807
+ name: string;
808
+ creator_id: Snowflake;
809
+ event_type: number;
810
+ trigger_type: number;
811
+ trigger_metadata: Record<string, unknown>;
812
+ actions: APIAutoModerationAction[];
813
+ enabled: boolean;
814
+ exempt_roles: Snowflake[];
815
+ exempt_channels: Snowflake[];
410
816
  }
411
- /** Raw Discord READY event payload. */
412
- export interface APIReadyEvent {
413
- v: number;
414
- user: UserData;
415
- guilds: Array<{
416
- id: Snowflake;
417
- unavailable?: boolean;
418
- }>;
419
- session_id: string;
420
- resume_gateway_url: string;
421
- shard?: [number, number];
422
- application?: {
423
- id: Snowflake;
424
- flags: number;
425
- [key: string]: unknown;
426
- };
817
+ /** Raw Discord AutoMod action execution event. */
818
+ export interface APIAutoModerationActionExecution {
819
+ guild_id: Snowflake;
820
+ action: APIAutoModerationAction;
821
+ rule_id: Snowflake;
822
+ rule_trigger_type: number;
823
+ user_id: Snowflake;
824
+ channel_id?: Snowflake;
825
+ message_id?: Snowflake;
826
+ alert_system_message_id?: Snowflake;
827
+ content: string;
828
+ matched_keyword?: string | null;
829
+ matched_content?: string | null;
830
+ }
831
+ /** Raw Discord guild scheduled event entity metadata. */
832
+ export interface APIGuildScheduledEventEntityMetadata {
833
+ location?: string;
834
+ }
835
+ /** Raw Discord guild scheduled event object. */
836
+ export interface APIGuildScheduledEvent {
837
+ id: Snowflake;
838
+ guild_id: Snowflake;
839
+ channel_id?: Snowflake | null;
840
+ creator_id?: Snowflake | null;
841
+ name: string;
842
+ description?: string | null;
843
+ scheduled_start_time: string;
844
+ scheduled_end_time?: string | null;
845
+ privacy_level: number;
846
+ status: number;
847
+ entity_type: number;
848
+ entity_id?: Snowflake | null;
849
+ entity_metadata?: APIGuildScheduledEventEntityMetadata | null;
850
+ creator?: UserData;
851
+ user_count?: number;
852
+ image?: string | null;
853
+ }
854
+ /** Raw Discord stage instance object. */
855
+ export interface APIStageInstance {
856
+ id: Snowflake;
857
+ guild_id: Snowflake;
858
+ channel_id: Snowflake;
859
+ topic: string;
860
+ privacy_level: number;
861
+ discoverable_disabled?: boolean;
862
+ guild_scheduled_event_id?: Snowflake | null;
427
863
  }
428
864
  /** Discord application command option types. */
429
865
  export declare const ApplicationCommandOptionType: {
@@ -487,20 +923,81 @@ export interface ApplicationCommandData {
487
923
  dm_permission?: boolean;
488
924
  nsfw?: boolean;
489
925
  }
490
- /** Raw Discord role object. */
491
- export interface APIRole {
926
+ /** Raw Discord READY event payload. */
927
+ export interface APIReadyEvent {
928
+ v: number;
929
+ user: UserData;
930
+ guilds: Array<{
931
+ id: Snowflake;
932
+ unavailable?: boolean;
933
+ }>;
934
+ session_id: string;
935
+ resume_gateway_url: string;
936
+ shard?: [number, number];
937
+ application?: {
938
+ id: Snowflake;
939
+ flags: number;
940
+ [key: string]: unknown;
941
+ };
942
+ }
943
+ /** Raw Discord reaction event payload. */
944
+ export interface APIMessageReactionEvent {
945
+ user_id: Snowflake;
946
+ channel_id: Snowflake;
947
+ message_id: Snowflake;
948
+ guild_id?: Snowflake;
949
+ member?: APIGuildMember;
950
+ emoji: APIPartialEmoji;
951
+ message_author_id?: Snowflake;
952
+ burst?: boolean;
953
+ type?: number;
954
+ }
955
+ /** Raw Discord reaction remove emoji event payload. */
956
+ export interface APIMessageReactionRemoveEmojiEvent {
957
+ channel_id: Snowflake;
958
+ guild_id?: Snowflake;
959
+ message_id: Snowflake;
960
+ emoji: APIPartialEmoji;
961
+ }
962
+ /** Raw Discord message deletion event payload. */
963
+ export interface APIMessageDeleteEvent {
492
964
  id: Snowflake;
493
- name: string;
494
- color: number;
495
- hoist: boolean;
496
- icon?: string | null;
497
- unicode_emoji?: string | null;
498
- position: number;
499
- permissions: string;
500
- managed: boolean;
501
- mentionable: boolean;
502
- tags?: Record<string, unknown>;
503
- flags?: number;
965
+ channel_id: Snowflake;
966
+ guild_id?: Snowflake;
967
+ }
968
+ /** Raw Discord bulk message deletion event payload. */
969
+ export interface APIMessageDeleteBulkEvent {
970
+ ids: Snowflake[];
971
+ channel_id: Snowflake;
972
+ guild_id?: Snowflake;
973
+ }
974
+ /** Raw Discord channel deletion event payload. */
975
+ export interface APIChannelDeleteEvent extends APIChannel {
976
+ }
977
+ /** Raw Discord guild deletion event payload. */
978
+ export interface APIGuildDeleteEvent {
979
+ id: Snowflake;
980
+ unavailable?: boolean;
981
+ }
982
+ /** Raw Discord thread lifecycle payload. */
983
+ export interface APIThreadEvent extends APIChannel {
984
+ guild_id: Snowflake;
985
+ member?: APIThreadMember;
986
+ }
987
+ /** Raw Discord thread list sync event. */
988
+ export interface APIThreadListSync {
989
+ guild_id: Snowflake;
990
+ channel_ids?: Snowflake[];
991
+ threads: APIChannel[];
992
+ members: APIThreadMember[];
993
+ }
994
+ /** Raw Discord thread members update event. */
995
+ export interface APIThreadMembersUpdate {
996
+ id: Snowflake;
997
+ guild_id: Snowflake;
998
+ member_count: number;
999
+ added_members?: APIThreadMember[];
1000
+ removed_member_ids?: Snowflake[];
504
1001
  }
505
1002
  /** Raw Discord guild role event payload. */
506
1003
  export interface APIGuildRoleEvent {
@@ -517,19 +1014,43 @@ export interface APIGuildBanEvent {
517
1014
  guild_id: Snowflake;
518
1015
  user: UserData;
519
1016
  }
520
- /** Raw Discord emoji object. */
521
- export interface APIEmoji {
522
- id: Snowflake | null;
523
- name: string | null;
524
- roles?: Snowflake[];
525
- user?: UserData;
526
- require_colons?: boolean;
527
- managed?: boolean;
528
- animated?: boolean;
529
- available?: boolean;
530
- }
531
1017
  /** Raw Discord guild emojis update event payload. */
532
1018
  export interface APIGuildEmojisUpdateEvent {
533
1019
  guild_id: Snowflake;
534
1020
  emojis: APIEmoji[];
535
1021
  }
1022
+ /** Raw Discord guild stickers update event payload. */
1023
+ export interface APIGuildStickersUpdateEvent {
1024
+ guild_id: Snowflake;
1025
+ stickers: APISticker[];
1026
+ }
1027
+ /** Raw Discord channel pins update event. */
1028
+ export interface APIChannelPinsUpdate {
1029
+ guild_id?: Snowflake;
1030
+ channel_id: Snowflake;
1031
+ last_pin_timestamp?: string | null;
1032
+ }
1033
+ /** Raw Discord guild members chunk event. */
1034
+ export interface APIGuildMembersChunk {
1035
+ guild_id: Snowflake;
1036
+ members: APIGuildMember[];
1037
+ chunk_index: number;
1038
+ chunk_count: number;
1039
+ not_found?: Snowflake[];
1040
+ presences?: APIPresenceUpdate[];
1041
+ nonce?: string;
1042
+ }
1043
+ /** Raw Discord guild scheduled event user add/remove event. */
1044
+ export interface APIGuildScheduledEventUserEvent {
1045
+ guild_scheduled_event_id: Snowflake;
1046
+ user_id: Snowflake;
1047
+ guild_id: Snowflake;
1048
+ }
1049
+ /** Raw Discord message poll vote add/remove event. */
1050
+ export interface APIMessagePollVoteEvent {
1051
+ user_id: Snowflake;
1052
+ channel_id: Snowflake;
1053
+ message_id: Snowflake;
1054
+ guild_id?: Snowflake;
1055
+ answer_id: number;
1056
+ }