{{#unless hideName}}
{{{wbr name}}}
{{else}} {{! This ugliness goes away when we stop naming constructor signatures "new X"}}
{{#ifCond kindString "===" "Constructor signature"}}
{{#if flags.isAbstract}}
abstract
{{/if}}
new
{{/ifCond}}
{{/unless}}
{{#if typeParameters}}
<
{{#each typeParameters}}
{{#if @index}}, {{/if}}
{{name}}
{{/each}}
>
{{/if}}
(
{{#each parameters}}
{{#if @index}}, {{/if}}
{{#if flags.isRest}}...{{/if}}
{{name}}
{{#if flags.isOptional}}?{{/if}}
{{#if defaultValue}}?{{/if}}
:
{{#with type}}{{>type}}{{/with}}
{{/each}}
)
{{#if type}}
{{#if arrowStyle}}
=>
{{else}}
:
{{/if}}
{{#with type}}
{{>type}}
{{/with}}
{{/if}}