massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-pyright / node_modules / pyright / dist / typeshed-fallback / stubs / freezegun / freezegun / api.pyi
1 from collections.abc import Awaitable, Callable, Iterator, Sequence
2 from datetime import date, datetime, timedelta
3 from numbers import Real
4 from typing import Any, Type, TypeVar, Union, overload
5
6 _T = TypeVar("_T")
7 _Freezable = Union[str, datetime, date, timedelta]
8
9 class TickingDateTimeFactory(object):
10     def __init__(self, time_to_freeze: datetime, start: datetime) -> None: ...
11     def __call__(self) -> datetime: ...
12
13 class FrozenDateTimeFactory(object):
14     def __init__(self, time_to_freeze: datetime) -> None: ...
15     def __call__(self) -> datetime: ...
16     def tick(self, delta: float | Real | timedelta = ...) -> None: ...
17     def move_to(self, target_datetime: _Freezable | None) -> None: ...
18
19 class StepTickTimeFactory(object):
20     def __init__(self, time_to_freeze: datetime, step_width: float) -> None: ...
21     def __call__(self) -> datetime: ...
22     def tick(self, delta: timedelta | None = ...) -> None: ...
23     def update_step_width(self, step_width: float) -> None: ...
24     def move_to(self, target_datetime: _Freezable | None) -> None: ...
25
26 class _freeze_time:
27     def __init__(
28         self,
29         time_to_freeze_str: _Freezable | None,
30         tz_offset: float,
31         ignore: Sequence[str],
32         tick: bool,
33         as_arg: bool,
34         as_kwarg: str,
35         auto_tick_seconds: float,
36     ) -> None: ...
37     @overload
38     def __call__(self, func: Type[_T]) -> Type[_T]: ...
39     @overload
40     def __call__(self, func: Callable[..., Awaitable[_T]]) -> Callable[..., Awaitable[_T]]: ...
41     @overload
42     def __call__(self, func: Callable[..., _T]) -> Callable[..., _T]: ...
43     def __enter__(self) -> FrozenDateTimeFactory | StepTickTimeFactory: ...
44     def __exit__(self, *args: Any) -> None: ...
45     def start(self) -> Any: ...
46     def stop(self) -> None: ...
47     def decorate_class(self, klass: Type[_T]) -> _T: ...
48     def decorate_coroutine(self, coroutine: _T) -> _T: ...
49     def decorate_callable(self, func: Callable[..., _T]) -> Callable[..., _T]: ...
50
51 def freeze_time(
52     time_to_freeze: _Freezable | Callable[..., _Freezable] | Iterator[_Freezable] | None = ...,
53     tz_offset: float | None = ...,
54     ignore: Sequence[str] | None = ...,
55     tick: bool | None = ...,
56     as_arg: bool | None = ...,
57     as_kwarg: str | None = ...,
58     auto_tick_seconds: float | None = ...,
59 ) -> _freeze_time: ...