@fiado/type-kit 3.376.0 → 3.378.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.
- package/bin/collection/dtos/CollectRequest.d.ts +1 -1
- package/bin/collection/dtos/CollectRequest.js +1 -1
- package/bin/collection/dtos/CollectionIntentSummaryDto.d.ts +1 -1
- package/bin/collection/dtos/CollectionIntentSummaryDto.js +1 -1
- package/bin/collection/dtos/MoneyInEvent.d.ts +1 -1
- package/bin/collection/dtos/MoneyInEvent.js +1 -1
- package/bin/collection/dtos/PendingChargeDto.d.ts +1 -1
- package/bin/collection/dtos/PendingChargeDto.js +1 -1
- package/bin/collection/dtos/RegisterCollectibleRequest.d.ts +20 -1
- package/bin/collection/dtos/RegisterCollectibleRequest.js +8 -1
- package/bin/collection/dtos/ResolvePendingChargesRequest.d.ts +1 -1
- package/bin/collection/dtos/ResolvePendingChargesRequest.js +1 -1
- package/bin/loanOfferings/dtos/responses/SimulationResultResponse.d.ts +19 -0
- package/bin/loanOfferings/dtos/responses/StorePolicyResponse.d.ts +3 -0
- package/package.json +1 -1
- package/src/collection/dtos/CollectRequest.ts +1 -1
- package/src/collection/dtos/CollectionIntentSummaryDto.ts +1 -1
- package/src/collection/dtos/MoneyInEvent.ts +1 -1
- package/src/collection/dtos/PendingChargeDto.ts +1 -1
- package/src/collection/dtos/RegisterCollectibleRequest.ts +24 -1
- package/src/collection/dtos/ResolvePendingChargesRequest.ts +1 -1
- package/src/loanOfferings/dtos/responses/SimulationResultResponse.ts +20 -0
- package/src/loanOfferings/dtos/responses/StorePolicyResponse.ts +3 -0
|
@@ -17,7 +17,7 @@ exports.CollectRequest = CollectRequest;
|
|
|
17
17
|
__decorate([
|
|
18
18
|
(0, class_validator_1.IsString)(),
|
|
19
19
|
__metadata("design:type", String)
|
|
20
|
-
], CollectRequest.prototype, "
|
|
20
|
+
], CollectRequest.prototype, "directoryId", void 0);
|
|
21
21
|
__decorate([
|
|
22
22
|
(0, class_validator_1.IsString)(),
|
|
23
23
|
__metadata("design:type", String)
|
|
@@ -3,7 +3,7 @@ import { SagaStep } from '../enums/SagaStep';
|
|
|
3
3
|
/** Fila de listado de intents para el backoffice de monitoreo del motor de cobro. */
|
|
4
4
|
export declare class CollectionIntentSummaryDto {
|
|
5
5
|
intentId: string;
|
|
6
|
-
|
|
6
|
+
directoryId: string;
|
|
7
7
|
tenantId: string;
|
|
8
8
|
domain: string;
|
|
9
9
|
chargeId: string;
|
|
@@ -24,7 +24,7 @@ __decorate([
|
|
|
24
24
|
__decorate([
|
|
25
25
|
(0, class_validator_1.IsString)(),
|
|
26
26
|
__metadata("design:type", String)
|
|
27
|
-
], CollectionIntentSummaryDto.prototype, "
|
|
27
|
+
], CollectionIntentSummaryDto.prototype, "directoryId", void 0);
|
|
28
28
|
__decorate([
|
|
29
29
|
(0, class_validator_1.IsString)(),
|
|
30
30
|
__metadata("design:type", String)
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
*/
|
|
11
11
|
export declare class MoneyInEvent {
|
|
12
12
|
/** Titular que recibió el dinero. */
|
|
13
|
-
|
|
13
|
+
directoryId: string;
|
|
14
14
|
/**
|
|
15
15
|
* Tenant a quien le interesa el ingreso, cuando quien publica lo sabe. Casi nunca lo sabe: la
|
|
16
16
|
* wallet es de la persona, no de un tenant, y varios pueden estar esperando el mismo saldo. El
|
|
@@ -27,7 +27,7 @@ exports.MoneyInEvent = MoneyInEvent;
|
|
|
27
27
|
__decorate([
|
|
28
28
|
(0, class_validator_1.IsString)(),
|
|
29
29
|
__metadata("design:type", String)
|
|
30
|
-
], MoneyInEvent.prototype, "
|
|
30
|
+
], MoneyInEvent.prototype, "directoryId", void 0);
|
|
31
31
|
__decorate([
|
|
32
32
|
(0, class_validator_1.IsOptional)(),
|
|
33
33
|
(0, class_validator_1.IsString)(),
|
|
@@ -22,7 +22,7 @@ __decorate([
|
|
|
22
22
|
__decorate([
|
|
23
23
|
(0, class_validator_1.IsString)(),
|
|
24
24
|
__metadata("design:type", String)
|
|
25
|
-
], PendingChargeDto.prototype, "
|
|
25
|
+
], PendingChargeDto.prototype, "directoryId", void 0);
|
|
26
26
|
__decorate([
|
|
27
27
|
(0, class_validator_1.IsString)(),
|
|
28
28
|
__metadata("design:type", String)
|
|
@@ -1,7 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Alta de un cargo cobrable: el dominio avisa de que hay algo que cobrar y el motor se encarga de
|
|
3
|
+
* perseguirlo — lo intenta, espera fondos si no hay saldo, y reintenta en cuanto entra dinero.
|
|
4
|
+
*
|
|
5
|
+
* No lleva importe a propósito. Cuánto se debe se le pregunta al dominio al ir a cobrar, porque
|
|
6
|
+
* entre el alta y el cobro puede correr mora o el cliente puede haber pagado por otra vía.
|
|
7
|
+
*/
|
|
1
8
|
export declare class RegisterCollectibleRequest {
|
|
2
|
-
|
|
9
|
+
/** Titular de la deuda. */
|
|
10
|
+
directoryId: string;
|
|
11
|
+
/** La SOFOM dueña de la cartera. Junto con `productId` resuelve la configuración de cobro. */
|
|
3
12
|
tenantId: string;
|
|
13
|
+
/** Quién es el dueño de la deuda (`surekeep-retail`). Rutea las consultas de vuelta al dominio. */
|
|
4
14
|
domain: string;
|
|
15
|
+
/** Configuración de cobro a aplicar: de qué cuentas se cobra, en qué orden y con qué mecanismo. */
|
|
5
16
|
productId: string;
|
|
17
|
+
/**
|
|
18
|
+
* La llave del cargo, la que use el dominio. El motor no la interpreta: la trata como opaca y la
|
|
19
|
+
* concatena con `domain` para identificar el cobro.
|
|
20
|
+
*
|
|
21
|
+
* Tiene que ser ÚNICA por cargo cobrable y ESTABLE — el mismo valor al darlo de alta, al responder
|
|
22
|
+
* qué se debe y al darlo de baja. Dos cargos que compartan esta llave son, para el motor, el mismo
|
|
23
|
+
* cobro. Si un cargo se puede cobrar más de una vez, el ciclo va codificado aquí dentro.
|
|
24
|
+
*/
|
|
6
25
|
chargeId: string;
|
|
7
26
|
}
|
|
@@ -11,13 +11,20 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.RegisterCollectibleRequest = void 0;
|
|
13
13
|
const class_validator_1 = require("class-validator");
|
|
14
|
+
/**
|
|
15
|
+
* Alta de un cargo cobrable: el dominio avisa de que hay algo que cobrar y el motor se encarga de
|
|
16
|
+
* perseguirlo — lo intenta, espera fondos si no hay saldo, y reintenta en cuanto entra dinero.
|
|
17
|
+
*
|
|
18
|
+
* No lleva importe a propósito. Cuánto se debe se le pregunta al dominio al ir a cobrar, porque
|
|
19
|
+
* entre el alta y el cobro puede correr mora o el cliente puede haber pagado por otra vía.
|
|
20
|
+
*/
|
|
14
21
|
class RegisterCollectibleRequest {
|
|
15
22
|
}
|
|
16
23
|
exports.RegisterCollectibleRequest = RegisterCollectibleRequest;
|
|
17
24
|
__decorate([
|
|
18
25
|
(0, class_validator_1.IsString)(),
|
|
19
26
|
__metadata("design:type", String)
|
|
20
|
-
], RegisterCollectibleRequest.prototype, "
|
|
27
|
+
], RegisterCollectibleRequest.prototype, "directoryId", void 0);
|
|
21
28
|
__decorate([
|
|
22
29
|
(0, class_validator_1.IsString)(),
|
|
23
30
|
__metadata("design:type", String)
|
|
@@ -28,7 +28,7 @@ __decorate([
|
|
|
28
28
|
__decorate([
|
|
29
29
|
(0, class_validator_1.IsString)(),
|
|
30
30
|
__metadata("design:type", String)
|
|
31
|
-
], ResolvePendingChargesRequest.prototype, "
|
|
31
|
+
], ResolvePendingChargesRequest.prototype, "directoryId", void 0);
|
|
32
32
|
__decorate([
|
|
33
33
|
(0, class_validator_1.IsString)(),
|
|
34
34
|
__metadata("design:type", String)
|
|
@@ -27,6 +27,21 @@ export interface AppliedPromotionResponse {
|
|
|
27
27
|
/** Palancas del plan que la promoción pisó. */
|
|
28
28
|
appliedEffects: PromotionEffectKindEnum[];
|
|
29
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* Cotas con las que se cotizó de verdad, ya pisadas por la promoción y las políticas. NO son las
|
|
32
|
+
* del plan: una promoción puede bajar el enganche mínimo o subir el techo de monto.
|
|
33
|
+
*
|
|
34
|
+
* El wizard dibuja el control del enganche con estas, no con las del plan. Sin ellas el vendedor
|
|
35
|
+
* ve un mínimo que el motor ya no exige, y la palanca de enganche queda inalcanzable.
|
|
36
|
+
*/
|
|
37
|
+
export interface EffectiveTermsResponse {
|
|
38
|
+
/** Enganche mínimo exigible, en decimal sobre 1 (`0.10` = 10%). */
|
|
39
|
+
minDownPaymentPct: number;
|
|
40
|
+
/** Tope de enganche, o `null` si el plan no lo acota. */
|
|
41
|
+
maxDownPaymentPct: number | null;
|
|
42
|
+
/** Techo de capital financiable. */
|
|
43
|
+
maxFinancedAmountCents: number;
|
|
44
|
+
}
|
|
30
45
|
/**
|
|
31
46
|
* Resultado del simulador de cuota (POST /private/credit-plans/:planId/simulate,
|
|
32
47
|
* GET /credit-plans/:planId/simulator). Amortización francesa + IVA 16% + comisión de apertura + CAT.
|
|
@@ -65,4 +80,8 @@ export interface SimulationResultResponse {
|
|
|
65
80
|
* alcanzó la venta, y ausente si el lambda todavía no lo emite.
|
|
66
81
|
*/
|
|
67
82
|
provenance?: PlanTermProvenance;
|
|
83
|
+
/**
|
|
84
|
+
* Las cotas efectivas de ESTA cotización. Ausente si el lambda todavía no las emite.
|
|
85
|
+
*/
|
|
86
|
+
effectiveTerms?: EffectiveTermsResponse;
|
|
68
87
|
}
|
|
@@ -6,6 +6,9 @@ export type PlanTermLayer = 'PLAN' | 'EASING' | 'PROMOTION' | 'HARDENING';
|
|
|
6
6
|
/**
|
|
7
7
|
* Cadena de capas que tocaron cada término, no una capa única: una palanca puede registrarse como
|
|
8
8
|
* aplicada y quedar pisada después. Va vacío (`{}`) si ninguna política alcanzó la venta.
|
|
9
|
+
*
|
|
10
|
+
* NO es la auditoría completa del cálculo: con una promoción aplicada y cero políticas va vacío
|
|
11
|
+
* igual. Una promoción se audita por `appliedPromotion`, que es su canal propio.
|
|
9
12
|
*/
|
|
10
13
|
export type PlanTermProvenance = Record<string, PlanTermLayer[]>;
|
|
11
14
|
/** Palancas que ENDURECEN. Se pliegan con `max` sobre pisos y `min` sobre techos. */
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@ import { SagaStep } from '../enums/SagaStep';
|
|
|
5
5
|
/** Fila de listado de intents para el backoffice de monitoreo del motor de cobro. */
|
|
6
6
|
export class CollectionIntentSummaryDto {
|
|
7
7
|
@IsString() intentId!: string;
|
|
8
|
-
@IsString()
|
|
8
|
+
@IsString() directoryId!: string;
|
|
9
9
|
@IsString() tenantId!: string;
|
|
10
10
|
@IsString() domain!: string;
|
|
11
11
|
@IsString() chargeId!: string;
|
|
@@ -12,7 +12,7 @@ import { IsNumber, IsOptional, IsString } from 'class-validator';
|
|
|
12
12
|
*/
|
|
13
13
|
export class MoneyInEvent {
|
|
14
14
|
/** Titular que recibió el dinero. */
|
|
15
|
-
@IsString()
|
|
15
|
+
@IsString() directoryId!: string;
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
18
|
* Tenant a quien le interesa el ingreso, cuando quien publica lo sabe. Casi nunca lo sabe: la
|
|
@@ -3,7 +3,7 @@ import { CurrencyId } from '../../currency/enums/CurrencyId';
|
|
|
3
3
|
|
|
4
4
|
export class PendingChargeDto {
|
|
5
5
|
@IsString() chargeId!: string; // record_id / INSTALLMENT#n
|
|
6
|
-
@IsString()
|
|
6
|
+
@IsString() directoryId!: string;
|
|
7
7
|
@IsString() tenantId!: string; // FIADO | surekeep
|
|
8
8
|
@IsString() domain!: string; // une-credit | surekeep-retail
|
|
9
9
|
@IsString() parentDebtId!: string; // credit_id / CREDIT#id
|
|
@@ -1,9 +1,32 @@
|
|
|
1
1
|
import { IsString } from 'class-validator';
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* Alta de un cargo cobrable: el dominio avisa de que hay algo que cobrar y el motor se encarga de
|
|
5
|
+
* perseguirlo — lo intenta, espera fondos si no hay saldo, y reintenta en cuanto entra dinero.
|
|
6
|
+
*
|
|
7
|
+
* No lleva importe a propósito. Cuánto se debe se le pregunta al dominio al ir a cobrar, porque
|
|
8
|
+
* entre el alta y el cobro puede correr mora o el cliente puede haber pagado por otra vía.
|
|
9
|
+
*/
|
|
3
10
|
export class RegisterCollectibleRequest {
|
|
4
|
-
|
|
11
|
+
/** Titular de la deuda. */
|
|
12
|
+
@IsString() directoryId!: string;
|
|
13
|
+
|
|
14
|
+
/** La SOFOM dueña de la cartera. Junto con `productId` resuelve la configuración de cobro. */
|
|
5
15
|
@IsString() tenantId!: string;
|
|
16
|
+
|
|
17
|
+
/** Quién es el dueño de la deuda (`surekeep-retail`). Rutea las consultas de vuelta al dominio. */
|
|
6
18
|
@IsString() domain!: string;
|
|
19
|
+
|
|
20
|
+
/** Configuración de cobro a aplicar: de qué cuentas se cobra, en qué orden y con qué mecanismo. */
|
|
7
21
|
@IsString() productId!: string;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* La llave del cargo, la que use el dominio. El motor no la interpreta: la trata como opaca y la
|
|
25
|
+
* concatena con `domain` para identificar el cobro.
|
|
26
|
+
*
|
|
27
|
+
* Tiene que ser ÚNICA por cargo cobrable y ESTABLE — el mismo valor al darlo de alta, al responder
|
|
28
|
+
* qué se debe y al darlo de baja. Dos cargos que compartan esta llave son, para el motor, el mismo
|
|
29
|
+
* cobro. Si un cargo se puede cobrar más de una vez, el ciclo va codificado aquí dentro.
|
|
30
|
+
*/
|
|
8
31
|
@IsString() chargeId!: string;
|
|
9
32
|
}
|
|
@@ -30,6 +30,22 @@ export interface AppliedPromotionResponse {
|
|
|
30
30
|
appliedEffects: PromotionEffectKindEnum[];
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
+
/**
|
|
34
|
+
* Cotas con las que se cotizó de verdad, ya pisadas por la promoción y las políticas. NO son las
|
|
35
|
+
* del plan: una promoción puede bajar el enganche mínimo o subir el techo de monto.
|
|
36
|
+
*
|
|
37
|
+
* El wizard dibuja el control del enganche con estas, no con las del plan. Sin ellas el vendedor
|
|
38
|
+
* ve un mínimo que el motor ya no exige, y la palanca de enganche queda inalcanzable.
|
|
39
|
+
*/
|
|
40
|
+
export interface EffectiveTermsResponse {
|
|
41
|
+
/** Enganche mínimo exigible, en decimal sobre 1 (`0.10` = 10%). */
|
|
42
|
+
minDownPaymentPct: number;
|
|
43
|
+
/** Tope de enganche, o `null` si el plan no lo acota. */
|
|
44
|
+
maxDownPaymentPct: number | null;
|
|
45
|
+
/** Techo de capital financiable. */
|
|
46
|
+
maxFinancedAmountCents: number;
|
|
47
|
+
}
|
|
48
|
+
|
|
33
49
|
/**
|
|
34
50
|
* Resultado del simulador de cuota (POST /private/credit-plans/:planId/simulate,
|
|
35
51
|
* GET /credit-plans/:planId/simulator). Amortización francesa + IVA 16% + comisión de apertura + CAT.
|
|
@@ -68,4 +84,8 @@ export interface SimulationResultResponse {
|
|
|
68
84
|
* alcanzó la venta, y ausente si el lambda todavía no lo emite.
|
|
69
85
|
*/
|
|
70
86
|
provenance?: PlanTermProvenance;
|
|
87
|
+
/**
|
|
88
|
+
* Las cotas efectivas de ESTA cotización. Ausente si el lambda todavía no las emite.
|
|
89
|
+
*/
|
|
90
|
+
effectiveTerms?: EffectiveTermsResponse;
|
|
71
91
|
}
|
|
@@ -8,6 +8,9 @@ export type PlanTermLayer = 'PLAN' | 'EASING' | 'PROMOTION' | 'HARDENING';
|
|
|
8
8
|
/**
|
|
9
9
|
* Cadena de capas que tocaron cada término, no una capa única: una palanca puede registrarse como
|
|
10
10
|
* aplicada y quedar pisada después. Va vacío (`{}`) si ninguna política alcanzó la venta.
|
|
11
|
+
*
|
|
12
|
+
* NO es la auditoría completa del cálculo: con una promoción aplicada y cero políticas va vacío
|
|
13
|
+
* igual. Una promoción se audita por `appliedPromotion`, que es su canal propio.
|
|
11
14
|
*/
|
|
12
15
|
export type PlanTermProvenance = Record<string, PlanTermLayer[]>;
|
|
13
16
|
|