Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
1<?php
2/**
3 * Jingga
4 *
5 * PHP Version 8.1
6 *
7 * @package   phpOMS\Utils\IO\Zip
8 * @copyright Dennis Eichhorn
9 * @license   OMS License 2.0
10 * @version   1.0.0
11 * @link      https://jingga.app
12 */
13declare(strict_types=1);
14
15namespace phpOMS\Utils\IO\Zip;
16
17/**
18 * Archive interface
19 *
20 * @package phpOMS\Utils\IO\Zip
21 * @license OMS License 2.0
22 * @link    https://jingga.app
23 * @since   1.0.0
24 */
25interface ArchiveInterface
26{
27    /**
28     * Create archive.
29     *
30     * @param string|array $sources     Files and directories to compress
31     * @param string       $destination Output destination
32     * @param bool         $overwrite   Overwrite if destination is existing
33     *
34     * @return bool
35     *
36     * @since 1.0.0
37     */
38    public static function pack(string | array $sources, string $destination, bool $overwrite = false) : bool;
39
40    /**
41     * Unpack archive.
42     *
43     * @param string $source      File to decompress
44     * @param string $destination Output destination
45     *
46     * @return bool
47     *
48     * @since 1.0.0
49     */
50    public static function unpack(string $source, string $destination) : bool;
51}