import type { ReactiveController, ReactiveControllerHost } from 'lit'; export interface KeyBinding { key: string; ctrl?: boolean; shift?: boolean; alt?: boolean; meta?: boolean; handler: (event: KeyboardEvent) => void; } /** * KeyboardController — manages keyboard shortcuts and key bindings. * * Used in: loquix-prompt-input (Enter to submit), loquix-chat-container (global shortcuts) */ export declare class KeyboardController implements ReactiveController { private host; private _bindings; private _target; constructor(host: ReactiveControllerHost & HTMLElement); hostConnected(): void; hostDisconnected(): void; /** Attach keyboard listener to a specific element */ attach(target: HTMLElement): void; detach(): void; /** Register a key binding */ addBinding(binding: KeyBinding): void; /** Remove a key binding by key */ removeBinding(key: string): void; /** Clear all bindings */ clearBindings(): void; private _onKeyDown; private _matchesBinding; } //# sourceMappingURL=keyboard.controller.d.ts.map