from typing import TypeIs
def f(v: object) -> TypeIs[int]: ...
a = [1,2]
f() # reports `missing-argument` instead
f(*a) # no error (should report an error because it crashes at runtime, but that's unrelated to `TypeIs`)
f(10) # no error (false negative)
Playground
Playground