/** * WorkbookWriter - Node.js Streaming Excel Writer * * Extends base with file path support and file system image loading. */ import { WorkbookWriterBase, type WorkbookWriterOptions as BaseOptions, type WorkbookZipOptions, type ZlibOptions } from "./workbook-writer.browser.js"; import { WorksheetWriter } from "./worksheet-writer.js"; export type { WorkbookZipOptions, ZlibOptions }; export type { Medium } from "./workbook-writer.browser.js"; export interface WorkbookWriterOptions extends BaseOptions { /** If stream not specified, this field specifies the path to a file to write the XLSX workbook to */ filename?: string; } interface OutputStreamLike { emit(eventName: string | symbol, ...args: unknown[]): boolean; write(chunk: Uint8Array | string): boolean | Promise; end(): void; once(eventName: string | symbol, listener: (...args: any[]) => void): this; removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this; } declare class WorkbookWriter extends WorkbookWriterBase { constructor(options?: WorkbookWriterOptions); /** * Create output stream - supports filename option in Node.js */ protected _createOutputStream(options: WorkbookWriterOptions): OutputStreamLike; /** * Add media files - supports loading from file system */ addMedia(): Promise; } export { WorkbookWriter };