TS에는 일반적으로 Utility types(유틸리티 타입)이라고 하는 몇 가지 일반적인 타입 조작에 도움이 되는 많은 타입이 있다.
이 장에서는 가장 많이 사용되는 유틸리티 타입을 다룬다.
Partial
은 객체의 모든 속성을 선택 사항으로 변경한다.
Required
는 객체의 모든 속성을 필수로 변경한다.
Record
는 특정 키 타입 및 값 타입으로 객체 타입을 정의하는 바로 가기다.
Record<string, number>
는{ [key: string]: number }
와 동일하다.
Omit
은 객체 타입에서 키를 제거한다.
Pick
은 객체 유형에서 지정된 키를 제외한 모든 키를 제거한다.
Exclude
는 공용체에서 타입을 제거한다.
ReturnType
은 함수 타입의 반환 타입을 추출한다.
Parameters
는 함수 타입의 매개변수 타입을 배열로 추출한다.