UNPKG

@vegajs/http-client-adapter

Version:

A flexible, type-safe HTTP client adapter for TypeScript and JavaScript. Supports custom adapters and includes an out-of-the-box Axios adapter for easy HTTP request handling.

27 lines (26 loc) 1.38 kB
import type { Headers, HttpClient, InitParams, MethodParams, SearchParams } from '../../types'; import { InterceptorManager } from './interceptor-manager'; export declare class HttpError extends Error { status: number; statusText: string; constructor(status: number, statusText: string, message?: string); } export declare class FetchAdapter implements HttpClient { private baseURL; private headers; private readonly fetchFn; interceptors: InterceptorManager; constructor(baseURL?: string, fetchFn?: typeof fetch); init(params: InitParams): void; addHeaders(headers: Headers): void; private buildUrl; private mergeHeaders; private processBody; private parseResponse; private request; get<Data = unknown, Params = SearchParams>(point: string, params?: MethodParams<Params>): Promise<Data>; post<Data = unknown, Body = unknown, Params = SearchParams>(point: string, body: Body, params?: MethodParams<Params>): Promise<Data>; put<Data = unknown, Body = unknown, Params = SearchParams>(point: string, body: Body, params?: MethodParams<Params>): Promise<Data>; patch<Data = unknown, Body = unknown, Params = SearchParams>(point: string, body: Body, params?: MethodParams<Params>): Promise<Data>; delete<Data = unknown, Params = SearchParams>(point: string, params?: MethodParams<Params>): Promise<Data>; }