Utility types
- TypeScript는 공통 타입 변환을 용이하게 하기 위해 유틸리티 타입을 제공한다.
- 유틸리티 타입은 전역으로 사용 가능하다.
Partial T, Readonly T
Partial T
- 프로퍼티를 선택적으로 만드는 타입을 구성한다.
- 주어진 타입의 모든 하위 타입 집합을 나타내는 타입을 반환한다.
Readonly T
- 프로퍼티를 읽기 전용(readonly)으로 설정한 타입을 구성한다.
Record K, T
- 프로퍼티의 집합 K로 타입을 구성한다.
타입의 프로퍼티들을 다른 타입에 매핑시키는데 사용한다.
Pick T, K
- 프로퍼티 K의 집합을 선택해 타입을 구성한다.
Omit T, K
- 모든 프로퍼티를 선택한 다음 K를 제거한 타입을 구성한다.
Exclue T, U
- T에서 U에 할당할 수 있는 모든 속성을 제외한 타입을 구성한다.
- T에서 U에 할당 할 수 있는 모든 속성을 추출하여 타입을 구성한다.
NonNllabble T
- null과 undefined를 제외한 타입이다.
Parameters T
- 함수 타입 T의 매개변수 타입들의 튜플 타입을 구성한다.
ConstrctorParameters T
- 생성자 함수 타입의 모든 매개변수 타입을 추출한다.
모든 매개변수 타입을 가지는 튜플 타입 (T가 함수가 아닌 경우 never)을 생성한다.
ReturnType T
- 함수 T의 반환 타입으로 구성된 타입을 생성한다.
Required T
- T의 모든 프로퍼티가 필수로 설정된 타입을 구성한다.