Type returned if X and Y are equal (defaults to X)
B = never
Type returned if X and Y are not equal (defaults to never)
Since
1.1.0
Remarks
Resolves to one of two branches depending on whether two types are equal.
Internal implementation uses function signature variance for comparison.
This approach works well for most practical structural equality checks.
Conditional type based on type equality.