I want to use the most recent version of Expess with node.js in TypeScript. The express.d.ts provided by microsoft in the samples seems to be built upon a versions prior to 3.0.x. In previous version you could do
var app = express.createServer()
but after 3.0.x you should do:
var app = express();
Express.d.ts does not support this... I've found a hack around this: I've added the following line to Express.d.ts:
export function(): any;
In app.ts
when I want to create the app object I do the following:
var app = <express.ExpressServer>express();
This seems to fix the issue, it's compiling without an error, and also I get intellisense support. However this is a hack... First of all why can't I write something like this?
export function(): ExpressServer;
Is this the recommended way to fix this issue?
Pretty old discussion, but I ran into the same problem recently and found that there is a new express.d.ts
that properly supports express 3 on the DefinitelyTyped site.
You should be able to add this ambient function declaration to express.d.ts
to get what you want.
declare function express(): ExpressServer;
Here's a sample project - Express 4.x app in TypeScript: https://github.com/czechboy0/Express-4x-Typescript-Sample