import type { ProviderContext } from '../api/provider-types.js'; import type { OpenAIStandardConfig } from '../api/provider-config.js'; import type { IAuthProvider } from '../../auth/auth-interface.js'; import type { UnknownObject } from '../../../types/common-types.js'; import type { PreparedHttpRequest } from './http-request-executor.js'; import type { ProviderErrorAugmented } from './provider-error-types.js'; import type { HttpClient } from '../utils/http-client.js'; export declare function getProviderHttpRetryLimit(): number; export declare function delayBeforeProviderHttpRetry(attempt: number): Promise; export declare function shouldRetryProviderHttpError(error: unknown, attempt: number, maxAttempts: number): boolean; export declare function tryRecoverOAuthAndReplay(options: { error: unknown; requestInfo: PreparedHttpRequest; processedRequest: UnknownObject; captureSse: boolean; context: ProviderContext; authProvider: IAuthProvider | null; oauthProviderId?: string; providerType: string; config: OpenAIStandardConfig; httpClient: HttpClient; buildRequestHeaders: () => Promise>; finalizeRequestHeaders: (headers: Record, req: UnknownObject) => Promise>; applyStreamModeHeaders: (headers: Record, wantsSse: boolean) => Record; wrapUpstreamSseResponse: (stream: NodeJS.ReadableStream, ctx: ProviderContext) => Promise; }): Promise; export declare function normalizeProviderHttpError(options: { error: unknown; processedRequest: UnknownObject; requestInfo: PreparedHttpRequest; context: ProviderContext; }): Promise;