title: Generic Typealias with Variadic Parameters
body: <p>I'm using a generic typealias to create closures. However I'm limited to a finite number of generic parameters.</p>
  
  <pre><code>typealias Closure&lt;T&gt; = (T) -&gt; Void
  </code></pre>
  
  <p>This works:</p>
  
  <pre><code>func foo(closure: Closure&lt;(String, Bool)&gt;) {}
  </code></pre>
  
  <p>This doesn't:</p>
  
  <pre><code>func foo(closure: Closure&lt;String, Bool&gt;) {}
  </code></pre>
  
  <p>Any way to create generic variadic parameters?</p>