import * as buffer from 'node:buffer'; import * as buffer$1 from 'buffer'; import * as undici_types from 'undici-types'; import { Readable } from 'node:stream'; type Or = void extends T ? U : T; type HeadersInit = string[][] | Record> | _Headers; type FormDataEntryValue = string | _File; type RequestInfo = string | _URL | _Request; interface _Iterable extends Or, globalThis.Iterable> {} interface _AsyncIterable extends Or, globalThis.AsyncIterable> {} interface _ReadableStream extends Or, globalThis.ReadableStream> {} type BodyInit$1 = | ArrayBuffer | _Blob | NodeJS.ArrayBufferView | _URLSearchParams | _ReadableStream | _AsyncIterable | _FormData | _Iterable | null | string; interface FileClass extends Or {} interface _File extends _Blob, Or { readonly name: string; readonly lastModified: number; } interface _File extends Or {} declare const _File: FileClass; interface _RequestInit extends Or { duplex?: 'half'; } interface _ResponseInit extends Or {} interface BlobClass extends Or {} interface _Blob extends Or {} declare const _Blob: BlobClass; interface URLSearchParamsClass extends Or {} interface _URLSearchParams extends Or {} declare const _URLSearchParams: URLSearchParamsClass; interface URLClass extends Or {} interface _URL extends Or {} declare const _URL: URLClass; interface RequestClass extends Or { new (input: RequestInfo, init?: _RequestInit | Or): _Request; } interface ResponseClass extends Or { new (body?: BodyInit$1, init?: _ResponseInit): _Response; } interface HeadersClass extends Or { new (init?: HeadersInit): _Headers; } interface FormDataClass extends Or {} interface _Request extends Or {} declare let _Request: RequestClass; interface _Response extends Or {} declare let _Response: ResponseClass; interface _Headers extends Or {} declare let _Headers: HeadersClass; interface _FormData extends Or, globalThis.FormData> {} declare let _FormData: FormDataClass; declare function _fetch(input: string | _URL | _Request, init?: _RequestInit): Promise<_Response>; type BodyInit = Exclude | FormDataPolyfill | Readable; interface FormDataPolyfill extends Readable { getBoundary(): string; getLengthSync(): number; hasKnownLength(): number; } declare const kBodyInternals: unique symbol; declare class Body { private [kBodyInternals]; constructor(init: BodyInit | null); get body(): Uint8Array | ReadableStream | Readable | null; get bodyUsed(): boolean; arrayBuffer(): Promise | null>; formData(): Promise; blob(): Promise; json(): Promise; text(): Promise; } export { _Blob as Blob, Body, type BodyInit$1 as BodyInit, _File as File, _FormData as FormData, type FormDataEntryValue, _Headers as Headers, type HeadersInit, _Request as Request, type RequestInfo, type _RequestInit as RequestInit, _Response as Response, type _ResponseInit as ResponseInit, _URL as URL, _URLSearchParams as URLSearchParams, _fetch as default, _fetch as fetch, };