import type { NpcInspection, Vec3 } from './metrics'; import type { BrowserKey } from '../browser/launch'; export { formatNpcInspection } from './format'; export type { NpcInspection, NpcMetrics, NpcSample, StuckWindow, Transition, TargetProgress } from './metrics'; export type InspectNpcOptions = { directory: string; /** How long to watch, in seconds (default 8). */ seconds?: number | undefined; /** Samples per second (default 10, capped at 60). */ sampleHz?: number | undefined; /** Report only this NPC id; every id seen still lands in the roster. */ npc?: string | undefined; /** A world-space point to measure progress against — the destination the behaviour is meant to reach. */ target?: Vec3 | undefined; /** Frames/assets settle time between helper-ready and the first sample. */ settleMs?: number | undefined; timeoutMs?: number | undefined; /** Diagnostic override: launch only this candidate, no fallback. */ browser?: BrowserKey | undefined; fallbackMounts?: Record | undefined; onProgress?: ((message: string) => void) | undefined; }; export declare function inspectNpc(opts: InspectNpcOptions): Promise;