Exactly, sounds like misuse of unions.

Although Python type hints are not expressive enough.