"""AutomaticEDA — chapter-based, versioned EDA document with PDF + PPTX output.

Public surface (support package for the registry functions
``render_automatic_eda_pdf`` and ``render_automatic_eda_pptx``):

- Document model: ``Heading``, ``Markdown``, ``KVTable``, ``DataTable``,
  ``Figure``, ``Image``, ``Caption``, ``Note``, ``Chapter``; normalizers
  ``as_blocks`` / ``as_chapters``; ``ENGINE_VERSION`` / ``ENGINE_NAME``.
- ``build_document(profile, ctx)`` — assemble the ordered chapters of a profile.
- ``render_pdf(chapters, out_path, meta)`` / ``render_pptx(...)`` — the two
  renderers (used by the public registry functions).
- ``merge_manifest(...)`` — write/update the per-chapter version manifest.
"""

from __future__ import annotations

from .model import (  # noqa: F401
    ENGINE_NAME,
    ENGINE_VERSION,
    Caption,
    Chapter,
    DataTable,
    Figure,
    GlossaryCollector,
    GlossaryEntry,
    Group,
    Heading,
    Image,
    KVTable,
    Markdown,
    Note,
    TocEntry,
    as_blocks,
    as_chapters,
    merge_manifest,
)
from .chapters_registry import CHAPTER_ORDER, build_chapter, build_document  # noqa: F401
from .render_pdf_impl import render_pdf  # noqa: F401
from .render_pptx_impl import render_pptx  # noqa: F401
from .render_md_impl import render_md  # noqa: F401

__all__ = [
    "ENGINE_NAME",
    "ENGINE_VERSION",
    "Heading",
    "Markdown",
    "KVTable",
    "DataTable",
    "Figure",
    "Image",
    "Caption",
    "Note",
    "Group",
    "GlossaryEntry",
    "GlossaryCollector",
    "TocEntry",
    "Chapter",
    "as_blocks",
    "as_chapters",
    "merge_manifest",
    "CHAPTER_ORDER",
    "build_chapter",
    "build_document",
    "render_pdf",
    "render_pptx",
    "render_md",
]
