interface TextInputProps { value: string; onChange: (value: string) => void; onSubmit: (value: string) => void; placeholder?: string; /** When true, ↑/↓ are left to the parent (e.g. autocomplete dropdown nav). */ ignoreArrows?: boolean; /** When true, Enter does not submit — the parent owns it (autocomplete accept). */ ignoreReturn?: boolean; /** Called when ↑ is pressed on the top line (recall previous history). */ onHistoryUp?: () => void; /** Called when ↓ is pressed on the bottom line (recall next history). */ onHistoryDown?: () => void; } /** * Multi-line controlled text input with cursor control + history. * * Newline: Shift+Enter / Alt+Enter / Ctrl+J (terminal-dependent — all three are * bound for max compatibility). Plain Enter submits. ↑/↓ move between lines; * at the top line ↑ recalls previous history, at the bottom line ↓ recalls next * (via onHistoryUp/Down). Tab is left to the parent. * * External value changes (history recall, post-submit clear) move the cursor to * the end; user keystrokes move it to the insertion point. */ export declare function TextInput({ value, onChange, onSubmit, placeholder, ignoreArrows, ignoreReturn, onHistoryUp, onHistoryDown, }: TextInputProps): import("react").JSX.Element; export {};