분산 조건부 타입 파이프라인 구조
conditional
T = A | B | Cunion 입력
T extends X멤버별 조건 평가
never filter불일치 멤버 제거
union merge남은 결과를 다시 합침
T = A | B | C→T extends X→never filter→union merge
분산 조건부 타입 파이프라인 기준
점검
naked TT가 그대로 왼쪽에 있을 때 분산됩니다.
필터링never는 union에서 사라지는 성질을 이용합니다.
분산 막기[T] extends [X]처럼 감싸면 전체 union으로 평가합니다.
유틸 타입Exclude, Extract 같은 유틸의 핵심 원리입니다.