@fiado/type-kit 3.456.0 → 3.458.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 (96) hide show
  1. package/_test_/unit/benefitCenter/benefitSuiteConfig.test.ts +58 -0
  2. package/_test_/unit/emailVerification/dtos/EmailSetTrustedRequest.test.ts +53 -0
  3. package/_test_/unit/emailVerification/enums/EmailTypeEnum.test.ts +12 -0
  4. package/_test_/unit/loanCredit/customerReadDtos.test.ts +71 -0
  5. package/_test_/unit/retailLoanConnector/contract.test.ts +79 -0
  6. package/bin/benefitCenter/dtos/BenefitCreateRequest.d.ts +3 -0
  7. package/bin/benefitCenter/dtos/BenefitCreateRequest.js +7 -0
  8. package/bin/benefitCenter/dtos/BenefitSuiteConfigRequest.d.ts +8 -0
  9. package/bin/benefitCenter/dtos/BenefitSuiteConfigRequest.js +26 -0
  10. package/bin/benefitCenter/dtos/BenefitSuiteResponse.d.ts +16 -0
  11. package/bin/benefitCenter/dtos/BenefitSuiteResponse.js +2 -0
  12. package/bin/benefitCenter/dtos/BenefitUpdateRequest.d.ts +3 -0
  13. package/bin/benefitCenter/dtos/BenefitUpdateRequest.js +7 -0
  14. package/bin/benefitCenter/index.d.ts +2 -0
  15. package/bin/benefitCenter/index.js +3 -0
  16. package/bin/emailVerification/dtos/EmailItem.d.ts +2 -0
  17. package/bin/emailVerification/dtos/EmailItem.js +5 -0
  18. package/bin/emailVerification/dtos/EmailSetTrustedRequest.d.ts +10 -0
  19. package/bin/emailVerification/dtos/EmailSetTrustedRequest.js +37 -0
  20. package/bin/emailVerification/dtos/EmailSetTrustedResponse.d.ts +9 -0
  21. package/bin/emailVerification/dtos/EmailSetTrustedResponse.js +32 -0
  22. package/bin/emailVerification/enums/EmailTypeEnum.d.ts +9 -0
  23. package/bin/emailVerification/enums/EmailTypeEnum.js +13 -0
  24. package/bin/emailVerification/index.d.ts +3 -0
  25. package/bin/emailVerification/index.js +3 -0
  26. package/bin/index.d.ts +1 -0
  27. package/bin/index.js +4 -1
  28. package/bin/loanCredit/dtos/responses/CreditSaleContext.d.ts +31 -0
  29. package/bin/loanCredit/dtos/responses/CreditSaleContext.js +2 -0
  30. package/bin/loanCredit/dtos/responses/LoanBorrowerCreditItem.d.ts +17 -0
  31. package/bin/loanCredit/dtos/responses/LoanBorrowerCreditItem.js +2 -0
  32. package/bin/loanCredit/dtos/responses/LoanContractDownloadUrl.d.ts +9 -0
  33. package/bin/loanCredit/dtos/responses/LoanContractDownloadUrl.js +2 -0
  34. package/bin/loanCredit/dtos/responses/LoanCreditDetail.d.ts +21 -0
  35. package/bin/loanCredit/dtos/responses/LoanCreditDetail.js +2 -0
  36. package/bin/loanCredit/dtos/responses/LoanPaymentListItem.d.ts +32 -0
  37. package/bin/loanCredit/dtos/responses/LoanPaymentListItem.js +2 -0
  38. package/bin/loanCredit/index.d.ts +5 -0
  39. package/bin/loanCredit/index.js +6 -0
  40. package/bin/retailLoanConnector/dtos/MyCreditDetail.d.ts +20 -0
  41. package/bin/retailLoanConnector/dtos/MyCreditDetail.js +2 -0
  42. package/bin/retailLoanConnector/dtos/MyCreditSummary.d.ts +29 -0
  43. package/bin/retailLoanConnector/dtos/MyCreditSummary.js +2 -0
  44. package/bin/retailLoanConnector/dtos/MyDocument.d.ts +21 -0
  45. package/bin/retailLoanConnector/dtos/MyDocument.js +2 -0
  46. package/bin/retailLoanConnector/dtos/MyDocumentUrl.d.ts +5 -0
  47. package/bin/retailLoanConnector/dtos/MyDocumentUrl.js +2 -0
  48. package/bin/retailLoanConnector/dtos/MyInstallment.d.ts +16 -0
  49. package/bin/retailLoanConnector/dtos/MyInstallment.js +2 -0
  50. package/bin/retailLoanConnector/dtos/MyPayment.d.ts +20 -0
  51. package/bin/retailLoanConnector/dtos/MyPayment.js +2 -0
  52. package/bin/retailLoanConnector/enums/MyDocumentGroupIdEnum.d.ts +5 -0
  53. package/bin/retailLoanConnector/enums/MyDocumentGroupIdEnum.js +9 -0
  54. package/bin/retailLoanConnector/enums/MyDocumentKindEnum.d.ts +4 -0
  55. package/bin/retailLoanConnector/enums/MyDocumentKindEnum.js +8 -0
  56. package/bin/retailLoanConnector/enums/MyDocumentStatusEnum.d.ts +5 -0
  57. package/bin/retailLoanConnector/enums/MyDocumentStatusEnum.js +9 -0
  58. package/bin/retailLoanConnector/enums/MyInstallmentDisplayStatusEnum.d.ts +7 -0
  59. package/bin/retailLoanConnector/enums/MyInstallmentDisplayStatusEnum.js +11 -0
  60. package/bin/retailLoanConnector/enums/MyPaymentFrequencyEnum.d.ts +4 -0
  61. package/bin/retailLoanConnector/enums/MyPaymentFrequencyEnum.js +8 -0
  62. package/bin/retailLoanConnector/enums/MyPaymentMethodEnum.d.ts +7 -0
  63. package/bin/retailLoanConnector/enums/MyPaymentMethodEnum.js +11 -0
  64. package/bin/retailLoanConnector/index.d.ts +12 -0
  65. package/bin/retailLoanConnector/index.js +30 -0
  66. package/package.json +1 -1
  67. package/src/benefitCenter/dtos/BenefitCreateRequest.ts +7 -0
  68. package/src/benefitCenter/dtos/BenefitSuiteConfigRequest.ts +12 -0
  69. package/src/benefitCenter/dtos/BenefitSuiteResponse.ts +17 -0
  70. package/src/benefitCenter/dtos/BenefitUpdateRequest.ts +7 -0
  71. package/src/benefitCenter/index.ts +3 -0
  72. package/src/emailVerification/dtos/EmailItem.ts +4 -0
  73. package/src/emailVerification/dtos/EmailSetTrustedRequest.ts +21 -0
  74. package/src/emailVerification/dtos/EmailSetTrustedResponse.ts +16 -0
  75. package/src/emailVerification/enums/EmailTypeEnum.ts +9 -0
  76. package/src/emailVerification/index.ts +3 -0
  77. package/src/index.ts +4 -0
  78. package/src/loanCredit/dtos/responses/CreditSaleContext.ts +44 -0
  79. package/src/loanCredit/dtos/responses/LoanBorrowerCreditItem.ts +18 -0
  80. package/src/loanCredit/dtos/responses/LoanContractDownloadUrl.ts +10 -0
  81. package/src/loanCredit/dtos/responses/LoanCreditDetail.ts +22 -0
  82. package/src/loanCredit/dtos/responses/LoanPaymentListItem.ts +34 -0
  83. package/src/loanCredit/index.ts +6 -0
  84. package/src/retailLoanConnector/dtos/MyCreditDetail.ts +22 -0
  85. package/src/retailLoanConnector/dtos/MyCreditSummary.ts +32 -0
  86. package/src/retailLoanConnector/dtos/MyDocument.ts +23 -0
  87. package/src/retailLoanConnector/dtos/MyDocumentUrl.ts +5 -0
  88. package/src/retailLoanConnector/dtos/MyInstallment.ts +17 -0
  89. package/src/retailLoanConnector/dtos/MyPayment.ts +22 -0
  90. package/src/retailLoanConnector/enums/MyDocumentGroupIdEnum.ts +5 -0
  91. package/src/retailLoanConnector/enums/MyDocumentKindEnum.ts +4 -0
  92. package/src/retailLoanConnector/enums/MyDocumentStatusEnum.ts +5 -0
  93. package/src/retailLoanConnector/enums/MyInstallmentDisplayStatusEnum.ts +7 -0
  94. package/src/retailLoanConnector/enums/MyPaymentFrequencyEnum.ts +4 -0
  95. package/src/retailLoanConnector/enums/MyPaymentMethodEnum.ts +7 -0
  96. package/src/retailLoanConnector/index.ts +15 -0
@@ -0,0 +1,16 @@
1
+ import { Expose } from 'class-transformer';
2
+ import { EmailTypeEnum } from '../enums/EmailTypeEnum';
3
+
4
+ /**
5
+ * Respuesta al registrar un correo como confiable.
6
+ */
7
+ export class EmailSetTrustedResponse {
8
+ @Expose()
9
+ email!: string;
10
+
11
+ @Expose()
12
+ type!: EmailTypeEnum;
13
+
14
+ @Expose()
15
+ isVerified!: boolean;
16
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Origen del correo asociado a un directorio.
3
+ * PERSONAL: correo particular del titular.
4
+ * CORPORATE: correo institucional/empresarial del titular.
5
+ */
6
+ export enum EmailTypeEnum {
7
+ PERSONAL = 'PERSONAL',
8
+ CORPORATE = 'CORPORATE',
9
+ }
@@ -1,5 +1,6 @@
1
1
  export * from './enums/EmailVerificationStatusEnum';
2
2
  export * from './enums/EmailLinkExpirationReasonEnum';
3
+ export * from './enums/EmailTypeEnum';
3
4
  export * from './dtos/EmailVerificationStartRequest';
4
5
  export * from './dtos/EmailVerificationStartResponse';
5
6
  export * from './dtos/EmailVerificationResendRequest';
@@ -10,6 +11,8 @@ export * from './dtos/EmailItem';
10
11
  export * from './dtos/EmailListResponse';
11
12
  export * from './dtos/EmailSetPrincipalRequest';
12
13
  export * from './dtos/EmailSetPrincipalResponse';
14
+ export * from './dtos/EmailSetTrustedRequest';
15
+ export * from './dtos/EmailSetTrustedResponse';
13
16
  export * from './dtos/EmailDeleteRequest';
14
17
  export * from './dtos/EmailDeleteResponse';
15
18
  export * from './dtos/EmailConfirmRequest';
package/src/index.ts CHANGED
@@ -178,3 +178,7 @@ export * as WebhookBusiness from './webhookBusiness';
178
178
  // (MembershipDirectoryUser_GT). Espeja al dominio `services`, que modela lo mismo para
179
179
  // servicios de terceros.
180
180
  export * as Membership from './membership';
181
+
182
+ // RetailLoanConnector: contrato público de retail-loan-connector (I1), la puerta de la App Fiado
183
+ // hacia las suites FiadoLend/FiadoRetail. Montos en pesos; el conector convierte desde centavos.
184
+ export * as RetailLoanConnector from './retailLoanConnector';
@@ -0,0 +1,44 @@
1
+ import { WizardSessionLookupStatusEnum } from '../../../retailWizard/enums/WizardSessionLookupStatusEnum';
2
+
3
+ /**
4
+ * Por qué una columna del contexto de venta salió sin dato. Catálogo CERRADO y propio: nunca
5
+ * repite el mensaje del lambda vecino, que puede traer datos que este silo no controla.
6
+ */
7
+ export type SaleContextReason =
8
+ | 'CREDIT_WITHOUT_WIZARD_SESSION'
9
+ | 'WIZARD_LOOKUP_FAILED'
10
+ | 'BORROWER_LOOKUP_FAILED'
11
+ | 'BORROWER_NOT_FOUND'
12
+ | 'CUSTOMER_ANCHOR_MISSING'
13
+ | 'CUSTOMER_NAME_LOOKUP_FAILED'
14
+ | 'CUSTOMER_NOT_FOUND'
15
+ | 'CUSTOMER_WITHOUT_NAME'
16
+ | 'STORE_ROSTER_FAILED'
17
+ | 'STORE_NOT_IN_ROSTER'
18
+ | 'RETAILER_UNKNOWN';
19
+
20
+ /**
21
+ * Cliente, equipo y tienda de la venta que originó el crédito (loan-credit-business). Son CUATRO
22
+ * lecturas y cada una lleva su estado: `status` es el del lote al wizard (gobierna las columnas del
23
+ * equipo), `retailCustomerStatus` el del ancla del cliente, `customerNameStatus` el de su nombre y
24
+ * `storeNameStatus` el del nombre de la tienda. `NOT_FOUND` y `UNAVAILABLE` NUNCA se colapsan.
25
+ */
26
+ export interface CreditSaleContext {
27
+ status: WizardSessionLookupStatusEnum;
28
+ reason?: SaleContextReason;
29
+ retailCustomerId: string | null;
30
+ retailCustomerStatus: WizardSessionLookupStatusEnum;
31
+ retailCustomerReason?: SaleContextReason;
32
+ /** PII: nunca se loguea. */
33
+ customerName: string | null;
34
+ customerNameStatus: WizardSessionLookupStatusEnum;
35
+ customerNameReason?: SaleContextReason;
36
+ productBrand: string | null;
37
+ productModel: string | null;
38
+ productCapacity: string | null;
39
+ retailerId: string | null;
40
+ storeId: string | null;
41
+ storeName: string | null;
42
+ storeNameStatus: WizardSessionLookupStatusEnum;
43
+ storeNameReason?: SaleContextReason;
44
+ }
@@ -0,0 +1,18 @@
1
+ import { LoanCreditResponse } from './LoanCreditResponse';
2
+ import { CreditSaleContext } from './CreditSaleContext';
3
+
4
+ /**
5
+ * Un crédito de un acreditado (loan-credit-business): el `LoanCreditResponse` MÁS las cifras de su
6
+ * plan y el contexto de su venta. Montos en cents · instantes ISO-8601 · dueDates `YYYY-MM-DD`.
7
+ */
8
+ export interface LoanBorrowerCreditItem extends LoanCreditResponse {
9
+ /** Cupones cubiertos: pagados y pagados por adelantado. La reestructurada no cuenta. */
10
+ paidInstallments: number;
11
+ /** `null` = no aplica (el crédito se canceló o caducó); `0` = ya no debe nada. */
12
+ outstandingBalanceCents: number | null;
13
+ /** Días desde el vencimiento impago más viejo; `0` al día; `null` si no hay atraso que medir. */
14
+ overdueDays: number | null;
15
+ /** Suma del TOTAL de las cuotas vencidas impagas. Sigue a `overdueDays` en `null`/`0`. */
16
+ overdueAmountCents: number | null;
17
+ saleContext: CreditSaleContext;
18
+ }
@@ -0,0 +1,10 @@
1
+ import { ContractTypeEnum } from '../../enums/ContractTypeEnum';
2
+
3
+ /** Enlace prefirmado y temporal del PDF de un contrato. `expiresAt` en ISO-8601. */
4
+ export interface LoanContractDownloadUrl {
5
+ contractId: string;
6
+ creditId: string;
7
+ type: ContractTypeEnum;
8
+ url: string;
9
+ expiresAt: string;
10
+ }
@@ -0,0 +1,22 @@
1
+ import { SaleFinancierEnum } from '../../../retailWizard/enums/SaleFinancierEnum';
2
+ import { LoanCreditResponse } from './LoanCreditResponse';
3
+ import { CreditSaleContext } from './CreditSaleContext';
4
+
5
+ /**
6
+ * Detalle de UN crédito (loan-credit-business): el `LoanCreditResponse` MÁS las cifras de su plan,
7
+ * el equipo y el contexto de su venta. Montos en cents · instantes ISO-8601.
8
+ */
9
+ export interface LoanCreditDetail extends LoanCreditResponse {
10
+ /** SKU del equipo financiado, congelado al originar. Ausente en créditos anteriores a 2026-08. */
11
+ productSku?: string;
12
+ /** Tienda que originó la venta. Ausente en créditos anteriores a 2026-08. */
13
+ storeId?: string;
14
+ financier: SaleFinancierEnum;
15
+ paidInstallments: number;
16
+ outstandingBalanceCents: number | null;
17
+ overdueDays: number | null;
18
+ overdueAmountCents: number | null;
19
+ /** Cuotas vencidas impagas. `0` = nada vencido; `null` acompaña a `overdueDays` en null. */
20
+ overdueInstallments: number | null;
21
+ saleContext: CreditSaleContext;
22
+ }
@@ -0,0 +1,34 @@
1
+ import { CollectionResultStatus } from '../../../collection/enums/CollectionResultStatus';
2
+ import { MechanismType } from '../../../collection/enums/MechanismType';
3
+ import { CurrencyId } from '../../../currency/enums/CurrencyId';
4
+
5
+ /** Un pago del historial de un crédito, tal como lo asentó el motor de cobro en `LoanPayment_GT`. */
6
+ export interface LoanPaymentListItem {
7
+ paymentId: string;
8
+ /** Folio del pago — la referencia de conciliación. */
9
+ receipt: string;
10
+ installmentNumber: number;
11
+ attemptId: string;
12
+ mechanism: MechanismType;
13
+ result: CollectionResultStatus;
14
+ currency: CurrencyId;
15
+ collectedCents: number;
16
+ /** Lo que de verdad se abonó a la cuota. */
17
+ appliedCents: number;
18
+ overpaidCents: number;
19
+ reservedCents: number;
20
+ needsReview: boolean;
21
+ appliedAt: string;
22
+ /** Capital que abonó este pago. Ausente en pagos anteriores al desglose (I1). */
23
+ appliedCapitalCents?: number;
24
+ /** Interés que abonó este pago. Ausente en pagos anteriores al desglose (I1). */
25
+ appliedInterestCents?: number;
26
+ /** IVA del interés que abonó este pago. Ausente en pagos anteriores al desglose (I1). */
27
+ appliedIvaCents?: number;
28
+ }
29
+
30
+ /** Página del historial. El fin lo marca la AUSENCIA de `nextToken`, nunca una página corta. */
31
+ export interface LoanPaymentListResponse {
32
+ items: LoanPaymentListItem[];
33
+ nextToken?: string;
34
+ }
@@ -37,6 +37,12 @@ export * from './dtos/requests/ChangeLoanCreditStatusRequest';
37
37
  export * from './dtos/responses/LoanBorrowerResponse';
38
38
  export * from './dtos/responses/LoanCreditResponse';
39
39
  export * from './dtos/responses/LoanInstallmentResponse';
40
+ // Lectura de cliente (I1 · retail-loan-connector): antes locales de loan-credit-business
41
+ export * from './dtos/responses/CreditSaleContext';
42
+ export * from './dtos/responses/LoanBorrowerCreditItem';
43
+ export * from './dtos/responses/LoanCreditDetail';
44
+ export * from './dtos/responses/LoanPaymentListItem';
45
+ export * from './dtos/responses/LoanContractDownloadUrl';
40
46
  export * from './dtos/responses/LoanContractResponse';
41
47
  export * from './dtos/responses/OriginateLoanCreditResponse';
42
48
  export * from './dtos/responses/QuoteLoanCreditResponse';
@@ -0,0 +1,22 @@
1
+ import { MyCreditSummary } from './MyCreditSummary';
2
+
3
+ /** La próxima cuota abierta. `isOverdue` si su estado en loan-credit es OVERDUE. */
4
+ export interface MyNextInstallment {
5
+ number: number;
6
+ dueDate: string;
7
+ amount: number;
8
+ isOverdue: boolean;
9
+ }
10
+
11
+ /** Detalle de un crédito (`GET /benefits/{benefitId}/credits/{creditId}`). Montos en pesos. */
12
+ export interface MyCreditDetail extends MyCreditSummary {
13
+ equipmentPrice: number;
14
+ downPayment: number;
15
+ financedAmount: number;
16
+ /** Tasa anual ordinaria tal como la guarda loan-credit (`tnaAnnual`). */
17
+ annualRate: number;
18
+ activatedAt?: string;
19
+ firstDueDate?: string;
20
+ lastDueDate?: string;
21
+ nextInstallment?: MyNextInstallment;
22
+ }
@@ -0,0 +1,32 @@
1
+ import { LoanCreditStatusEnum } from '../../loanCredit/enums/LoanCreditStatusEnum';
2
+ import { MyPaymentFrequencyEnum } from '../enums/MyPaymentFrequencyEnum';
3
+
4
+ /** Equipo financiado. Cada campo puede faltar si el contexto de venta no se pudo leer. */
5
+ export interface MyDevice {
6
+ brand: string | null;
7
+ model: string | null;
8
+ capacity: string | null;
9
+ }
10
+
11
+ /** Atraso del crédito. Montos en pesos. `installments` solo viene en el detalle. */
12
+ export interface MyOverdue {
13
+ amount: number;
14
+ days: number;
15
+ installments?: number;
16
+ }
17
+
18
+ /**
19
+ * Un crédito del cliente en la lista (`GET /benefits/{benefitId}/credits`). Montos en pesos con
20
+ * 2 decimales (DEC-007). `remainingBalance` `null` = no aplica (crédito que nunca contrajo deuda).
21
+ */
22
+ export interface MyCreditSummary {
23
+ creditId: string;
24
+ status: LoanCreditStatusEnum;
25
+ device: MyDevice;
26
+ paymentFrequency: MyPaymentFrequencyEnum;
27
+ installmentAmount: number;
28
+ totalInstallments: number;
29
+ paidInstallments: number;
30
+ remainingBalance: number | null;
31
+ overdue?: MyOverdue;
32
+ }
@@ -0,0 +1,23 @@
1
+ import { ContractTypeEnum } from '../../loanCredit/enums/ContractTypeEnum';
2
+ import { MyDocumentGroupIdEnum } from '../enums/MyDocumentGroupIdEnum';
3
+ import { MyDocumentKindEnum } from '../enums/MyDocumentKindEnum';
4
+ import { MyDocumentStatusEnum } from '../enums/MyDocumentStatusEnum';
5
+
6
+ /**
7
+ * Un documento del crédito. `documentRef` sigue la convención del módulo de la app:
8
+ * `doc-contract-<contractId>` para contratos y `doc-stmt-YYYY-MM` para estados de cuenta.
9
+ */
10
+ export interface MyDocument {
11
+ documentRef: string;
12
+ kind: MyDocumentKindEnum;
13
+ type?: ContractTypeEnum;
14
+ /** `YYYY-MM`, solo en estados de cuenta. */
15
+ period?: string;
16
+ issuedAt?: string;
17
+ status: MyDocumentStatusEnum;
18
+ }
19
+
20
+ export interface MyDocumentGroup {
21
+ id: MyDocumentGroupIdEnum;
22
+ documents: MyDocument[];
23
+ }
@@ -0,0 +1,5 @@
1
+ /** URL prefirmada y temporal de un documento. Nunca se loguea. */
2
+ export interface MyDocumentUrl {
3
+ url: string;
4
+ expiresAt: string;
5
+ }
@@ -0,0 +1,17 @@
1
+ import { LoanInstallmentStatusEnum } from '../../loanCredit/enums/LoanInstallmentStatusEnum';
2
+ import { MyInstallmentDisplayStatusEnum } from '../enums/MyInstallmentDisplayStatusEnum';
3
+
4
+ /** Una cuota del calendario. Montos en pesos; `dueDate` en `YYYY-MM-DD` sin zona horaria. */
5
+ export interface MyInstallment {
6
+ number: number;
7
+ dueDate?: string;
8
+ amount: number;
9
+ principal: number;
10
+ interest: number;
11
+ iva: number;
12
+ /** Lo que la cuota todavía debe. */
13
+ outstanding: number;
14
+ status: LoanInstallmentStatusEnum;
15
+ displayStatus: MyInstallmentDisplayStatusEnum;
16
+ paidAt?: string;
17
+ }
@@ -0,0 +1,22 @@
1
+ import { CollectionResultStatus } from '../../collection/enums/CollectionResultStatus';
2
+ import { MyPaymentMethodEnum } from '../enums/MyPaymentMethodEnum';
3
+
4
+ /** Un pago aplicado al crédito. Montos en pesos; el desglose falta en pagos anteriores a él. */
5
+ export interface MyPayment {
6
+ paymentId: string;
7
+ folio: string;
8
+ installmentNumber: number;
9
+ appliedAt: string;
10
+ amount: number;
11
+ principal?: number;
12
+ interest?: number;
13
+ iva?: number;
14
+ method: MyPaymentMethodEnum;
15
+ result: CollectionResultStatus;
16
+ }
17
+
18
+ /** Página del historial de pagos. El fin lo marca la ausencia de `nextToken`. */
19
+ export interface MyPaymentPage {
20
+ items: MyPayment[];
21
+ nextToken?: string;
22
+ }
@@ -0,0 +1,5 @@
1
+ /** Ids de grupo que exige el módulo de la app (`DocumentGroupList`): minúsculas a propósito. */
2
+ export enum MyDocumentGroupIdEnum {
3
+ CONTRACT = 'contract',
4
+ MONTHLY = 'monthly',
5
+ }
@@ -0,0 +1,4 @@
1
+ export enum MyDocumentKindEnum {
2
+ CONTRACT = 'CONTRACT',
3
+ MONTHLY_STATEMENT = 'MONTHLY_STATEMENT',
4
+ }
@@ -0,0 +1,5 @@
1
+ /** READY = el PDF existe y se puede pedir su URL; PENDING = aún no se genera. */
2
+ export enum MyDocumentStatusEnum {
3
+ READY = 'READY',
4
+ PENDING = 'PENDING',
5
+ }
@@ -0,0 +1,7 @@
1
+ /** Estado de una cuota tal como la pinta la app. NEXT = la primera abierta cuando no hay vencidas. */
2
+ export enum MyInstallmentDisplayStatusEnum {
3
+ PAID = 'PAID',
4
+ NEXT = 'NEXT',
5
+ FUTURE = 'FUTURE',
6
+ OVERDUE = 'OVERDUE',
7
+ }
@@ -0,0 +1,4 @@
1
+ /** Frecuencia del plan. Hoy todo plan es semanal (loan-credit define el plan en `termWeeks`). */
2
+ export enum MyPaymentFrequencyEnum {
3
+ WEEKLY = 'WEEKLY',
4
+ }
@@ -0,0 +1,7 @@
1
+ /** Con qué se cobró un pago, sin nombres de instituciones (M1_WIZARD: "cuenta Pago Confiado"). */
2
+ export enum MyPaymentMethodEnum {
3
+ /** MXN_DIRECT: débito a la cuenta PagoConFiado en pesos. */
4
+ PCF_ACCOUNT = 'PCF_ACCOUNT',
5
+ /** USD_DIRECT / USD_PREAUTH: cuenta en dólares. */
6
+ USD_ACCOUNT = 'USD_ACCOUNT',
7
+ }
@@ -0,0 +1,15 @@
1
+ // Enums
2
+ export * from './enums/MyInstallmentDisplayStatusEnum';
3
+ export * from './enums/MyPaymentMethodEnum';
4
+ export * from './enums/MyDocumentKindEnum';
5
+ export * from './enums/MyDocumentStatusEnum';
6
+ export * from './enums/MyDocumentGroupIdEnum';
7
+ export * from './enums/MyPaymentFrequencyEnum';
8
+
9
+ // Contrato app ↔ retail-loan-connector (I1 · fase 1: lectura)
10
+ export * from './dtos/MyCreditSummary';
11
+ export * from './dtos/MyCreditDetail';
12
+ export * from './dtos/MyInstallment';
13
+ export * from './dtos/MyPayment';
14
+ export * from './dtos/MyDocument';
15
+ export * from './dtos/MyDocumentUrl';