/// import { Duplex } from 'stream'; import { DataType } from '../../type'; import { Builder, BuilderOptions } from '../../builder/index'; /** @ignore */ export interface BuilderDuplexOptions extends BuilderOptions { autoDestroy?: boolean; highWaterMark?: number; queueingStrategy?: 'bytes' | 'count'; dictionaryHashFunction?: (value: any) => string | number; valueToChildTypeId?: (builder: Builder, value: any, offset: number) => number; } /** @ignore */ export declare function builderThroughNodeStream(options: BuilderDuplexOptions): BuilderDuplex; /** @ignore */ declare type CB = (error?: Error | null | undefined) => void; /** @ignore */ declare class BuilderDuplex extends Duplex { private _finished; private _numChunks; private _desiredSize; private _builder; private _getSize; constructor(builder: Builder, options: BuilderDuplexOptions); _read(size: number): void; _final(cb?: CB): void; _write(value: any, _: string, cb?: CB): boolean; _destroy(err: Error | null, cb?: (error: Error | null) => void): void; private _maybeFlush; } export {};