Skip to content

Tipos y resultados

Los tipos se exportan desde el paquete principal y desde @dikaia-io/honorarios/types.

Entradas principales

TipoFunción
HonorarioInputsCálculo judicial
SucesionCalculationInputsCálculo sucesorio
HonorarioExtrajudicialInputsCálculo extrajudicial
SucesionContextReglas especiales de sucesiones

Tipos de dominio

  • HonorarioCategory: diez categorías del catálogo.
  • TipoCalculo: jornales-fijos, porcentaje o mixto.
  • BaseCalculo: base legal o económica de una actuación.
  • HonorarioCaseType: cuatro escenarios del camino legacy.
  • ProfessionalRole: rol profesional del Art. 25.
  • HonorarioExtrajudicialServiceType: veinte servicios calculables.
  • SucesionEtapa: tres etapas sucesorias.
  • HonorarioActuacion: registro individual del catálogo.

Tramo judicial

ts
interface HonorarioTramo {
  percentMin: number;
  percentMax: number;
  amountMin: number;
  amountMax: number;
  jornalesMin?: number;
  jornalesMax?: number;
  reference: string;
  notes: string[];
}

percentMin y percentMax describen la regla propia del tramo. En una base derivada, el importe puede resultar de componer ese rango con el Art. 32; no reconstruyas el monto multiplicando nuevamente percentMin por caseAmount.

Total

ts
interface HonorarioTotal {
  amountMin: number;
  amountMax: number;
  jornalesMin?: number;
  jornalesMax?: number;
}

El total judicial suma las instancias solicitadas. El total sucesorio suma el acervo, los gananciales o los tramos 70/30 según el contexto.

Tramo extrajudicial

Los campos porcentuales, monetarios y de jornales son opcionales porque no todas las reglas fijan las tres representaciones ni un máximo:

ts
interface HonorarioExtrajudicialTramo {
  label: string;
  percentMin?: number;
  percentMax?: number;
  amountMin?: number;
  amountMax?: number;
  jornalesMin?: number;
  jornalesMax?: number;
  reference: string;
  notes: string[];
}

Errores y alertas

ts
if (!result.isValid) {
  console.error(result.errors ?? []);
  return;
}

for (const alert of result.alerts) {
  mostrarAvisoLegal(alert);
}
  • Un error indica que no debe utilizarse el cálculo.
  • Una alerta aporta contexto normativo o explica un ajuste aplicado.
  • Las funciones devuelven alerts: [] cuando el cálculo falla.

Los tipos actuales usan propiedades opcionales y no constituyen una unión discriminada estricta. El consumidor debe comprobar isValid y la presencia del tramo requerido antes de acceder a él.

Etiquetas de sucesión

SUCESION_ETAPA_LABELS permite mostrar nombres coherentes sin duplicar texto en la aplicación:

ts
import { SUCESION_ETAPA_LABELS } from '@dikaia-io/honorarios';

const label = SUCESION_ETAPA_LABELS.actuaciones;

Documentación del Ecosistema Dikaia — Tecnología justa para el derecho