import { HttpMethod } from "../http/Http.method"; import { Headers as HttpHeaders, ReqData as HttpReqData, ReqParams as HttpReqParams } from "../types/Http"; export type HttpResponseType = "arraybuffer" | "document" | "json" | "text" | "stream"; export interface HttpCommonRequestPayload { url: string; baseUrl?: string; headers?: HttpHeaders; timeout?: number; responseType?: HttpResponseType; debug?: boolean; paramsSerializer?: (params: any) => string; } export interface HttpGetRequestPayload extends HttpCommonRequestPayload { params?: HttpReqParams; } export interface HttpBodyRequestPayload extends HttpGetRequestPayload { data?: HttpReqData; rawData?: boolean; } export interface HttpRequestPayload extends HttpGetRequestPayload { method: HttpMethod; } export interface HttpPostRequestPayload extends HttpBodyRequestPayload { } export interface HttpPutRequestPayload extends HttpBodyRequestPayload { } export interface HttpPatchRequestPayload extends HttpBodyRequestPayload { } export interface HttpDeleteRequestPayload extends HttpBodyRequestPayload { } export interface HttpHeadRequestPayload extends HttpBodyRequestPayload { } export interface HttpRawRequestPayload extends HttpRequestPayload, HttpGetRequestPayload, HttpPostRequestPayload, HttpPutRequestPayload, HttpPatchRequestPayload, HttpDeleteRequestPayload, HttpHeadRequestPayload { } export interface HttpRequestedPayload { method: HttpMethod; url?: string; path: string; headers?: HttpHeaders; } export interface HttpRequestResponse { body: T; status: number; statusText: string; headers?: HttpHeaders; request: HttpRequestedPayload; } export interface HttpRequestResponseError extends HttpRequestResponse { errorMessage: string; } export declare class HttpHelper { request(payload: HttpRawRequestPayload): Promise | HttpRequestResponseError>; get(payload: HttpGetRequestPayload): Promise>; post(payload: HttpPostRequestPayload): Promise>; put(payload: HttpPutRequestPayload): Promise>; patch(payload: HttpPatchRequestPayload): Promise>; delete(payload: HttpDeleteRequestPayload): Promise>; head(payload: HttpHeadRequestPayload): Promise>; }