import { Profile, ProfileGroup } from '../lib/profile'; import { OldCPUProfile } from './v8cpuFormatter'; export interface TimelineEvent { pid: number; tid: number; ts: number; ph: string; cat: string; name: string; dur: number; tdur: number; tts: number; args: { [key: string]: any; }; id?: string; } interface PositionTickInfo { line: number; ticks: number; } interface CPUProfileCallFrame { columnNumber: number; functionName: string; lineNumber: number; scriptId: string; url: string; } export interface CPUProfileNode { callFrame: CPUProfileCallFrame; hitCount: number; id: number; children?: number[]; positionTicks?: PositionTickInfo[]; parent?: CPUProfileNode; } export interface CPUProfile { startTime: number; endTime: number; nodes: CPUProfileNode[]; samples: number[]; timeDeltas: number[]; } export declare function isChromeTimeline(rawProfile: any): boolean; export declare function importFromChromeTimeline(events: TimelineEvent[], fileName: string): ProfileGroup; export declare function importFromChromeCPUProfile(chromeProfile: CPUProfile): Profile; export declare function importFromOldV8CPUProfile(content: OldCPUProfile): Profile; export {};