/** * Cold-boot stage timing for IDB → Zero init. * * Host apps (Protocolbase) enable via: * globalThis.__PB_ZERO_COLD_BENCH = 1 * or NEXT_PUBLIC_ZERO_COLD_BENCH=1 (inlined by Next when present). * * Early-prefetch policy A/B: * globalThis.__PB_ZERO_EARLY_PREFETCH_POLICY = 'done-only' | 'await-inflight' * Default: 'await-inflight' (app patch behavior). Fork historical default was * done-only only. * * Logs use `[zero:idb]` so they stay visible when `[ZERO-INIT]` is filtered. * Stages also land on `globalThis.__pbZeroColdStages` (ring, last 32). */ export type EarlyPrefetchPolicy = 'done-only' | 'await-inflight'; export type ColdIdbStageRecord = { at: number; stage: string; ms?: number; [key: string]: unknown; }; export declare function isColdIdbBenchEnabled(): boolean; /** Log `[zero:idb]` stages in non-production, or whenever cold-bench is on. */ export declare function shouldLogColdIdb(): boolean; export declare function getEarlyPrefetchPolicy(): EarlyPrefetchPolicy; export declare function nowMs(): number; export declare function logColdIdbStage(stage: string, fields?: Record): void; /** Cheap byte estimate — only when bench enabled (JSON.stringify is not free). */ export declare function estimateJsonBytes(vals: Iterable): number | undefined; //# sourceMappingURL=cold-idb-bench.d.ts.map