сторону interface Model { new (): ListModelInterface } где ListModelInterface тип каждого элемента list д.б
Да, это решение, но для конкретного проекта, где мы можем перечислить конкретные типы. Понимаете, подобная логика очень отвязана от конкретной реализации. Да, может это излишний перфекционизм, и чуть-чуть повториться в новом проекте не так страшно, но если надо писать универсальную библиотеку? И таких примеров масса. И я понимаю, что ФП даст мне подобную гибкость, но там все надо будет строить иначе, а я - 1) слабо владею 2) не очень люблю. Одновременно с этим, гибкость js позволяет реализовать подобный функционал без ФП, но ts, походу, не даёт удобного инструмента для типизации подобных финтов. В целом я согласен до определённых пределов мириться с неудобными способами типизации статики, но вот сам не нахожу ответа, как сделать это в принципе. И да, спасибо за внимание моей проблеме👍
Обсуждают сегодня