Files
discordeno/examples/beginner/src/commands.ts
Fleny 4939822434 docs: Update desired properties docs (#3940)
* Update docs for desired properties

* Update examples to use createBot desiredProperties

The BigBot and reaction roles examples use the Discordeno CLI

* Migrate examples to v19 stable

* Docs work
2024-11-19 16:40:01 -06:00

28 lines
789 B
TypeScript

import { type ApplicationCommandOption, type ApplicationCommandTypes, Collection } from '@discordeno/bot'
import type { bot } from './bot.js'
export const commands = new Collection<string, Command>()
export function createCommand(command: Command): void {
commands.set(command.name, command)
}
export interface Command {
name: string
description: string
usage?: string[]
options?: ApplicationCommandOption[]
type: ApplicationCommandTypes
/** Defaults to `Guild` */
scope?: 'Global' | 'Guild'
execute: (interaction: typeof bot.transformers.$inferredTypes.interaction) => unknown
subcommands?: Array<SubCommandGroup | SubCommand>
}
export type SubCommand = Omit<Command, 'subcommands'>
export interface SubCommandGroup {
name: string
subCommands: SubCommand[]
}