@fiado/type-kit 3.276.0 → 3.278.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 (64) hide show
  1. package/_test_/unit/biometrics/CreateBiometricVerificationRequest.test.ts +27 -0
  2. package/bin/benefitCenter/enums/BenefitFlowEnum.d.ts +11 -0
  3. package/bin/benefitCenter/enums/BenefitFlowEnum.js +15 -0
  4. package/bin/biometrics/dtos/BiometricDelivery.d.ts +36 -4
  5. package/bin/biometrics/dtos/BiometricDelivery.js +40 -1
  6. package/bin/biometrics/dtos/requests/CreateBiometricVerificationRequest.d.ts +18 -0
  7. package/bin/biometrics/dtos/requests/CreateBiometricVerificationRequest.js +7 -0
  8. package/bin/biometrics/enums/BiometricDeliveryModeEnum.d.ts +14 -1
  9. package/bin/biometrics/enums/BiometricDeliveryModeEnum.js +14 -1
  10. package/bin/loanConfig/enums/ModifiableByRoleEnum.d.ts +11 -0
  11. package/bin/loanConfig/enums/ModifiableByRoleEnum.js +15 -0
  12. package/bin/places/dtos/CashInFeeDto.d.ts +17 -0
  13. package/bin/places/dtos/CashInFeeDto.js +12 -0
  14. package/bin/platformRbac/dtos/ResendOtpRequest.d.ts +22 -0
  15. package/bin/platformRbac/dtos/ResendOtpRequest.js +36 -0
  16. package/bin/platformRbac/dtos/ResendSelfRegisterOtpRequest.d.ts +11 -0
  17. package/bin/platformRbac/dtos/ResendSelfRegisterOtpRequest.js +36 -0
  18. package/bin/retailOrg/dtos/GoalAmounts.d.ts +18 -0
  19. package/bin/retailOrg/dtos/GoalAmounts.js +2 -0
  20. package/bin/retailOrg/dtos/requests/GoalListQuery.d.ts +16 -0
  21. package/bin/retailOrg/dtos/requests/GoalListQuery.js +35 -0
  22. package/bin/retailOrg/dtos/requests/GoalPathParams.d.ts +14 -0
  23. package/bin/retailOrg/dtos/requests/GoalPathParams.js +41 -0
  24. package/bin/retailOrg/dtos/requests/GoalUpsertRequest.d.ts +34 -0
  25. package/bin/retailOrg/dtos/requests/GoalUpsertRequest.js +60 -0
  26. package/bin/retailOrg/dtos/requests/KpiQuery.d.ts +9 -0
  27. package/bin/retailOrg/dtos/requests/KpiQuery.js +29 -0
  28. package/bin/retailOrg/dtos/requests/PrivateSellerListQuery.d.ts +27 -0
  29. package/bin/retailOrg/dtos/requests/PrivateSellerListQuery.js +45 -0
  30. package/bin/retailOrg/dtos/responses/GoalListResponse.d.ts +18 -0
  31. package/bin/retailOrg/dtos/responses/GoalListResponse.js +2 -0
  32. package/bin/retailOrg/dtos/responses/GoalUpsertResponse.d.ts +10 -0
  33. package/bin/retailOrg/dtos/responses/GoalUpsertResponse.js +2 -0
  34. package/bin/retailOrg/dtos/responses/SellerKpiResponse.d.ts +27 -0
  35. package/bin/retailOrg/dtos/responses/SellerKpiResponse.js +2 -0
  36. package/bin/retailOrg/dtos/responses/StoreKpiResponse.d.ts +34 -0
  37. package/bin/retailOrg/dtos/responses/StoreKpiResponse.js +2 -0
  38. package/bin/retailOrg/dtos/validation/PrivateSellerListResponse.d.ts +30 -0
  39. package/bin/retailOrg/dtos/validation/PrivateSellerListResponse.js +2 -0
  40. package/bin/retailOrg/enums/GoalTargetTypeEnum.d.ts +11 -0
  41. package/bin/retailOrg/enums/GoalTargetTypeEnum.js +15 -0
  42. package/bin/retailOrg/index.d.ts +12 -0
  43. package/bin/retailOrg/index.js +14 -0
  44. package/package.json +1 -1
  45. package/src/biometrics/dtos/BiometricDelivery.ts +48 -4
  46. package/src/biometrics/dtos/requests/CreateBiometricVerificationRequest.ts +20 -0
  47. package/src/biometrics/enums/BiometricDeliveryModeEnum.ts +15 -1
  48. package/src/retailOrg/dtos/GoalAmounts.ts +18 -0
  49. package/src/retailOrg/dtos/requests/GoalListQuery.ts +25 -0
  50. package/src/retailOrg/dtos/requests/GoalPathParams.ts +25 -0
  51. package/src/retailOrg/dtos/requests/GoalUpsertRequest.ts +66 -0
  52. package/src/retailOrg/dtos/requests/KpiQuery.ts +15 -0
  53. package/src/retailOrg/dtos/requests/PrivateSellerListQuery.ts +43 -0
  54. package/src/retailOrg/dtos/responses/GoalListResponse.ts +20 -0
  55. package/src/retailOrg/dtos/responses/GoalUpsertResponse.ts +10 -0
  56. package/src/retailOrg/dtos/responses/SellerKpiResponse.ts +29 -0
  57. package/src/retailOrg/dtos/responses/StoreKpiResponse.ts +36 -0
  58. package/src/retailOrg/dtos/validation/PrivateSellerListResponse.ts +32 -0
  59. package/src/retailOrg/enums/GoalTargetTypeEnum.ts +11 -0
  60. package/src/retailOrg/index.ts +14 -0
  61. package/bin/loanCredit/dtos/requests/UpdateActivationChecklistRequest.d.ts +0 -11
  62. package/bin/loanCredit/dtos/requests/UpdateActivationChecklistRequest.js +0 -46
  63. package/bin/loanCredit/enums/ClientLevelEnum.d.ts +0 -11
  64. package/bin/loanCredit/enums/ClientLevelEnum.js +0 -15
@@ -0,0 +1,66 @@
1
+ import { Expose, Type } from 'class-transformer';
2
+ import {
3
+ ArrayMaxSize,
4
+ ArrayMinSize,
5
+ IsArray,
6
+ IsEnum,
7
+ IsInt,
8
+ IsString,
9
+ Matches,
10
+ Min,
11
+ ValidateNested,
12
+ } from 'class-validator';
13
+ import { GoalTargetTypeEnum } from '../../enums/GoalTargetTypeEnum';
14
+
15
+ /** Una meta del lote. */
16
+ export class GoalUpsertTarget {
17
+ /** ULID de la tienda o del vendedor. */
18
+ @Expose()
19
+ @IsString()
20
+ targetId!: string;
21
+
22
+ @Expose()
23
+ @IsEnum(GoalTargetTypeEnum)
24
+ targetType!: GoalTargetTypeEnum;
25
+
26
+ /**
27
+ * La meta MENSUAL en centavos — lo único que se guarda.
28
+ *
29
+ * 🔴 `0` NO borra: cero significa «la meta es cero» y rompe el `goalPct` con una división entre
30
+ * cero. Para quitar una meta está `DELETE /backoffice/goals/{periodId}/{targetType}/{targetId}`;
31
+ * sin fila significa «no se fijó» y la UI pinta `—`.
32
+ */
33
+ @Expose()
34
+ @IsInt()
35
+ @Min(0)
36
+ monthCents!: number;
37
+ }
38
+
39
+ /**
40
+ * Body de `PUT /backoffice/goals` — upsert POR LOTE de las metas de un periodo.
41
+ *
42
+ * ⚠️ `weekCents` y `dayCents` NO están declarados a propósito, y el manager los RECHAZA con 400 si
43
+ * llegan: son derivadas (`mes/4`, `mes/28`). El `@Expose()` + `excludeExtraneousValues` los
44
+ * descartaría en silencio, y un descarte silencioso sobre un número contra el que se le paga a la
45
+ * gente es peor que un error — el cliente creería que los guardó.
46
+ */
47
+ export class GoalUpsertRequest {
48
+ /** Mes calendario `YYYY-MM`, mes acotado a 01-12. */
49
+ @Expose()
50
+ @Matches(/^\d{4}-(0[1-9]|1[0-2])$/, { message: 'periodId debe tener formato YYYY-MM (mes 01-12)' })
51
+ periodId!: string;
52
+
53
+ /**
54
+ * El lote: 1..50 metas.
55
+ *
56
+ * 🔴 El tope es 50, no 100: `TransactWriteItems` acepta 100 ítems y **cada meta consume dos** (la
57
+ * fila de la meta + su fila de auditoría, que va en la MISMA transacción).
58
+ */
59
+ @Expose()
60
+ @IsArray()
61
+ @ArrayMinSize(1)
62
+ @ArrayMaxSize(50)
63
+ @ValidateNested({ each: true })
64
+ @Type(() => GoalUpsertTarget)
65
+ targets!: GoalUpsertTarget[];
66
+ }
@@ -0,0 +1,15 @@
1
+ import { Expose } from 'class-transformer';
2
+ import { IsOptional, Matches } from 'class-validator';
3
+
4
+ /**
5
+ * Query compartido por los dos drawers de KPIs del Portal Admin VL
6
+ * (`GET /backoffice/stores/{storeId}/kpis` y `GET /backoffice/sellers/{sellerId}/kpis`).
7
+ *
8
+ * `periodId` es OPCIONAL: sin él se usa el mes en curso — el drawer se abre sin elegir periodo.
9
+ */
10
+ export class KpiQuery {
11
+ @Expose()
12
+ @IsOptional()
13
+ @Matches(/^\d{4}-(0[1-9]|1[0-2])$/, { message: 'periodId debe tener formato YYYY-MM (mes 01-12)' })
14
+ periodId?: string;
15
+ }
@@ -0,0 +1,43 @@
1
+ import { Expose } from 'class-transformer';
2
+ import { IsEnum, IsOptional, Matches } from 'class-validator';
3
+ import { RetailUserStatusEnum } from '../../enums/RetailUserStatusEnum';
4
+
5
+ /** ULID canónico: 26 chars Crockford base32, primer char 0-7 (el timestamp cabe en 48 bits). */
6
+ const ULID = /^[0-7][0-9A-HJKMNP-TV-Z]{25}$/;
7
+
8
+ /**
9
+ * Query de `GET /private/sellers` — el padrón de una cadena, M2M.
10
+ *
11
+ * 🔴 Acá el `retailerId` **viene en el request**, al revés que en los `/backoffice/` (donde se impone
12
+ * desde el token). Es el modelo M2M de la casa: el endpoint es VPC-only y su seguridad es de RED, no
13
+ * de identidad. Cualquier lambda dentro de la VPC puede pedir cualquier retailer — decisión
14
+ * consciente, no un descuido.
15
+ */
16
+ export class PrivateSellerListQuery {
17
+ @Expose()
18
+ @Matches(ULID, { message: 'retailerId debe ser un ULID' })
19
+ retailerId!: string;
20
+
21
+ /**
22
+ * ⚠️ **Sin `status` vienen TODOS los estados, no solo los activos.**
23
+ *
24
+ * El diseño original proponía default `ACTIVE`, pero con este enum eso deja al motor de comisiones
25
+ * sin ninguna forma de pedir el padrón completo — y un vendedor dado de baja el día 20 sí tiene
26
+ * comisión por lo que vendió hasta el 19. Filtrar por default sería perderlo en silencio.
27
+ */
28
+ @Expose()
29
+ @IsOptional()
30
+ @IsEnum(RetailUserStatusEnum)
31
+ status?: RetailUserStatusEnum;
32
+
33
+ /**
34
+ * Quién llama. `Feature.ANONIMUS` no trae actor, y este endpoint exporta la nómina completa de una
35
+ * cadena: sin esto el registro de acceso a PII quedaría sin nadie a quien atribuírselo. Lo llena el
36
+ * publisher de `@fiado/api-invoker`; si falta, el lambda registra `m2m:unknown` y loguea un WARN —
37
+ * nunca omite el registro.
38
+ */
39
+ @Expose()
40
+ @IsOptional()
41
+ @Matches(/^[a-z0-9-]{1,64}$/, { message: 'callerService debe ser el nombre del lambda (kebab-case)' })
42
+ callerService?: string;
43
+ }
@@ -0,0 +1,20 @@
1
+ import type { GoalAmounts } from '../GoalAmounts';
2
+ import type { GoalTargetTypeEnum } from '../../enums/GoalTargetTypeEnum';
3
+
4
+ /** Una meta del periodo, con las tres cifras ya derivadas. */
5
+ export interface GoalDto extends GoalAmounts {
6
+ targetId: string;
7
+ targetType: GoalTargetTypeEnum;
8
+ }
9
+
10
+ /**
11
+ * Respuesta de `GET /backoffice/goals`.
12
+ *
13
+ * ⚠️ Un periodo sin metas devuelve `goals: []`, **no un 404**: que no se hayan fijado es un estado
14
+ * válido del negocio, no una ruta que no existe. Y una meta borrada simplemente no viene en la
15
+ * lista — no hay estado «borrada», la fila deja de existir.
16
+ */
17
+ export interface GoalListResponse {
18
+ periodId: string;
19
+ goals: GoalDto[];
20
+ }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Respuesta de `PUT /backoffice/goals` — cuántas metas quedaron escritas.
3
+ *
4
+ * `updated` siempre iguala `targets.length` del request: el lote es todo-o-nada (una sola
5
+ * `TransactWriteItems`). Nunca hay un lote parcial que explicar.
6
+ */
7
+ export interface GoalUpsertResponse {
8
+ periodId: string;
9
+ updated: number;
10
+ }
@@ -0,0 +1,29 @@
1
+ import type { GoalAmounts } from '../GoalAmounts';
2
+ import type { SoldAggregate } from './StoreKpiResponse';
3
+
4
+ /** La tienda de casa del vendedor, resuelta para el drawer. */
5
+ export interface SellerStoreRef {
6
+ storeId: string;
7
+ name: string;
8
+ zoneId: string | null;
9
+ }
10
+
11
+ /**
12
+ * Respuesta de `GET /backoffice/sellers/{sellerId}/kpis` — el drawer de un vendedor.
13
+ *
14
+ * ⚠️ `store` es la tienda de CASA (`homeStoreId`), no la única donde puede vender: `RetailUser_GT`
15
+ * también lleva `coverageStoreIds`. El agregado del lake **no filtra por tienda** — si un vendedor
16
+ * de la Tienda A cubrió un turno en la B, esa venta cuenta en su avance. Es lo correcto: la cuota es
17
+ * suya, no de la tienda. Se deja escrito porque es justo el tipo de cosa que después parece un bug.
18
+ *
19
+ * Misma regla que el gemelo de tiendas: `null`, nunca `0`.
20
+ */
21
+ export interface SellerKpiResponse {
22
+ sellerId: string;
23
+ displayName: string | null;
24
+ /** `null` si el vendedor no tiene `homeStoreId`, o si esa tienda ya no existe. */
25
+ store: SellerStoreRef | null;
26
+ goal: GoalAmounts | null;
27
+ sold: SoldAggregate | null;
28
+ goalPct: number | null;
29
+ }
@@ -0,0 +1,36 @@
1
+ import type { GoalAmounts } from '../GoalAmounts';
2
+
3
+ /**
4
+ * Volumen vendido en el periodo, según el data lake.
5
+ *
6
+ * 🔴 `soldCents` NO es `amountCents` de la venta. Es `COALESCE(equipmentPriceCents, amountCents)` —
7
+ * volumen **colocado**, por DEC-032. En una venta a crédito `amountCents` es solo el enganche: un
8
+ * equipo de $5,000 financiado aportaría $1,300 y el vendedor cobraría comisión sobre eso.
9
+ */
10
+ export interface SoldAggregate {
11
+ pieces: number;
12
+ soldCents: number;
13
+ }
14
+
15
+ /**
16
+ * Respuesta de `GET /backoffice/stores/{storeId}/kpis` — el drawer de una tienda.
17
+ *
18
+ * 🔴 **`null`, nunca `0`.** Un `0` dice *«no vendió»*; un `null` dice *«no sé todavía»*, y la UI lo
19
+ * pinta `—`. Un 0 % de meta a media tarde manda a alguien a corregir algo que nadie fijó.
20
+ *
21
+ * `sellersActive` es la excepción: sale del padrón (`RetailUser_GT`), siempre se puede contar, y `0`
22
+ * ahí SÍ es un dato — una tienda sin vendedores asignados.
23
+ */
24
+ export interface StoreKpiResponse {
25
+ storeId: string;
26
+ name: string;
27
+ zoneId: string | null;
28
+ /** Vendedores ACTIVE con esta tienda como `homeStoreId`. `0` es válido. */
29
+ sellersActive: number;
30
+ /** `null` si no se fijó meta para el periodo. */
31
+ goal: GoalAmounts | null;
32
+ /** `null` si el lake no contestó (o si está apagado por flag). NUNCA ceros. */
33
+ sold: SoldAggregate | null;
34
+ /** Avance sobre la meta mensual, 1 decimal. `null` si falta cualquiera de los dos. */
35
+ goalPct: number | null;
36
+ }
@@ -0,0 +1,32 @@
1
+ import type { RetailUserStatusEnum } from '../../enums/RetailUserStatusEnum';
2
+
3
+ /**
4
+ * Shape mínimo de un vendedor para el motor de comisiones (F3b): a quién pagarle, de qué tienda es y
5
+ * en qué tier va.
6
+ *
7
+ * **Sin PII** — nada de teléfono ni `cognitoSub`. `displayName` es el rótulo de conveniencia con el
8
+ * que el motor arma su reporte de devengo; no es identidad (la identidad vive en RBAC).
9
+ *
10
+ * `commissionTier` no es adorno: es lo que el motor usa para resolver CUÁNTO le toca a cada vendedor
11
+ * según el plan de comisiones vigente.
12
+ */
13
+ export interface PrivateSellerDto {
14
+ sellerId: string;
15
+ displayName: string | null;
16
+ homeStoreId: string | null;
17
+ commissionTier: string;
18
+ status: RetailUserStatusEnum;
19
+ }
20
+
21
+ /**
22
+ * Respuesta de `GET /private/sellers?retailerId=…` — el padrón de una cadena, para máquinas.
23
+ *
24
+ * ⚠️ `status` viene en cada fila a propósito. Un vendedor dado de baja a mitad de periodo **sí tiene
25
+ * comisión** por lo que vendió antes, así que el filtro `?status=` es una conveniencia y el motor de
26
+ * comisiones probablemente tenga que pedir TODOS. Pedir solo activos y perder a alguien que renunció
27
+ * el día 20 sería un error caro.
28
+ */
29
+ export interface PrivateSellerListResponse {
30
+ retailerId: string;
31
+ sellers: PrivateSellerDto[];
32
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * A quién se le fija una meta de venta del periodo (SureKeep F3, Portal Admin VentasLuga).
3
+ *
4
+ * Es parte de la SORT KEY de `RetailGoal_GT` (`GOAL#<periodId>#<targetType>#<targetId>`), así que
5
+ * los valores son contrato de datos, no solo de API: cambiar un literal deja huérfanas las filas ya
6
+ * escritas. Solo hay dos targets y no se prevén más — la meta de una zona sale de sumar sus tiendas.
7
+ */
8
+ export enum GoalTargetTypeEnum {
9
+ STORE = 'STORE',
10
+ SELLER = 'SELLER',
11
+ }
@@ -5,9 +5,12 @@ export * from './enums/StoreStatusEnum';
5
5
  export * from './enums/RetailUserStatusEnum';
6
6
  export * from './enums/EmploymentTypeEnum';
7
7
  export * from './enums/CollectorSeniorityEnum';
8
+ // F3 — Portal Admin VentasLuga (metas de venta del periodo)
9
+ export * from './enums/GoalTargetTypeEnum';
8
10
 
9
11
  // Entity DTOs
10
12
  export * from './dtos/GeoLocation';
13
+ export * from './dtos/GoalAmounts';
11
14
  export * from './dtos/Retailer';
12
15
  export * from './dtos/Zone';
13
16
  export * from './dtos/Store';
@@ -18,6 +21,7 @@ export * from './dtos/validation/RetailerValidationDto';
18
21
  export * from './dtos/validation/StoreValidationDto';
19
22
  export * from './dtos/validation/RetailUserValidationDto';
20
23
  export * from './dtos/validation/CollectorValidationDto';
24
+ export * from './dtos/validation/PrivateSellerListResponse';
21
25
 
22
26
  // Paginación genérica
23
27
  export * from './dtos/PaginatedResult';
@@ -39,6 +43,16 @@ export * from './dtos/requests/ProvisionRetailUserRequest';
39
43
  export * from './dtos/requests/UpdateRetailUserRequest';
40
44
  export * from './dtos/requests/ChangeRetailUserStatusRequest';
41
45
  export * from './dtos/requests/TransferRetailUserRequest';
46
+ // F3 — metas y KPIs del Portal Admin VL
47
+ export * from './dtos/requests/GoalListQuery';
48
+ export * from './dtos/requests/GoalUpsertRequest';
49
+ export * from './dtos/requests/GoalPathParams';
50
+ export * from './dtos/requests/KpiQuery';
51
+ export * from './dtos/requests/PrivateSellerListQuery';
42
52
 
43
53
  // Response DTOs
44
54
  export * from './dtos/responses/RetailerHierarchyResponse';
55
+ export * from './dtos/responses/GoalListResponse';
56
+ export * from './dtos/responses/GoalUpsertResponse';
57
+ export * from './dtos/responses/StoreKpiResponse';
58
+ export * from './dtos/responses/SellerKpiResponse';
@@ -1,11 +0,0 @@
1
- /**
2
- * Body de PUT /credits/:creditId/checklist (loan-credit-business). Marca condiciones de activación
3
- * cumplidas. Solo se mandan las que cambian; en F3 las marcarán los flujos de firma de contrato
4
- * (`downPayment` + `contractSigned`) y de enrolamiento MDM (`imeiEnrolled` + `lockVerified`).
5
- */
6
- export declare class UpdateActivationChecklistRequest {
7
- downPayment?: boolean;
8
- contractSigned?: boolean;
9
- imeiEnrolled?: boolean;
10
- lockVerified?: boolean;
11
- }
@@ -1,46 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.UpdateActivationChecklistRequest = void 0;
13
- const class_transformer_1 = require("class-transformer");
14
- const class_validator_1 = require("class-validator");
15
- /**
16
- * Body de PUT /credits/:creditId/checklist (loan-credit-business). Marca condiciones de activación
17
- * cumplidas. Solo se mandan las que cambian; en F3 las marcarán los flujos de firma de contrato
18
- * (`downPayment` + `contractSigned`) y de enrolamiento MDM (`imeiEnrolled` + `lockVerified`).
19
- */
20
- class UpdateActivationChecklistRequest {
21
- }
22
- exports.UpdateActivationChecklistRequest = UpdateActivationChecklistRequest;
23
- __decorate([
24
- (0, class_transformer_1.Expose)(),
25
- (0, class_validator_1.IsOptional)(),
26
- (0, class_validator_1.IsBoolean)(),
27
- __metadata("design:type", Boolean)
28
- ], UpdateActivationChecklistRequest.prototype, "downPayment", void 0);
29
- __decorate([
30
- (0, class_transformer_1.Expose)(),
31
- (0, class_validator_1.IsOptional)(),
32
- (0, class_validator_1.IsBoolean)(),
33
- __metadata("design:type", Boolean)
34
- ], UpdateActivationChecklistRequest.prototype, "contractSigned", void 0);
35
- __decorate([
36
- (0, class_transformer_1.Expose)(),
37
- (0, class_validator_1.IsOptional)(),
38
- (0, class_validator_1.IsBoolean)(),
39
- __metadata("design:type", Boolean)
40
- ], UpdateActivationChecklistRequest.prototype, "imeiEnrolled", void 0);
41
- __decorate([
42
- (0, class_transformer_1.Expose)(),
43
- (0, class_validator_1.IsOptional)(),
44
- (0, class_validator_1.IsBoolean)(),
45
- __metadata("design:type", Boolean)
46
- ], UpdateActivationChecklistRequest.prototype, "lockVerified", void 0);
@@ -1,11 +0,0 @@
1
- /**
2
- * Nivel del cliente según su SCI (M7/05_MOTOR §3.2): 21-60 Bronce · 61-80 Plata · 81-100 Oro.
3
- * Distinto de `CreditPlanLevelEnum` de loanOfferings (que además tiene `ALL` para planes):
4
- * un CLIENTE nunca es `ALL`.
5
- * @enum {string}
6
- */
7
- export declare enum ClientLevelEnum {
8
- BRONZE = "BRONZE",
9
- SILVER = "SILVER",
10
- GOLD = "GOLD"
11
- }
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ClientLevelEnum = void 0;
4
- /**
5
- * Nivel del cliente según su SCI (M7/05_MOTOR §3.2): 21-60 Bronce · 61-80 Plata · 81-100 Oro.
6
- * Distinto de `CreditPlanLevelEnum` de loanOfferings (que además tiene `ALL` para planes):
7
- * un CLIENTE nunca es `ALL`.
8
- * @enum {string}
9
- */
10
- var ClientLevelEnum;
11
- (function (ClientLevelEnum) {
12
- ClientLevelEnum["BRONZE"] = "BRONZE";
13
- ClientLevelEnum["SILVER"] = "SILVER";
14
- ClientLevelEnum["GOLD"] = "GOLD";
15
- })(ClientLevelEnum || (exports.ClientLevelEnum = ClientLevelEnum = {}));