"""Region mappings for ISTAT XML export.

The application may encounter internal CODREGIONE values in the standard
two-digit format. XML exports require the client-provided ISTAT XML region
codes, which are kept here as strings to preserve leading zero behavior.
"""

from __future__ import annotations

from typing import Final


REGION_MAPPINGS: Final[dict[str, dict[str, str]]] = {
    "01": {"region_name": "Piemonte", "istat_region_code": "901"},
    "02": {"region_name": "Valle d'Aosta", "istat_region_code": "902"},
    "03": {"region_name": "Lombardia", "istat_region_code": "903"},
    "04": {"region_name": "Trentino-Alto Adige", "istat_region_code": "904"},
    "05": {"region_name": "Veneto", "istat_region_code": "905"},
    "06": {"region_name": "Friuli-Venezia Giulia", "istat_region_code": "906"},
    "07": {"region_name": "Liguria", "istat_region_code": "907"},
    "08": {"region_name": "Emilia-Romagna", "istat_region_code": "908"},
    "09": {"region_name": "Toscana", "istat_region_code": "909"},
    "10": {"region_name": "Umbria", "istat_region_code": "910"},
    "11": {"region_name": "Marche", "istat_region_code": "911"},
    "12": {"region_name": "Lazio", "istat_region_code": "912"},
    "13": {"region_name": "Abruzzo", "istat_region_code": "913"},
    "14": {"region_name": "Molise", "istat_region_code": "914"},
    "15": {"region_name": "Campania", "istat_region_code": "915"},
    "16": {"region_name": "Puglia", "istat_region_code": "916"},
    "17": {"region_name": "Basilicata", "istat_region_code": "917"},
    "18": {"region_name": "Calabria", "istat_region_code": "918"},
    "19": {"region_name": "Sicilia", "istat_region_code": "919"},
    "20": {"region_name": "Sardegna", "istat_region_code": "920"},
}
