Skip to main content

Interface: SubcommandOptions

Extends

  • Options

Properties

aliases?

readonly optional aliases: readonly string[]

The aliases for the piece.

Default

[]

Inherited from

Command.Options.aliases

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:861


cooldownDelay?

optional cooldownDelay: number

The time in milliseconds for the cooldown entries to reset, if set to a non-zero value alongside CommandOptions.cooldownLimit, the Cooldown precondition will be added to the list.

Since

2.0.0

Default

0

Inherited from

Command.Options.cooldownDelay

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1231


cooldownFilteredUsers?

optional cooldownFilteredUsers: string[]

The users that are exempt from the Cooldown precondition. Use this to filter out someone like a bot owner

Since

2.0.0

Default

undefined

Inherited from

Command.Options.cooldownFilteredUsers

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1244


cooldownLimit?

optional cooldownLimit: number

The amount of entries the cooldown can have before filling up, if set to a non-zero value alongside CommandOptions.cooldownDelay, the Cooldown precondition will be added to the list.

Since

2.0.0

Default

1

Inherited from

Command.Options.cooldownLimit

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1225


cooldownScope?

optional cooldownScope: BucketScope

The scope of the cooldown entries.

Since

2.0.0

Default

BucketScope.User

Inherited from

Command.Options.cooldownScope

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1237


description?

optional description: string

The description for the command.

Since

1.0.0

Default

''

Inherited from

Command.Options.description

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1174


detailedDescription?

optional detailedDescription: DetailedDescriptionCommand

The detailed description for the command.

Since

1.0.0

Default

''

Inherited from

Command.Options.detailedDescription

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1180


enabled?

readonly optional enabled: boolean

Whether or not the piece should be enabled. If set to false, the piece will be unloaded.

Default

true

Inherited from

Command.Options.enabled

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:204


flags?

optional flags: boolean | readonly string[]

The accepted flags. Flags are key-only identifiers that can be placed anywhere in the command. Two different types are accepted:

  • An array of strings, e.g. [silent].
  • A boolean defining whether the strategy should accept all keys (true) or none at all (false).

Default

[]

Inherited from

Command.Options.flags

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:265


fullCategory?

optional fullCategory: string[]

The full category path for the command

Since

2.0.0

Default

'An array of folder names that lead back to the folder that is registered for in the commands store'

Example

// Given a file named `ping.js` at the path of `commands/General/ping.js`
['General']

// Given a file named `info.js` at the path of `commands/General/About/ping.js`
['General', 'About']

Inherited from

Command.Options.fullCategory

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1194


generateDashLessAliases?

optional generateDashLessAliases: boolean

Whether to add aliases for subcommands with dashes in them

When this option is enabled and the subcommand implements messageRun, dashless aliases will be added.

For subcommands groups both the group itself and all subcommands within the group will have dashless aliases added.

Since

3.0.0

Default

false

Overrides

Command.Options.generateDashLessAliases

Defined in

projects/plugins/packages/subcommands/src/lib/Subcommand.ts:570


generateUnderscoreLessAliases?

optional generateUnderscoreLessAliases: boolean

Whether to add aliases for commands with underscores in them

Since

3.0.0

Default

false

Inherited from

Command.Options.generateUnderscoreLessAliases

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1168


name?

readonly optional name: string

The name for the piece.

Default

''

Inherited from

Command.Options.name

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:199


nsfw?

optional nsfw: boolean

Sets whether the command should be treated as NSFW. If set to true, the NSFW precondition will be added to the list.

Since

2.0.0

Default

false

Inherited from

Command.Options.nsfw

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1219


options?

optional options: boolean | readonly string[]

The accepted options. Options are key-value identifiers that can be placed anywhere in the command. Two different types are accepted:

  • An array of strings, e.g. [silent].
  • A boolean defining whether the strategy should accept all keys (true) or none at all (false).

Default

[]

Inherited from

Command.Options.options

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:272


preconditions?

optional preconditions: readonly PreconditionEntryResolvable[]

The Preconditions to be run, accepts an array of their names.

Seealso

PreconditionContainerArray

Since

1.0.0

Default

[]

Inherited from

Command.Options.preconditions

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1201


prefixes?

optional prefixes: string[]

The prefixes for both flags and options.

Default

['--', '-', '—']

Inherited from

Command.Options.prefixes

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:277


quotes?

optional quotes: [string, string][]

The quotes accepted by this command, pass [] to disable them.

Since

1.0.0

Default

[
['"', '"'], // Double quotes
['“', '”'], // Fancy quotes (on iOS)
['「', '」'] // Corner brackets (CJK)
['«', '»'] // French quotes (guillemets)
]

Inherited from

Command.Options.quotes

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1213


requiredClientPermissions?

optional requiredClientPermissions: PermissionResolvable

The required permissions for the client.

Since

2.0.0

Default

0

Inherited from

Command.Options.requiredClientPermissions

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1250


requiredUserPermissions?

optional requiredUserPermissions: PermissionResolvable

The required permissions for the user.

Since

2.0.0

Default

0

Inherited from

Command.Options.requiredUserPermissions

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1256


runIn?

optional runIn: CommandRunInUnion | CommandSpecificRunIn

The channels the command should run in. If set to null, no precondition entry will be added. Some optimizations are applied when given an array to reduce the amount of preconditions run (e.g. 'GUILD_TEXT' and 'GUILD_NEWS' becomes 'GUILD_ANY', and if both 'DM' and 'GUILD_ANY' are defined, then no precondition entry is added as it runs in all channels).

This can be both CommandRunInUnion which will have the same precondition apply to all the types of commands, or you can use CommandSpecificRunIn to apply different preconditions to different types of commands.

Since

2.0.0

Default

null

Inherited from

Command.Options.runIn

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1268


separators?

optional separators: string[]

The flag separators.

Default

['=', ':']

Inherited from

Command.Options.separators

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:282


subcommands?

optional subcommands: SubcommandMappingArray

Defined in

projects/plugins/packages/subcommands/src/lib/Subcommand.ts:559


typing?

optional typing: boolean

If SapphireClient.typing is true, this option will override it. Otherwise, this option has no effect - you may call Channel#sendTyping` in the run method if you want specific commands to display the typing status.

Default

true

Inherited from

Command.Options.typing

Defined in

node_modules/@sapphire/framework/dist/esm/index.d.mts:1274