import { Logger } from 'debuggo'; import { APICallOptions } from './types'; export declare class APIClient { private baseUrl; protected logger: Logger; private firstCall; private readonly DEFAULT_MAX; constructor(baseUrl: string, logger?: Logger); call(options: APICallOptions): Promise; private isDoNotRetryCode; static get(url: string, options?: APICallOptions, logger?: Logger): Promise; static post(url: string, body: any, options?: APICallOptions, logger?: Logger): Promise; static put(url: string, body: any, options?: APICallOptions, logger?: Logger): Promise; static delete(url: string, options?: APICallOptions, logger?: Logger): Promise; static patch(url: string, body: any, options?: APICallOptions, logger?: Logger): Promise; static head(url: string, options?: APICallOptions, logger?: Logger): Promise; } export declare function computeRetryAfter(current: number, addShift?: boolean, max?: number): number;