On TypeScript Definitions... (and 3rd Party JS libraries such as knockoutjs, expressjs, etc)...
I'm finding that it's a mess out in the wild... This project (https://github.com/borisyankov/DefinitelyTyped
) hopes to bring things together, but
there is a fundamental flaw in this approach... Firstly it's a project not a portal, and second, there is no version correlation between the published library and the definition file. I've raised the latter as an issue here:
This needs to be addressed by MS fast and a coordinated open source repository needs to be set up, much like npmjs.org (not NuGet because that is MS specific) so that people can contribute the definitions in one place...
For now, however, it is quite difficult to figure out what version of a library a definition refers to. For example have a look at the express.d.ts in the (DefinitelyTyped)
project. This was copied from the MS samples but defines the 2.x express lib. We use the 3.x version... Also, there are at least 3 variants for the knockoutjs d.ts all of which define the library differently!
So... making sure we are using the correct/best defined d.ts is taking time!!!