# TODO these are incomplete from typing import List, Tuple, BinaryIO, Union ZIP_STORED = 0 ZIP_DEFLATED = 0 def is_zipfile(filename: Union[str, BinaryIO]) -> bool: ... class ZipInfo: filename = ... # type: str date_time = ... # type: Tuple[int, int, int, int, int, int] compressed_size = 0 file_size = 0 class ZipFile: def __init__(self, file: Union[str, BinaryIO], mode: str = ..., compression: int = ..., allowZip64: bool = ...) -> None: ... def close(self) -> None: ... def getinfo(name: str) -> ZipInfo: ... def infolist(self) -> List[ZipInfo]: ... def namelist(self) -> List[str]: ... def read(self, name: Union[str, ZipInfo], pwd: str = ...) -> bytes: ... def write(self, filename: str, arcname: str = ..., compress_type: int = ...) -> None: ... def __enter__(self) -> 'ZipFile': ... def __exit__(self, type, value, traceback) -> bool: ...