conditional type

조건부 타입은 타입 수준에서 if 문을 작성합니다

extends 조건, 분산 동작, infer 추론을 이해하면 입력 타입에 따라 결과 타입을 자동으로 바꿀 수 있습니다.

기본 조건

참 거짓 분기

T가 특정 타입을 만족하면 A, 아니면 B를 선택하는 타입 식을 만듭니다.

T extends U ? A : B
분산 동작

union별 적용

T가 naked type parameter이면 union의 각 멤버에 조건이 따로 적용됩니다.

A | B
infer

내부 타입 추출

배열 원소, 함수 반환값처럼 구조 안쪽 타입을 조건부 타입 안에서 뽑습니다.

infer R
유틸리티 구현

재사용 변환

Exclude, Extract, ReturnType 같은 내장 유틸리티의 원리를 이해합니다.

ReturnType<T>