import type { ErrorSourceSpan } from "../error/shape.js"; import type { SandboxPromise, SandboxValue } from "./values.js"; export declare class SandboxPromiseRejectionTracker { private readonly records; private readonly recordsByPromise; observe(promise: SandboxPromise): void; track(promise: SandboxPromise): void; findUnhandledRejection(): Promise<{ reason: SandboxValue | undefined; span: ErrorSourceSpan | undefined; } | undefined>; } export declare function createSandboxPromiseRejectionTracker(): SandboxPromiseRejectionTracker; export declare function observeSandboxPromise(promise: SandboxPromise): void; export declare function trackSandboxPromise(promise: SandboxPromise): void; export declare function withSandboxPromiseRejectionTracker(tracker: SandboxPromiseRejectionTracker, callback: () => TResult): TResult;