export declare type Method = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH'; export interface IRequestOptions { body?: {}; qs?: {}; headers?: { [key: string]: string; }; } export interface IRequestContext { request: { headers?: { [key: string]: string; }; }; } export declare class RequestWrapper { private static buildUrl; private static interceptRequestError; private static getMergedOptions; private baseUrl; constructor(baseUrl: string); buildJsonRequest: (path: string, method?: Method, options?: IRequestOptions, context?: IRequestContext) => { json: boolean; } & { url: string; method: Method; } & IRequestOptions; /** * Proxy standard JSON request * @param path relative URL path * @param method HTTP method * @param options request options * @deprecated Since 1.2.0. Use proxyCorrelatedJsonRequest instead. */ proxyJsonRequest(path: string, method?: Method, options?: IRequestOptions): Promise; /** * Proxy standard JSON request * @param path relative URL path * @param method HTTP method * @param context request context * @param options request options */ proxyCorrelatedJsonRequest(path: string, method: Method, context: IRequestContext, options?: IRequestOptions): Promise; } export declare function createWrapper(baseUrl: string): RequestWrapper;