import { FastJsonOptions, FastJsonPath, FastJsonListener, FastJsonData } from './types'; export declare class FastJson { private stack; private postColon; private lastString; private skipped; private events; /** * @param options The fast-json options. */ constructor(options?: FastJsonOptions); /** * Adds a listener function for the provided path. * @param path The JSON path to get values. * @param listener The function called after finding the JSON path. */ on(path: FastJsonPath, listener: FastJsonListener): void; /** * Start processing JSON using the defined paths in {@link FastJson#on} method. * @param data The JSON to process. */ write(data: FastJsonData): void; /** * Stop processing the last JSON provided in the {@link FastJson#write} method. */ skip(): void; private skipCleanUp; private onOpenBlock; private onCloseBlock; private onQuote; private onComma; private onPrimitive; private emitPrimitiveOrString; private static skipBlock; private static parseString; private static parsePrimitive; private getKey; private getFrame; private getKeyForPrimitiveObject; private static getKeyForPrimitiveArray; private static get; private static toString; }