import type { Duration } from "./types.js"; export declare function isSignalAborted(signal: AbortSignal | undefined): boolean; export declare function signalAbortReason(signal: AbortSignal | undefined): unknown; /** Monotonic clock for elapsed-time budgets; wall-clock jumps must not alter them. */ export declare function monotonicNow(): number; export declare function clearTimerSafely(timer: ReturnType | undefined): void; export declare class RouterTimerError extends Error { readonly code = "timer_unavailable"; constructor(cause: unknown); } export declare class RouterCancellationError extends Error { readonly code = "cancellation_unavailable"; constructor(cause: unknown); } export declare function createAbortControllerSafely(): AbortController; export declare function abortControllerSafely(controller: AbortController, reason: unknown): void; export declare function scheduleTimer(callback: () => void, delay: number): ReturnType; export declare class RouterTimeoutError extends Error { readonly code: "attempt_timeout" | "first_content_timeout" | "total_timeout"; readonly durationMs: number; constructor(code: RouterTimeoutError["code"], durationMs: number); } export declare function durationMs(value: Duration | number | undefined): number | undefined; export declare function effectiveTimeout(attemptTimeout: number | undefined, remaining: number | undefined): number | undefined; export declare function jitteredBackoff(maximumMs: number | undefined, signal?: AbortSignal): Promise;