import type { CommandContext, CommandResult, Keymap, KeymapEvent } from "../../index.js"; export interface ExCommandPayload { raw: string; args: readonly string[]; payload?: unknown; } export interface ExCommand { name: string; aliases?: string[]; nargs?: "0" | "1" | "?" | "*" | "+"; run: (ctx: CommandContext) => CommandResult; [key: string]: unknown; } /** * Installs Ex command support. Ex commands are registered through normal * keymap layers by using a colon-prefixed command name or * `namespace: "excommands"`. */ export declare function registerExCommands(keymap: Keymap): () => void;