/* This file does not declare any global types. That should only happen in [./globals.d.ts](./globals.d.ts) so that our documentation generator can pick it up, as it expects all globals to be declared in one file. */ declare module "bun" { type HeadersInit = string[][] | Record> | Headers; type BodyInit = | ReadableStream | Bun.XMLHttpRequestBodyInit | URLSearchParams | AsyncGenerator | (() => AsyncGenerator); namespace __internal { type LibOrFallbackHeaders = LibDomIsLoaded extends true ? {} : import("undici-types").Headers; type LibOrFallbackRequest = LibDomIsLoaded extends true ? {} : import("undici-types").Request; type LibOrFallbackResponse = LibDomIsLoaded extends true ? {} : import("undici-types").Response; type LibOrFallbackResponseInit = LibDomIsLoaded extends true ? {} : import("undici-types").ResponseInit; type LibOrFallbackRequestInit = LibDomIsLoaded extends true ? {} : Omit & { body?: Bun.BodyInit | null | undefined; headers?: Bun.HeadersInit; }; interface BunHeadersOverride extends LibOrFallbackHeaders { /** * Convert {@link Headers} to a plain JavaScript object. * * About 10x faster than `Object.fromEntries(headers.entries())` * * Called when you run `JSON.stringify(headers)` * * Does not preserve insertion order. Well-known header names are lowercased. Other header names are left as-is. */ toJSON(): Record & { "set-cookie"?: string[] }; /** * Get the total number of headers */ readonly count: number; /** * Get all headers matching the name * * Only supports `"Set-Cookie"`. All other headers are empty arrays. * * @param name - The header name to get * * @returns An array of header values * * @example * ```ts * const headers = new Headers(); * headers.append("Set-Cookie", "foo=bar"); * headers.append("Set-Cookie", "baz=qux"); * headers.getAll("Set-Cookie"); // ["foo=bar", "baz=qux"] * ``` */ getAll(name: "set-cookie" | "Set-Cookie"): string[]; } interface BunRequestOverride extends LibOrFallbackRequest { headers: BunHeadersOverride; } interface BunResponseOverride extends LibOrFallbackResponse { headers: BunHeadersOverride; } } }