Base class for protocol classes.
class typing.Protocol(Generic)
class Proto(Protocol):
def meth(self) -> int:
...
class C:
def meth(self) -> int:
return 0
def func(x: Proto) -> int:
return x.meth()
func(C()) Passes static type check
T = TypeVar("T")
class GenProto(Protocol[T]):
def meth(self) -> T:
...