public static function createForManifest(Manifest $manifest, string $pathToZip) : Zip { $zip = new static($pathToZip); $zip->open(); foreach ($manifest->files() as $file) { $zip->add($file, self::determineNameOfFileInZip($file, $pathToZip)); } $zip->close(); return $zip; }