myobj = ... # this object comes from other context
from typing import Protocol, TypedDict, cast
class MyDict(TypedDict):
foo: str
bar: int
class MyProtocol(Protocol):
foo: str
bar: int
try:
class MyClass(MyDict, MyProtocol): ...
myobj = cast(MyClass, myobj)
except TypeError:
pass