import type { OutputFormat } from '../models/common'; /** Handler function signature */ export type CommandHandler = (db: import('better-sqlite3').Database, format: OutputFormat, args: Record) => string | void; /** Route definition */ export interface Route { subcommand: string; action: string; handler: CommandHandler; } /** Router registry */ export declare class CommandRouter { private routes; /** * Register a route. */ register(subcommand: string, action: string, handler: CommandHandler): void; /** * Register multiple routes for a subcommand. */ registerAll(subcommand: string, routes: Array<{ action: string; handler: CommandHandler; }>): void; /** * Find all actions for a subcommand. */ getActions(subcommand: string): string[]; /** * Find the handler for a subcommand and action. * Returns null if not found. */ resolve(subcommand: string, action: string): CommandHandler | null; /** * Get all registered subcommands. */ getSubcommands(): string[]; } //# sourceMappingURL=router.d.ts.map