11 / 24
Что такое discriminated unions и как их использовать для типизации пропсов?
Discriminated union — это объединение типов с общим полем-дискриминантом (обычно литеральный тип), по которому TypeScript сужает тип. Для пропсов это способ сказать: если variant="link", то доступен href; если variant="button", то доступен onClick. TypeScript гарантирует, что невозможно передать несовместимую комбинацию пропсов.