Así que creo que encontré una solución. Simplemente coloque la palabra clave 'módulo' entre paréntesis en su archivo .ts:
declare var module: any;
(module).exports = MyClass;
El archivo javascript generado será exactamente el mismo:
(module).exports = MyClass;
Tenga en cuenta que, mejor que declarar el módulo var usted mismo, descargue el archivo de definición node.d.ts y péguelo en el mismo directorio que su archivo mecanografiado. Aquí hay una muestra completa de un archivo de enrutamiento express node.js que asume que node.d.ts está en el mismo directorio:
var SheetController = function () {
this.view = function (req, res) {
res.render('view-sheet');
};
};
(module).exports = SheetController;
Luego puedo crear un SheetController y (usando express) asignar el método de vista:
var sheetController = new SheetController();
app.get('/sheet/view', sheetController.view);
Supongo que cualquier palabra clave se puede escapar usando este patrón:
declare var reservedkeyword: any;
(reservedkeyword).anything = something;