Вместо создания нового interface вы можете описать все, что вы хотите встроенно, используя :{ /*Structure*/ }. Предыдущий пример представлен снова уже как встроенный тип:
var name: { first: string; second: string; }; name = { first: 'John', second: 'Doe', }; name = { // Ошибка : `second` отсутствует first: 'John', }; name = { // Ошибка : `second` имеет неправильный тип first: 'John', second: 1337, };
Встроенные типы отлично подходят для быстрого однократного предоставления описания для чего-либо. Это избавляет вас от необходимости придумывать (потенциально плохое) имя типа. Однако, если вы обнаружите, что вставляете одно и то же встраиваемое описание типа несколько раз, неплохо было бы подумать о рефакторинге его в интерфейс (или псевдоним типа, описанный далее в этом разделе).