У меня есть класс Users
, который я экспортирую из файла Users.ts
export default class Users {}
Затем я экспортирую Users.ts
из другого файла, index.ts
:
// classes
export {default as Users} from './Users'
У меня есть третий файл, Foo.ts
, в котором я хочу динамически создать экземпляр всех экспортируемых классов из index.ts
и добавить их в качестве свойств в этот класс:
import * as classes from './index'
class Foo {
constructor() {
const httpClient = new HttpClient()
}
_addClasses() {
for (const class in classes) {
this[class] = new classes[class](this.httpClient);
}
}
}
У меня вопрос: как я могу добавить правильные типы к Foo
, чтобы я мог получить правильное автозаполнение в IDE для .users
, например:
new Foo(new HttpClient).users