type A = 1 | 2 | 3
type B = 4 | 5 & A
type C = A & 4 | 5
type D = A & (4 | 5)
type E = (4 | 5) & A
type X = 1 | 2 | 3 | 4 | 5
typeX
é o resultado que eu esperava.
TypeB
e TypeC
são as tentativas que fiz, mas todas falharam.
Qual é a abordagem correta?
Se você tem o sindicato
e quero um sindicato com mais membros como
Você pode substituir
1 | 2 | 3
porA
e obterOu seja, você quer uma união de sindicatos. Não há razão para usar o operador de interseção, a menos que você esteja tentando remover membros.
Link do Playground para o código