Source code for aeat.domain.calculations.registry._applicability_routes

"""Tax-route primitives for modelo applicability."""

from __future__ import annotations

from enum import StrEnum

from ...deadlines.taxpayer_model import EntityType

__all__ = ["TAX_ROUTE_FOR_ENTITY_TYPE", "TaxRoute"]


[docs] class TaxRoute(StrEnum): """The tax branch a taxpayer profile routes to.""" IRPF = "irpf" IMPUESTO_SOCIEDADES = "impuesto_sociedades" ATTRIBUTION_PASS_THROUGH = "attribution_pass_through" # noqa: S105 - tax route token, not a secret INCOMPLETE = "incomplete"
TAX_ROUTE_FOR_ENTITY_TYPE: dict[EntityType, TaxRoute] = { EntityType.NATURAL_PERSON: TaxRoute.IRPF, EntityType.LEGAL_ENTITY: TaxRoute.IMPUESTO_SOCIEDADES, EntityType.ATTRIBUTION_ENTITY: TaxRoute.ATTRIBUTION_PASS_THROUGH, }