export declare const CAPGO_API_RETRY_MAX_ATTEMPTS = 3;
/** Backend 503 error codes that are safe to retry during uploads and preflight. */
export declare const EXPLICIT_RETRYABLE_503_ERROR_CODES: Set<string>;
export declare const CAPGO_API_MAX_RETRY_DELAY_MS = 10000;
export type CapgoApiRetryOptions = {
    /** When false, only explicit transient 503 responses are retried (not transport errors). */
    retryTransientNetwork?: boolean;
};
/** Transport failures and curated transient 503 responses from the Capgo API. */
export declare function isRetryableCapgoApiError(error: unknown, options?: CapgoApiRetryOptions): Promise<boolean>;
export declare function getCapgoApiRetryDelayMs(error: unknown, attemptIndex: number): Promise<number>;
export declare function invokeCapgoCliApiResultWithRetry<T>(call: () => PromiseLike<{
    data: T | null;
    error: {
        message?: string;
    } | null;
}>, sleepFn?: (ms: number) => Promise<void>, options?: CapgoApiRetryOptions): Promise<{
    data: T | null;
    error: {
        message?: string;
    } | null;
}>;
