Динамическое заполнение объекта в Typescript
Мне нужно в цикле динамически заполнить пустой объект, чтобы на выходе у меня получился объект с нужным мне интерфейсом.
Сам объект:
const person = {}
Вот его интерфейс:
interface IPerson {
name: IName, // объект со своим интерфейсом, в который тоже могут быть вложены объекты
age: IAge[], // массив объектов с интерфейсом IAge
}
Уже на данном этапе если указать const person: IPerson = {} возникнет ошибка.
У меня есть переменная keyName, которая в итерациях является строками 'name', 'age'.
Есть переменная subKeyName в которой храниться строка с ключом из интерфейсов IName, IAge.
И соответственно есть переменная value.
То есть в итерациях мне нужно сразу инициализировать свойство пустым объектом или массивом, а потом заполнять его:
для name:
person[keyname] = {};
person[keyname][subkeyname] = value;
для age:
person[keyname] = [];
prson[keyname].push(value);
Как это можно затипизировать?