///
import { HttpClient } from "./httpClient";
import { HttpHeaders } from "./httpHeaders";
import { HttpOperationResponse } from "./httpOperationResponse";
import { WebResource } from "./webResource";
import { ProxySettings } from "./serviceClient";
import * as http from "http";
import * as https from "https";
export declare const axiosInstance: import("axios").AxiosInstance;
/**
* A HttpClient implementation that uses axios to send HTTP requests.
*/
export declare class AxiosHttpClient implements HttpClient {
private readonly cookieJar;
sendRequest(httpRequest: WebResource): Promise;
}
declare type ProxyAgent = {
isHttps: boolean;
agent: http.Agent | https.Agent;
};
export declare function createProxyAgent(requestUrl: string, proxySettings: ProxySettings, headers?: HttpHeaders): ProxyAgent;
export interface HttpsProxyOptions {
host?: string;
port?: number;
localAddress?: string;
proxyAuth?: string;
headers: {
[key: string]: any;
};
ca?: Buffer[];
servername?: string;
key?: Buffer;
cert?: Buffer;
}
interface HttpsOverHttpsOptions {
maxSockets?: number;
ca?: Buffer[];
key?: Buffer;
cert?: Buffer;
proxy?: HttpsProxyOptions;
}
export declare function createTunnel(isRequestHttps: boolean, isProxyHttps: boolean, tunnelOptions: HttpsOverHttpsOptions): http.Agent | https.Agent;
export {};
//# sourceMappingURL=axiosHttpClient.d.ts.map