export interface CancelableSignal { signal: AbortSignal; cancel: () => void; } /** A per-call timeout as a signal we fully control: aborts with a labeled * TimeoutError DOMException, and `cancel()` clears the timer when the work * settles first (so a fast fetch leaves no pending timer / live controller). */ export declare function timeoutSignal(ms: number, label: string): CancelableSignal; export interface CombinedSignal { signal: AbortSignal; /** Detach this combiner's listeners from every input. Call when the * consumer settles, so a long-lived shared input (the stage signal) * does not accumulate one listener per fetch. */ cleanup: () => void; } /** Abort when ANY input aborts, propagating that input's `reason`. */ export declare function anySignal(signals: AbortSignal[]): CombinedSignal; /** A promise that rejects with `signal.reason` when it aborts; never settles * when no signal is given (so it's a safe loser in a Promise.race). */ export declare function abortRejection(signal?: AbortSignal): Promise; //# sourceMappingURL=abort.d.ts.map