import { Headers, URL, RequestCanceler, Parameters, UnauthorizedCallback } from './types'; export { RequestCanceler } from './types'; export declare class HttpClient { private readonly axios; private readonly unauthorizedCallback; static create(baseURL: URL, unauthorizedCallback?: UnauthorizedCallback): HttpClient; private constructor(); /** * Requests a GET * @param url * @param headers */ get(url: URL, headers: Headers): Promise; /** * Requests a GET with option to cancel * @param url * @param headers */ getCancellable(url: URL, headers: Headers): { promise: Promise; requestCanceler: RequestCanceler; }; /** * Requests a POST * @param url * @param params * @param headers */ post(url: URL, params: Parameters, headers: Headers): Promise; /** * Requests a POST with option to cancel * @param url * @param params * @param headers */ postCancellable(url: URL, params: Parameters, headers: Headers): { promise: Promise; requestCanceler: RequestCanceler; }; /** * Requests PATCH * @param url * @param params * @param headers */ patch(url: URL, params: Parameters, headers: Headers): Promise; /** * Requests a PUT * @param url * @param params * @param headers */ put(url: URL, params: Parameters, headers: Headers): Promise; /** * Requests a DELETE * @param url * @param headers * @param params */ delete(url: URL, headers: Headers, params?: Parameters): Promise; /** * Sets middlewares into the client for common behaviour managing * @private */ private initializeMiddleware; /** * Extracts the valuable data from the server's response * @param response * @private */ private static extractData; /** * Converts the specific client error into a proprietary error for our apps * @param error * @private */ private normalizeError; }