geCollector):
    def __init__(self, value: int = ...): ...
    def release(self): ...
    def acquire(self, timeout: Optional[Any] = ...): ...
    def __enter__(self): ...
    __exit__: Any
    def __aenter__(self): ...
    def __aexit__(self, typ, value, tb): ...

class BoundedSemaphore(Semaphore):
    def __init__(self, value: int = ...): ...
    def release(self): ...

class Lock:
    def __init__(self): ...
    def acquire(self, timeout: Optional[Any] = ...): ...
    def release(self): ...
    def __enter__(self): ...
    __exit__: Any
    def __aenter__(self): ...
    def __aexit__(self, typ, value, tb): ...
PK