import React from 'react';
interface MultilineInputProps {
    value: string;
    onChange: (value: string) => void;
    onSubmit: (value: string) => void;
    focus?: boolean;
    maxVisibleLines?: number;
    disabled?: boolean;
    mode?: 'normal' | 'bash';
    hint?: string;
}
interface LineDeletionResult {
    value: string;
    cursorRow: number;
    cursorCol: number;
}
export declare function deleteToLineStart(value: string, cursorRow: number, cursorCol: number): LineDeletionResult;
export declare function deleteToLineEnd(value: string, cursorRow: number, cursorCol: number): LineDeletionResult;
export declare function computeVisibleLineWindow(line: string, cursorCol: number, width: number): {
    startCol: number;
    displayLine: string;
    cursorDisplayCol: number;
};
export declare function isComposerInterruptInput(input: string, key: {
    ctrl?: boolean;
}): boolean;
export declare function MultilineInput({ value, onChange, onSubmit, focus, maxVisibleLines, disabled, mode, hint, }: MultilineInputProps): React.ReactElement;
export {};
