UNPKG

linereader2

Version:

Asynchronous, buffered, chunk-by-chunk file reader with customizable buffer size on Node.js.

37 lines (36 loc) 1.18 kB
import { ChunkReaderOptions } from 'chunkreader2'; export interface LineReaderOptions extends ChunkReaderOptions { lineSeparator?: LineSeparator; skipBlank?: boolean; skipNumbers?: (number | NumberRange)[]; } declare class LineReader { private options; private reader; private mutex; private buffer; private cutted?; private separator?; private count; private skips; get filePath(): string; get bytesLength(): number; get lineSeparator(): string | undefined; get linesRead(): number; get bytesRead(): number; get isClosed(): boolean; get isOpened(): boolean; constructor(options: LineReaderOptions); _determineSeparator(): Promise<void>; _nextChunk(): Promise<string>; readLinesWithNumbers(limit?: number): Promise<[string, number][]>; readLines(limit?: number): Promise<string[]>; readLineWithNumber(): Promise<[string, number] | undefined>; readLine(): Promise<string | undefined>; resetReader(): void; openReader(): void; closeReader(): void; } type NumberRange = [number, number]; type LineSeparator = '\r\n' | '\r' | '\n' | string; export default LineReader;