42 / 58
Как создать тип для валидации формата строки (email, URL)?
TypeScript не умеет валидировать содержимое строк в рантайме на уровне типов, но template literal types позволяют задать структурный шаблон строки. Для email можно описать тип вида `${string}@${string}.${string}`, а для URL `https://${string}`. Компилятор будет проверять, что строковый литерал соответствует шаблону на этапе компиляции. Для полноценной рантайм-валидации комбинируют branded types с функциями-валидаторами.