/** * Process-wide controls for outbound HTML and image requests. * * The secure HTTP agents bound sockets per origin. This limiter adds a global * ceiling so callers cannot bypass the bound by spreading requests over many * different origins. The deadline is intentionally separate from Axios' * socket-inactivity timeout and covers queue wait plus the complete response. */ export declare class NetworkRequestDeadlineError extends Error { readonly timeoutMs: number; constructor(timeoutMs: number); } export declare class NetworkRequestAbortedError extends Error { constructor(message?: string); } export declare class NetworkRequestQueueFullError extends Error { constructor(); } /** * Run one outbound request under a total wall-clock deadline and the shared * process-wide concurrency limit. */ export declare function runControlledNetworkRequest(timeoutMs: number, callerSignal: AbortSignal | undefined, request: (signal: AbortSignal) => Promise): Promise; declare function resetLimiterForTests(): void; /** Test-only limiter visibility; omitted at runtime outside NODE_ENV=test. */ export declare const __testNetworkRequestLimiter: { getStats: () => { active: number; queued: number; activeLimit: number; queuedLimit: number; }; reset: typeof resetLimiterForTests; } | undefined; export {};