UNPKG

@dsnp/parquetjs

Version:

fully asynchronous, pure JavaScript implementation of the Parquet file format

30 lines (29 loc) 897 B
import { Statistics } from '../gen-nodejs/parquet_types'; import { ParquetEnvelopeReader } from './reader'; import { FileMetaDataExt } from './declare'; export interface BufferReaderOptions { maxSpan?: number; maxLength?: number; queueWait?: number; default_dictionary_size?: number; metadata?: FileMetaDataExt; rawStatistics?: Statistics; } interface BufferReaderQueueRow { offset: number; length: number; resolve: (buf: Buffer) => void; reject: unknown; } export default class BufferReader { maxSpan: number; maxLength: number; queueWait: number; scheduled?: boolean; queue: BufferReaderQueueRow[]; envelopeReader: ParquetEnvelopeReader; constructor(envelopeReader: ParquetEnvelopeReader, options: BufferReaderOptions); read(offset: number, length: number): Promise<Buffer>; processQueue(): Promise<void>; } export {};