diff --git a/stdlib/2and3/bz2.pyi b/stdlib/2and3/bz2.pyi index 31db7b704..8003ec878 100644 --- a/stdlib/2and3/bz2.pyi +++ b/stdlib/2and3/bz2.pyi @@ -1,6 +1,34 @@ # Stubs for bz2 -# TODO: This stub is incomplete +from typing import Any, BinaryIO, TextIO, IO, Union def compress(data: bytes, compresslevel: int = ...) -> bytes: ... def decompress(data: bytes) -> bytes: ... + +def open(filename: Union[str, bytes, IO[Any]], + mode: str = 'rb', + encoding: str = None, + errors: str = None, + newline: str = None) -> Union[TextIO, BinaryIO]: ... + +class BZ2File(BinaryIO): + def __init__(self, + filename: Union[str, bytes, IO[Any]], + mode: str = "r", + buffering: Any = None, + compresslevel: int = 9) -> None: ... + +class BZ2Compressor(object): + def __init__(self, compresslevel: int = 9) -> None: ... + def compress(self, data: bytes) -> bytes: ... + def flush(self) -> bytes: ... + + +class BZ2Decompressor(object): + def decompress(self, data: bytes) -> bytes: ... + @property + def eof(self) -> bool: ... + @property + def needs_input(self) -> bool: ... + @property + def unused_data(self) -> bytes: ...