Рекурсивные типы
Рекурсивные типы позволяют описывать типы, которые ссылаются на самих себя в своем определении, это достигается путем использования типа внутри его собственного определения, что позволяет TypeScript обрабатывать сложные вложенные структуры
1234567891011121314type NestedValue = {value: string;next?: NestedValue;};const list: NestedValue = {value: 'a',next: {value: 'b',next: {value: 'c'}}};