mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-20 05:23:31 +01:00
types(ApplicationSubcommandData): allow autocomplete to be true (#6981)
This commit is contained in:
15
typings/index.d.ts
vendored
15
typings/index.d.ts
vendored
@@ -3326,6 +3326,7 @@ export interface BaseApplicationCommandOptionsData {
|
|||||||
name: string;
|
name: string;
|
||||||
description: string;
|
description: string;
|
||||||
required?: boolean;
|
required?: boolean;
|
||||||
|
autocomplete?: never;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface UserApplicationCommandData extends BaseApplicationCommandData {
|
export interface UserApplicationCommandData extends BaseApplicationCommandData {
|
||||||
@@ -3358,7 +3359,7 @@ export interface ApplicationCommandChannelOption extends BaseApplicationCommandO
|
|||||||
channelTypes?: (keyof typeof ChannelTypes)[];
|
channelTypes?: (keyof typeof ChannelTypes)[];
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ApplicationCommandAutocompleteOption extends BaseApplicationCommandOptionsData {
|
export interface ApplicationCommandAutocompleteOption extends Omit<BaseApplicationCommandOptionsData, 'autocomplete'> {
|
||||||
type:
|
type:
|
||||||
| 'STRING'
|
| 'STRING'
|
||||||
| 'NUMBER'
|
| 'NUMBER'
|
||||||
@@ -3369,13 +3370,13 @@ export interface ApplicationCommandAutocompleteOption extends BaseApplicationCom
|
|||||||
autocomplete: true;
|
autocomplete: true;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ApplicationCommandChoicesData extends BaseApplicationCommandOptionsData {
|
export interface ApplicationCommandChoicesData extends Omit<BaseApplicationCommandOptionsData, 'autocomplete'> {
|
||||||
type: CommandOptionChoiceResolvableType;
|
type: CommandOptionChoiceResolvableType;
|
||||||
choices?: ApplicationCommandOptionChoice[];
|
choices?: ApplicationCommandOptionChoice[];
|
||||||
autocomplete?: false;
|
autocomplete?: false;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ApplicationCommandChoicesOption extends BaseApplicationCommandOptionsData {
|
export interface ApplicationCommandChoicesOption extends Omit<BaseApplicationCommandOptionsData, 'autocomplete'> {
|
||||||
type: Exclude<CommandOptionChoiceResolvableType, ApplicationCommandOptionTypes>;
|
type: Exclude<CommandOptionChoiceResolvableType, ApplicationCommandOptionTypes>;
|
||||||
choices?: ApplicationCommandOptionChoice[];
|
choices?: ApplicationCommandOptionChoice[];
|
||||||
autocomplete?: false;
|
autocomplete?: false;
|
||||||
@@ -3407,7 +3408,13 @@ export interface ApplicationCommandSubGroup extends Omit<BaseApplicationCommandO
|
|||||||
|
|
||||||
export interface ApplicationCommandSubCommandData extends Omit<BaseApplicationCommandOptionsData, 'required'> {
|
export interface ApplicationCommandSubCommandData extends Omit<BaseApplicationCommandOptionsData, 'required'> {
|
||||||
type: 'SUB_COMMAND' | ApplicationCommandOptionTypes.SUB_COMMAND;
|
type: 'SUB_COMMAND' | ApplicationCommandOptionTypes.SUB_COMMAND;
|
||||||
options?: (ApplicationCommandChoicesData | ApplicationCommandNonOptionsData | ApplicationCommandChannelOptionData)[];
|
options?: (
|
||||||
|
| ApplicationCommandChoicesData
|
||||||
|
| ApplicationCommandNonOptionsData
|
||||||
|
| ApplicationCommandChannelOptionData
|
||||||
|
| ApplicationCommandAutocompleteOption
|
||||||
|
| ApplicationCommandNumericOptionData
|
||||||
|
)[];
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ApplicationCommandSubCommand extends Omit<BaseApplicationCommandOptionsData, 'required'> {
|
export interface ApplicationCommandSubCommand extends Omit<BaseApplicationCommandOptionsData, 'required'> {
|
||||||
|
|||||||
@@ -79,6 +79,8 @@ import {
|
|||||||
User,
|
User,
|
||||||
VoiceChannel,
|
VoiceChannel,
|
||||||
Shard,
|
Shard,
|
||||||
|
ApplicationCommandAutocompleteOption,
|
||||||
|
ApplicationCommandNumericOptionData,
|
||||||
} from '.';
|
} from '.';
|
||||||
import type { ApplicationCommandOptionTypes } from './enums';
|
import type { ApplicationCommandOptionTypes } from './enums';
|
||||||
|
|
||||||
@@ -454,8 +456,8 @@ const baseCommandOptionData = {
|
|||||||
assertType<ApplicationCommandOptionData>({
|
assertType<ApplicationCommandOptionData>({
|
||||||
...baseCommandOptionData,
|
...baseCommandOptionData,
|
||||||
type: 'STRING',
|
type: 'STRING',
|
||||||
// @ts-expect-error
|
|
||||||
autocomplete: true,
|
autocomplete: true,
|
||||||
|
// @ts-expect-error
|
||||||
choices: [],
|
choices: [],
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -475,16 +477,16 @@ assertType<ApplicationCommandOptionData>({
|
|||||||
assertType<ApplicationCommandOptionData>({
|
assertType<ApplicationCommandOptionData>({
|
||||||
...baseCommandOptionData,
|
...baseCommandOptionData,
|
||||||
type: 'NUMBER',
|
type: 'NUMBER',
|
||||||
// @ts-expect-error
|
|
||||||
autocomplete: true,
|
autocomplete: true,
|
||||||
|
// @ts-expect-error
|
||||||
choices: [],
|
choices: [],
|
||||||
});
|
});
|
||||||
|
|
||||||
assertType<ApplicationCommandOptionData>({
|
assertType<ApplicationCommandOptionData>({
|
||||||
...baseCommandOptionData,
|
...baseCommandOptionData,
|
||||||
type: 'INTEGER',
|
type: 'INTEGER',
|
||||||
// @ts-expect-error
|
|
||||||
autocomplete: true,
|
autocomplete: true,
|
||||||
|
// @ts-expect-error
|
||||||
choices: [],
|
choices: [],
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -893,7 +895,13 @@ declare const applicationSubCommandData: ApplicationCommandSubCommandData;
|
|||||||
|
|
||||||
// Check that only subcommands can have no subcommand or subcommand group sub-options.
|
// Check that only subcommands can have no subcommand or subcommand group sub-options.
|
||||||
assertType<
|
assertType<
|
||||||
| (ApplicationCommandChoicesData | ApplicationCommandNonOptionsData | ApplicationCommandChannelOptionData)[]
|
| (
|
||||||
|
| ApplicationCommandChoicesData
|
||||||
|
| ApplicationCommandNonOptionsData
|
||||||
|
| ApplicationCommandChannelOptionData
|
||||||
|
| ApplicationCommandAutocompleteOption
|
||||||
|
| ApplicationCommandNumericOptionData
|
||||||
|
)[]
|
||||||
| undefined
|
| undefined
|
||||||
>(applicationSubCommandData.options);
|
>(applicationSubCommandData.options);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user