title: TypeScript declaration file for function with variable number/type of arguments
body: <p>headjs does some very crazy JavaScript type things to its API. For instance it takes an arbitrary number of strings (not a string array) for a function. Sometimes it ends that same function call, you can optionally end it with a function, for example.</p>
  
  <pre><code>head.js("scripturl1", "scripturl2",...,callback);
  </code></pre>
  
  <p>You can also (just as easily) do the following</p>
  
  <pre><code>head.js({scriptlabel:"scripturl1"},{scriptlabel2:"scripturl2"},...., callback);
  </code></pre>
  
  <p>My question is how the HECK do we describe that in a declaration file? I am all ears here as my current pass seems completely wrong.</p>