"""
Registry de input templates.

Cada template expõe:
    parse(payload: dict) -> dict   # retorna canonical dict
"""

from pyjuris.inputs import datajud as _dj
from pyjuris.inputs import escavador as _esc
from pyjuris.inputs import solucionare as _sol

_REGISTRY: dict[str, object] = {
    "escavador": _esc,
    "datajud": _dj,
    "solucionare": _sol,
}


def get_parser(name: str):
    """Retorna o módulo do input template pelo nome."""
    if name not in _REGISTRY:
        available = list(_REGISTRY)
        raise ValueError(f"input_template '{name}' não registrado. Disponíveis: {available}")
    return _REGISTRY[name].parse
