Что такое Generic Exclude

Ответ

Generic Exclude — это тип, который исключает определённые значения из другого типа. В TypeScript он часто используется для фильтрации допустимых значений.

Пример с Exclude<T, U>:

type Colors = 'red' | 'green' | 'blue';
type PrimaryColors = Exclude<Colors, 'blue'>; // 'red' | 'green'

Работает так:

  1. Принимает два параметра типа: T (исходный тип) и U (тип для исключения)
  2. Возвращает новый тип, содержащий только те элементы из T, которых нет в U

Особенности:

  • Работает с union-типами
  • Можно исключать как конкретные значения, так и целые типы
  • Полезен для создания производных типов без дублирования кода