основа: как дастать все из namespace доп:(сушествует ли алтернатива namespace?)
export namespace NNameSpace {
export type TA = number;
export type TB = string;
export type TE = boolean;
}
// type TNameSpaceTypes = ...NNameSpace; //результат TA | TB | TE (как то из NNameSpace достать все)
type TA = number;
type TB = string;
type TE = boolean;
// type TGroup = (TA, TB, TE); //создать некоторую груприровку (может есть алтернатива namespace?)
// type TABE2 = ...TGroup; //результат TA | TB | TE
// const d: TGroup.TA = 1;
// или
// const d: TGroup[TA] = 1;
Источник: Stack Overflow на русском