import type { FetchLike } from "./client.js"; /** * A body-carrying request (multipart POST or binary PUT) with optional upload * progress. Two transports back it: * * - `XMLHttpRequest` when available (browsers). It's the only web API that * reports *upload* progress — `fetch` cannot — so the file-upload progress * bars keep working. `XMLHttpRequest` is referenced as a runtime global * (never imported), so it doesn't affect edge/Node bundles. * - `fetch` otherwise (Node/CLI, edge). No incremental upload progress; the * caller reports coarse per-request progress instead. */ export type ProgressSendRequest = { method: "POST" | "PUT"; url: string; headers: Record; body: FormData | Blob; onProgress?: (loaded: number, total: number) => void; fetchImpl: FetchLike; }; export type ProgressSendResponse = { ok: boolean; status: number; statusText: string; getHeader: (name: string) => string | null; text: () => Promise; }; export declare const sendWithProgress: (request: ProgressSendRequest) => Promise; //# sourceMappingURL=send.d.ts.map