title: Signature for Object.assign in typescript?
body: <p>What's the correct signature for Object.assign in typescript?
  We've implemented a jquery-like #extend function (similar to Object.assign).
  Unfortunately, the compiler doesn't recognize the extended object.</p>
  
  <pre><code> function extend&lt;T&gt;(dst : Object, ...src : Object[]) : T { //... }
  
   const data = extend({}, {foo: 'foo'});
  
   data.foo //compiler error
  </code></pre>