supercat666's picture
add igv
78c921d
raw
history blame
No virus
6.45 kB
/// <reference types="node" />
import { Data } from '../data.js';
import { Table } from '../table.js';
import { TypeMap } from '../type.js';
import { Schema } from '../schema.js';
import { Message } from './metadata/message.js';
import { FileBlock } from './metadata/file.js';
import { MessageHeader } from '../enum.js';
import { WritableSink, AsyncByteQueue } from '../io/stream.js';
import { ArrayBufferViewInput } from '../util/buffer.js';
import { RecordBatch } from '../recordbatch.js';
import { Writable, ReadableInterop, ReadableDOMStreamOptions } from '../io/interfaces.js';
export interface RecordBatchStreamWriterOptions {
/**
*
*/
autoDestroy?: boolean;
/**
* A flag indicating whether the RecordBatchWriter should construct pre-0.15.0
* encapsulated IPC Messages, which reserves 4 bytes for the Message metadata
* length instead of 8.
* @see https://issues.apache.org/jira/browse/ARROW-6313
*/
writeLegacyIpcFormat?: boolean;
}
export declare class RecordBatchWriter<T extends TypeMap = any> extends ReadableInterop<Uint8Array> implements Writable<RecordBatch<T>> {
/** @nocollapse */
static throughNode(options?: import('stream').DuplexOptions & {
autoDestroy: boolean;
}): import('stream').Duplex;
/** @nocollapse */
static throughDOM<T extends TypeMap>(writableStrategy?: QueuingStrategy<RecordBatch<T>> & {
autoDestroy: boolean;
}, readableStrategy?: {
highWaterMark?: number;
size?: any;
}): {
writable: WritableStream<Table<T> | RecordBatch<T>>;
readable: ReadableStream<Uint8Array>;
};
constructor(options?: RecordBatchStreamWriterOptions);
protected _position: number;
protected _started: boolean;
protected _autoDestroy: boolean;
protected _writeLegacyIpcFormat: boolean;
protected _sink: AsyncByteQueue<Uint8Array>;
protected _schema: Schema | null;
protected _dictionaryBlocks: FileBlock[];
protected _recordBatchBlocks: FileBlock[];
protected _dictionaryDeltaOffsets: Map<number, number>;
toString(sync: true): string;
toString(sync?: false): Promise<string>;
toUint8Array(sync: true): Uint8Array;
toUint8Array(sync?: false): Promise<Uint8Array>;
writeAll(input: Table<T> | Iterable<RecordBatch<T>>): this;
writeAll(input: AsyncIterable<RecordBatch<T>>): Promise<this>;
writeAll(input: PromiseLike<AsyncIterable<RecordBatch<T>>>): Promise<this>;
writeAll(input: PromiseLike<Table<T> | Iterable<RecordBatch<T>>>): Promise<this>;
get closed(): Promise<void>;
[Symbol.asyncIterator](): AsyncByteQueue<Uint8Array>;
toDOMStream(options?: ReadableDOMStreamOptions): ReadableStream<Uint8Array>;
toNodeStream(options?: import('stream').ReadableOptions): import("stream").Readable;
close(): void;
abort(reason?: any): void;
finish(): this;
reset(sink?: WritableSink<ArrayBufferViewInput>, schema?: Schema<T> | null): this;
write(payload?: Table<T> | RecordBatch<T> | Iterable<RecordBatch<T>> | null): void;
protected _writeMessage<T extends MessageHeader>(message: Message<T>, alignment?: number): this;
protected _write(chunk: ArrayBufferViewInput): this;
protected _writeSchema(schema: Schema<T>): this;
protected _writeFooter(schema: Schema<T>): this;
protected _writeMagic(): this;
protected _writePadding(nBytes: number): this;
protected _writeRecordBatch(batch: RecordBatch<T>): this;
protected _writeDictionaryBatch(dictionary: Data, id: number, isDelta?: boolean): this;
protected _writeBodyBuffers(buffers: ArrayBufferView[]): this;
protected _writeDictionaries(batch: RecordBatch<T>): this;
}
/** @ignore */
export declare class RecordBatchStreamWriter<T extends TypeMap = any> extends RecordBatchWriter<T> {
static writeAll<T extends TypeMap = any>(input: Table<T> | Iterable<RecordBatch<T>>, options?: RecordBatchStreamWriterOptions): RecordBatchStreamWriter<T>;
static writeAll<T extends TypeMap = any>(input: AsyncIterable<RecordBatch<T>>, options?: RecordBatchStreamWriterOptions): Promise<RecordBatchStreamWriter<T>>;
static writeAll<T extends TypeMap = any>(input: PromiseLike<AsyncIterable<RecordBatch<T>>>, options?: RecordBatchStreamWriterOptions): Promise<RecordBatchStreamWriter<T>>;
static writeAll<T extends TypeMap = any>(input: PromiseLike<Table<T> | Iterable<RecordBatch<T>>>, options?: RecordBatchStreamWriterOptions): Promise<RecordBatchStreamWriter<T>>;
}
/** @ignore */
export declare class RecordBatchFileWriter<T extends TypeMap = any> extends RecordBatchWriter<T> {
static writeAll<T extends TypeMap = any>(input: Table<T> | Iterable<RecordBatch<T>>): RecordBatchFileWriter<T>;
static writeAll<T extends TypeMap = any>(input: AsyncIterable<RecordBatch<T>>): Promise<RecordBatchFileWriter<T>>;
static writeAll<T extends TypeMap = any>(input: PromiseLike<AsyncIterable<RecordBatch<T>>>): Promise<RecordBatchFileWriter<T>>;
static writeAll<T extends TypeMap = any>(input: PromiseLike<Table<T> | Iterable<RecordBatch<T>>>): Promise<RecordBatchFileWriter<T>>;
constructor();
protected _writeSchema(schema: Schema<T>): this;
protected _writeFooter(schema: Schema<T>): this;
}
/** @ignore */
export declare class RecordBatchJSONWriter<T extends TypeMap = any> extends RecordBatchWriter<T> {
static writeAll<T extends TypeMap = any>(this: typeof RecordBatchWriter, input: Table<T> | Iterable<RecordBatch<T>>): RecordBatchJSONWriter<T>;
static writeAll<T extends TypeMap = any>(this: typeof RecordBatchWriter, input: AsyncIterable<RecordBatch<T>>): Promise<RecordBatchJSONWriter<T>>;
static writeAll<T extends TypeMap = any>(this: typeof RecordBatchWriter, input: PromiseLike<AsyncIterable<RecordBatch<T>>>): Promise<RecordBatchJSONWriter<T>>;
static writeAll<T extends TypeMap = any>(this: typeof RecordBatchWriter, input: PromiseLike<Table<T> | Iterable<RecordBatch<T>>>): Promise<RecordBatchJSONWriter<T>>;
private _recordBatches;
private _dictionaries;
constructor();
protected _writeMessage(): this;
protected _writeFooter(schema: Schema<T>): this;
protected _writeSchema(schema: Schema<T>): this;
protected _writeDictionaries(batch: RecordBatch<T>): this;
protected _writeDictionaryBatch(dictionary: Data, id: number, isDelta?: boolean): this;
protected _writeRecordBatch(batch: RecordBatch<T>): this;
close(): void;
}