import type { CommandArguments, CommandResult, ICommand } from "../../shared/interfaces/command.interface.js"; /** * Command Registry implementing Command pattern * Enables registration and execution of commands without tight coupling * Supports extensibility: add commands without modifying CLI */ export declare class CommandRegistry { private readonly commands; private readonly logger; /** * Register a command */ register(command: ICommand): void; /** * Register multiple commands at once */ registerMultiple(commands: ICommand[]): void; /** * Check if command exists */ has(name: string): boolean; /** * Get a command by name */ get(name: string): ICommand | undefined; /** * Execute a command */ execute(name: string, args: CommandArguments): Promise; /** * Get all registered commands */ getAll(): ICommand[]; /** * Get command names */ getNames(): string[]; /** * Clear all commands */ clear(): void; } //# sourceMappingURL=command.registry.d.ts.map