///
import { Readable, ReadableOptions } from 'stream';
import { JsonStreamOptions, Replacer, SpaceReplacement } from './jsonStreamOptions';
import { JsonStreamType } from './streamType';
declare enum StreamState {
WAITING = 0,
READ_WHILE_READING = 1,
READING = 2,
ENDED = 3,
ERROR = 4
}
export declare class JsonStream extends Readable {
private stack;
protected state: StreamState;
jsonStreamType: JsonStreamType;
constructor(value: any, replacer?: Replacer, space?: SpaceReplacement, streamOpt?: ReadableOptions);
addFirstStackElement(value: any, options: JsonStreamOptions): void;
_read(size?: number): Promise;
protected isInState(state: StreamState): boolean;
processStack(size: number): Promise;
handleError(error: Error): void;
onClose(): void;
}
export {};