Search...

SlashCommandBuilder

export declare class SlashCommandBuilder 
export declare class SlashCommandBuilder 
A builder that creates API-compatible JSON data for slash commands.
Readonly

default_member_permissions

:

Permissions_2 | null | undefined

The set of permissions represented as a bit set for the command.
Deprecated
Readonly

default_permission

:

boolean | undefined

Whether this command is enabled by default when the application is added to a guild.
Readonly
Optional

description_localizations?

:

LocalizationMap

The description localizations of this command.
Readonly

description

:

string

The description of this command.
Readonly

dm_permission

:

boolean | undefined

Indicates whether the command is available in direct messages with the application.
Remarks
By default, commands are visible. This property is only for global commands.
Readonly
Optional

name_localizations?

:

LocalizationMap

The name localizations of this command.
Readonly

name

:

string

The name of this command.
Readonly

nsfw

:

boolean | undefined

Whether this command is NSFW.
The options of this command.
Adds a new subcommand to this command.
NameTypeOptionalDescription
inputSlashCommandSubcommandBuilder | ((subcommandGroup: SlashCommandSubcommandBuilder) => SlashCommandSubcommandBuilder)NoA function that returns a subcommand builder or an already built builder

addSubcommandGroup(input)

:

SlashCommandSubcommandsOnlyBuilder

Adds a new subcommand group to this command.
NameTypeOptionalDescription
inputSlashCommandSubcommandGroupBuilder | ((subcommandGroup: SlashCommandSubcommandGroupBuilder) => SlashCommandSubcommandGroupBuilder)NoA function that returns a subcommand group builder or an already built builder

setDefaultMemberPermissions(permissions)

:

this

Sets the default permissions a member should have in order to run the command.
Remarks
You can set this to '0' to disable the command by default.
NameTypeOptionalDescription
permissionsPermissions_2 | bigint | number | null | undefinedNoThe permissions bit field to set
Deprecated

setDefaultPermission(value)

:

this

Use or instead.
Deprecated
Sets whether the command is enabled by default when the application is added to a guild.
Remarks
If set to false, you will have to later PUT the permissions for this command.
NameTypeOptionalDescription
valuebooleanNoWhether or not to enable this command by default

setDMPermission(enabled)

:

this

Sets if the command is available in direct messages with the application.
Remarks
By default, commands are visible. This method is only for global commands.
NameTypeOptionalDescription
enabledboolean | null | undefinedNoWhether the command should be enabled in direct messages

setNSFW(nsfw?)

:

this

Sets whether this command is NSFW.
NameTypeOptionalDescription
nsfwbooleanYesWhether this command is NSFW

toJSON()

:

RESTPostAPIChatInputApplicationCommandsJSONBody

Serializes this builder to API-compatible JSON data.
Remarks
This method runs validations on the data before serializing it. As such, it may throw an error if the data is invalid.

addAttachmentOption(input)

:

ShouldOmitSubcommandFunctions extends true ? Pick<this, Exclude<keyof this, "addSubcommand" | "addSubcommandGroup">> : this

Adds an attachment option.
NameTypeOptionalDescription
inputSlashCommandAttachmentOption | ((builder: SlashCommandAttachmentOption) => SlashCommandAttachmentOption)NoA function that returns an option builder or an already built builder
Inherited from SharedSlashCommandOptions

addBooleanOption(input)

:

ShouldOmitSubcommandFunctions extends true ? Pick<this, Exclude<keyof this, "addSubcommand" | "addSubcommandGroup">> : this

Adds a boolean option.
NameTypeOptionalDescription
inputSlashCommandBooleanOption | ((builder: SlashCommandBooleanOption) => SlashCommandBooleanOption)NoA function that returns an option builder or an already built builder
Inherited from SharedSlashCommandOptions

addChannelOption(input)

:

ShouldOmitSubcommandFunctions extends true ? Pick<this, Exclude<keyof this, "addSubcommand" | "addSubcommandGroup">> : this

Adds a channel option.
NameTypeOptionalDescription
inputSlashCommandChannelOption | ((builder: SlashCommandChannelOption) => SlashCommandChannelOption)NoA function that returns an option builder or an already built builder
Inherited from SharedSlashCommandOptions

addIntegerOption(input)

:

ShouldOmitSubcommandFunctions extends true ? Pick<this, Exclude<keyof this, "addSubcommand" | "addSubcommandGroup">> : this

Adds an integer option.
NameTypeOptionalDescription
inputPick<SlashCommandIntegerOption, Exclude<keyof SlashCommandIntegerOption, 'addChoices'>> | Pick<SlashCommandIntegerOption, Exclude<keyof SlashCommandIntegerOption, 'setAutocomplete'>> | SlashCommandIntegerOption | ((builder: SlashCommandIntegerOption) => Pick<SlashCommandIntegerOption, Exclude<keyof SlashCommandIntegerOption, 'addChoices'>> | Pick<SlashCommandIntegerOption, Exclude<keyof SlashCommandIntegerOption, 'setAutocomplete'>> | SlashCommandIntegerOption)NoA function that returns an option builder or an already built builder
Inherited from SharedSlashCommandOptions

addMentionableOption(input)

:

ShouldOmitSubcommandFunctions extends true ? Pick<this, Exclude<keyof this, "addSubcommand" | "addSubcommandGroup">> : this

Adds a mentionable option.
NameTypeOptionalDescription
inputSlashCommandMentionableOption | ((builder: SlashCommandMentionableOption) => SlashCommandMentionableOption)NoA function that returns an option builder or an already built builder
Inherited from SharedSlashCommandOptions

addNumberOption(input)

:

ShouldOmitSubcommandFunctions extends true ? Pick<this, Exclude<keyof this, "addSubcommand" | "addSubcommandGroup">> : this

Adds a number option.
NameTypeOptionalDescription
inputPick<SlashCommandNumberOption, Exclude<keyof SlashCommandNumberOption, 'addChoices'>> | Pick<SlashCommandNumberOption, Exclude<keyof SlashCommandNumberOption, 'setAutocomplete'>> | SlashCommandNumberOption | ((builder: SlashCommandNumberOption) => Pick<SlashCommandNumberOption, Exclude<keyof SlashCommandNumberOption, 'addChoices'>> | Pick<SlashCommandNumberOption, Exclude<keyof SlashCommandNumberOption, 'setAutocomplete'>> | SlashCommandNumberOption)NoA function that returns an option builder or an already built builder
Inherited from SharedSlashCommandOptions

addRoleOption(input)

:

ShouldOmitSubcommandFunctions extends true ? Pick<this, Exclude<keyof this, "addSubcommand" | "addSubcommandGroup">> : this

Adds a role option.
NameTypeOptionalDescription
inputSlashCommandRoleOption | ((builder: SlashCommandRoleOption) => SlashCommandRoleOption)NoA function that returns an option builder or an already built builder
Inherited from SharedSlashCommandOptions

addStringOption(input)

:

ShouldOmitSubcommandFunctions extends true ? Pick<this, Exclude<keyof this, "addSubcommand" | "addSubcommandGroup">> : this

Adds a string option.
NameTypeOptionalDescription
inputPick<SlashCommandStringOption, Exclude<keyof SlashCommandStringOption, 'addChoices'>> | Pick<SlashCommandStringOption, Exclude<keyof SlashCommandStringOption, 'setAutocomplete'>> | SlashCommandStringOption | ((builder: SlashCommandStringOption) => Pick<SlashCommandStringOption, Exclude<keyof SlashCommandStringOption, 'addChoices'>> | Pick<SlashCommandStringOption, Exclude<keyof SlashCommandStringOption, 'setAutocomplete'>> | SlashCommandStringOption)NoA function that returns an option builder or an already built builder
Inherited from SharedSlashCommandOptions

addUserOption(input)

:

ShouldOmitSubcommandFunctions extends true ? Pick<this, Exclude<keyof this, "addSubcommand" | "addSubcommandGroup">> : this

Adds a user option.
NameTypeOptionalDescription
inputSlashCommandUserOption | ((builder: SlashCommandUserOption) => SlashCommandUserOption)NoA function that returns an option builder or an already built builder
Inherited from SharedSlashCommandOptions

setDescription(description)

:

this

Sets the description of this command.
NameTypeOptionalDescription
descriptionstringNoThe description to use
Inherited from SharedNameAndDescription

setDescriptionLocalization(locale, localizedDescription)

:

this

Sets a description localization for this command.
NameTypeOptionalDescription
localeLocaleStringNoThe locale to set
localizedDescriptionstring | nullNoThe localized description for the given locale
Inherited from SharedNameAndDescription

setDescriptionLocalizations(localizedDescriptions)

:

this

Sets the description localizations for this command.
NameTypeOptionalDescription
localizedDescriptionsLocalizationMap | nullNoThe object of localized descriptions to set
Inherited from SharedNameAndDescription

setName(name)

:

this

Sets the name of this command.
NameTypeOptionalDescription
namestringNoThe name to use
Inherited from SharedNameAndDescription

setNameLocalization(locale, localizedName)

:

this

Sets a name localization for this command.
NameTypeOptionalDescription
localeLocaleStringNoThe locale to set
localizedNamestring | nullNoThe localized name for the given locale
Inherited from SharedNameAndDescription

setNameLocalizations(localizedNames)

:

this

Sets the name localizations for this command.
NameTypeOptionalDescription
localizedNamesLocalizationMap | nullNoThe object of localized names to set
Inherited from SharedNameAndDescription