What in the world is that @ symbol doing? I've never seen that in ES6. It makes this thing look horrid and nonidiomatic, unless I'm just ignorant, which I could be, and both could be true.
[0] http://blogs.msdn.com/b/typescript/archive/2015/04/30/announ...