///
import FormData from 'form-data';
import { HttpMethod, Params, ProxyConfig, RequestConfigBuilder } from './types';
import { BasicAuth, DiscriminatedAuth } from './types/auth';
import { RequestOptions } from './types/HttpClientInterface';
type Data = Params | FormData | Array;
export declare class HaloRequestConfigBuilder implements RequestConfigBuilder {
private readonly baseUrl;
private readonly headers;
private readonly auth?;
private readonly clientCertAuth?;
private readonly proxy?;
private requestToken;
constructor({ baseUrl, auth, basicAuth, clientCertAuth, proxy, userAgent, }: {
baseUrl: string;
auth?: DiscriminatedAuth;
basicAuth?: BasicAuth;
clientCertAuth?: {
pfx: Buffer;
password: string;
} | {
pfxFilePath: string;
password: string;
};
proxy?: ProxyConfig;
userAgent?: string;
});
build(method: HttpMethod, path: string, params: Data, options?: RequestOptions): Promise<{
url: string;
method: HttpMethod;
headers: any;
httpsAgent?: any;
data?: any;
proxy?: ProxyConfig | undefined;
}>;
private buildRequestUrl;
private buildData;
private buildHeaders;
private getRequestToken;
}
export {};
//# sourceMappingURL=HaloRequestConfigBuilder.d.ts.map