Как описать через type/interface карту (Map)?

Подскажите, пожалуйста, как правильно написать type/interface для new Map(), которой ключ - строка, а значение - новая карта (может также в себе хранить ключи-строки и значения-карты, так как создается рекурсивно). Спасибо!

type Category = {
 category: Map<string, ?>
}

Ответы (1 шт):

Автор решения: Александр Рогонов

Как-то так (если задачу правильно понял)

type SuperMap = Map<string, SuperMap | number>;

const map1: SuperMap = new Map([
    [ "a", 10 ],
    [ "b", 20 ],
 ]);

const map2: SuperMap = new Map();
map2.set('aa', 123);
map2.set('bb', 123);
map2.set('cc', map1);
→ Ссылка