import type { PickProperty } from '@ngify/core'; import { HttpContext } from './context'; import { HttpHeaders } from './headers'; import { HttpParams } from './params'; export type HttpMethod = 'DELETE' | 'GET' | 'HEAD' | 'POST' | 'OPTIONS' | 'PUT' | 'PATCH'; export type HttpResponseType = 'arraybuffer' | 'blob' | 'json' | 'text'; export declare class HttpRequest { readonly method: HttpMethod; readonly url: string; readonly body: T | null; readonly params: HttpParams; readonly headers: HttpHeaders; readonly context: HttpContext; readonly responseType: HttpResponseType; readonly urlWithParams: string; readonly reportProgress: boolean; readonly withCredentials: boolean; constructor(method: HttpMethod, url: string, options?: { body?: T; params?: HttpParams | ConstructorParameters[0] | null; headers?: HttpHeaders | ConstructorParameters[0]; context?: HttpContext; responseType?: HttpRequest['responseType']; reportProgress?: boolean; withCredentials?: boolean; }); /** * Examine the body and attempt to infer an appropriate MIME type for it. * If no such type can be inferred, this method will return `null`. */ detectContentTypeHeader(): string | null; /** * Transform the free-form body into a serialized format suitable for transmission to the server. */ serializeBody(): ArrayBuffer | Blob | FormData | URLSearchParams | string | null; clone(update?: Partial>>): HttpRequest; }