/** * A single-line editor for the drawer prompt, the ⌃K filter and text forms * (operator-console/AC-40, operator-console/AC-42, operator-console/AC-46). * * Pure: a key in, the new line out. Ctrl-A and Ctrl-K are not editing keys here — * the drawer and the dashboard bind them (operator-console/AC-39, AC-50) — so Home * and End move to the ends, as do Ctrl-E and the arrows. * * @module */ import type { KeyName, LineState } from './model.js'; export declare const EMPTY_LINE: LineState; export declare function lineOf(text: string): LineState; /** A key that types: one printable character, never a control code. */ export declare function printable(key: KeyName): string | null; /** The new line for `key`, or null when the editor does not use that key. */ export declare function editLine(line: LineState, key: KeyName): LineState | null; /** * The line as drawn in `width` columns: the visible slice and the cursor's column in * it. A line longer than the field scrolls so the cursor stays in view. */ export declare function viewLine(line: LineState, width: number): { text: string; cursor: number; }; //# sourceMappingURL=line-edit.d.ts.map