Utility типы в TypeScript – это встроенные вспомогательные типы, которые упрощают общие операции над типами, такие как преобразования, извлечения или исключения определенных свойств. Они повышают гибкость и читаемость кода.
Основные полезные типы:
Partial<Type>: Создает тип, в котором все свойства Type являются необязательными.
typescript
Readonly<Type>: Создает тип, в котором все свойства Type помечены как только для чтения.
typescript
Pick<Type, Keys>: Создает тип, выбирая набор свойств Keys из Type. Keys может быть строковым литералом или объединением строковых литералов.
typescript
Omit<Type, Keys>: Создает тип, исключая набор свойств Keys из Type.
typescript
Exclude<UnionType, ExcludedMembers>: Создает тип, исключая из UnionType все члены,assignable к ExcludedMembers.
typescript
Extract<Type, Union>: Извлекает из Type все члены, assignable к Union.
typescript
NonNull<Type>: Исключает null и undefined из Type.
typescript
Parameters<Type>: Получает типы параметров функции Type в виде кортежа.
typescript
ReturnType<Type>: Получает тип возвращаемого значения функции Type.
typescript
ConstructorParameters<Type>: Извлекает типы параметров конструктора типа конструктора.
typescript
InstanceType<Type>: Извлекает тип экземпляра типа конструктора.
typescript
Использование utility типов способствует созданию более типобезопасного, гибкого и легко поддерживаемого кода.