If type aliases are not allowed, typing.Union is only needed when used with forward references, e.g.: ``` X: TypeAlias = Union[int | 'Foo'] ``` but is not needed for: ``` X: TypeAlias = Union[int | Foo] ```