[ty] Treat type alias values as type-form contexts in semantic tokens (#24478)
## Summary
Given:
```python
from typing import IO, TypeAlias
def takes_file(x: IO[str]) -> None: ...
type NewStyle = IO[str]
LegacyStyle: TypeAlias = IO[str]
```
Previously, only `x: IO[str]` was visited as a type form, so the other
two `IO` tokens could've been colored like values. We now treat alias
right-hand sides as type forms to ensure they're colored as types.