/**
 * Marks a run-scoped promise as observed without changing its behavior for awaited callers.
 *
 * Browser run teardown aborts can reject promises created for evaluated code after user code
 * has stopped observing them (for example fire-and-forget `wait()`/facade calls). In 16.3.0
 * those zero-consumer rejections reached the process-level `unhandledRejection` handler and
 * killed every subagent sharing the process (issues #4499/#4672). Attaching a no-op rejection
 * handler at creation makes the promise observed while returning the original promise so callers
 * that do await it still receive the rejection.
 */
export declare function markHandled<T>(promise: Promise<T>): Promise<T>;
/** Sleeps inside evaluated browser code while honoring the owning run's cancellation signal. */
export declare function waitForBrowserRun(ms: number, signal: AbortSignal): Promise<void>;
/** Binds a long-lived browser facade to one evaluated run's abort signal. */
export declare function bindBrowserRunFacade<T extends object>(target: T, signal: AbortSignal): T;
