Думаю, я нашел обходной путь. Просто заключите ключевое слово «модуль» в скобки в своем файле .ts:
declare var module: any;
(module).exports = MyClass;
Сгенерированный файл javascript будет точно таким же:
(module).exports = MyClass;
Обратите внимание: лучше, чем самостоятельно объявлять модуль var, скачать файл определения node.d.ts и поместить его в тот же каталог, что и ваш файл машинописного текста. Вот полный пример файла маршрутизации Express node.js, который предполагает, что node.d.ts находится в том же каталоге:
var SheetController = function () {
this.view = function (req, res) {
res.render('view-sheet');
};
};
(module).exports = SheetController;
Затем я могу создать новый SheetController и (используя экспресс) назначить метод просмотра:
var sheetController = new SheetController();
app.get('/sheet/view', sheetController.view);
Я полагаю, что любое ключевое слово можно избежать с помощью этого шаблона:
declare var reservedkeyword: any;
(reservedkeyword).anything = something;