To me the external modules feature of TypeScript doesn't make the slightest whiff of sense.
I've got a pile of code. I separate it in files for the reasons of sanity: one big file is too hard to navigate.
Now if I want to compile this library in a node.js module, what do I do?
Correct! I throw TypeScript's lame external module concept out of the window, and simply 'declare var exports' somewhere, assigning whatever necessary to it.
Why not TypeScript's native external modules? Because TS is dumb enough to suggest every source file is a separate module in the output. That's the craziest idea around. I don't want to manage dependencies within my library, between a wee little class A and a wee little class B. They are both my own classes, and I don't want TS to create 'boxes of pasta' protected from another 'boxes of paste'.
In summary, TS external modules are waste of resources. And I bet ES6 modules will flow down the same drain. People want to bundle, not split stuff into bricks to manage every grain separately.