, id: int, pos: int, name: bytes) -> None: ...
    def getmark(self, id: int) -> _Marker: ...
    def getmarkers(self) -> Optional[List[_Marker]]: ...
    def tell(self) -> int: ...
    def writeframesraw(self, data: Any) -> None: ...  # Actual type for data is Buffer Protocol
    def writeframes(self, data: Any) -> None: ...
    def close(self) -> None: ...

@overload
def open(f: _File, mode: Literal["r", "rb"]) -> Aifc_read: ...
@overload
def open(f: _File, mode: Literal["w", "wb"]) -> Aifc_write: ...
@overload
def open(f: _File, mode: Optional[str] = ...) -> Any: ...

if sys.version_info < (3, 9):
    @overload
    def openfp(f: _File, mode: Literal["r", "rb"]) -> Aifc_read: ...
    @overload
    def openfp(f: _File, mode: Literal["w", "wb"]) -> Aifc_write: ...
    @overload
    def openfp(f: _File, mode: Optional[str] = ...) -> Any: ...
PK