import { Method } from "axios";
import HttpClientInterface from "./httpClientInterface";
export declare enum ClientTypes {
    axios = "axios"
}
export interface BasicCredentials {
    username: string;
    password: string;
}
export interface ClientOptions {
    headers?: Record<string, string>;
    httpsAgent?: string;
    timeout?: number;
    keepAlive?: boolean;
}
export type qs = Record<string, any>;
export interface RequestOptions extends ClientOptions {
    method?: Method;
    qs?: qs;
    timeout?: number;
    body?: string;
    auth?: BasicCredentials;
}
export interface HttpClientOptions extends RequestOptions {
    url: string;
}
export interface HttpClientResponse {
    body: string;
    status: number;
    statusText: string;
    headers: Record<string, any>;
    request?: any;
}
export default class HttpClient {
    /**
     * Devuelve la instancia del cliente
     * @param baseUrl | URL base del servicio
     * @returns | Instancia del cliente HTTP
     */
    static getInstance(baseUrl: string, client?: ClientTypes): HttpClientInterface;
}
//# sourceMappingURL=httpClient.d.ts.map