type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; export interface HttpRequest { method: HttpMethod; url: string; headers?: Record; body?: BodyInit; abortSignal?: AbortSignal; queryParams?: Record; } interface HttpMetadata { status: number; statusText: string; headers: Record; } export interface HttpResponse { data?: T; metadata: HttpMetadata; raw: ArrayBuffer; } export interface HttpError { error: string; metadata: HttpMetadata; } export interface Hook { beforeRequest(request: HttpRequest, params: Map): HttpRequest; afterResponse(request: HttpRequest, response: HttpResponse, params: Map): HttpResponse; onError(request: HttpRequest, response: HttpResponse, params: Map): HttpError; } export {}; //# sourceMappingURL=hook.d.ts.map