2 from typing import IO, Any, Text, TypeVar, Union
4 from ..relativedelta import relativedelta
5 from ._common import _tzinfo as _tzinfo, enfold as enfold, tzname_in_python2 as tzname_in_python2, tzrangebase as tzrangebase
7 _FileObj = Union[str, Text, IO[str], IO[Text]]
8 _DT = TypeVar("_DT", bound=datetime.datetime)
10 ZERO: datetime.timedelta
11 EPOCH: datetime.datetime
14 class tzutc(datetime.tzinfo):
15 def utcoffset(self, dt: datetime.datetime | None) -> datetime.timedelta | None: ...
16 def dst(self, dt: datetime.datetime | None) -> datetime.timedelta | None: ...
17 def tzname(self, dt: datetime.datetime | None) -> str: ...
18 def is_ambiguous(self, dt: datetime.datetime | None) -> bool: ...
19 def fromutc(self, dt: _DT) -> _DT: ...
20 def __eq__(self, other): ...
22 def __ne__(self, other): ...
25 class tzoffset(datetime.tzinfo):
26 def __init__(self, name, offset) -> None: ...
27 def utcoffset(self, dt: datetime.datetime | None) -> datetime.timedelta | None: ...
28 def dst(self, dt: datetime.datetime | None) -> datetime.timedelta | None: ...
29 def is_ambiguous(self, dt: datetime.datetime | None) -> bool: ...
30 def tzname(self, dt: datetime.datetime | None) -> str: ...
31 def fromutc(self, dt: _DT) -> _DT: ...
32 def __eq__(self, other): ...
34 def __ne__(self, other): ...
37 def instance(cls, name, offset) -> tzoffset: ...
39 class tzlocal(_tzinfo):
40 def __init__(self) -> None: ...
41 def utcoffset(self, dt: datetime.datetime | None) -> datetime.timedelta | None: ...
42 def dst(self, dt: datetime.datetime | None) -> datetime.timedelta | None: ...
43 def tzname(self, dt: datetime.datetime | None) -> str: ...
44 def is_ambiguous(self, dt: datetime.datetime | None) -> bool: ...
45 def __eq__(self, other): ...
47 def __ne__(self, other): ...
51 def __init__(self) -> None: ...
52 def __eq__(self, other): ...
54 def __ne__(self, other): ...
56 class tzfile(_tzinfo):
57 def __init__(self, fileobj: _FileObj, filename: Text | None = ...) -> None: ...
58 def is_ambiguous(self, dt: datetime.datetime | None, idx: int | None = ...) -> bool: ...
59 def utcoffset(self, dt: datetime.datetime | None) -> datetime.timedelta | None: ...
60 def dst(self, dt: datetime.datetime | None) -> datetime.timedelta | None: ...
61 def tzname(self, dt: datetime.datetime | None) -> str: ...
62 def __eq__(self, other): ...
64 def __ne__(self, other): ...
65 def __reduce__(self): ...
66 def __reduce_ex__(self, protocol): ...
68 class tzrange(tzrangebase):
73 stdoffset: int | datetime.timedelta | None = ...,
74 dstabbr: Text | None = ...,
75 dstoffset: int | datetime.timedelta | None = ...,
76 start: relativedelta | None = ...,
77 end: relativedelta | None = ...,
79 def transitions(self, year: int) -> tuple[datetime.datetime, datetime.datetime]: ...
80 def __eq__(self, other): ...
84 def __init__(self, s: bytes | _FileObj, posix_offset: bool = ...) -> None: ...
86 def instance(cls, name, offset) -> tzoffset: ...
89 def __init__(self, fileobj: _FileObj) -> None: ...
91 def get(self, tzid: Any | None = ...): ...
96 def datetime_exists(dt: datetime.datetime, tz: datetime.tzinfo | None = ...) -> bool: ...
97 def datetime_ambiguous(dt: datetime.datetime, tz: datetime.tzinfo | None = ...) -> bool: ...
98 def resolve_imaginary(dt: datetime.datetime) -> datetime.datetime: ...
101 def __call__(self, name: Text | None = ...) -> datetime.tzinfo | None: ...
102 def nocache(self, name: Text | None) -> datetime.tzinfo | None: ...