import type { BufferedSinkWriter, XlsxSink } from './sink'; import type { XlsxSource } from './source'; /** * Wrap a Blob (or File, since File extends Blob) as an XlsxSource. The * source materialises bytes lazily on the first {@link XlsxSource.toBytes} * call. */ export declare function fromBlob(blob: Blob): XlsxSource; /** * Wrap a fetch {@link Response} as an XlsxSource. `toBytes` collects * the entire response body via `Response.arrayBuffer()`; `toStream` * returns `response.body` directly so the ZIP reader can pull chunks * lazily from the network. The Response can have been fetched with * any method and content-type; this helper does no validation. */ export declare function fromResponse(response: Response): XlsxSource; /** * Wrap a Web {@link ReadableStream} of bytes as an XlsxSource. `toStream` * returns the stream directly; `toBytes` drains it once and caches the * bytes. Streams can only be consumed once — calling `toBytes` after * `toStream` (or vice versa) on the same source throws. */ export declare function fromStream(stream: ReadableStream): XlsxSource; /** * Wrap an ArrayBuffer or Uint8Array. The bytes are referenced (Uint8Array * input) or wrapped without copy (ArrayBuffer input). */ export declare function fromArrayBuffer(buf: ArrayBuffer | Uint8Array): XlsxSource; /** * In-memory Blob sink. Convenience `result()` returns the accumulated * payload as a Blob with the supplied MIME type. */ export declare function toBlob(mime?: string): XlsxSink & { toBytes(): BufferedSinkWriter; result(): Blob; }; /** In-memory ArrayBuffer sink. */ export declare function toArrayBuffer(): XlsxSink & { toBytes(): BufferedSinkWriter; result(): ArrayBuffer; };