import { BaseClient } from "./BaseClient";
import type { ApiResponse, BriqConfig, RequestConfig } from "../types/common";
interface Logger {
    error(message: string, meta?: any): void;
    warn(message: string, meta?: any): void;
    info(message: string, meta?: any): void;
    debug(message: string, meta?: any): void;
}
export declare class HttpClient extends BaseClient {
    private logger;
    constructor(config: BriqConfig & {
        logger?: Logger;
    });
    protected executeRequest(config: RequestConfig): Promise<Response>;
    protected handleResponse<T>(response: Response): Promise<ApiResponse<T>>;
    protected handleError(error: any): Error;
    private createErrorFromResponse;
    protected request<T>(config: RequestConfig): Promise<ApiResponse<T>>;
    getLogger(): Logger;
    setLogger(logger: Logger): void;
}
export type { Logger };
//# sourceMappingURL=HttpClient.d.ts.map