///
import BreakpointService, { BreakpointListItem } from '../BreakpointService';
import { Debugger, InspectorNotification, Runtime } from 'inspector';
import { Debug } from '../apis/Debug';
import Events from '../apis/Events';
import Configuration from '../models/Configuration';
import { IEventSnapshot } from "../models/Snapshot";
import { TracepointConfig } from "./TracepointConfig";
import { FrameProcessor } from "./FrameProcessor";
import { ClientConfig } from "../models/ClientConfig";
import ProfilerService from "../apis/ProfilerService";
import SourceMapperService from "../apis/SourceMapperService";
export interface IEvaluator {
getChildrenFromRuntime(objectId: string): {
name: string;
value: Runtime.RemoteObject;
}[];
evaluateNamedWatcher(value: string, callFrameId: string): Debugger.EvaluateOnCallFrameReturnType;
}
export default class BreakpointFiredHandler {
private _events;
private _config;
private _debug;
private _clientConfig;
private _profilerService;
private _sourceMapper;
timestamp: number;
tracepoints: BreakpointListItem[];
protected _breakpoints: BreakpointListItem[];
breakpointService: BreakpointService;
constructor(_events: Events, _config: Configuration, _debug: Debug, _clientConfig: ClientConfig, _profilerService: ProfilerService, _sourceMapper: SourceMapperService);
private static timeExceeded;
/**
* Shuffle an array without affecting the input
*
* @param array the array to shuffle
*
* @return the new shuffled array
*/
private static shuffleArray;
/**
* Handle a breakpoint being fired
*
* @param message The information about the current state of the application
*/
handle(message: InspectorNotification): Promise;
protected buildFrameProcessor(tpConfig: TracepointConfig): FrameProcessor;
protected sendFired(snapshot: IEventSnapshot): Promise;
}