A union type literal is written as a sequence of types separated by vertical bars.
UnionType:
PrimaryOrUnionType | PrimaryType
A union typle literal references a union type.
When function or constructor types are included in union types they must be enclosed in parentheses