/** * [WHO]: SlashCommandInfo, BuiltinSlashCommand, slashCommand definitions, category helpers, getLocalizedCommands() * [FROM]: No external dependencies * [TO]: Consumed by modes/interactive/interactive-mode.ts, modes/acp/acp-mode.ts * [HERE]: core/slash-commands.ts - slash command types and registry */ export type SlashCommandSource = "extension" | "prompt" | "skill"; export type SlashCommandLocation = "user" | "project" | "path"; export type SlashCommandCategory = "core" | "model" | "memory" | "session" | "workflow" | "agents" | "tools" | "admin"; export type SlashCommandImplementation = "core" | "extension"; export interface SlashCommandInfo { name: string; description?: string; source: SlashCommandSource; category?: SlashCommandCategory; location?: SlashCommandLocation; path?: string; } export interface BuiltinSlashCommand { name: string; descriptionKey: string; category: SlashCommandCategory; implementation?: SlashCommandImplementation; } export declare const BUILTIN_SLASH_COMMANDS: ReadonlyArray; export declare function getExtensionBackedBuiltinCommandNames(): Set; export declare function inferSlashCommandCategory(name: string, source?: SlashCommandSource): SlashCommandCategory; export declare function getSlashCommandCategoryLabel(category: SlashCommandCategory, t: (key: string) => string): string; export declare function formatSlashCommandDescription(description: string | undefined, category: SlashCommandCategory | undefined, t: (key: string) => string): string | undefined; export interface LocalizedSlashCommand { name: string; description: string; category: SlashCommandCategory; categoryLabel: string; } export declare function getLocalizedCommands(t: (key: string) => string): LocalizedSlashCommand[];