conditional type

조건부 타입 평가 점검표

복잡한 조건부 타입은 분기, 분산, 추출, 래핑 순서로 나누어 읽으면 결과를 예측하기 쉬워집니다.

1

기본 분기

T extends U ? X : Y에서 참과 거짓 결과를 먼저 분리합니다.

2

유니언 분산

제네릭 T가 유니언이면 각 멤버별로 조건이 적용되는지 확인합니다.

3

내부 추출

infer는 Promise, 배열, 함수 반환처럼 내부 타입을 꺼낼 때 씁니다.

4

분산 차단

[T] extends [U]처럼 감싸면 전체 유니언을 한 번에 비교합니다.

filter 유니언에서 제거

Exclude, NonNullable처럼 조건에 맞는 멤버를 걸러냅니다.

extract 구조에서 꺼내기

함수 반환 타입이나 Promise 결과처럼 중첩된 타입을 뽑습니다.

guard 과한 추상화 한계

호출부보다 타입식이 더 어렵다면 별칭을 나누고 예제를 둡니다.