interface ReadLineOptions {
    completer?: Completer | AsyncCompleter;
    crlfDelay?: number;
    escapeCodeTimeout?: number;
    history?: string[];
    historySize?: number;
    input: ReadableStream;
    output?: WritableStream;
    prompt?: string;
    removeHistoryDuplicates?: boolean;
    signal?: AbortSignal;
    tabSize?: number;
    terminal?: boolean;
}

Properties

An optional function used for Tab autocompletion.

crlfDelay?: number

If the delay between \r and \n exceeds crlfDelay milliseconds, both \r and \n will be treated as separate end-of-line input. crlfDelay will be coerced to a number no less than 100. It can be set to Infinity, in which case \r followed by \n will always be considered a single newline (which may be reasonable for reading files with \r\n line delimiter).

100
escapeCodeTimeout?: number

The duration readline will wait for a character (when reading an ambiguous key sequence in milliseconds one that can both form a complete key sequence using the input read so far and can take additional input to complete a longer key sequence).

500
history?: string[]

Initial list of history lines. This option makes sense only if terminal is set to true by the user or by an internal output check, otherwise the history caching mechanism is not initialized at all.

[]
historySize?: number

Maximum number of history lines retained. To disable the history set this value to 0. This option makes sense only if terminal is set to true by the user or by an internal output check, otherwise the history caching mechanism is not initialized at all.

30

The Readable stream to listen to

The Writable stream to write readline data to.

prompt?: string

The prompt string to use.

"> "
removeHistoryDuplicates?: boolean

If true, when a new input line added to the history list duplicates an older one, this removes the older line from the list.

false
signal?: AbortSignal

Allows closing the interface using an AbortSignal. Aborting the signal will internally call close on the interface.

tabSize?: number

The number of spaces a tab is equal to (minimum 1).

8
terminal?: boolean

true if the input and output streams should be treated like a TTY, and have ANSI/VT100 escape codes written to it. Default: checking isTTY on the output stream upon instantiation.