/// /// /// import { RequestOptions as HttpsRequestOptions } from "https"; import { RequestOptions as HttpRequestOptions, ClientRequest } from "http"; import { ReadStream } from "fs"; export type Options = HttpsRequestOptions | HttpRequestOptions; export interface Init { } export type Format = 'json' | 'text' | 'original'; export interface Feature { forRequest: (init: Init, options: Options) => void; forRequestClient: (init: Init, client: ClientRequest) => Promise; forFetch: (init: Init, options: FetchOptions) => void; } export type FetchOptions = { method?: string; headers?: Record; body?: any; signal?: AbortSignal; }; export type Response = { status: number; statusText: string; headers: Record; body: any; }; export declare class StreamFile { name: string; stream: Blob | ReadStream; constructor(file: string | Blob); private basename; } export declare function readFile(file: string | Blob): StreamFile; export declare function request(url: string, init: Init, format: Format): Promise;