/** * Promise-based ZIP archive builder * * @example * const zipper = new ZipBuilder("output.zip"); * zipper.addFile("file1.txt", "renamed.txt"); * zipper.addFile("file2.txt"); * await zipper.finalize(); */ export declare class ZipBuilder { private archive; private output; private outputPath; private finalized; constructor(outputPath: string); /** * Add a file to the archive * @param filePath - Path to the file to add * @param nameInZip - Optional name for the file inside the ZIP (defaults to basename) */ addFile(filePath: string, nameInZip?: string): void; /** * Add multiple files to the archive * @param files - Array of file paths or objects with path and name */ addFiles(files: Array): void; /** * Add a directory to the archive * @param dirPath - Path to the directory to add * @param destPath - Optional destination path inside the ZIP */ addDirectory(dirPath: string, destPath?: string): void; /** * Add content from a string or buffer * @param content - String or Buffer content * @param nameInZip - Name for the file inside the ZIP */ addContent(content: string | Buffer, nameInZip: string): void; /** * Finalize the archive and return a promise that resolves when complete * @returns Promise that resolves with the output file path */ finalize(): Promise; /** * Get the output file path */ getOutputPath(): string; }