massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-pyright / node_modules / pyright / dist / typeshed-fallback / stubs / filelock / filelock / __init__.pyi
1 import sys
2 from types import TracebackType
3 from typing import Type
4
5 class Timeout(TimeoutError):
6     def __init__(self, lock_file: str) -> None: ...
7     def __str__(self) -> str: ...
8
9 class _Acquire_ReturnProxy:
10     def __init__(self, lock: str) -> None: ...
11     def __enter__(self) -> str: ...
12     def __exit__(
13         self, exc_type: Type[BaseException] | None, exc_val: BaseException | None, traceback: TracebackType | None
14     ) -> None: ...
15
16 class BaseFileLock:
17     def __init__(self, lock_file: str, timeout: float | int | str = ...) -> None: ...
18     @property
19     def lock_file(self) -> str: ...
20     @property
21     def timeout(self) -> float: ...
22     @timeout.setter
23     def timeout(self, value: int | str | float) -> None: ...  # type: ignore
24     @property
25     def is_locked(self) -> bool: ...
26     def acquire(self, timeout: float | None = ..., poll_intervall: float = ...) -> _Acquire_ReturnProxy: ...
27     def release(self, force: bool = ...) -> None: ...
28     def __enter__(self) -> BaseFileLock: ...
29     def __exit__(
30         self, exc_type: Type[BaseException] | None, exc_val: BaseException | None, traceback: TracebackType | None
31     ) -> None: ...
32     def __del__(self) -> None: ...
33
34 class WindowsFileLock(BaseFileLock):
35     def _acquire(self) -> None: ...
36     def _release(self) -> None: ...
37
38 class UnixFileLock(BaseFileLock):
39     def _acquire(self) -> None: ...
40     def _release(self) -> None: ...
41
42 class SoftFileLock(BaseFileLock):
43     def _acquire(self) -> None: ...
44     def _release(self) -> None: ...
45
46 if sys.platform == "win32":
47     FileLock = WindowsFileLock
48 elif sys.platform == "linux" or sys.platform == "darwin":
49     FileLock = UnixFileLock
50 else:
51     FileLock = SoftFileLock