import { InputEditor } from "../../input-editor.js"; import type { ExtensionTerminalInputResult } from "../extensions/extension-ui-controller.js"; import type { MouseEvent, ActivePopupMenu } from "../types.js"; type DirectPopupMenu = Exclude; export type InputControllerHost = { readonly inputEditor: InputEditor; readonly cwd: string; inputScopeKey?(): string | undefined; handleExtensionTerminalInput(data: string): ExtensionTerminalInputResult; extensionInputUsesEditor?(): boolean; isShiftPressed?(): boolean; isCommandPressed?(): boolean; getInput(): string; getDirectPopupMenu(): DirectPopupMenu | undefined; resetRequestHistoryNavigation(): void; resetInputMenuDismissals(): void; render(): void; moveActivePopupMenuSelection(delta: number): boolean; moveActiveModelThinkingLevel(delta: number): boolean; navigateRequestHistory(delta: number): boolean; scrollByLines(delta: number): void; scrollByPage(delta: number): void; handleMouse(event: MouseEvent): void; handleEnter(): void; handleInterrupt(): Promise; handleEscape(): Promise; handleDirectPopupInput(char: string): boolean; toggleModelVisibilityMode(): boolean; autocompleteModel(): boolean; acceptAutocompleteSuggestion(): boolean; autocompleteSlashCommand(): void; toggleVoiceRecording(): void; stop(): Promise; }; export declare class AppInputController { private readonly host; private inputBuffer; private readonly inputDecoder; private readonly pasteHandler; constructor(host: InputControllerHost); handleChunk(chunk: Buffer): void; private consumeBufferedSharedEditorInput; private consumeSharedEditorInput; private drainInputBuffer; private consumePrintableRun; private consumeBracketedPastePayload; private getEscapeSequences; private isPendingEscapeSequence; private consumeEscapeSequence; private consumeCommandBackspaceSequence; private consumeCommandArrowPageSequence; private consumeCommandArrowPageMatch; private consumeTerminalEditShortcutSequence; private consumeIgnoredModifiedKeySequence; private consumeModifiedArrowKeySequence; private consumeEscapeKeySequence; private consumeClipboardImagePasteSequence; private consumeShiftEnterSequence; private consumeModifiedKeySequence; private consumeTerminalInterruptSequence; private handleArrowUp; private handleArrowDown; private handleArrowLeft; private handleArrowRight; private orderedEditorSelection; private insertInputNewline; private undoInput; private redoInput; private handleEditShortcutChar; private deleteCurrentInputLine; private handleChar; private isShiftPressed; private isCommandPressed; } export {};