{% import 'includes/type_hint.py.jinja' as th -%}

from __future__ import annotations

import typing_extensions as typing
from lapidary.runtime import *
{%- for imp in item.imports %}
import {{ imp }}
{%- endfor %}


class {{item.body.name}}(ResponseEnvelope):
{%- if item.body.body_type %}
    body: typing.Annotated[{{th.type_hint(item.body.body_type)}}, ResponseBody()]
{%- endif -%}

{%- for header in item.body.headers %}
    {{header.name}}: typing.Annotated[{{ th.type_hint(header.type)}}, {{ header.annotation}}('{{header.alias}}')]
{%- endfor -%}
{{''}}
