from _typeshed import SupportsRead
from datetime import date, datetime, time, tzinfo
from typing import Text, Union

_Readable = SupportsRead[Union[Text, bytes]]
_TakesAscii = Union[Text, bytes, _Readable]

class isoparser:
    def __init__(self, sep: Text | bytes | None = ...): ...
    def isoparse(self, dt_str: _TakesAscii) -> datetime: ...
    def parse_isodate(self, datestr: _TakesAscii) -> date: ...
    def parse_isotime(self, timestr: _TakesAscii) -> time: ...
    def parse_tzstr(self, tzstr: _TakesAscii, zero_as_utc: bool = ...) -> tzinfo: ...

def isoparse(dt_str: _TakesAscii) -> datetime: ...
