Bye, Bye, TypeScript, for now
Of course, TypeScript is a superset - so you can choose to use TypeScript where you wish and have vanilla JS in other places - but then you end up with this asymmetrical mess that still needs to go through the TypeScript compiler before it can work. I do not like asymmetry.
The second reason is something I find hard to articulate, but have experienced nonetheless. I think TypeScript gels fine with Angular, but as soon as you start to use certain prominent frameworks like RequireJS or Jasmine, it starts to get in the way somewhat. Regardless, though, having to go look for “d.ts” files every time you want to use a library is a pain.
Of course, even as I write this, my opinions are based on an early version that I have been using. I know it is progressing rapidly, so it may become a viable option at one point. Since ES6 is moving in a direction similar to TypeScript, however, I believe most libraries will adapt to the new specifications from ECMA - thus rendering TypeScript unnecessary. In any case, at least for now, I have decided to bid farewell to TypeScript.