export interface StringKeyWithStringValue {
    [key: string]: string;
}
export interface HttpOptions {
    uri: string;
    body?: any;
    encoding?: BufferEncoding | null;
    form?: StringKeyWithStringValue;
    headers?: StringKeyWithStringValue;
    json?: boolean;
    method?: string;
    qs?: StringKeyWithStringValue;
}
export interface HttpResponse {
    statusCode: number;
    statusMessage: string;
    headers: NodeJS.Dict<string | string[]>;
    body: any;
}
export interface HttpResult {
    response: HttpResponse;
    body: any;
}
export interface HttpRejectType {
    response: HttpResponse | null;
    error: Error;
}
export declare class HttpClient {
    requestAsync(options: HttpOptions): Promise<HttpResult>;
    private buildRequestBody;
    private doHttpRequest;
}
