{$ typeName | escape $}
{% endfor %}
{%- endmacro -%}
{%- macro paramList(params) %}
{% for param in params %}
{$ param.description | marked $} {% if param.default %}
(default: {$ param.default $})
{% endif %}{$ fn.name $}({
{%- for param in fn.params %}
{%- if param.type.optional %}[{% endif -%}
{$ param.name $}: {$ param.type.name $}
{%- if param.type.optional %}]{% endif -%},
{% endfor %}
});
{% endmacro -%}
{%- macro functionSyntax(fn) %}
{%- set sep = joiner(', ') -%}
{$ fn.name $}({%- for param in fn.params %}{$ sep() $}
{%- if param.type.optional %}[{% endif -%}
{$ param.name $}
{%- if param.type.optional %}]{% endif -%}
{% endfor %});
{% endmacro -%}
{%- macro returnTable(fn) -%}