export type MoveLineResult = { moved: true; state: InputCoreState; } | { moved: false; }; export interface InputCoreState { readonly buffer: string; readonly cursor: number; } export interface InputCoreRange { readonly start: number; readonly end: number; } declare function replaceRange(state: InputCoreState, range: InputCoreRange, text: string): InputCoreState; export declare const InputCore: { readonly seed: (buffer?: string) => InputCoreState; readonly replaceRange: typeof replaceRange; readonly insert: (state: InputCoreState, text: string) => InputCoreState; readonly backspace: (state: InputCoreState) => InputCoreState; readonly deleteForward: (state: InputCoreState) => InputCoreState; readonly deleteWordBackward: (state: InputCoreState) => InputCoreState; readonly deleteWordForward: (state: InputCoreState) => InputCoreState; readonly deleteToLineStart: (state: InputCoreState) => InputCoreState; readonly deleteToLineEnd: (state: InputCoreState) => InputCoreState; readonly moveLeft: (state: InputCoreState) => InputCoreState; readonly moveRight: (state: InputCoreState) => InputCoreState; readonly moveHome: (state: InputCoreState) => InputCoreState; readonly moveEnd: (state: InputCoreState) => InputCoreState; readonly moveLineStart: (state: InputCoreState) => InputCoreState; readonly moveLineEnd: (state: InputCoreState) => InputCoreState; readonly moveWordBackward: (state: InputCoreState) => InputCoreState; readonly moveWordForward: (state: InputCoreState) => InputCoreState; readonly moveUpLine: (state: InputCoreState, terminalWidth: number, promptVisibleLen: number) => MoveLineResult; readonly moveDownLine: (state: InputCoreState, terminalWidth: number, promptVisibleLen: number) => MoveLineResult; }; export {};