import type { APIClientConfig } from '../types/index.js';
import { LLMError } from '../types/index.js';
export declare abstract class APIClient<TRequest, TResponse> {
    protected config: APIClientConfig;
    constructor(config?: Partial<APIClientConfig>);
    protected abstract fetch(request: TRequest): Promise<TResponse>;
    protected executeWithRetry(request: TRequest): Promise<TResponse>;
    private calculateDelay;
    private sleep;
    protected createStandardErrorHandler(): (error: any) => LLMError;
}
//# sourceMappingURL=APIClient.d.ts.map