/** * Creates a zip file containing the contents of the provided directory. * The zip file is created in the configured temp directory (default: os.tmpdir()). * The source directory must be within an allowed path (configurable via LUMIC_ALLOWED_UPLOAD_PATHS). * The zip file name is the same as the source directory name with a .zip extension. * If a node_modules directory exists in the source directory, * it is added separately to ensure it is included in the zip file. * The function logs the original directory size and file count, * as well as the final zip size. * @param sourceDir The path to the directory to zip. * @returns The path to the created zip file. */ export declare function createZipFile(sourceDir: string): Promise; /** * Extracts a zip archive into a specified directory. * * Both the zip file path and destination path must be within an allowed path * (configurable via LUMIC_ALLOWED_UPLOAD_PATHS, defaults to os.tmpdir()). * * @param zipPath The path of the zip file to extract. * @param destPath The path of the directory to extract the zip file into. * @returns The path of the extracted directory. * @throws If the paths are not within allowed paths. * @throws If there is an error extracting the zip file. */ export declare function extractZipFile(zipPath: string, destPath: string): Promise; /** * Adds a file or directory to an existing zip file. * * The zip file path and item path must be within an allowed path * (configurable via LUMIC_ALLOWED_UPLOAD_PATHS, defaults to os.tmpdir()). * * @param zipFilePath The path of the zip file to add the item to. * @param itemPath The path of the item to add to the zip file. * @param destPath Optional. The destination path inside the zip file to add the item to. Defaults to the root of the zip file. * @returns The path of the updated zip file. * @throws If the paths are not within allowed paths. * @throws If there is an error adding the item to the zip file. */ export declare function addToZipFile(zipFilePath: string, itemPath: string, destPath?: string): Promise;