Я использую TypeScript с библиотекой инъекций зависимостей, которая очень похожа на Angular 1 - в основном: зарегистрируйте factory с вашими зависимостями в качестве аргументов.
Вот как я зарегистрировал бы класс в ES6
export let factory = () => {
return class Foo {}
};
Если я пишу то же самое в TypeScript:
export let factory = () => {
return class Foo {}
};
Не удается скомпилировать с ошибкой
ошибка TS4025: экспортированная переменная 'factory' имеет или использует личное имя 'Foo'.
Можно ли разрешить TypeScript возвращать класс из функции factory?