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