cadrumo.domain.calculations.registry.irpf_income_categories module

Typed projections for the IRPF income-category vocabulary fact (0128).

class IrpfIncomeCategoryDefinition(token, description, tax_regime, activity_gate_modelos, payment_modelos, legal_refs)[source]

Bases: object

One registry-declared IRPF income category and its semantics.

Parameters:
token: IrpfIncomeCategory
description: str
tax_regime: str
activity_gate_modelos: tuple[str, ...]
payment_modelos: tuple[str, ...]
legal_refs: tuple[str, ...]
class IrpfIncomeCategoryCatalogue(definitions, activity_token)[source]

Bases: object

Typed projection of the dated IRPF income-category vocabulary.

Parameters:
definitions: tuple[IrpfIncomeCategoryDefinition, ...]
activity_token: IrpfIncomeCategory
property all_categories: frozenset[IrpfIncomeCategory]

Return the complete declared category membership.

property choices: tuple[IrpfIncomeCategory, ...]

Return categories in their declared presentation order.

require(value)[source]

Return one declared category or refuse an unknown value.

Return type:

IrpfIncomeCategory

Parameters:

value (object)

definition(value)[source]

Return the declaration for one admitted category.

Return type:

IrpfIncomeCategoryDefinition

Parameters:

value (object)

resolve_irpf_income_category_catalogue(*, effective_date=None, authority=None)[source]

Resolve all six income categories from fact 0128.

Return type:

IrpfIncomeCategoryCatalogue

Parameters:
require_irpf_income_category(value, *, effective_date=None, authority=None)[source]

Return one registry-declared IRPF income category.

Return type:

IrpfIncomeCategory

Parameters:
irpf_income_category_choices(*, effective_date=None, authority=None)[source]

Return the registry-declared IRPF income categories in order.

Return type:

tuple[IrpfIncomeCategory, ...]

Parameters:
irpf_income_category_actividad_economica_token(*, effective_date=None, authority=None)[source]

Return the category designated for economic-activity income.

Return type:

IrpfIncomeCategory

Parameters: