@fiado/type-kit 3.279.0 → 3.280.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/bin/index.d.ts +1 -0
  2. package/bin/index.js +6 -2
  3. package/bin/loanConfig/enums/ModifiableByRoleEnum.d.ts +11 -0
  4. package/bin/loanConfig/enums/ModifiableByRoleEnum.js +15 -0
  5. package/bin/places/dtos/CashInFeeDto.d.ts +17 -0
  6. package/bin/places/dtos/CashInFeeDto.js +12 -0
  7. package/bin/platformRbac/dtos/ResendOtpRequest.d.ts +22 -0
  8. package/bin/{walletFunding/dtos/CancelFundingRequest.js → platformRbac/dtos/ResendOtpRequest.js} +16 -13
  9. package/bin/platformRbac/dtos/ResendSelfRegisterOtpRequest.d.ts +11 -0
  10. package/bin/{walletFunding/dtos/CancelFundingReferenceRequest.js → platformRbac/dtos/ResendSelfRegisterOtpRequest.js} +18 -13
  11. package/bin/retailCommission/dtos/CommissionAccrual.d.ts +78 -0
  12. package/bin/retailCommission/dtos/CommissionAccrual.js +2 -0
  13. package/bin/retailCommission/dtos/CommissionApi.d.ts +169 -0
  14. package/bin/retailCommission/dtos/CommissionApi.js +2 -0
  15. package/bin/retailCommission/dtos/CommissionCalcTrace.d.ts +73 -0
  16. package/bin/retailCommission/dtos/CommissionCalcTrace.js +2 -0
  17. package/bin/retailCommission/dtos/CommissionPayout.d.ts +73 -0
  18. package/bin/retailCommission/dtos/CommissionPayout.js +2 -0
  19. package/bin/retailCommission/dtos/CommissionPlan.d.ts +182 -0
  20. package/bin/retailCommission/dtos/CommissionPlan.js +2 -0
  21. package/bin/retailCommission/enums/CommissionAccrualStatusEnum.d.ts +14 -0
  22. package/bin/retailCommission/enums/CommissionAccrualStatusEnum.js +18 -0
  23. package/bin/retailCommission/enums/CommissionCalcStepEnum.d.ts +23 -0
  24. package/bin/retailCommission/enums/CommissionCalcStepEnum.js +27 -0
  25. package/bin/retailCommission/enums/CommissionExceptionTypeEnum.d.ts +14 -0
  26. package/bin/retailCommission/enums/CommissionExceptionTypeEnum.js +18 -0
  27. package/bin/retailCommission/enums/CommissionMechanicTypeEnum.d.ts +24 -0
  28. package/bin/retailCommission/enums/CommissionMechanicTypeEnum.js +28 -0
  29. package/bin/retailCommission/enums/CommissionPayeeTypeEnum.d.ts +13 -0
  30. package/bin/retailCommission/enums/CommissionPayeeTypeEnum.js +17 -0
  31. package/bin/retailCommission/enums/CommissionPayoutStatusEnum.d.ts +18 -0
  32. package/bin/retailCommission/enums/CommissionPayoutStatusEnum.js +22 -0
  33. package/bin/retailCommission/enums/CommissionPeriodTypeEnum.d.ts +17 -0
  34. package/bin/retailCommission/enums/CommissionPeriodTypeEnum.js +21 -0
  35. package/bin/retailCommission/enums/CommissionPlanStatusEnum.d.ts +14 -0
  36. package/bin/retailCommission/enums/CommissionPlanStatusEnum.js +18 -0
  37. package/bin/retailCommission/enums/CommissionPriceReferenceEnum.d.ts +18 -0
  38. package/bin/retailCommission/enums/CommissionPriceReferenceEnum.js +22 -0
  39. package/bin/retailCommission/enums/CommissionQuotaMeasureEnum.d.ts +12 -0
  40. package/bin/retailCommission/enums/CommissionQuotaMeasureEnum.js +16 -0
  41. package/bin/retailCommission/enums/CommissionQuotaModeEnum.d.ts +13 -0
  42. package/bin/retailCommission/enums/CommissionQuotaModeEnum.js +17 -0
  43. package/bin/retailCommission/enums/CommissionQuotaSubjectEnum.d.ts +12 -0
  44. package/bin/retailCommission/enums/CommissionQuotaSubjectEnum.js +16 -0
  45. package/bin/retailCommission/enums/CommissionQuotaTypeEnum.d.ts +12 -0
  46. package/bin/retailCommission/enums/CommissionQuotaTypeEnum.js +16 -0
  47. package/bin/retailCommission/index.d.ts +18 -0
  48. package/bin/retailCommission/index.js +37 -0
  49. package/package.json +1 -1
  50. package/src/index.ts +4 -0
  51. package/src/retailCommission/dtos/CommissionAccrual.ts +81 -0
  52. package/src/retailCommission/dtos/CommissionApi.ts +205 -0
  53. package/src/retailCommission/dtos/CommissionCalcTrace.ts +64 -0
  54. package/src/retailCommission/dtos/CommissionPayout.ts +76 -0
  55. package/src/retailCommission/dtos/CommissionPlan.ts +199 -0
  56. package/src/retailCommission/enums/CommissionAccrualStatusEnum.ts +14 -0
  57. package/src/retailCommission/enums/CommissionCalcStepEnum.ts +23 -0
  58. package/src/retailCommission/enums/CommissionExceptionTypeEnum.ts +14 -0
  59. package/src/retailCommission/enums/CommissionMechanicTypeEnum.ts +24 -0
  60. package/src/retailCommission/enums/CommissionPayeeTypeEnum.ts +13 -0
  61. package/src/retailCommission/enums/CommissionPayoutStatusEnum.ts +18 -0
  62. package/src/retailCommission/enums/CommissionPeriodTypeEnum.ts +17 -0
  63. package/src/retailCommission/enums/CommissionPlanStatusEnum.ts +14 -0
  64. package/src/retailCommission/enums/CommissionPriceReferenceEnum.ts +18 -0
  65. package/src/retailCommission/enums/CommissionQuotaMeasureEnum.ts +12 -0
  66. package/src/retailCommission/enums/CommissionQuotaModeEnum.ts +13 -0
  67. package/src/retailCommission/enums/CommissionQuotaSubjectEnum.ts +12 -0
  68. package/src/retailCommission/enums/CommissionQuotaTypeEnum.ts +12 -0
  69. package/src/retailCommission/index.ts +23 -0
  70. package/bin/identity/enums/SelfieSourceEnum.d.ts +0 -10
  71. package/bin/identity/enums/SelfieSourceEnum.js +0 -14
  72. package/bin/loanCredit/dtos/requests/UpdateActivationChecklistRequest.d.ts +0 -11
  73. package/bin/loanCredit/dtos/requests/UpdateActivationChecklistRequest.js +0 -46
  74. package/bin/loanCredit/enums/ClientLevelEnum.d.ts +0 -11
  75. package/bin/loanCredit/enums/ClientLevelEnum.js +0 -15
  76. package/bin/walletFunding/dtos/CancelFundingReferenceRequest.d.ts +0 -6
  77. package/bin/walletFunding/dtos/CancelFundingReferenceResponse.d.ts +0 -7
  78. package/bin/walletFunding/dtos/CancelFundingReferenceResponse.js +0 -6
  79. package/bin/walletFunding/dtos/CancelFundingRequest.d.ts +0 -11
  80. package/bin/walletFunding/dtos/CancelFundingResponse.d.ts +0 -14
  81. package/bin/walletFunding/dtos/CancelFundingResponse.js +0 -12
  82. package/bin/walletFunding/dtos/CancelWalletFundingRequest.d.ts +0 -3
  83. package/bin/walletFunding/dtos/CancelWalletFundingRequest.js +0 -21
  84. package/bin/walletFunding/dtos/CancelWalletFundingResponse.d.ts +0 -7
  85. package/bin/walletFunding/dtos/CancelWalletFundingResponse.js +0 -6
@@ -0,0 +1,182 @@
1
+ import type { CommissionMechanicTypeEnum } from '../enums/CommissionMechanicTypeEnum';
2
+ import type { CommissionPlanStatusEnum } from '../enums/CommissionPlanStatusEnum';
3
+ import type { CommissionPriceReferenceEnum } from '../enums/CommissionPriceReferenceEnum';
4
+ import type { CommissionQuotaTypeEnum } from '../enums/CommissionQuotaTypeEnum';
5
+ import type { CommissionQuotaMeasureEnum } from '../enums/CommissionQuotaMeasureEnum';
6
+ import type { CommissionQuotaSubjectEnum } from '../enums/CommissionQuotaSubjectEnum';
7
+ import type { CommissionQuotaModeEnum } from '../enums/CommissionQuotaModeEnum';
8
+ import type { CommissionPeriodTypeEnum } from '../enums/CommissionPeriodTypeEnum';
9
+ import type { CommissionExceptionTypeEnum } from '../enums/CommissionExceptionTypeEnum';
10
+ /**
11
+ * El plan de comisiones de VentasLuga, versionado por snapshot inmutable.
12
+ * SureKeep Fase 3 — pista Retail.
13
+ *
14
+ * Todo lo de este archivo vive DENTRO de un snapshot: se congela al publicar y no se vuelve a tocar.
15
+ * Esa es la razón de que hasta las reglas de `sku → categoría` (`CommissionCategoryMatch`) vivan acá
16
+ * y no en el código del motor — si vivieran en el código, un redespliegue cambiaría montos ya
17
+ * devengados y dos accruals del mismo snapshot podrían calcularse distinto.
18
+ *
19
+ * Montos en centavos (`*Cents`), porcentajes en puntos base (`*Bps`, 10000 = 100%).
20
+ */
21
+ /**
22
+ * Un par de valores: sin cuota y con cuota.
23
+ *
24
+ * ⚠️ **No es un descuento: son dos tablas de precios.** Alcanzar la cuota no «suma un bono», elige
25
+ * columna. Por eso `base: 0, withQuota: 2500` (PayJoy) es válido y significa «solo comisiona si
26
+ * alcanzó la cuota», no un error de captura.
27
+ */
28
+ export interface CommissionValuePair {
29
+ /** Valor cuando NO se alcanzó la cuota. Puede ser 0. */
30
+ base: number;
31
+ /** Valor cuando SÍ se alcanzó. Puede ser igual al base si la categoría no discrimina. */
32
+ withQuota: number;
33
+ }
34
+ /** Un tramo de precio del equipo. Los tramos no se solapan y cubren de 0 a infinito. */
35
+ export interface CommissionPriceTier extends CommissionValuePair {
36
+ /** Etiqueta visible: `D`, `C`, `B`, `A`. */
37
+ grade: string;
38
+ minCents: number;
39
+ /** `null` = sin tope superior (el tramo más alto). */
40
+ maxCents: number | null;
41
+ }
42
+ /** Una celda de la matriz, identificada por sus coordenadas. */
43
+ export interface CommissionMatrixCell extends CommissionValuePair {
44
+ /** Un valor por dimensión, en el mismo orden que `dimensions`. */
45
+ coords: string[];
46
+ }
47
+ /** Una variante enumerada (un plan de pospago, por ejemplo). */
48
+ export interface CommissionVariant extends CommissionValuePair {
49
+ variantId: string;
50
+ label: string;
51
+ }
52
+ /** Una variante por forma de pago. Los valores van en bps. */
53
+ export interface CommissionPaymentVariant extends CommissionValuePair {
54
+ /** `CASH` | `CREDIT` — cómo pagó el cliente. */
55
+ paymentType: string;
56
+ label: string;
57
+ }
58
+ /**
59
+ * La mecánica de una categoría, discriminada por `type`.
60
+ *
61
+ * `PRICE_TIER`, `FLAT`, `MATRIX` y `VARIANT` pagan en CENTAVOS; `PERCENT` y `PERCENT_BY_PAYMENT`
62
+ * pagan en BPS sobre el precio. Esa distinción la resuelve el evaluador con `valueKind`, no una rama
63
+ * por tipo.
64
+ */
65
+ export type CommissionMechanic = {
66
+ type: CommissionMechanicTypeEnum.PRICE_TIER;
67
+ tiers: CommissionPriceTier[];
68
+ } | {
69
+ type: CommissionMechanicTypeEnum.FLAT;
70
+ value: CommissionValuePair;
71
+ } | {
72
+ type: CommissionMechanicTypeEnum.PERCENT;
73
+ value: CommissionValuePair;
74
+ } | {
75
+ type: CommissionMechanicTypeEnum.MATRIX;
76
+ dimensions: string[];
77
+ cells: CommissionMatrixCell[];
78
+ } | {
79
+ type: CommissionMechanicTypeEnum.VARIANT;
80
+ variants: CommissionVariant[];
81
+ } | {
82
+ type: CommissionMechanicTypeEnum.PERCENT_BY_PAYMENT;
83
+ variants: CommissionPaymentVariant[];
84
+ };
85
+ /** Un nivel del acelerador. `factorBps` 10000 = 1.0×, 12000 = 1.2×. */
86
+ export interface CommissionQuotaLevel {
87
+ minAmountCents: number;
88
+ factorBps: number;
89
+ }
90
+ /**
91
+ * Una cuota. Binaria (un gate) o escalonada (N niveles con multiplicador).
92
+ *
93
+ * ⚠️ **Todas se resuelven al CERRAR el periodo**, nunca al devengar. Ese es el diseño de Jaime y es
94
+ * lo que evita el mecanismo más peligroso posible: reescribir filas ya devengadas cada vez que una
95
+ * venta nueva mueve el conteo.
96
+ */
97
+ export interface CommissionQuota {
98
+ quotaId: string;
99
+ name: string;
100
+ description: string | null;
101
+ active: boolean;
102
+ type: CommissionQuotaTypeEnum;
103
+ measure: CommissionQuotaMeasureEnum;
104
+ subject: CommissionQuotaSubjectEnum;
105
+ period: CommissionPeriodTypeEnum;
106
+ mode: CommissionQuotaModeEnum;
107
+ /** Solo `BINARY`. El umbral a alcanzar, en la unidad de `measure`. */
108
+ threshold: number | null;
109
+ /** Solo `TIERED`. Ordenados de menor a mayor. */
110
+ levels: CommissionQuotaLevel[] | null;
111
+ /** Si el valor `withQuota` REEMPLAZA al base (`true`) o se suma. Hoy siempre `true`. */
112
+ replacesBase: boolean;
113
+ }
114
+ /**
115
+ * Cómo se decide que una venta pertenece a esta categoría.
116
+ *
117
+ * Vive DENTRO del snapshot (versionado e inmutable con el plan). Si viviera en el código del motor,
118
+ * cambiar el mapa reescribiría el pasado.
119
+ */
120
+ export interface CommissionCategoryMatch {
121
+ skus: string[];
122
+ brands: string[];
123
+ /** Prefijos de SKU, para familias completas. */
124
+ skuPrefixes: string[];
125
+ }
126
+ /**
127
+ * Una excepción: un SKU o una marca que paga distinto que su categoría.
128
+ *
129
+ * Precedencia: **SKU gana sobre BRAND, y BRAND sobre la mecánica.**
130
+ */
131
+ export interface CommissionException {
132
+ exceptionId: string;
133
+ type: CommissionExceptionTypeEnum;
134
+ /** El SKU exacto o el nombre de la marca, según `type`. */
135
+ target: string;
136
+ label: string;
137
+ value: CommissionValuePair;
138
+ }
139
+ /** Una categoría de producto con su mecánica, su cuota y sus excepciones. */
140
+ export interface CommissionCategory {
141
+ categoryId: string;
142
+ name: string;
143
+ icon: string | null;
144
+ description: string | null;
145
+ match: CommissionCategoryMatch;
146
+ /** `null` = la categoría NO está condicionada a ninguna cuota (Pospago, Zmotos). */
147
+ quotaId: string | null;
148
+ priceReference: CommissionPriceReferenceEnum;
149
+ mechanic: CommissionMechanic;
150
+ exceptions: CommissionException[];
151
+ }
152
+ /** Un add-on: monto fijo que se suma FUERA del stacking y fuera del máximo. */
153
+ export interface CommissionAddOn {
154
+ addOnId: string;
155
+ label: string;
156
+ amountCents: number;
157
+ active: boolean;
158
+ }
159
+ /**
160
+ * Una versión del plan. Publicada es inmutable; el borrador se pisa.
161
+ *
162
+ * `storeOverrideBps` es un **pago a OTRA persona** (el admin de la tienda) sobre las ventas de su
163
+ * equipo. Se modela pero **no se devenga** en el primer corte, hasta que se defina quién es ese
164
+ * admin en `retail-org-business`.
165
+ */
166
+ export interface CommissionPlanSnapshot {
167
+ retailerId: string;
168
+ /** `null` mientras es borrador: el ULID se asigna al publicar. */
169
+ snapshotId: string | null;
170
+ status: CommissionPlanStatusEnum;
171
+ effectiveFrom: string;
172
+ categories: CommissionCategory[];
173
+ quotas: CommissionQuota[];
174
+ addOns: CommissionAddOn[];
175
+ /** `storeId` → bps adicionales para el admin de esa tienda. */
176
+ storeOverrideBps: Record<string, number>;
177
+ changeNote: string | null;
178
+ publishedBy: string | null;
179
+ publishedAt: string | null;
180
+ updatedAt: string | null;
181
+ updatedBy: string | null;
182
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Estado de una fila de devengo.
3
+ *
4
+ * ACCRUED - Devengada con su monto base. La cuota y el factor TODAVÍA no están resueltos.
5
+ * PAID - Liquidada al cerrar el corte: ya tiene `quotaMet`, `quotaFactorBps` y `settledAmountCents`.
6
+ * REVERSED - Revertida por cancelación de la venta, con el corte aún abierto.
7
+ *
8
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
9
+ */
10
+ export declare enum CommissionAccrualStatusEnum {
11
+ ACCRUED = "ACCRUED",
12
+ PAID = "PAID",
13
+ REVERSED = "REVERSED"
14
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionAccrualStatusEnum = void 0;
4
+ /**
5
+ * Estado de una fila de devengo.
6
+ *
7
+ * ACCRUED - Devengada con su monto base. La cuota y el factor TODAVÍA no están resueltos.
8
+ * PAID - Liquidada al cerrar el corte: ya tiene `quotaMet`, `quotaFactorBps` y `settledAmountCents`.
9
+ * REVERSED - Revertida por cancelación de la venta, con el corte aún abierto.
10
+ *
11
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
12
+ */
13
+ var CommissionAccrualStatusEnum;
14
+ (function (CommissionAccrualStatusEnum) {
15
+ CommissionAccrualStatusEnum["ACCRUED"] = "ACCRUED";
16
+ CommissionAccrualStatusEnum["PAID"] = "PAID";
17
+ CommissionAccrualStatusEnum["REVERSED"] = "REVERSED";
18
+ })(CommissionAccrualStatusEnum || (exports.CommissionAccrualStatusEnum = CommissionAccrualStatusEnum = {}));
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Los pasos que puede registrar la traza de cálculo.
3
+ *
4
+ * La traza es una unión CERRADA por este enum, sin campos libres: es el vehículo más probable de
5
+ * fuga de PII del comprador y no debe haber dónde meterla.
6
+ *
7
+ * MECHANIC - Se evaluó la mecánica de la categoría.
8
+ * EXCEPTION - Una excepción por SKU o marca reemplazó el valor de la mecánica.
9
+ * ADDON - Se sumó un add-on. Van FUERA del stacking.
10
+ * QUOTA - Se resolvió la cuota (binaria o escalonada). Ocurre al CERRAR, no al devengar.
11
+ * ADJUSTMENT - Un ajuste manual del corte.
12
+ * NO_CATEGORY - El SKU no matcheó ninguna categoría del plan: devenga 0 y queda visible.
13
+ *
14
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
15
+ */
16
+ export declare enum CommissionCalcStepEnum {
17
+ MECHANIC = "MECHANIC",
18
+ EXCEPTION = "EXCEPTION",
19
+ ADDON = "ADDON",
20
+ QUOTA = "QUOTA",
21
+ ADJUSTMENT = "ADJUSTMENT",
22
+ NO_CATEGORY = "NO_CATEGORY"
23
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionCalcStepEnum = void 0;
4
+ /**
5
+ * Los pasos que puede registrar la traza de cálculo.
6
+ *
7
+ * La traza es una unión CERRADA por este enum, sin campos libres: es el vehículo más probable de
8
+ * fuga de PII del comprador y no debe haber dónde meterla.
9
+ *
10
+ * MECHANIC - Se evaluó la mecánica de la categoría.
11
+ * EXCEPTION - Una excepción por SKU o marca reemplazó el valor de la mecánica.
12
+ * ADDON - Se sumó un add-on. Van FUERA del stacking.
13
+ * QUOTA - Se resolvió la cuota (binaria o escalonada). Ocurre al CERRAR, no al devengar.
14
+ * ADJUSTMENT - Un ajuste manual del corte.
15
+ * NO_CATEGORY - El SKU no matcheó ninguna categoría del plan: devenga 0 y queda visible.
16
+ *
17
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
18
+ */
19
+ var CommissionCalcStepEnum;
20
+ (function (CommissionCalcStepEnum) {
21
+ CommissionCalcStepEnum["MECHANIC"] = "MECHANIC";
22
+ CommissionCalcStepEnum["EXCEPTION"] = "EXCEPTION";
23
+ CommissionCalcStepEnum["ADDON"] = "ADDON";
24
+ CommissionCalcStepEnum["QUOTA"] = "QUOTA";
25
+ CommissionCalcStepEnum["ADJUSTMENT"] = "ADJUSTMENT";
26
+ CommissionCalcStepEnum["NO_CATEGORY"] = "NO_CATEGORY";
27
+ })(CommissionCalcStepEnum || (exports.CommissionCalcStepEnum = CommissionCalcStepEnum = {}));
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Sobre qué aplica una excepción del plan.
3
+ *
4
+ * Precedencia: SKU gana sobre BRAND, y BRAND sobre la mecánica de la categoría.
5
+ *
6
+ * SKU - Un SKU exacto.
7
+ * BRAND - Una marca completa.
8
+ *
9
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
10
+ */
11
+ export declare enum CommissionExceptionTypeEnum {
12
+ SKU = "SKU",
13
+ BRAND = "BRAND"
14
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionExceptionTypeEnum = void 0;
4
+ /**
5
+ * Sobre qué aplica una excepción del plan.
6
+ *
7
+ * Precedencia: SKU gana sobre BRAND, y BRAND sobre la mecánica de la categoría.
8
+ *
9
+ * SKU - Un SKU exacto.
10
+ * BRAND - Una marca completa.
11
+ *
12
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
13
+ */
14
+ var CommissionExceptionTypeEnum;
15
+ (function (CommissionExceptionTypeEnum) {
16
+ CommissionExceptionTypeEnum["SKU"] = "SKU";
17
+ CommissionExceptionTypeEnum["BRAND"] = "BRAND";
18
+ })(CommissionExceptionTypeEnum || (exports.CommissionExceptionTypeEnum = CommissionExceptionTypeEnum = {}));
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Las 6 formas de calcular la comisión de una categoría (D12).
3
+ *
4
+ * Son el producto cartesiano de dos ejes —cómo se elige la celda y en qué unidad paga— y por eso
5
+ * un solo evaluador las cubre todas: `toCells(mechanic)` normaliza cualquiera a
6
+ * `[{ match, baseValue, withQuotaValue }]` + `valueKind`.
7
+ *
8
+ * PRICE_TIER - Por rango de precio del equipo (D/C/B/A). Equipos.
9
+ * FLAT - Monto fijo por unidad. MiFi, PayJoy.
10
+ * PERCENT - Porcentaje del precio, en bps. Accesorios.
11
+ * MATRIX - Celda por N dimensiones. SIMs: operador × origen.
12
+ * VARIANT - Monto por variante enumerada. Pospago: plan $339 → $220.
13
+ * PERCENT_BY_PAYMENT - Porcentaje según forma de pago. Zmotos: contado 2% / crédito 4%.
14
+ *
15
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
16
+ */
17
+ export declare enum CommissionMechanicTypeEnum {
18
+ PRICE_TIER = "PRICE_TIER",
19
+ FLAT = "FLAT",
20
+ PERCENT = "PERCENT",
21
+ MATRIX = "MATRIX",
22
+ VARIANT = "VARIANT",
23
+ PERCENT_BY_PAYMENT = "PERCENT_BY_PAYMENT"
24
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionMechanicTypeEnum = void 0;
4
+ /**
5
+ * Las 6 formas de calcular la comisión de una categoría (D12).
6
+ *
7
+ * Son el producto cartesiano de dos ejes —cómo se elige la celda y en qué unidad paga— y por eso
8
+ * un solo evaluador las cubre todas: `toCells(mechanic)` normaliza cualquiera a
9
+ * `[{ match, baseValue, withQuotaValue }]` + `valueKind`.
10
+ *
11
+ * PRICE_TIER - Por rango de precio del equipo (D/C/B/A). Equipos.
12
+ * FLAT - Monto fijo por unidad. MiFi, PayJoy.
13
+ * PERCENT - Porcentaje del precio, en bps. Accesorios.
14
+ * MATRIX - Celda por N dimensiones. SIMs: operador × origen.
15
+ * VARIANT - Monto por variante enumerada. Pospago: plan $339 → $220.
16
+ * PERCENT_BY_PAYMENT - Porcentaje según forma de pago. Zmotos: contado 2% / crédito 4%.
17
+ *
18
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
19
+ */
20
+ var CommissionMechanicTypeEnum;
21
+ (function (CommissionMechanicTypeEnum) {
22
+ CommissionMechanicTypeEnum["PRICE_TIER"] = "PRICE_TIER";
23
+ CommissionMechanicTypeEnum["FLAT"] = "FLAT";
24
+ CommissionMechanicTypeEnum["PERCENT"] = "PERCENT";
25
+ CommissionMechanicTypeEnum["MATRIX"] = "MATRIX";
26
+ CommissionMechanicTypeEnum["VARIANT"] = "VARIANT";
27
+ CommissionMechanicTypeEnum["PERCENT_BY_PAYMENT"] = "PERCENT_BY_PAYMENT";
28
+ })(CommissionMechanicTypeEnum || (exports.CommissionMechanicTypeEnum = CommissionMechanicTypeEnum = {}));
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Quién cobra una fila de devengo.
3
+ *
4
+ * SELLER - El vendedor que originó la venta. Único que se devenga en el primer corte.
5
+ * STORE_ADMIN - El admin de la tienda, por el `storeOverrideBps`. ⚠️ Modelado pero NO devengado
6
+ * hasta que se defina quién es ese admin en `retail-org-business`.
7
+ *
8
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
9
+ */
10
+ export declare enum CommissionPayeeTypeEnum {
11
+ SELLER = "SELLER",
12
+ STORE_ADMIN = "STORE_ADMIN"
13
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionPayeeTypeEnum = void 0;
4
+ /**
5
+ * Quién cobra una fila de devengo.
6
+ *
7
+ * SELLER - El vendedor que originó la venta. Único que se devenga en el primer corte.
8
+ * STORE_ADMIN - El admin de la tienda, por el `storeOverrideBps`. ⚠️ Modelado pero NO devengado
9
+ * hasta que se defina quién es ese admin en `retail-org-business`.
10
+ *
11
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
12
+ */
13
+ var CommissionPayeeTypeEnum;
14
+ (function (CommissionPayeeTypeEnum) {
15
+ CommissionPayeeTypeEnum["SELLER"] = "SELLER";
16
+ CommissionPayeeTypeEnum["STORE_ADMIN"] = "STORE_ADMIN";
17
+ })(CommissionPayeeTypeEnum || (exports.CommissionPayeeTypeEnum = CommissionPayeeTypeEnum = {}));
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Estado del corte semanal.
3
+ *
4
+ * OPEN - Acumulando devengos. Nadie lo «abre»: el ítem META se crea con upsert al primer ajuste o al cerrar.
5
+ * CLOSING - Cierre encolado o corriendo. Es el candado: sin este estado, dos clicks en «Cerrar»
6
+ * encolan dos workers que liquidan en paralelo, y la UI no puede distinguir «abierto» de «cerrando».
7
+ * CLOSED - Terminado. Es la ÚLTIMA escritura del worker, no la primera: significa «se pagó todo»,
8
+ * no «se empezó a pagar».
9
+ *
10
+ * ⚠️ No existe `PAID`: **Fiado no dispersa el pago**. El archivo se entrega a la nómina de LUGA.
11
+ *
12
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
13
+ */
14
+ export declare enum CommissionPayoutStatusEnum {
15
+ OPEN = "OPEN",
16
+ CLOSING = "CLOSING",
17
+ CLOSED = "CLOSED"
18
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionPayoutStatusEnum = void 0;
4
+ /**
5
+ * Estado del corte semanal.
6
+ *
7
+ * OPEN - Acumulando devengos. Nadie lo «abre»: el ítem META se crea con upsert al primer ajuste o al cerrar.
8
+ * CLOSING - Cierre encolado o corriendo. Es el candado: sin este estado, dos clicks en «Cerrar»
9
+ * encolan dos workers que liquidan en paralelo, y la UI no puede distinguir «abierto» de «cerrando».
10
+ * CLOSED - Terminado. Es la ÚLTIMA escritura del worker, no la primera: significa «se pagó todo»,
11
+ * no «se empezó a pagar».
12
+ *
13
+ * ⚠️ No existe `PAID`: **Fiado no dispersa el pago**. El archivo se entrega a la nómina de LUGA.
14
+ *
15
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
16
+ */
17
+ var CommissionPayoutStatusEnum;
18
+ (function (CommissionPayoutStatusEnum) {
19
+ CommissionPayoutStatusEnum["OPEN"] = "OPEN";
20
+ CommissionPayoutStatusEnum["CLOSING"] = "CLOSING";
21
+ CommissionPayoutStatusEnum["CLOSED"] = "CLOSED";
22
+ })(CommissionPayoutStatusEnum || (exports.CommissionPayoutStatusEnum = CommissionPayoutStatusEnum = {}));
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Periodicidad de la cuota. El modal del plan ofrece las tres.
3
+ *
4
+ * ⚠️ El primer corte implementa SOLO `WEEKLY`; las otras dos se rechazan con error tipado en vez de
5
+ * calcularse mal en silencio.
6
+ *
7
+ * WEEKLY - Semanal. `M6_ADMIN` §9.3 y §9.4: corte de martes a lunes.
8
+ * BIWEEKLY - Quincenal. No implementada.
9
+ * MONTHLY - Mensual. No implementada.
10
+ *
11
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
12
+ */
13
+ export declare enum CommissionPeriodTypeEnum {
14
+ WEEKLY = "WEEKLY",
15
+ BIWEEKLY = "BIWEEKLY",
16
+ MONTHLY = "MONTHLY"
17
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionPeriodTypeEnum = void 0;
4
+ /**
5
+ * Periodicidad de la cuota. El modal del plan ofrece las tres.
6
+ *
7
+ * ⚠️ El primer corte implementa SOLO `WEEKLY`; las otras dos se rechazan con error tipado en vez de
8
+ * calcularse mal en silencio.
9
+ *
10
+ * WEEKLY - Semanal. `M6_ADMIN` §9.3 y §9.4: corte de martes a lunes.
11
+ * BIWEEKLY - Quincenal. No implementada.
12
+ * MONTHLY - Mensual. No implementada.
13
+ *
14
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
15
+ */
16
+ var CommissionPeriodTypeEnum;
17
+ (function (CommissionPeriodTypeEnum) {
18
+ CommissionPeriodTypeEnum["WEEKLY"] = "WEEKLY";
19
+ CommissionPeriodTypeEnum["BIWEEKLY"] = "BIWEEKLY";
20
+ CommissionPeriodTypeEnum["MONTHLY"] = "MONTHLY";
21
+ })(CommissionPeriodTypeEnum || (exports.CommissionPeriodTypeEnum = CommissionPeriodTypeEnum = {}));
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Estado de una versión del plan de comisiones.
3
+ *
4
+ * DRAFT - Borrador en edición. Ítem ÚNICO (`sk = DRAFT`): se pisa, no versiona.
5
+ * PUBLISHED - Snapshot sellado y vigente. Apuntado por el puntero `ACTIVE`.
6
+ * SUPERSEDED - Snapshot que fue vigente y ya no lo es. Inmutable: lo devengado con él ya se devengó.
7
+ *
8
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
9
+ */
10
+ export declare enum CommissionPlanStatusEnum {
11
+ DRAFT = "DRAFT",
12
+ PUBLISHED = "PUBLISHED",
13
+ SUPERSEDED = "SUPERSEDED"
14
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionPlanStatusEnum = void 0;
4
+ /**
5
+ * Estado de una versión del plan de comisiones.
6
+ *
7
+ * DRAFT - Borrador en edición. Ítem ÚNICO (`sk = DRAFT`): se pisa, no versiona.
8
+ * PUBLISHED - Snapshot sellado y vigente. Apuntado por el puntero `ACTIVE`.
9
+ * SUPERSEDED - Snapshot que fue vigente y ya no lo es. Inmutable: lo devengado con él ya se devengó.
10
+ *
11
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
12
+ */
13
+ var CommissionPlanStatusEnum;
14
+ (function (CommissionPlanStatusEnum) {
15
+ CommissionPlanStatusEnum["DRAFT"] = "DRAFT";
16
+ CommissionPlanStatusEnum["PUBLISHED"] = "PUBLISHED";
17
+ CommissionPlanStatusEnum["SUPERSEDED"] = "SUPERSEDED";
18
+ })(CommissionPlanStatusEnum || (exports.CommissionPlanStatusEnum = CommissionPlanStatusEnum = {}));
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Contra qué precio se evalúa la mecánica de una categoría.
3
+ *
4
+ * ⚠️ En el primer corte las tres resuelven contra el mismo número: la venta trae UN precio
5
+ * (`equipmentPriceCents`, con `amountCents` de respaldo). Se modela porque el plan de Jaime lo
6
+ * declara por categoría y borrarlo obligaría a migrar los snapshots cuando lleguen los tres precios.
7
+ *
8
+ * LIST - Precio de lista.
9
+ * FINAL - Precio final cobrado.
10
+ * PUBLIC - Precio público sugerido.
11
+ *
12
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
13
+ */
14
+ export declare enum CommissionPriceReferenceEnum {
15
+ LIST = "LIST",
16
+ FINAL = "FINAL",
17
+ PUBLIC = "PUBLIC"
18
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionPriceReferenceEnum = void 0;
4
+ /**
5
+ * Contra qué precio se evalúa la mecánica de una categoría.
6
+ *
7
+ * ⚠️ En el primer corte las tres resuelven contra el mismo número: la venta trae UN precio
8
+ * (`equipmentPriceCents`, con `amountCents` de respaldo). Se modela porque el plan de Jaime lo
9
+ * declara por categoría y borrarlo obligaría a migrar los snapshots cuando lleguen los tres precios.
10
+ *
11
+ * LIST - Precio de lista.
12
+ * FINAL - Precio final cobrado.
13
+ * PUBLIC - Precio público sugerido.
14
+ *
15
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
16
+ */
17
+ var CommissionPriceReferenceEnum;
18
+ (function (CommissionPriceReferenceEnum) {
19
+ CommissionPriceReferenceEnum["LIST"] = "LIST";
20
+ CommissionPriceReferenceEnum["FINAL"] = "FINAL";
21
+ CommissionPriceReferenceEnum["PUBLIC"] = "PUBLIC";
22
+ })(CommissionPriceReferenceEnum || (exports.CommissionPriceReferenceEnum = CommissionPriceReferenceEnum = {}));
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Qué se mide para evaluar la cuota.
3
+ *
4
+ * UNITS - Piezas vendidas en el periodo.
5
+ * SK_AMOUNT - Monto vendido, contando SOLO las ventas con financiera SUREKEEP.
6
+ *
7
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
8
+ */
9
+ export declare enum CommissionQuotaMeasureEnum {
10
+ UNITS = "UNITS",
11
+ SK_AMOUNT = "SK_AMOUNT"
12
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionQuotaMeasureEnum = void 0;
4
+ /**
5
+ * Qué se mide para evaluar la cuota.
6
+ *
7
+ * UNITS - Piezas vendidas en el periodo.
8
+ * SK_AMOUNT - Monto vendido, contando SOLO las ventas con financiera SUREKEEP.
9
+ *
10
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
11
+ */
12
+ var CommissionQuotaMeasureEnum;
13
+ (function (CommissionQuotaMeasureEnum) {
14
+ CommissionQuotaMeasureEnum["UNITS"] = "UNITS";
15
+ CommissionQuotaMeasureEnum["SK_AMOUNT"] = "SK_AMOUNT";
16
+ })(CommissionQuotaMeasureEnum || (exports.CommissionQuotaMeasureEnum = CommissionQuotaMeasureEnum = {}));
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Cómo se aplica la cuota al alcanzarse.
3
+ *
4
+ * Queda con un solo valor A PROPÓSITO: es un campo enumerable del dominio, no un flag. Guardarlo
5
+ * como booleano obligaría a migrar los snapshots el día que aparezca un modo prospectivo.
6
+ *
7
+ * RETROACTIVE - Aplica a TODO lo devengado en el periodo, no solo a lo que vino después.
8
+ *
9
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
10
+ */
11
+ export declare enum CommissionQuotaModeEnum {
12
+ RETROACTIVE = "RETROACTIVE"
13
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionQuotaModeEnum = void 0;
4
+ /**
5
+ * Cómo se aplica la cuota al alcanzarse.
6
+ *
7
+ * Queda con un solo valor A PROPÓSITO: es un campo enumerable del dominio, no un flag. Guardarlo
8
+ * como booleano obligaría a migrar los snapshots el día que aparezca un modo prospectivo.
9
+ *
10
+ * RETROACTIVE - Aplica a TODO lo devengado en el periodo, no solo a lo que vino después.
11
+ *
12
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
13
+ */
14
+ var CommissionQuotaModeEnum;
15
+ (function (CommissionQuotaModeEnum) {
16
+ CommissionQuotaModeEnum["RETROACTIVE"] = "RETROACTIVE";
17
+ })(CommissionQuotaModeEnum || (exports.CommissionQuotaModeEnum = CommissionQuotaModeEnum = {}));
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Sobre quién se acumula la cuota.
3
+ *
4
+ * SELLER - Por vendedor. Único implementado en el primer corte.
5
+ * STORE - Por tienda: la alcanza el equipo completo.
6
+ *
7
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
8
+ */
9
+ export declare enum CommissionQuotaSubjectEnum {
10
+ SELLER = "SELLER",
11
+ STORE = "STORE"
12
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommissionQuotaSubjectEnum = void 0;
4
+ /**
5
+ * Sobre quién se acumula la cuota.
6
+ *
7
+ * SELLER - Por vendedor. Único implementado en el primer corte.
8
+ * STORE - Por tienda: la alcanza el equipo completo.
9
+ *
10
+ * SureKeep Fase 3 — pista Retail. Motor de comisiones de VentasLuga.
11
+ */
12
+ var CommissionQuotaSubjectEnum;
13
+ (function (CommissionQuotaSubjectEnum) {
14
+ CommissionQuotaSubjectEnum["SELLER"] = "SELLER";
15
+ CommissionQuotaSubjectEnum["STORE"] = "STORE";
16
+ })(CommissionQuotaSubjectEnum || (exports.CommissionQuotaSubjectEnum = CommissionQuotaSubjectEnum = {}));