{# Defines macros for reusable templates. #} {% macro method(method) -%} {% include 'method.template.html' %} {% endmacro %} {% macro property(property) -%} {% include 'property.template.html' %} {% endmacro %} {% macro methodList(methodList) -%} {% include 'method-list.template.html' %} {% endmacro %} {% macro propertyList(propertyList) -%} {% include 'property-list.template.html' %} {% endmacro %} {% macro class(class) -%} {% include 'class.template.html' %} {% endmacro %} {% macro interface(interface) -%} {% include 'interface.template.html' %} {% endmacro %} {% macro typeAlias(alias) -%} {% include 'type-alias.template.html' %} {% endmacro %}

import { {$ doc.ngModule.name $} } from '{$ doc.moduleImportPath $}';

{%- if doc.services.length -%} {% for service in doc.services %} {$ class(service) $} {% endfor %} {%- endif -%} {%- if doc.components.length -%} {% for component in doc.components %} {$ class(component) $} {% endfor %} {%- endif -%}{%- if doc.directives.length -%} {% for directive in doc.directives %} {$ class(directive) $} {% endfor %} {%- endif -%} {%- if doc.additionalClasses.length -%} {% for other in doc.additionalClasses %} {$ class(other) $} {% endfor %} {%- endif -%} {%- if doc.additionalInterfaces.length -%} {% for item in doc.additionalInterfaces %} {$ interface(item) $} {% endfor %} {%- endif -%} {%- if doc.additionalFunctions.length -%} {% for item in doc.additionalFunctions %} {# Since the function docs have a similar structure as method docs, we use the method template. #} {$ method(item) $} {% endfor %} {%- endif -%} {%- if doc.additionalTypeAliases.length -%} {% for item in doc.additionalTypeAliases %} {$ typeAlias(item) $} {% endfor %} {%- endif -%}