IL
Да, я понимаю, есть куча подходов контрактного программирования, на крайний случай можно всегда миллион if-ов запихать в конструктор и бросать исключения.
Но это все усложнение кода.
Я все-таки за то, чтобы код был максимально мономорфным, так и оптимизация лучше работает.
Мне пока ну крайне сложно представить кейс когда TS усложняет жизнь если есть текучка в команде или же когда над проектом работает 3 и больше человека.
Но TS не идеален, вопросов там много, как минимум в отсутствии возможности запретить
any
, но это уже другой разговор