Options
All
  • Public
  • Public/Protected
  • All
Menu

CommandManager stores all your commands

Hierarchy

  • CommandManager

Index

Constructors

Properties

blockList: Map<string, MutexInterface> = ...
commandErrorHandler?: (err: unknown, msg: Message<boolean>, cmd: string, args: string[]) => void

Type declaration

    • (err: unknown, msg: Message<boolean>, cmd: string, args: string[]): void
    • Parameters

      • err: unknown
      • msg: Message<boolean>
      • cmd: string
      • args: string[]

      Returns void

commandNotFoundHandler?: (msg: Message<boolean>, name: string) => void

Type declaration

    • (msg: Message<boolean>, name: string): void
    • Parameters

      • msg: Message<boolean>
      • name: string

      Returns void

commandOnCooldownHandler?: (msg: Message<boolean>, command: Command, timeLeft: TimeLeft) => void

Type declaration

    • (msg: Message<boolean>, command: Command, timeLeft: TimeLeft): void
    • Parameters

      • msg: Message<boolean>
      • command: Command
      • timeLeft: TimeLeft

      Returns void

commandRegisterLog: CommandLog[] = []
commands: Map<string, Command> = ...
cooldown: CooldownManager = ...
missingPermissionHandler?: (msg: Message<boolean>, permissions: PermissionResolvable[]) => void

Type declaration

    • (msg: Message<boolean>, permissions: PermissionResolvable[]): void
    • Parameters

      • msg: Message<boolean>
      • permissions: PermissionResolvable[]

      Returns void

prefix: string

Bot's prefix

verbose: boolean = true

Show command logging

Methods

  • handleMessage(msg: Message<boolean>): Promise<void>
  • This should be attached to the "messageCreate" event

    Parameters

    • msg: Message<boolean>

      discord's Message object

    Returns Promise<void>

  • log(...values: any[]): void
  • registerCommand(name: string, cmd: Command): void
  • registerCommandErrorHandler(fn: (error: unknown, msg: Message<boolean>, command: string, args: string[]) => void): void
  • Register error handler that was thrown inside Command#exec or Command#execute. If command error handler is registered, all errors thrown inside Command#execute will not be logged.

    Parameters

    • fn: (error: unknown, msg: Message<boolean>, command: string, args: string[]) => void

      Function to be executed when error is thrown

        • (error: unknown, msg: Message<boolean>, command: string, args: string[]): void
        • Parameters

          • error: unknown
          • msg: Message<boolean>
          • command: string
          • args: string[]

          Returns void

    Returns void

  • registerCommandMissingPermissionHandler(fn: (msg: Message<boolean>, permission: PermissionResolvable[]) => void): void
  • Register handler for missing permission. By default, the error will be ignored.

    Parameters

    • fn: (msg: Message<boolean>, permission: PermissionResolvable[]) => void

      Function to be executed when permission is missing.

        • (msg: Message<boolean>, permission: PermissionResolvable[]): void
        • Parameters

          • msg: Message<boolean>
          • permission: PermissionResolvable[]

          Returns void

    Returns void

  • registerCommandNotFoundHandler(fn: (msg: Message<boolean>, cmdName: string) => void): void
  • Register handler for command not found error. By default, the error will be ignored.

    Parameters

    • fn: (msg: Message<boolean>, cmdName: string) => void

      Function to be executed when command not found error occurs

        • (msg: Message<boolean>, cmdName: string): void
        • Parameters

          • msg: Message<boolean>
          • cmdName: string

          Returns void

    Returns void

  • registerCommandOnCooldownHandler(fn: (msg: Message<boolean>, cmd: Command, timeLeft: TimeLeft) => void): void
  • Register handler for command is on throttle. By default, the command will continue be blocked without any message.

    Parameters

    • fn: (msg: Message<boolean>, cmd: Command, timeLeft: TimeLeft) => void

      Function to be executed when command is on throttle

        • (msg: Message<boolean>, cmd: Command, timeLeft: TimeLeft): void
        • Parameters

          • msg: Message<boolean>
          • cmd: Command
          • timeLeft: TimeLeft

          Returns void

    Returns void

  • registerCommands(dir: string): Promise<void>
  • Register commands from the whole directory. All command files should default export the Command class.

    example

    const commandManager = new CommandManager("!"); commandManager.registerCommands(path.join(__dirname, "./commands"));

    Parameters

    • dir: string

      Directory where all the command files reside.

    Returns Promise<void>

Generated using TypeDoc