[GPT-4] 자주 쓰이는 type을 모아놓은 npm 패키지가 있는가?
ts-essentials 패키지는 다양한 유용한 TypeScript 유틸리티 타입들을 제공합니다. 여기 몇 가지 주요 타입들을 나열합니다: DeepReadonly: 객체의 모든 중첩 속성을 읽기 전용으로 만드는 타입 DeepWritable: 객체의 모든 중첩 속성을 쓰기 가능하게 만드는 타입 DeepPartial: 객체의 모든 중첩 속성을 옵셔널로 만드는 타입 DeepRequired: 객체의 모든 중첩 속성을 필수로 만드는 타입 DeepNonNullable: 객체의 모든 중첩 속성에서 null과 undefined를 제거하는 타입 Writable: 객체의 모든 속성을 쓰기 가능하게 만드는 타입 Buildable: 객체의 모든 속성을 쓰기 가능하고 옵셔널로 만드는 타입 StrictOmit: 객체에서 지정된 키를 제거하는 타입 StrictExtract: 객체에서 지정된 키만을 포함하는 타입 OmitProperties: 객체에서 지정된 타입 가진 속성을 제거하는 타입 PickProperties: 객체에서 지정된 타입 가진 속성만을 포함하는 타입 NonNever: 객체에서 never 타입 속성을 제거하는 타입 Merge: 두 객체 타입 병합하는 타입 MergeExclusive: 두 객체 타입 배타적으로 병합하는 타입 Diff: 두 객체 타입간의 차이를 나타내는 타입 Intersection: 두 객체 타입 교집합을 나타내는 타입 Unionize: 객체의 모든 속성을 유니온 타입로 변환하는 타입 PromiseType: 프로미스 타입서 반환값의 타입 추출하는 타입 ElementType: 배열, 튜플 또는 읽기 전용 배열의 요소 타입 추출하는 타입 Awaited: 프로미스 또는 프로미스를 반환하는 함수의 반환값의 타입 추출하는 타입 MarkOptional: 객체의 특정 속성을 옵셔널로 만드는 타입 MarkRequired: 객체의 특정 속성을 필수로 만드는 타입 상세는 https://github.com/ts-essentials/ts-essentials 이곳에서 확인 가능하다. 2023년 3월 27일 기준으로 타입은 총 75가지가 있다. 문서 수정을 제외한 기능 수정 최종일이 2023년 1월 31일이고 관리는 활발한 편이다