import { ProfilerClock } from "./clock"; interface BootstrapRecord { id: number; parentId?: number; kind: string; name: string; /** Monotonic clock value when the startup phase began. */ startMs: number; /** Monotonic clock value when the startup phase ended. */ endMs: number; /** CPU time used by the process while this startup phase was open. */ processCpuMs: number; status: "completed" | "failed" | "interrupted"; } interface BootstrapPhase { end(status?: BootstrapRecord["status"]): void; } /** * Records the small part of startup that happens before profiler.level is known. * It deliberately uses only a bounded array and clock/CPU snapshots. */ export declare class BootstrapProbe { /** ISO 8601 wall-clock time when the bootstrap probe started. */ readonly startedAt: string; /** Unix wall-clock timestamp in milliseconds when the probe started. */ readonly startedAtEpochMs: number; /** High-resolution monotonic clock value used as the local timing origin. */ readonly startedAtMonotonicMs: number; private readonly _clock; private readonly _records; private readonly _open; private readonly _stack; private _sequence; private _discarded; constructor(clock?: ProfilerClock); startPhase(kind: string, name?: string): BootstrapPhase; withPhase(kind: string, name: string, action: () => T | Promise): Promise; takeRecords(): BootstrapRecord[]; discard(): void; private _finishPhase; } export {};