Destructuing is not handled correctly (either object literal or array binding pattern) in during declaration emit.
Eg.
TypeScript
var { a, b } = { a: "10", b: 10 };
Generates
``` TypeScript```
declare var { a, b }: any;
Expected:
TypeScript
declare var a: string, b: number;