type union = 'a' | 'b' | 'c'
interface I {
[здесь пройтись циклом по каждому мемберу из union]: any
}
// result:
interface I {
a: any
b: any
c: any
}
type union = 'a' | 'b' | 'c'
type I = {
someOtherField?: number;
} & Record<union, any>;
// result:
interface I {
someOtherField?: number;
a: any
b: any
c: any
}
someOtherField
из примера), то можно обойтись просто Record<union, string>
. Как-то так:type I = Record<union, any>;