import { HttpStatusCode } from './http-status-code.enum'; import { HttpMethod } from './http-methods.enum'; export interface IKeyValue { [key: string]: string; } export interface IResponse { status: HttpStatusCode; headers: IKeyValue; body: T; duration?: string; } export interface IRequest { url: string; body?: any; method?: HttpMethod; headers?: IKeyValue; params?: IKeyValue; } export declare abstract class HttpClient { abstract request(request: IRequest): Promise>; /** * Get request * @param url The request URL * @param params The request query parameters * @param headers The request headers */ get(url: string, params?: IKeyValue, headers?: IKeyValue): Promise>; /** * Post request * @param url The request URL * @param body The request body * @param params The request query parameters * @param headers The request headers */ post(url: string, body: unknown, params?: IKeyValue, headers?: IKeyValue): Promise>; /** * Put request * @param url The request URL * @param body The request body * @param params The request query parameters * @param headers The request headers */ put(url: string, body: unknown, params?: IKeyValue, headers?: IKeyValue): Promise>; /** * Delete request * @param url The request URL * @param body The request body * @param params The request query parameters * @param headers The request headers */ delete(url: string, body: unknown, params?: IKeyValue, headers?: IKeyValue): Promise>; } //# sourceMappingURL=http-client.class.d.ts.map