Source code for httk.web.templating.base

from dataclasses import dataclass
from typing import Protocol


@dataclass(frozen=True)
[docs] class TemplateRenderInput:
[docs] content_html: str
[docs] template_name: str | None
[docs] base_template_name: str | None
[docs] context: dict[str, object]
[docs] class TemplateEngine(Protocol):
[docs] def render(self, render_input: TemplateRenderInput) -> str: ...
[docs] def render_fragment(self, *, template_name: str, context: dict[str, object]) -> str | None: ...