import { type Deadline } from '../backend-contract/primitives.js'; /** * Application-facing operation controls. Timeouts are expressed as a monotonic * wall-clock delta and normalized once to an internal Deadline; advanced callers * use `/advanced` with an exact Deadline. */ export interface OperationOptions { readonly signal?: AbortSignal; readonly timeoutMs?: number; } export interface NormalizedOperationOptions { readonly signal: AbortSignal | null; readonly deadline: Deadline | null; } /** * Centralized application option normalization. * * - validates `signal` and `timeoutMs` exactly once per public entry * - composes an outer signal with internal cancellation without losing cause * - preserves an earlier deadline when a helper calls another helper * - converts `timeoutMs` to a monotonic Deadline using the provided `now` */ export declare function normalizeOperationOptions(options: OperationOptions | undefined, now: () => number, existingDeadline?: Deadline | null): NormalizedOperationOptions; export declare function disposeComposedAbortSignal(signal: AbortSignal | null | undefined): void; export declare function composeAbortSignal(outer: AbortSignal | null, inner: AbortSignal | null): AbortSignal | null; //# sourceMappingURL=operation-options.d.ts.map