diff --git a/aio/tools/transforms/templates/api/function.template.html b/aio/tools/transforms/templates/api/function.template.html
index ea75648360..c5707f1f2a 100644
--- a/aio/tools/transforms/templates/api/function.template.html
+++ b/aio/tools/transforms/templates/api/function.template.html
@@ -1,24 +1,33 @@
+{% import "lib/memberHelpers.html" as memberHelpers -%}
{% import "lib/paramList.html" as params -%}
{% extends 'export-base.template.html' -%}
{% block overview %}
-
-function {$ doc.name $}{$ doc.typeParameters | escape $}{$ params.paramList(doc.parameters) $}
-{%- if doc.type %}: {$ doc.type | escape $}{% endif %};
-
+{% if doc.overloads.length > 0 and doc.overloads < 3 -%}
+ {% for overload in doc.overloads -%}
+ {$ memberHelpers.renderOverloadInfo(overload, 'function-overload', doc) $}
+ {% if not loop.last %}
{% endif %}
+ {% endfor -%}
+{% else %}
+ {$ memberHelpers.renderOverloadInfo(doc, 'function-overload', doc) $}
+{% endif %}
{% endblock %}
+
{% block details %}
{% include "includes/description.html" %}
-{% if doc.overloads.length %}
- Overloads
{% for overload in doc.overloads %}
-
- function {$ overload.name $}{$ doc.typeParameters | escape $}{$ params.paramList(overload.parameters) $}
- {%- if overload.type %}: {$ overload.type | escape $}{% endif %};
-
-
- {$ overload.description | trimBlankLines | marked $}
-
-{% endfor %}
+{% if doc.overloads.length >= 3 %}
+
+ Overloads
+
+ {% for overload in doc.overloads %}
+
+
+ {$ memberHelpers.renderOverloadInfo(overload, 'function-overload', doc) $}
+ |
+
+ {% endfor %}
+
+
{% endif %}
{% endblock %}
\ No newline at end of file