| from _weakref import proxy | |
| from collections.abc import Callable | |
| from typing import Any, ClassVar, Generic, TypeVar, final | |
| from typing_extensions import Self | |
| _C = TypeVar("_C", bound=Callable[..., Any]) | |
| _T = TypeVar("_T") | |
| class ReferenceType(Generic[_T]): # "weakref" | |
| __callback__: Callable[[Self], Any] | |
| def __new__(cls, o: _T, callback: Callable[[Self], Any] | None = ..., /) -> Self: ... | |
| def __call__(self) -> _T | None: ... | |
| ref = ReferenceType | |
| @final | |
| class CallableProxyType(Generic[_C]): # "weakcallableproxy" | |
| def __eq__(self, value: object, /) -> bool: ... | |
| def __getattr__(self, attr: str) -> Any: ... | |
| __call__: _C | |
| __hash__: ClassVar[None] # type: ignore[assignment] | |
| __all__ = ["proxy"] |