/** * Cloudflare R2 implementation of StorageProvider. * * R2 is S3-compatible. This is a native client: AWS SigV4 request signing * (./_sigv4.ts, verified against AWS's official test vector) over global * `fetch`, plus a small XML reader for ListObjectsV2 (./_xml.ts). No SDK * dependency — only node:crypto + fetch. * * Path-style addressing is used for the S3 API calls * (https://.r2.cloudflarestorage.com//); this has no * effect on the public object URLs, which are built from `publicBaseUrl`. * * GAP-208 Phase 2a (2026-05-18). Phase 1 (interface + types) shipped in #959. * Native client (dropping @aws-sdk/client-s3) landed 2026-06-09. * * Server-only. Do NOT import from client-side code or edge runtime. * * Known limitation (unchanged from the SDK version): request bodies are * buffered fully in memory (see toUint8Array) so the payload can be hashed for * SigV4. Streaming uploads (STREAMING-AWS4-HMAC-SHA256-PAYLOAD) are a future * enhancement; presigned/private URLs remain Phase 2b. */ import type { R2Config, StorageProvider } from './types.js'; export declare function createR2Provider(config: R2Config): StorageProvider; //# sourceMappingURL=r2.d.ts.map