/** * ACE-TUI Keyboard Input Handler * * Raw mode input processing with key parsing, command routing, * history, and tab completion. KFE (Keys For Everything) pattern. */ import { EventEmitter } from "node:events"; export interface KeyEvent { name: string; sequence: string; ctrl: boolean; meta: boolean; shift: boolean; } export type InputMode = "normal" | "command" | "chat" | "search"; export declare class InputHandler extends EventEmitter { private mode; private buffer; private cursorPos; private history; private historyIndex; private maxHistory; private completionFn; private rl; /** Start listening for keyboard input */ start(): void; /** Stop listening */ stop(): void; /** Set the current input mode */ setMode(mode: InputMode): void; getMode(): InputMode; /** Set tab completion function */ setCompletionFn(fn: (partial: string) => string[]): void; /** Get current input buffer */ getBuffer(): string; getCursorPos(): number; /** Insert text at current cursor position in command/chat mode */ insertText(text: string): void; /** Parse raw input data into key events */ private handleData; private handleBackspace; private handleArrowUp; private handleArrowDown; private handleArrowRight; private handleArrowLeft; private handleTabCompletion; private submitBuffer; } //# sourceMappingURL=input.d.ts.map