#pragma once #include "fs/Error.h" #include "fs/Api.h" #include "fs/IFilesystem.h" namespace fs { class ISink; typedef tl::result UnzipResult; FS_API UnzipResult unzipSource(IFilesystem& dstFilesystem, const AbsPath& filePath, tl::unique_ref source); FS_API UnzipResult unzipFile(IFilesystem& dstFilesystem, const AbsPath& filePath, tl::lent_ref filesystem, AbsPath srcFilePath); typedef tl::result ZipResult; FS_API ZipResult zipToSink(ISink& sink, tl::lent_ref filesystem, const AbsPath& path, uint8_t compressionLevel, size_t fileDataAlignment = 0); FS_API ZipResult zipToFile(IFilesystem& dstFilesystem, const AbsPath& dstFilePath, tl::lent_ref filesystem, const AbsPath& path, uint8_t compressionLevel, size_t fileDataAlignment = 0); }