@discordjs/builders 2.0.0-dev.1748650424-ef2c1bfa7 → 2.0.0-dev.1748909649-d40ceedad

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/index.d.mts CHANGED
@@ -8,7 +8,13 @@ import { APIComponentInMessageActionRow, APISeparatorComponent as APISeparatorCo
8
8
 
9
9
  interface EmojiOrLabelButtonData extends Pick<Exclude<APIButtonComponent, APIButtonComponentWithSKUId>, 'emoji' | 'label'> {
10
10
  }
11
+ /**
12
+ * A mixin that adds emoji and label symbols to a button builder.
13
+ */
11
14
  declare class EmojiOrLabelButtonMixin {
15
+ /**
16
+ * @internal
17
+ */
12
18
  protected readonly data: EmojiOrLabelButtonData;
13
19
  /**
14
20
  * Sets the emoji to display on this button.
@@ -41,6 +47,9 @@ interface ComponentBuilderBaseData {
41
47
  * @typeParam Component - The type of API data that is stored within the builder
42
48
  */
43
49
  declare abstract class ComponentBuilder<Component extends APIBaseComponent<ComponentType>> implements JSONEncodable<Component> {
50
+ /**
51
+ * @internal
52
+ */
44
53
  protected abstract readonly data: ComponentBuilderBaseData;
45
54
  /**
46
55
  * Sets the id of this component.
@@ -66,6 +75,9 @@ declare abstract class ComponentBuilder<Component extends APIBaseComponent<Compo
66
75
  * A builder that creates API-compatible JSON data for buttons.
67
76
  */
68
77
  declare abstract class BaseButtonBuilder<ButtonData extends APIButtonComponent> extends ComponentBuilder<ButtonData> {
78
+ /**
79
+ * @internal
80
+ */
69
81
  protected readonly data: Partial<ButtonData>;
70
82
  /**
71
83
  * Sets whether this button is disabled.
@@ -83,6 +95,9 @@ type CustomIdButtonStyle = APIButtonComponentWithCustomId['style'];
83
95
  declare const CustomIdButtonBuilder_base: ts_mixer_dist_types_types_js.Class<any[], BaseButtonBuilder<APIButtonComponentWithCustomId> & EmojiOrLabelButtonMixin, (abstract new () => BaseButtonBuilder<APIButtonComponentWithCustomId>) & typeof EmojiOrLabelButtonMixin>;
84
96
  /**
85
97
  * A builder that creates API-compatible JSON data for buttons with custom IDs.
98
+ *
99
+ * @mixes {@link BaseButtonBuilder}\<{@link discord-api-types/v10#(APIButtonComponentWithCustomId:interface)}\>
100
+ * @mixes {@link EmojiOrLabelButtonMixin}
86
101
  */
87
102
  declare abstract class CustomIdButtonBuilder extends CustomIdButtonBuilder_base {
88
103
  protected readonly data: Partial<APIButtonComponentWithCustomId>;
@@ -124,6 +139,9 @@ declare class DangerButtonBuilder extends CustomIdButtonBuilder {
124
139
  declare const LinkButtonBuilder_base: ts_mixer_dist_types_types_js.Class<any[], BaseButtonBuilder<APIButtonComponentWithURL> & EmojiOrLabelButtonMixin, (abstract new () => BaseButtonBuilder<APIButtonComponentWithURL>) & typeof EmojiOrLabelButtonMixin>;
125
140
  /**
126
141
  * A builder that creates API-compatible JSON data for buttons with links.
142
+ *
143
+ * @mixes {@link BaseButtonBuilder}\<{@link discord-api-types/v10#(APIButtonComponentWithURL:interface)}\>
144
+ * @mixes {@link EmojiOrLabelButtonMixin}
127
145
  */
128
146
  declare class LinkButtonBuilder extends LinkButtonBuilder_base {
129
147
  protected readonly data: Partial<APIButtonComponentWithURL>;
@@ -157,9 +175,12 @@ declare class PremiumButtonBuilder extends BaseButtonBuilder<APIButtonComponentW
157
175
  /**
158
176
  * The base select menu builder that contains common symbols for select menu builders.
159
177
  *
160
- * @typeParam SelectMenuType - The type of select menu this would be instantiated for.
178
+ * @typeParam Data - The type of API data that is stored within the builder
161
179
  */
162
180
  declare abstract class BaseSelectMenuBuilder<Data extends APISelectMenuComponent> extends ComponentBuilder<Data> implements JSONEncodable<APISelectMenuComponent> {
181
+ /**
182
+ * @internal
183
+ */
163
184
  protected abstract readonly data: Partial<Pick<Data, 'custom_id' | 'disabled' | 'id' | 'max_values' | 'min_values' | 'placeholder'>>;
164
185
  /**
165
186
  * Sets the placeholder for this select menu.
@@ -219,9 +240,9 @@ type RestOrArray<Type> = Type[] | [Type[]];
219
240
  declare class ChannelSelectMenuBuilder extends BaseSelectMenuBuilder<APIChannelSelectComponent> {
220
241
  protected readonly data: Partial<APIChannelSelectComponent>;
221
242
  /**
222
- * Creates a new select menu from API data.
243
+ * Creates a new channel select menu.
223
244
  *
224
- * @param data - The API data to create this select menu with
245
+ * @param data - The API data to create this channel select menu with
225
246
  * @example
226
247
  * Creating a select menu from an API data object:
227
248
  * ```ts
@@ -278,9 +299,9 @@ declare class ChannelSelectMenuBuilder extends BaseSelectMenuBuilder<APIChannelS
278
299
  declare class MentionableSelectMenuBuilder extends BaseSelectMenuBuilder<APIMentionableSelectComponent> {
279
300
  protected readonly data: Partial<APIMentionableSelectComponent>;
280
301
  /**
281
- * Creates a new select menu from API data.
302
+ * Creates a new mentionable select menu.
282
303
  *
283
- * @param data - The API data to create this select menu with
304
+ * @param data - The API data to create this mentionable select menu with
284
305
  * @example
285
306
  * Creating a select menu from an API data object:
286
307
  * ```ts
@@ -336,9 +357,9 @@ declare class MentionableSelectMenuBuilder extends BaseSelectMenuBuilder<APIMent
336
357
  declare class RoleSelectMenuBuilder extends BaseSelectMenuBuilder<APIRoleSelectComponent> {
337
358
  protected readonly data: Partial<APIRoleSelectComponent>;
338
359
  /**
339
- * Creates a new select menu from API data.
360
+ * Creates a new role select menu.
340
361
  *
341
- * @param data - The API data to create this select menu with
362
+ * @param data - The API data to create this role select menu with
342
363
  * @example
343
364
  * Creating a select menu from an API data object:
344
365
  * ```ts
@@ -382,7 +403,7 @@ declare class RoleSelectMenuBuilder extends BaseSelectMenuBuilder<APIRoleSelectC
382
403
  declare class StringSelectMenuOptionBuilder implements JSONEncodable<APISelectMenuOption> {
383
404
  private readonly data;
384
405
  /**
385
- * Creates a new string select menu option from API data.
406
+ * Creates a new string select menu option.
386
407
  *
387
408
  * @param data - The API data to create this string select menu option with
388
409
  * @example
@@ -461,9 +482,9 @@ declare class StringSelectMenuBuilder extends BaseSelectMenuBuilder<APIStringSel
461
482
  */
462
483
  get options(): readonly StringSelectMenuOptionBuilder[];
463
484
  /**
464
- * Creates a new select menu from API data.
485
+ * Creates a new string select menu.
465
486
  *
466
- * @param data - The API data to create this select menu with
487
+ * @param data - The API data to create this string select menu with
467
488
  * @example
468
489
  * Creating a select menu from an API data object:
469
490
  * ```ts
@@ -491,7 +512,7 @@ declare class StringSelectMenuBuilder extends BaseSelectMenuBuilder<APIStringSel
491
512
  * });
492
513
  * ```
493
514
  */
494
- constructor({ options, ...data }?: Partial<APIStringSelectComponent>);
515
+ constructor(data?: Partial<APIStringSelectComponent>);
495
516
  /**
496
517
  * Adds options to this select menu.
497
518
  *
@@ -544,9 +565,9 @@ declare class StringSelectMenuBuilder extends BaseSelectMenuBuilder<APIStringSel
544
565
  declare class UserSelectMenuBuilder extends BaseSelectMenuBuilder<APIUserSelectComponent> {
545
566
  protected readonly data: Partial<APIUserSelectComponent>;
546
567
  /**
547
- * Creates a new select menu from API data.
568
+ * Creates a new user select menu.
548
569
  *
549
- * @param data - The API data to create this select menu with
570
+ * @param data - The API data to create this user select menu with
550
571
  * @example
551
572
  * Creating a select menu from an API data object:
552
573
  * ```ts
@@ -588,9 +609,12 @@ declare class UserSelectMenuBuilder extends BaseSelectMenuBuilder<APIUserSelectC
588
609
  * A builder that creates API-compatible JSON data for text inputs.
589
610
  */
590
611
  declare class TextInputBuilder extends ComponentBuilder<APITextInputComponent> {
612
+ /**
613
+ * @internal
614
+ */
591
615
  protected readonly data: Partial<APITextInputComponent>;
592
616
  /**
593
- * Creates a new text input from API data.
617
+ * Creates a new text input.
594
618
  *
595
619
  * @param data - The API data to create this text input with
596
620
  * @example
@@ -715,10 +739,16 @@ declare const textInputPredicate: z.ZodObject<{
715
739
  required?: boolean | undefined;
716
740
  }>;
717
741
 
742
+ /**
743
+ * A builder that creates API-compatible JSON data for files.
744
+ */
718
745
  declare class FileBuilder extends ComponentBuilder<APIFileComponent> {
746
+ /**
747
+ * @internal
748
+ */
719
749
  protected readonly data: Partial<APIFileComponent>;
720
750
  /**
721
- * Creates a new file from API data.
751
+ * Creates a new file.
722
752
  *
723
753
  * @param data - The API data to create this file with
724
754
  * @example
@@ -764,7 +794,7 @@ declare class FileBuilder extends ComponentBuilder<APIFileComponent> {
764
794
  declare class MediaGalleryItemBuilder implements JSONEncodable<APIMediaGalleryItem> {
765
795
  private readonly data;
766
796
  /**
767
- * Creates a new media gallery item from API data.
797
+ * Creates a new media gallery item.
768
798
  *
769
799
  * @param data - The API data to create this media gallery item with
770
800
  * @example
@@ -820,10 +850,20 @@ declare class MediaGalleryItemBuilder implements JSONEncodable<APIMediaGalleryIt
820
850
  interface MediaGalleryBuilderData extends Partial<Omit<APIMediaGalleryComponent, 'items'>> {
821
851
  items: MediaGalleryItemBuilder[];
822
852
  }
853
+ /**
854
+ * A builder that creates API-compatible JSON data for media galleries.
855
+ */
823
856
  declare class MediaGalleryBuilder extends ComponentBuilder<APIMediaGalleryComponent> {
857
+ /**
858
+ * @internal
859
+ */
824
860
  protected readonly data: MediaGalleryBuilderData;
825
861
  /**
826
- * Creates a new media gallery from API data.
862
+ * The items in this media gallery.
863
+ */
864
+ get items(): readonly MediaGalleryItemBuilder[];
865
+ /**
866
+ * Creates a new media gallery.
827
867
  *
828
868
  * @param data - The API data to create this container with
829
869
  * @example
@@ -857,10 +897,6 @@ declare class MediaGalleryBuilder extends ComponentBuilder<APIMediaGalleryCompon
857
897
  * ```
858
898
  */
859
899
  constructor(data?: Partial<APIMediaGalleryComponent>);
860
- /**
861
- * The items in this media gallery.
862
- */
863
- get items(): readonly MediaGalleryItemBuilder[];
864
900
  /**
865
901
  * Adds a media gallery item to this media gallery.
866
902
  *
@@ -881,10 +917,16 @@ declare class MediaGalleryBuilder extends ComponentBuilder<APIMediaGalleryCompon
881
917
  toJSON(validationOverride?: boolean): APIMediaGalleryComponent;
882
918
  }
883
919
 
920
+ /**
921
+ * A builder that creates API-compatible JSON data for text displays.
922
+ */
884
923
  declare class TextDisplayBuilder extends ComponentBuilder<APITextDisplayComponent> {
924
+ /**
925
+ * @internal
926
+ */
885
927
  protected readonly data: Partial<APITextDisplayComponent>;
886
928
  /**
887
- * Creates a new text display from API data.
929
+ * Creates a new text display.
888
930
  *
889
931
  * @param data - The API data to create this text display with
890
932
  * @example
@@ -916,10 +958,16 @@ declare class TextDisplayBuilder extends ComponentBuilder<APITextDisplayComponen
916
958
  toJSON(validationOverride?: boolean): APITextDisplayComponent;
917
959
  }
918
960
 
961
+ /**
962
+ * A builder that creates API-compatible JSON data for thumbnails.
963
+ */
919
964
  declare class ThumbnailBuilder extends ComponentBuilder<APIThumbnailComponent> {
965
+ /**
966
+ * @internal
967
+ */
920
968
  protected readonly data: Partial<APIThumbnailComponent>;
921
969
  /**
922
- * Creates a new thumbnail from API data.
970
+ * Creates a new thumbnail.
923
971
  *
924
972
  * @param data - The API data to create this thumbnail with
925
973
  * @example
@@ -977,11 +1025,20 @@ interface SectionBuilderData extends Partial<Omit<APISectionComponent, 'accessor
977
1025
  accessory?: SectionBuilderAccessory;
978
1026
  components: TextDisplayBuilder[];
979
1027
  }
1028
+ /**
1029
+ * A builder that creates API-compatible JSON data for sections.
1030
+ */
980
1031
  declare class SectionBuilder extends ComponentBuilder<APISectionComponent> {
1032
+ /**
1033
+ * @internal
1034
+ */
981
1035
  protected readonly data: SectionBuilderData;
1036
+ /**
1037
+ * The components within this section.
1038
+ */
982
1039
  get components(): readonly TextDisplayBuilder[];
983
1040
  /**
984
- * Creates a new section from API data.
1041
+ * Creates a new section.
985
1042
  *
986
1043
  * @param data - The API data to create this section with
987
1044
  * @example
@@ -1086,10 +1143,16 @@ declare class SectionBuilder extends ComponentBuilder<APISectionComponent> {
1086
1143
  toJSON(validationOverride?: boolean): APISectionComponent;
1087
1144
  }
1088
1145
 
1146
+ /**
1147
+ * A builder that creates API-compatible JSON data for separators.
1148
+ */
1089
1149
  declare class SeparatorBuilder extends ComponentBuilder<APISeparatorComponent> {
1150
+ /**
1151
+ * @internal
1152
+ */
1090
1153
  protected readonly data: Partial<APISeparatorComponent>;
1091
1154
  /**
1092
- * Creates a new separator from API data.
1155
+ * Creates a new separator.
1093
1156
  *
1094
1157
  * @param data - The API data to create this separator with
1095
1158
  * @example
@@ -1136,9 +1199,24 @@ type ContainerComponentBuilders = ActionRowBuilder | FileBuilder | MediaGalleryB
1136
1199
  interface ContainerBuilderData extends Partial<Omit<APIContainerComponent, 'components'>> {
1137
1200
  components: ContainerComponentBuilders[];
1138
1201
  }
1202
+ /**
1203
+ * A builder that creates API-compatible JSON data for containers.
1204
+ */
1139
1205
  declare class ContainerBuilder extends ComponentBuilder<APIContainerComponent> {
1206
+ /**
1207
+ * @internal
1208
+ */
1140
1209
  protected readonly data: ContainerBuilderData;
1141
- constructor({ components, ...rest }?: Partial<APIContainerComponent>);
1210
+ /**
1211
+ * Gets the components within this container.
1212
+ */
1213
+ get components(): readonly ContainerComponentBuilders[];
1214
+ /**
1215
+ * Creates a new container builder.
1216
+ *
1217
+ * @param data - The API data to create the container with
1218
+ */
1219
+ constructor(data?: Partial<APIContainerComponent>);
1142
1220
  /**
1143
1221
  * Sets the accent color of this container.
1144
1222
  *
@@ -1342,17 +1420,18 @@ interface ActionRowBuilderData extends Partial<Omit<APIActionRowComponent<APICom
1342
1420
  }
1343
1421
  /**
1344
1422
  * A builder that creates API-compatible JSON data for action rows.
1345
- *
1346
- * @typeParam ComponentType - The types of components this action row holds
1347
1423
  */
1348
1424
  declare class ActionRowBuilder extends ComponentBuilder<APIActionRowComponent<APIComponentInActionRow>> {
1425
+ /**
1426
+ * @internal
1427
+ */
1349
1428
  protected readonly data: ActionRowBuilderData;
1350
1429
  /**
1351
1430
  * The components within this action row.
1352
1431
  */
1353
1432
  get components(): readonly AnyActionRowComponentBuilder[];
1354
1433
  /**
1355
- * Creates a new action row from API data.
1434
+ * Creates a new action row.
1356
1435
  *
1357
1436
  * @param data - The API data to create this action row with
1358
1437
  * @example
@@ -1385,7 +1464,7 @@ declare class ActionRowBuilder extends ComponentBuilder<APIActionRowComponent<AP
1385
1464
  * .addComponents(button2, button3);
1386
1465
  * ```
1387
1466
  */
1388
- constructor({ components, ...data }?: Partial<APIActionRowComponent<APIComponentInActionRow>>);
1467
+ constructor(data?: Partial<APIActionRowComponent<APIComponentInActionRow>>);
1389
1468
  /**
1390
1469
  * Adds primary button components to this action row.
1391
1470
  *
@@ -2554,6 +2633,9 @@ interface ApplicationCommandNumericOptionMinMaxValueData extends Pick<APIApplica
2554
2633
  * This mixin holds minimum and maximum symbols used for options.
2555
2634
  */
2556
2635
  declare abstract class ApplicationCommandNumericOptionMinMaxValueMixin {
2636
+ /**
2637
+ * @internal
2638
+ */
2557
2639
  protected readonly data: ApplicationCommandNumericOptionMinMaxValueData;
2558
2640
  /**
2559
2641
  * Sets the maximum number value of this option.
@@ -2588,6 +2670,9 @@ interface ApplicationCommandOptionChannelTypesData extends Pick<APIApplicationCo
2588
2670
  * This mixin holds channel type symbols used for options.
2589
2671
  */
2590
2672
  declare class ApplicationCommandOptionChannelTypesMixin {
2673
+ /**
2674
+ * @internal
2675
+ */
2591
2676
  protected readonly data: ApplicationCommandOptionChannelTypesData;
2592
2677
  /**
2593
2678
  * Adds channel types to this option.
@@ -2610,6 +2695,9 @@ interface ApplicationCommandOptionWithAutocompleteData extends Pick<Autocompleta
2610
2695
  * This mixin holds choices and autocomplete symbols used for options.
2611
2696
  */
2612
2697
  declare class ApplicationCommandOptionWithAutocompleteMixin {
2698
+ /**
2699
+ * @internal
2700
+ */
2613
2701
  protected readonly data: ApplicationCommandOptionWithAutocompleteData;
2614
2702
  /**
2615
2703
  * Whether this option uses autocomplete.
@@ -2624,8 +2712,13 @@ interface ApplicationCommandOptionWithChoicesData {
2624
2712
  }
2625
2713
  /**
2626
2714
  * This mixin holds choices and autocomplete symbols used for options.
2715
+ *
2716
+ * @typeParam ChoiceType - The type of the choices within this option
2627
2717
  */
2628
2718
  declare class ApplicationCommandOptionWithChoicesMixin<ChoiceType extends number | string> {
2719
+ /**
2720
+ * @internal
2721
+ */
2629
2722
  protected readonly data: ApplicationCommandOptionWithChoicesData;
2630
2723
  /**
2631
2724
  * Adds multiple choices to this option.
@@ -2647,6 +2740,9 @@ interface SharedNameData extends Partial<Pick<RESTPostAPIApplicationCommandsJSON
2647
2740
  * This mixin holds name and description symbols for chat input commands.
2648
2741
  */
2649
2742
  declare class SharedName {
2743
+ /**
2744
+ * @internal
2745
+ */
2650
2746
  protected readonly data: SharedNameData;
2651
2747
  /**
2652
2748
  * Sets the name of this command.
@@ -2685,6 +2781,9 @@ interface SharedNameAndDescriptionData extends SharedNameData, Partial<Pick<APIA
2685
2781
  * This mixin holds name and description symbols for chat input commands.
2686
2782
  */
2687
2783
  declare class SharedNameAndDescription extends SharedName {
2784
+ /**
2785
+ * @internal
2786
+ */
2688
2787
  protected readonly data: SharedNameAndDescriptionData;
2689
2788
  /**
2690
2789
  * Sets the description of this command.
@@ -2724,8 +2823,19 @@ interface ApplicationCommandOptionBaseData extends Partial<Pick<APIApplicationCo
2724
2823
  * The base application command option builder that contains common symbols for application command builders.
2725
2824
  */
2726
2825
  declare abstract class ApplicationCommandOptionBase extends SharedNameAndDescription implements JSONEncodable<APIApplicationCommandBasicOption> {
2826
+ /**
2827
+ * @internal
2828
+ */
2727
2829
  protected static readonly predicate: z.ZodTypeAny;
2830
+ /**
2831
+ * @internal
2832
+ */
2728
2833
  protected readonly data: ApplicationCommandOptionBaseData & SharedNameAndDescriptionData;
2834
+ /**
2835
+ * Creates a new application command option builder.
2836
+ *
2837
+ * @param type - The type of the option
2838
+ */
2729
2839
  constructor(type: ApplicationCommandOptionType);
2730
2840
  /**
2731
2841
  * Sets whether this option is required.
@@ -2747,6 +2857,9 @@ declare abstract class ApplicationCommandOptionBase extends SharedNameAndDescrip
2747
2857
  * A chat input command attachment option.
2748
2858
  */
2749
2859
  declare class ChatInputCommandAttachmentOption extends ApplicationCommandOptionBase {
2860
+ /**
2861
+ * Creates a new attachment option.
2862
+ */
2750
2863
  constructor();
2751
2864
  }
2752
2865
 
@@ -2754,14 +2867,23 @@ declare class ChatInputCommandAttachmentOption extends ApplicationCommandOptionB
2754
2867
  * A chat input command boolean option.
2755
2868
  */
2756
2869
  declare class ChatInputCommandBooleanOption extends ApplicationCommandOptionBase {
2870
+ /**
2871
+ * Creates a new boolean option.
2872
+ */
2757
2873
  constructor();
2758
2874
  }
2759
2875
 
2760
2876
  declare const ChatInputCommandChannelOption_base: ts_mixer_dist_types_types_js.Class<any[], ApplicationCommandOptionBase & ApplicationCommandOptionChannelTypesMixin, typeof ApplicationCommandOptionBase & typeof ApplicationCommandOptionChannelTypesMixin>;
2761
2877
  /**
2762
2878
  * A chat input command channel option.
2879
+ *
2880
+ * @mixes {@link ApplicationCommandOptionBase}
2881
+ * @mixes {@link ApplicationCommandOptionChannelTypesMixin}
2763
2882
  */
2764
2883
  declare class ChatInputCommandChannelOption extends ChatInputCommandChannelOption_base {
2884
+ /**
2885
+ * @internal
2886
+ */
2765
2887
  protected static readonly predicate: zod.ZodObject<{
2766
2888
  name: zod.ZodString;
2767
2889
  name_localizations: zod.ZodOptional<zod.ZodObject<Record<discord_api_types_v10.Locale, zod.ZodOptional<zod.ZodString>>, "strict", zod.ZodTypeAny, {
@@ -3053,6 +3175,9 @@ declare class ChatInputCommandChannelOption extends ChatInputCommandChannelOptio
3053
3175
  vi?: string | undefined;
3054
3176
  } | undefined;
3055
3177
  }>;
3178
+ /**
3179
+ * Creates a new channel option.
3180
+ */
3056
3181
  constructor();
3057
3182
  }
3058
3183
 
@@ -3061,8 +3186,16 @@ declare const ChatInputCommandIntegerOption_base: ts_mixer_dist_types_types_js.C
3061
3186
  }>;
3062
3187
  /**
3063
3188
  * A chat input command integer option.
3189
+ *
3190
+ * @mixes {@link ApplicationCommandOptionBase}
3191
+ * @mixes {@link ApplicationCommandNumericOptionMinMaxValueMixin}
3192
+ * @mixes {@link ApplicationCommandOptionWithAutocompleteMixin}
3193
+ * @mixes {@link ApplicationCommandOptionWithChoicesMixin}\<number\>
3064
3194
  */
3065
3195
  declare class ChatInputCommandIntegerOption extends ChatInputCommandIntegerOption_base {
3196
+ /**
3197
+ * @internal
3198
+ */
3066
3199
  protected static readonly predicate: zod.ZodIntersection<zod.ZodObject<{
3067
3200
  name: zod.ZodString;
3068
3201
  name_localizations: zod.ZodOptional<zod.ZodObject<Record<discord_api_types_v10.Locale, zod.ZodOptional<zod.ZodString>>, "strict", zod.ZodTypeAny, {
@@ -3595,6 +3728,9 @@ declare class ChatInputCommandIntegerOption extends ChatInputCommandIntegerOptio
3595
3728
  } | undefined;
3596
3729
  }[] | undefined;
3597
3730
  }>]>>;
3731
+ /**
3732
+ * Creates a new integer option.
3733
+ */
3598
3734
  constructor();
3599
3735
  }
3600
3736
 
@@ -3602,6 +3738,9 @@ declare class ChatInputCommandIntegerOption extends ChatInputCommandIntegerOptio
3602
3738
  * A chat input command mentionable option.
3603
3739
  */
3604
3740
  declare class ChatInputCommandMentionableOption extends ApplicationCommandOptionBase {
3741
+ /**
3742
+ * Creates a new mentionable option.
3743
+ */
3605
3744
  constructor();
3606
3745
  }
3607
3746
 
@@ -3610,8 +3749,16 @@ declare const ChatInputCommandNumberOption_base: ts_mixer_dist_types_types_js.Cl
3610
3749
  }>;
3611
3750
  /**
3612
3751
  * A chat input command number option.
3752
+ *
3753
+ * @mixes {@link ApplicationCommandOptionBase}
3754
+ * @mixes {@link ApplicationCommandNumericOptionMinMaxValueMixin}
3755
+ * @mixes {@link ApplicationCommandOptionWithAutocompleteMixin}
3756
+ * @mixes {@link ApplicationCommandOptionWithChoicesMixin}\<number\>
3613
3757
  */
3614
3758
  declare class ChatInputCommandNumberOption extends ChatInputCommandNumberOption_base {
3759
+ /**
3760
+ * @internal
3761
+ */
3615
3762
  protected static readonly predicate: zod.ZodIntersection<zod.ZodObject<{
3616
3763
  name: zod.ZodString;
3617
3764
  name_localizations: zod.ZodOptional<zod.ZodObject<Record<discord_api_types_v10.Locale, zod.ZodOptional<zod.ZodString>>, "strict", zod.ZodTypeAny, {
@@ -4144,6 +4291,9 @@ declare class ChatInputCommandNumberOption extends ChatInputCommandNumberOption_
4144
4291
  } | undefined;
4145
4292
  }[] | undefined;
4146
4293
  }>]>>;
4294
+ /**
4295
+ * Creates a new number option.
4296
+ */
4147
4297
  constructor();
4148
4298
  }
4149
4299
 
@@ -4151,6 +4301,9 @@ declare class ChatInputCommandNumberOption extends ChatInputCommandNumberOption_
4151
4301
  * A chat input command role option.
4152
4302
  */
4153
4303
  declare class ChatInputCommandRoleOption extends ApplicationCommandOptionBase {
4304
+ /**
4305
+ * Creates a new role option.
4306
+ */
4154
4307
  constructor();
4155
4308
  }
4156
4309
 
@@ -4159,8 +4312,15 @@ declare const ChatInputCommandStringOption_base: ts_mixer_dist_types_types_js.Cl
4159
4312
  }>;
4160
4313
  /**
4161
4314
  * A chat input command string option.
4315
+ *
4316
+ * @mixes {@link ApplicationCommandOptionBase}
4317
+ * @mixes {@link ApplicationCommandOptionWithAutocompleteMixin}
4318
+ * @mixes {@link ApplicationCommandOptionWithChoicesMixin}\<string\>
4162
4319
  */
4163
4320
  declare class ChatInputCommandStringOption extends ChatInputCommandStringOption_base {
4321
+ /**
4322
+ * @internal
4323
+ */
4164
4324
  protected static readonly predicate: zod.ZodIntersection<zod.ZodObject<{
4165
4325
  name: zod.ZodString;
4166
4326
  name_localizations: zod.ZodOptional<zod.ZodObject<Record<discord_api_types_v10.Locale, zod.ZodOptional<zod.ZodString>>, "strict", zod.ZodTypeAny, {
@@ -4693,7 +4853,13 @@ declare class ChatInputCommandStringOption extends ChatInputCommandStringOption_
4693
4853
  } | undefined;
4694
4854
  }[] | undefined;
4695
4855
  }>]>>;
4856
+ /**
4857
+ * @internal
4858
+ */
4696
4859
  protected readonly data: ApplicationCommandOptionBaseData & ApplicationCommandOptionWithAutocompleteData & ApplicationCommandOptionWithChoicesData & Partial<Pick<APIApplicationCommandStringOption, 'max_length' | 'min_length'>>;
4860
+ /**
4861
+ * Creates a new string option builder.
4862
+ */
4697
4863
  constructor();
4698
4864
  /**
4699
4865
  * Sets the maximum length of this string option.
@@ -4721,6 +4887,9 @@ declare class ChatInputCommandStringOption extends ChatInputCommandStringOption_
4721
4887
  * A chat input command user option.
4722
4888
  */
4723
4889
  declare class ChatInputCommandUserOption extends ApplicationCommandOptionBase {
4890
+ /**
4891
+ * Creates a new user option.
4892
+ */
4724
4893
  constructor();
4725
4894
  }
4726
4895
 
@@ -4729,11 +4898,15 @@ interface SharedChatInputCommandOptionsData {
4729
4898
  }
4730
4899
  /**
4731
4900
  * This mixin holds symbols that can be shared in chat input command options.
4732
- *
4733
- * @typeParam TypeAfterAddingOptions - The type this class should return after adding an option.
4734
4901
  */
4735
4902
  declare class SharedChatInputCommandOptions {
4903
+ /**
4904
+ * @internal
4905
+ */
4736
4906
  protected readonly data: SharedChatInputCommandOptionsData;
4907
+ /**
4908
+ * The options within this command.
4909
+ */
4737
4910
  get options(): readonly ApplicationCommandOptionBase[];
4738
4911
  /**
4739
4912
  * Adds boolean options.
@@ -4835,7 +5008,15 @@ interface ChatInputCommandSubcommandGroupData {
4835
5008
  * @see {@link https://discord.com/developers/docs/interactions/application-commands#subcommands-and-subcommand-groups}
4836
5009
  */
4837
5010
  declare class ChatInputCommandSubcommandGroupBuilder extends SharedNameAndDescription implements JSONEncodable<APIApplicationCommandSubcommandGroupOption> {
5011
+ /**
5012
+ * The API data associated with this subcommand group.
5013
+ *
5014
+ * @internal
5015
+ */
4838
5016
  protected readonly data: ChatInputCommandSubcommandGroupData & SharedNameAndDescriptionData;
5017
+ /**
5018
+ * The options within this subcommand group.
5019
+ */
4839
5020
  get options(): readonly ChatInputCommandSubcommandBuilder[];
4840
5021
  /**
4841
5022
  * Adds a new subcommand to this group.
@@ -4856,6 +5037,8 @@ declare const ChatInputCommandSubcommandBuilder_base: ts_mixer_dist_types_types_
4856
5037
  /**
4857
5038
  * A builder that creates API-compatible JSON data for chat input command subcommands.
4858
5039
  *
5040
+ * @mixes {@link SharedNameAndDescription}
5041
+ * @mixes {@link SharedChatInputCommandOptions}
4859
5042
  * @see {@link https://discord.com/developers/docs/interactions/application-commands#subcommands-and-subcommand-groups}
4860
5043
  */
4861
5044
  declare class ChatInputCommandSubcommandBuilder extends ChatInputCommandSubcommandBuilder_base implements JSONEncodable<APIApplicationCommandSubcommandOption> {
@@ -4874,10 +5057,11 @@ interface SharedChatInputCommandSubcommandsData {
4874
5057
  }
4875
5058
  /**
4876
5059
  * This mixin holds symbols that can be shared in chat input subcommands.
4877
- *
4878
- * @typeParam TypeAfterAddingSubcommands - The type this class should return after adding a subcommand or subcommand group.
4879
5060
  */
4880
5061
  declare class SharedChatInputCommandSubcommands {
5062
+ /**
5063
+ * @internal
5064
+ */
4881
5065
  protected readonly data: SharedChatInputCommandSubcommandsData;
4882
5066
  /**
4883
5067
  * Adds subcommand groups to this command.
@@ -7991,7 +8175,15 @@ declare const chatInputCommandSubcommandPredicate: z.ZodObject<{
7991
8175
 
7992
8176
  interface CommandData extends Partial<Pick<RESTPostAPIApplicationCommandsJSONBody, 'contexts' | 'default_member_permissions' | 'integration_types' | 'nsfw'>> {
7993
8177
  }
8178
+ /**
8179
+ * The base class for all command builders.
8180
+ */
7994
8181
  declare abstract class CommandBuilder<Command extends RESTPostAPIApplicationCommandsJSONBody> implements JSONEncodable<Command> {
8182
+ /**
8183
+ * The API data associated with this command.
8184
+ *
8185
+ * @internal
8186
+ */
7995
8187
  protected readonly data: CommandData;
7996
8188
  /**
7997
8189
  * Sets the contexts of this command.
@@ -8374,9 +8566,22 @@ type ContextMenuCommandType = ApplicationCommandType.Message | ApplicationComman
8374
8566
  declare const ContextMenuCommandBuilder_base: ts_mixer_dist_types_types_js.Class<any[], CommandBuilder<RESTPostAPIContextMenuApplicationCommandsJSONBody> & SharedName, (abstract new () => CommandBuilder<RESTPostAPIContextMenuApplicationCommandsJSONBody>) & typeof SharedName>;
8375
8567
  /**
8376
8568
  * A builder that creates API-compatible JSON data for context menu commands.
8569
+ *
8570
+ * @mixes {@link CommandBuilder}\<{@link discord-api-types/v10#(RESTPostAPIContextMenuApplicationCommandsJSONBody:interface)}\>
8571
+ * @mixes {@link SharedName}
8377
8572
  */
8378
8573
  declare abstract class ContextMenuCommandBuilder extends ContextMenuCommandBuilder_base {
8574
+ /**
8575
+ * The API data associated with this context menu command.
8576
+ *
8577
+ * @internal
8578
+ */
8379
8579
  protected readonly data: Partial<RESTPostAPIContextMenuApplicationCommandsJSONBody>;
8580
+ /**
8581
+ * Creates a new context menu command.
8582
+ *
8583
+ * @param data - The API data to create this context menu command with
8584
+ */
8380
8585
  constructor(data?: Partial<RESTPostAPIContextMenuApplicationCommandsJSONBody>);
8381
8586
  /**
8382
8587
  * {@inheritDoc CommandBuilder.toJSON}
@@ -8384,6 +8589,9 @@ declare abstract class ContextMenuCommandBuilder extends ContextMenuCommandBuild
8384
8589
  abstract toJSON(validationOverride?: boolean): RESTPostAPIContextMenuApplicationCommandsJSONBody;
8385
8590
  }
8386
8591
 
8592
+ /**
8593
+ * A builder that creates API-compatible JSON data for message context menu commands.
8594
+ */
8387
8595
  declare class MessageContextCommandBuilder extends ContextMenuCommandBuilder {
8388
8596
  /**
8389
8597
  * {@inheritDoc CommandBuilder.toJSON}
@@ -8391,6 +8599,9 @@ declare class MessageContextCommandBuilder extends ContextMenuCommandBuilder {
8391
8599
  toJSON(validationOverride?: boolean): RESTPostAPIContextMenuApplicationCommandsJSONBody;
8392
8600
  }
8393
8601
 
8602
+ /**
8603
+ * A builder that creates API-compatible JSON data for user context menu commands.
8604
+ */
8394
8605
  declare class UserContextCommandBuilder extends ContextMenuCommandBuilder {
8395
8606
  /**
8396
8607
  * {@inheritDoc CommandBuilder.toJSON}
@@ -8457,11 +8668,11 @@ declare class ModalBuilder implements JSONEncodable<APIModalInteractionResponseC
8457
8668
  */
8458
8669
  get components(): readonly ActionRowBuilder[];
8459
8670
  /**
8460
- * Creates a new modal from API data.
8671
+ * Creates a new modal.
8461
8672
  *
8462
8673
  * @param data - The API data to create this modal with
8463
8674
  */
8464
- constructor({ components, ...data }?: Partial<APIModalInteractionResponseCallbackData>);
8675
+ constructor(data?: Partial<APIModalInteractionResponseCallbackData>);
8465
8676
  /**
8466
8677
  * Sets the title of this modal.
8467
8678
  *
@@ -8780,11 +8991,14 @@ declare const embedPredicate: z.ZodEffects<z.ZodEffects<z.ZodObject<{
8780
8991
  * A builder that creates API-compatible JSON data for the embed author.
8781
8992
  */
8782
8993
  declare class EmbedAuthorBuilder implements JSONEncodable<APIEmbedAuthor> {
8994
+ /**
8995
+ * The API data associated with this embed author.
8996
+ */
8783
8997
  private readonly data;
8784
8998
  /**
8785
- * Creates a new embed author from API data.
8999
+ * Creates a new embed author.
8786
9000
  *
8787
- * @param data - The API data to use
9001
+ * @param data - The API data to create this embed author with
8788
9002
  */
8789
9003
  constructor(data?: Partial<APIEmbedAuthor>);
8790
9004
  /**
@@ -8827,11 +9041,14 @@ declare class EmbedAuthorBuilder implements JSONEncodable<APIEmbedAuthor> {
8827
9041
  * A builder that creates API-compatible JSON data for embed fields.
8828
9042
  */
8829
9043
  declare class EmbedFieldBuilder implements JSONEncodable<APIEmbedField> {
9044
+ /**
9045
+ * The API data associated with this embed field.
9046
+ */
8830
9047
  private readonly data;
8831
9048
  /**
8832
- * Creates a new embed field from API data.
9049
+ * Creates a new embed field.
8833
9050
  *
8834
- * @param data - The API data to use
9051
+ * @param data - The API data to create this embed field with
8835
9052
  */
8836
9053
  constructor(data?: Partial<APIEmbedField>);
8837
9054
  /**
@@ -8866,11 +9083,14 @@ declare class EmbedFieldBuilder implements JSONEncodable<APIEmbedField> {
8866
9083
  * A builder that creates API-compatible JSON data for the embed footer.
8867
9084
  */
8868
9085
  declare class EmbedFooterBuilder implements JSONEncodable<APIEmbedFooter> {
9086
+ /**
9087
+ * The API data associated with this embed footer.
9088
+ */
8869
9089
  private readonly data;
8870
9090
  /**
8871
- * Creates a new embed footer from API data.
9091
+ * Creates a new embed footer.
8872
9092
  *
8873
- * @param data - The API data to use
9093
+ * @param data - The API data to create this embed footer with
8874
9094
  */
8875
9095
  constructor(data?: Partial<APIEmbedFooter>);
8876
9096
  /**
@@ -8920,11 +9140,11 @@ declare class EmbedBuilder implements JSONEncodable<APIEmbed> {
8920
9140
  */
8921
9141
  get fields(): readonly EmbedFieldBuilder[];
8922
9142
  /**
8923
- * Creates a new embed from API data.
9143
+ * Creates a new embed.
8924
9144
  *
8925
9145
  * @param data - The API data to create this embed with
8926
9146
  */
8927
- constructor(data?: APIEmbed);
9147
+ constructor(data?: Partial<APIEmbed>);
8928
9148
  /**
8929
9149
  * Appends fields to the embed.
8930
9150
  *
@@ -9317,12 +9537,14 @@ declare const pollPredicate: z.ZodObject<{
9317
9537
  declare abstract class PollMediaBuilder {
9318
9538
  /**
9319
9539
  * The API data associated with this poll media.
9540
+ *
9541
+ * @internal
9320
9542
  */
9321
9543
  protected readonly data: Partial<APIPollMedia>;
9322
9544
  /**
9323
- * Creates new poll media from API data.
9545
+ * Creates new poll media.
9324
9546
  *
9325
- * @param data - The API data to use
9547
+ * @param data - The API data to create this poll media with
9326
9548
  */
9327
9549
  constructor(data?: Partial<APIPollMedia>);
9328
9550
  /**
@@ -9364,13 +9586,16 @@ declare class PollAnswerMediaBuilder extends PollMediaBuilder {
9364
9586
  interface PollAnswerData extends Omit<APIPollAnswer, 'answer_id' | 'poll_media'> {
9365
9587
  poll_media: PollAnswerMediaBuilder;
9366
9588
  }
9589
+ /**
9590
+ * A builder that creates API-compatible JSON data for poll answers.
9591
+ */
9367
9592
  declare class PollAnswerBuilder implements JSONEncodable<Omit<APIPollAnswer, 'answer_id'>> {
9368
9593
  /**
9369
9594
  * The API data associated with this poll answer.
9370
9595
  */
9371
9596
  private readonly data;
9372
9597
  /**
9373
- * Creates a new poll answer from API data.
9598
+ * Creates a new poll answer.
9374
9599
  *
9375
9600
  * @param data - The API data to create this poll answer with
9376
9601
  */
@@ -9424,7 +9649,7 @@ declare class PollBuilder implements JSONEncodable<RESTAPIPoll> {
9424
9649
  */
9425
9650
  get answers(): readonly PollAnswerBuilder[];
9426
9651
  /**
9427
- * Creates a new poll from API data.
9652
+ * Creates a new poll.
9428
9653
  *
9429
9654
  * @param data - The API data to create this poll with
9430
9655
  */
@@ -9553,11 +9778,14 @@ declare class PollBuilder implements JSONEncodable<RESTAPIPoll> {
9553
9778
  * A builder that creates API-compatible JSON data for allowed mentions.
9554
9779
  */
9555
9780
  declare class AllowedMentionsBuilder implements JSONEncodable<APIAllowedMentions> {
9781
+ /**
9782
+ * The API data associated with these allowed mentions.
9783
+ */
9556
9784
  private readonly data;
9557
9785
  /**
9558
- * Creates a new allowed mentions builder from API data.
9786
+ * Creates a new allowed mentions builder.
9559
9787
  *
9560
- * @param data - The API data to create this allowed mentions builder with
9788
+ * @param data - The API data to create this allowed mentions with
9561
9789
  */
9562
9790
  constructor(data?: Partial<APIAllowedMentions>);
9563
9791
  /**
@@ -10656,11 +10884,14 @@ declare const messagePredicate: z.ZodUnion<[z.ZodEffects<z.ZodObject<{
10656
10884
  * A builder that creates API-compatible JSON data for attachments.
10657
10885
  */
10658
10886
  declare class AttachmentBuilder implements JSONEncodable<RESTAPIAttachment> {
10887
+ /**
10888
+ * The API data associated with this attachment.
10889
+ */
10659
10890
  private readonly data;
10660
10891
  /**
10661
- * Creates a new attachment builder from API data.
10892
+ * Creates a new attachment builder.
10662
10893
  *
10663
- * @param data - The API data to create this attachment builder with
10894
+ * @param data - The API data to create this attachment with
10664
10895
  */
10665
10896
  constructor(data?: Partial<RESTAPIAttachment>);
10666
10897
  /**
@@ -10733,11 +10964,14 @@ declare class AttachmentBuilder implements JSONEncodable<RESTAPIAttachment> {
10733
10964
  * A builder that creates API-compatible JSON data for message references.
10734
10965
  */
10735
10966
  declare class MessageReferenceBuilder implements JSONEncodable<RESTAPIMessageReference> {
10967
+ /**
10968
+ * The API data associated with this message reference.
10969
+ */
10736
10970
  private readonly data;
10737
10971
  /**
10738
- * Creates a new message reference builder from API data.
10972
+ * Creates a new message reference builder.
10739
10973
  *
10740
- * @param data - The API data to create this message reference builder with
10974
+ * @param data - The API data to create this message reference with
10741
10975
  */
10742
10976
  constructor(data?: Partial<RESTAPIMessageReference>);
10743
10977
  /**
@@ -10821,11 +11055,11 @@ declare class MessageBuilder implements JSONEncodable<RESTPostAPIChannelMessageJ
10821
11055
  */
10822
11056
  get embeds(): readonly EmbedBuilder[];
10823
11057
  /**
10824
- * Creates a new message builder from API data.
11058
+ * Creates a new message builder.
10825
11059
  *
10826
- * @param data - The API data to create this message builder with
11060
+ * @param data - The API data to create this message with
10827
11061
  */
10828
- constructor({ attachments, embeds, components, message_reference, poll, allowed_mentions, ...data }?: Partial<RESTPostAPIChannelMessageJSONBody>);
11062
+ constructor(data?: Partial<RESTPostAPIChannelMessageJSONBody>);
10829
11063
  /**
10830
11064
  * Sets the content of the message.
10831
11065
  *