Okay, so there are some, though flow is pretty obscure, and flow-runtime (which is the part which does this AFAICT) is even more obscure. I don't think this is a popular feature.
> Properly statically typed languages do not need run-time checks because the compiled code is already proven to be valid by the type-checker.
If you want that, just enable strict mode for mypy.
And if you want to interface with code that is not stirctly typed, just use runtime type checks, which will inform the static type system:
foo: Any = untyped_code()
assert isinstance(foo, MyClass) # after this mypy will treat foo as instance of MyClass.
Same can be done with other types of checks also.So if you want runtime type checking that informs the type system, you have it. I certainly don't want runtime checks for what the type system has already checked for me.