Type может описывать произвольные выражения типов, interface прежде всего задаёт объектную структуру и поддерживает declaration merging.
Расскажите, чем отличается type от interface в TypeScript?
Type может описывать произвольные выражения типов, interface прежде всего задаёт объектную структуру и поддерживает declaration merging.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Type может описывать произвольные выражения типов, interface прежде всего задаёт объектную структуру и поддерживает declaration merging.
Для расширения interface используют extends, для сочетания type — intersection. Пересечение несовместимых свойств может дать never, поэтому способы не полностью взаимозаменяемы. Выбор часто определяется публичным контрактом и правилами проекта.