import MPBlob from "miniprogram-blob";
import { ReadableStream as _ReadableStream1, ReadableStream, WritableStream, TransformStream } from "web-streams-polyfill";
import FormData from "miniprogram-formdata";
import URLSearchParams from "@ungap/url-search-params";
export class Headers implements globalThis.Headers {
    constructor(init?: HeadersInit);
    append(name: string, value: string): void;
    set(name: string, value: string): void;
    get(name: string): string;
    has(name: string): boolean;
    delete(name: string): void;
    [Symbol.iterator](): Generator<[string, string], void, unknown>;
    entries(): Generator<[string, string], void, unknown>;
    keys(): Generator<string, void, unknown>;
    values(): Generator<string, void, unknown>;
    forEach(callbackfn: (value: string, key: string, parent: globalThis.Headers) => void, thisArg?: any): void;
    getSetCookie(): string[];
}
export class Blob extends MPBlob implements globalThis.Blob {
    bytes(): Promise<Uint8Array<ArrayBuffer>>;
    slice(start?: number, end?: number, contentType?: string): Blob;
    stream(): _ReadableStream1<any>;
}
export { FormData, ReadableStream, TransformStream, WritableStream };
export class Body implements globalThis.Body {
    body: ReadableStream<Uint8Array> | null;
    bodyUsed: boolean;
    bytes(): Promise<Uint8Array<ArrayBuffer>>;
    arrayBuffer(): Promise<ArrayBuffer>;
    blob(): Promise<Blob>;
    text(): Promise<string>;
    json(): Promise<any>;
    /**
     * @deprecated 尚未实现内部逻辑
     */
    formData(): Promise<globalThis.FormData>;
}
export { URLSearchParams };
export type BodyInit = string | URLSearchParams | FormData | Blob | BufferSource | _ReadableStream1;
export class Response extends Body implements globalThis.Response {
    type: ResponseType;
    url: string;
    status: number;
    statusText: string;
    ok: boolean;
    redirected: boolean;
    headers: Headers;
    constructor(body?: BodyInit | null, init?: ResponseInit);
    clone(): Response & this;
}
export interface RequestInit extends Omit<globalThis.RequestInit, 'body'> {
    body?: BodyInit | null;
}
export class Request extends Body implements globalThis.Request {
    cache: RequestCache;
    credentials: RequestCredentials;
    destination: RequestDestination;
    headers: Headers;
    integrity: string;
    keepalive: boolean;
    method: string;
    mode: RequestMode;
    redirect: RequestRedirect;
    referrer: string;
    referrerPolicy: ReferrerPolicy;
    signal: AbortSignal;
    url: string;
    constructor(input: RequestInfo | URL, init?: RequestInit);
    clone(): Request;
}
export function fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;

//# sourceMappingURL=index.d.ts.map
