///
import { IBreakpoint, IEventSnapshot, IFlagable, IStackFrame } from "../models/Snapshot";
import { Debugger, InspectorNotification, Runtime } from "inspector";
import { IVarAccessor } from "./bfs/Node";
import { IEvaluator } from "./BreakpointFiredHandler";
import { TracepointConfig } from "./TracepointConfig";
import { ClientConfig } from "../models/ClientConfig";
import SourceMapperService from "../apis/SourceMapperService";
export interface IIdentityResponse {
hash: string;
truncated: boolean;
str: string;
obfuscated: boolean;
}
export declare class FrameProcessor {
private static readonly REG_EXP;
private readonly _startTs;
private readonly _tpConfig;
private readonly _root;
private readonly _evaluator;
private readonly _varLookup;
private _sourceMapper;
private readonly _varCache;
private readonly _clientConfig;
private variableCount;
protected _frames: IStackFrame[];
constructor(timestamp: number, tpConfig: TracepointConfig, root: string, evaluator: IEvaluator, clientConfig: ClientConfig, _sourceMapper: SourceMapperService);
static trimUrl(url: string, root: string): string;
static putOrAppendFlag(variable: IFlagable, flag: string): void;
static determineType(value: Runtime.RemoteObject): string;
private static className;
generateSnapshot(message: InspectorNotification, processAllFrames: boolean, skipVariables: boolean): void;
clone(breakpoint: IBreakpoint): IEventSnapshot;
processWatches(frameId: string, snapshot: IEventSnapshot): void;
processLog(frameId: string, snapshot: IEventSnapshot): void;
private processBreadthFirst;
private processBreadthFirstObjects;
protected truncateAndIdentify({ value, name }: IVarAccessor): IIdentityResponse;
private checkCount;
private processChildNodes;
private newId;
private processVariable;
private processObjectNodes;
private processListNodes;
private processEntryNodes;
private processMapEntryNodes;
}