# List of all available Hooks for Scripts
{% for useCase in data %}
## {{ useCase.title }}
{{ useCase.description|raw }}
{% for hook in useCase.hooks %}
#### {{ hook.name }}
{% if hook.deprecation %}
{{ hook.deprecation|raw }}
{% endif %}
{% if not hook.interfaceHook %}
| | |
|:-----------------------|:----------------------------------------|
| **Name** | {{ hook.name }} |
| **Since** | {{ hook.since }} |
| **Class** | `{{ hook.class }}` |
| **Description** | {{ hook.trigger|raw }} |
| **Available Data** | {{ _self.data_list(hook.data) }} |
| **Available Services** | {{ _self.service_list(hook.services) }} |
| **Stoppable** | `{{ hook.stoppable }}` |
{% else %}
{{ hook.interfaceDescription|raw }}
{% for functionName, functionHook in hook.functions %}
##### Function: `{{ functionName }}`
{% if functionHook.deprecation %}
{{ functionHook.deprecation|raw }}
{% endif %}
| | |
|:-----------------------|:------------------------------------------------|
| **Name** | {{ functionName }} |
| **Since** | {{ functionHook.since }} |
| **Optional** | `{{ functionHook.optional }}` |
| **Class** | `{{ functionHook.class }}` |
| **Description** | {{ functionHook.trigger|raw }} |
| **Available Data** | {{ _self.data_list(functionHook.data) }} |
| **Available Services** | {{ _self.service_list(functionHook.services) }} |
| **Stoppable** | `{{ functionHook.stoppable }}` |
{% endfor %}
{% endif %}
{% endfor %}
{% endfor %}
{%- macro service_list(services) -%}
{%- for service in services -%}
{%- if service.deprecated -%}
[~~{{ service.name }}~~]({{ service.link }}) (**Deprecated:** {{ service.deprecated }})
{%- else -%}
[{{ service.name }}]({{ service.link }})
{%- endif -%}
{%- endfor -%}
{%- endmacro -%}
{%- macro data_list(dataElements) -%}
{%- for data in dataElements -%}
{%- if data.link is not null -%}
{{ data.name }}: [`{{ data.type }}`]({{ data.link }})
{%- else -%}
{{ data.name }}: `{{ data.type }}`
{%- endif -%}
{%- endfor -%}
{%- endmacro -%}