from __future__ import annotations

from dataclasses import dataclass


@dataclass(frozen=True, slots=True)
class DocumentationTemplate:
    template_id: str
    title: str
    sections: tuple[str, ...]


class DocumentationTemplateRegistry:
    def __init__(self) -> None:
        self._templates = {
            "system_analytics_v1": DocumentationTemplate(
                template_id="system_analytics_v1",
                title="Документация по системной аналитике",
                sections=(
                    "Назначение",
                    "Контекст и границы",
                    "Основные сущности",
                    "Сценарии и workflow",
                    "Интеграции",
                    "Открытые вопросы и допущения",
                ),
            )
        }

    def default(self) -> DocumentationTemplate:
        return self._templates["system_analytics_v1"]
