@fiado/type-kit 3.304.0 → 3.306.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/benefitCenter/enums/BenefitFlowEnum.d.ts +11 -0
- package/bin/benefitCenter/enums/BenefitFlowEnum.js +15 -0
- package/bin/index.d.ts +1 -0
- package/bin/index.js +3 -1
- package/bin/onboarding/dtos/responses/OnboardingStepsResponse.d.ts +17 -0
- package/bin/onboarding/enums/OnboardingAccountMessageKeyEnum.d.ts +35 -0
- package/bin/onboarding/enums/OnboardingAccountMessageKeyEnum.js +39 -0
- package/bin/onboarding/index.d.ts +1 -0
- package/bin/onboarding/index.js +1 -0
- package/bin/peopleBusiness/dtos/AccountRequirementControlRecord.d.ts +6 -0
- package/bin/peopleBusiness/dtos/AccountRequirementControlRecord.js +2 -0
- package/bin/peopleBusiness/dtos/PeopleBatchItem.d.ts +11 -0
- package/bin/peopleBusiness/dtos/PeopleBatchItem.js +10 -0
- package/bin/peopleBusiness/dtos/PeopleBatchResponse.d.ts +9 -0
- package/bin/peopleBusiness/dtos/PeopleBatchResponse.js +10 -0
- package/bin/peopleBusiness/dtos/PeopleRecord.d.ts +5 -0
- package/bin/peopleBusiness/dtos/PeopleRecord.js +2 -0
- package/bin/peopleBusiness/enums/PeopleBatchIncludeEnum.d.ts +7 -0
- package/bin/peopleBusiness/enums/PeopleBatchIncludeEnum.js +11 -0
- package/bin/peopleBusiness/index.d.ts +5 -0
- package/bin/peopleBusiness/index.js +21 -0
- package/bin/places/dtos/CashInFeeDto.d.ts +17 -0
- package/bin/places/dtos/CashInFeeDto.js +12 -0
- package/bin/platformRbac/dtos/CompleteMyProfileRequest.d.ts +9 -0
- package/bin/platformRbac/dtos/CompleteMyProfileRequest.js +34 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceRequest.d.ts +14 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceRequest.js +41 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceResponse.d.ts +15 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceResponse.js +13 -0
- package/bin/walletFunding/dtos/CancelWalletFundingRequest.d.ts +3 -0
- package/bin/walletFunding/dtos/CancelWalletFundingRequest.js +21 -0
- package/bin/walletFunding/dtos/CancelWalletFundingResponse.d.ts +7 -0
- package/bin/walletFunding/dtos/CancelWalletFundingResponse.js +6 -0
- package/package.json +1 -1
- package/src/index.ts +2 -0
- package/src/onboarding/dtos/responses/OnboardingStepsResponse.ts +17 -0
- package/src/onboarding/enums/OnboardingAccountMessageKeyEnum.ts +35 -0
- package/src/onboarding/index.ts +1 -0
- package/src/peopleBusiness/dtos/AccountRequirementControlRecord.ts +7 -0
- package/src/peopleBusiness/dtos/PeopleBatchItem.ts +12 -0
- package/src/peopleBusiness/dtos/PeopleBatchResponse.ts +10 -0
- package/src/peopleBusiness/dtos/PeopleRecord.ts +6 -0
- package/src/peopleBusiness/enums/PeopleBatchIncludeEnum.ts +7 -0
- package/src/peopleBusiness/index.ts +5 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare enum BenefitFlowEnum {
|
|
2
|
+
TOPUPS = "TOPUPS",
|
|
3
|
+
BILL_PAYMENT = "BILL_PAYMENT",
|
|
4
|
+
CREDIT = "CREDIT",
|
|
5
|
+
INSURANCE = "INSURANCE",
|
|
6
|
+
DONATION = "DONATION",
|
|
7
|
+
PHARMACY = "PHARMACY",
|
|
8
|
+
REMITTANCE = "REMITTANCE",
|
|
9
|
+
/** Fondeo de wallet PCF con efectivo via provider externo (Equality/Passport, OpenPay, …) — spec 13. */
|
|
10
|
+
WALLET_FUNDING = "WALLET_FUNDING"
|
|
11
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BenefitFlowEnum = void 0;
|
|
4
|
+
var BenefitFlowEnum;
|
|
5
|
+
(function (BenefitFlowEnum) {
|
|
6
|
+
BenefitFlowEnum["TOPUPS"] = "TOPUPS";
|
|
7
|
+
BenefitFlowEnum["BILL_PAYMENT"] = "BILL_PAYMENT";
|
|
8
|
+
BenefitFlowEnum["CREDIT"] = "CREDIT";
|
|
9
|
+
BenefitFlowEnum["INSURANCE"] = "INSURANCE";
|
|
10
|
+
BenefitFlowEnum["DONATION"] = "DONATION";
|
|
11
|
+
BenefitFlowEnum["PHARMACY"] = "PHARMACY";
|
|
12
|
+
BenefitFlowEnum["REMITTANCE"] = "REMITTANCE";
|
|
13
|
+
/** Fondeo de wallet PCF con efectivo via provider externo (Equality/Passport, OpenPay, …) — spec 13. */
|
|
14
|
+
BenefitFlowEnum["WALLET_FUNDING"] = "WALLET_FUNDING";
|
|
15
|
+
})(BenefitFlowEnum || (exports.BenefitFlowEnum = BenefitFlowEnum = {}));
|
package/bin/index.d.ts
CHANGED
package/bin/index.js
CHANGED
|
@@ -38,7 +38,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.IssuanceBusiness = exports.Blacklist = exports.CentralPayments = exports.Helpdesk = exports.FiadoApiResponse = exports.Auth = exports.LegalDocumentsBusiness = exports.Role = exports.STPAccount = exports.RiskProfile = exports.FraudPreventionEngine = exports.BBVARst = exports.Stp = exports.BenefitCenter = exports.BankAccount = exports.P2pContact = exports.CreditContract = exports.Contract = exports.ProductCatalog = exports.ContactInfo = exports.TransactionAnalytics = exports.Transaction = exports.TransactionProcessor = exports.GenericMessage = exports.EventBridgeMessage = exports.SessionActivity = exports.NotificationMessages = exports.ServicePayment = exports.Header = exports.Identity = exports.UserTags = exports.Group = exports.File = exports.ExchangeRate = exports.Directory = exports.Currency = exports.Country = exports.Card = exports.Authentication = exports.AppContent = exports.App = exports.Offices = exports.Places = exports.Address = exports.Beneficiary = exports.Activity = exports.Biometrics = exports.MetamapConnector = exports.Account = exports.Crypto = void 0;
|
|
40
40
|
exports.LoanConfig = exports.DatalakeQuery = exports.RetailWizard = exports.RetailCustomer = exports.RetailCards = exports.RetailCatalog = exports.RetailCommission = exports.RetailOrg = exports.EmailVerification = exports.NetworkConnector = exports.Modelias = exports.TotpSecurity = exports.Passport = exports.WalletFunding = exports.Remittance = exports.PlatformRbac = exports.CognitoBackofficeConnector = exports.TwilioConnector = exports.MessagesConnector = exports.Mdm = exports.MilestoneBusiness = exports.CirculoCredito = exports.CreditStatements = exports.Sentry = exports.AiEngine = exports.Funnel = exports.TeamsConnector = exports.PlatformErrorEvents = exports.CustomerFile = exports.CreditBackoffice = exports.CreditDashboard = exports.CreditEngine = exports.Credit = exports.ComissionBusiness = exports.ReferralBusiness = exports.ZendeskMessaging = exports.NotificationWS = exports.Event = exports.PayrollBusiness = exports.Cnbv = exports.DirectorySetting = exports.InvoiceCollector = exports.Collector = exports.Pricelist = exports.Company = exports.Services = exports.AccountIssuanceBusiness = exports.AppSelectionData = exports.Device = exports.Observations = void 0;
|
|
41
|
-
exports.UserConfirmations = exports.Collection = exports.Shipping = exports.PhoneSales = exports.Onboarding = exports.Kyc = exports.LoanScoring = exports.LoanCredit = exports.LoanCollectorAssignment = exports.LoanOfferings = exports.Shortlink = void 0;
|
|
41
|
+
exports.PeopleBusiness = exports.UserConfirmations = exports.Collection = exports.Shipping = exports.PhoneSales = exports.Onboarding = exports.Kyc = exports.LoanScoring = exports.LoanCredit = exports.LoanCollectorAssignment = exports.LoanOfferings = exports.Shortlink = void 0;
|
|
42
42
|
exports.Crypto = __importStar(require("./crypto"));
|
|
43
43
|
exports.Account = __importStar(require("./account"));
|
|
44
44
|
exports.MetamapConnector = __importStar(require("./metamapConnector"));
|
|
@@ -207,3 +207,5 @@ exports.Collection = __importStar(require("./collection"));
|
|
|
207
207
|
// UserConfirmations: contrato del motor de confirmaciones pendientes (people-business ↔ app) —
|
|
208
208
|
// la app consulta qué confirmaciones mostrar al usuario (verificar email, …) y reporta descartes.
|
|
209
209
|
exports.UserConfirmations = __importStar(require("./userConfirmations"));
|
|
210
|
+
// PeopleBusiness: contrato de lectura por lote de People_GT + AccountRequirementControl_GT.
|
|
211
|
+
exports.PeopleBusiness = __importStar(require("./peopleBusiness"));
|
|
@@ -3,6 +3,7 @@ import { OnboardingStepIdEnum } from '../../enums/OnboardingStepIdEnum';
|
|
|
3
3
|
import { OnboardingStepStatusEnum } from '../../enums/OnboardingStepStatusEnum';
|
|
4
4
|
import { OnboardingAccountStatusEnum } from '../../enums/OnboardingAccountStatusEnum';
|
|
5
5
|
import { OnboardingAccountReasonEnum } from '../../enums/OnboardingAccountReasonEnum';
|
|
6
|
+
import { OnboardingAccountMessageKeyEnum } from '../../enums/OnboardingAccountMessageKeyEnum';
|
|
6
7
|
/**
|
|
7
8
|
* Un paso: `id` + `status` y nada más. Sin motivo, sin metadata y sin lado (DEC-012 de
|
|
8
9
|
* onboarding-business).
|
|
@@ -23,6 +24,22 @@ export declare class OnboardingAccountDto {
|
|
|
23
24
|
status: OnboardingAccountStatusEnum;
|
|
24
25
|
/** `null` cuando no hay nada que explicar. */
|
|
25
26
|
reason: OnboardingAccountReasonEnum | null;
|
|
27
|
+
/**
|
|
28
|
+
* Clave del mensaje de Fido para ESTA cuenta. El consumidor la usa TAL CUAL para buscar el copy en
|
|
29
|
+
* Firebase Remote Config, sin componerla ni interpretar `status`/`reason`.
|
|
30
|
+
*
|
|
31
|
+
* NO es `status` y `reason` concatenados: es el nombre del mensaje del catálogo que ya existe en
|
|
32
|
+
* Remote Config, para que esa configuración no haya que reescribirla. Varias combinaciones caen a
|
|
33
|
+
* propósito en la misma clave — `REJECTED:BLACKLIST` y `REJECTED:DUPLICATE_USER` son las dos
|
|
34
|
+
* `CANNOT_OPEN`, porque a las dos personas se les dice lo mismo.
|
|
35
|
+
*
|
|
36
|
+
* Va **por cuenta** y no como valor global porque el estado es por cuenta: un usuario con las dos
|
|
37
|
+
* cuentas puede tener una rechazada y la otra en curso, y cada una necesita su propio mensaje.
|
|
38
|
+
*
|
|
39
|
+
* OJO con el catálogo viejo: tenía un segundo nivel indexado por país. Ese nivel ya no aplica — el
|
|
40
|
+
* mensaje depende del estado de la cuenta, no del país, y cada cuenta trae su clave.
|
|
41
|
+
*/
|
|
42
|
+
key: OnboardingAccountMessageKeyEnum;
|
|
26
43
|
}
|
|
27
44
|
/**
|
|
28
45
|
* Respuesta de `GET /onboarding-business/steps`.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Clave del mensaje de Fido que el consumidor busca en Firebase Remote Config.
|
|
3
|
+
*
|
|
4
|
+
* NO es `status`/`reason` concatenados: es el nombre del mensaje del catálogo que YA existe en Remote
|
|
5
|
+
* Config, para que el backend pueda mandar la clave sin que haya que reescribir esa configuración.
|
|
6
|
+
* Varias combinaciones de estado caen en el mismo mensaje a propósito — a la persona rechazada por
|
|
7
|
+
* lista negra y a la rechazada por duplicado se les dice lo mismo.
|
|
8
|
+
*
|
|
9
|
+
* El catálogo viejo estaba indexado por `MESSAGE.FIDO` del motor legacy y, en un segundo nivel, por
|
|
10
|
+
* país. El segundo nivel deja de usarse: el mensaje ya no depende del país sino del estado de la
|
|
11
|
+
* cuenta, y cada cuenta trae su propia clave.
|
|
12
|
+
*/
|
|
13
|
+
export declare enum OnboardingAccountMessageKeyEnum {
|
|
14
|
+
/** La cuenta ya está abierta. Es el CTA que dispara la firma de contratos. */
|
|
15
|
+
ACCOUNT_CREATED = "ACCOUNT_CREATED",
|
|
16
|
+
/** No se puede abrir la cuenta: lista negra, duplicado o rechazo del proveedor. */
|
|
17
|
+
CANNOT_OPEN = "CANNOT_OPEN",
|
|
18
|
+
/** El documento no sirvió y la persona puede volver a subirlo. */
|
|
19
|
+
UPLOAD_IDENTIFICATION_AGAIN = "UPLOAD_IDENTIFICATION_AGAIN",
|
|
20
|
+
/** Verificación del documento en curso: no hay nada que la persona pueda hacer. */
|
|
21
|
+
INFO_VERIFICATION_IN_PROCESS = "INFO_VERIFICATION_IN_PROCESS",
|
|
22
|
+
/** El proveedor está revisando. Tampoco hay acción del usuario. */
|
|
23
|
+
KEEP_CALM = "KEEP_CALM",
|
|
24
|
+
/**
|
|
25
|
+
* El proveedor espera que la persona conteste las preguntas de validación (OOW).
|
|
26
|
+
*
|
|
27
|
+
* CLAVE NUEVA: el catálogo viejo no tenía un mensaje para este caso. No se reusó `KEEP_CALM`
|
|
28
|
+
* porque diría lo contrario de lo que corresponde — ahí la pelota está del lado del usuario, no
|
|
29
|
+
* del nuestro. **Hay que darle de alta el copy en Remote Config**; hasta entonces el consumidor
|
|
30
|
+
* cae a su texto por defecto.
|
|
31
|
+
*/
|
|
32
|
+
ANSWER_VERIFICATION_QUESTIONS = "ANSWER_VERIFICATION_QUESTIONS",
|
|
33
|
+
/** Trámite en curso, esperando que la persona complete sus pasos. */
|
|
34
|
+
COMPLETE_YOUR_INFORMATION = "COMPLETE_YOUR_INFORMATION"
|
|
35
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OnboardingAccountMessageKeyEnum = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Clave del mensaje de Fido que el consumidor busca en Firebase Remote Config.
|
|
6
|
+
*
|
|
7
|
+
* NO es `status`/`reason` concatenados: es el nombre del mensaje del catálogo que YA existe en Remote
|
|
8
|
+
* Config, para que el backend pueda mandar la clave sin que haya que reescribir esa configuración.
|
|
9
|
+
* Varias combinaciones de estado caen en el mismo mensaje a propósito — a la persona rechazada por
|
|
10
|
+
* lista negra y a la rechazada por duplicado se les dice lo mismo.
|
|
11
|
+
*
|
|
12
|
+
* El catálogo viejo estaba indexado por `MESSAGE.FIDO` del motor legacy y, en un segundo nivel, por
|
|
13
|
+
* país. El segundo nivel deja de usarse: el mensaje ya no depende del país sino del estado de la
|
|
14
|
+
* cuenta, y cada cuenta trae su propia clave.
|
|
15
|
+
*/
|
|
16
|
+
var OnboardingAccountMessageKeyEnum;
|
|
17
|
+
(function (OnboardingAccountMessageKeyEnum) {
|
|
18
|
+
/** La cuenta ya está abierta. Es el CTA que dispara la firma de contratos. */
|
|
19
|
+
OnboardingAccountMessageKeyEnum["ACCOUNT_CREATED"] = "ACCOUNT_CREATED";
|
|
20
|
+
/** No se puede abrir la cuenta: lista negra, duplicado o rechazo del proveedor. */
|
|
21
|
+
OnboardingAccountMessageKeyEnum["CANNOT_OPEN"] = "CANNOT_OPEN";
|
|
22
|
+
/** El documento no sirvió y la persona puede volver a subirlo. */
|
|
23
|
+
OnboardingAccountMessageKeyEnum["UPLOAD_IDENTIFICATION_AGAIN"] = "UPLOAD_IDENTIFICATION_AGAIN";
|
|
24
|
+
/** Verificación del documento en curso: no hay nada que la persona pueda hacer. */
|
|
25
|
+
OnboardingAccountMessageKeyEnum["INFO_VERIFICATION_IN_PROCESS"] = "INFO_VERIFICATION_IN_PROCESS";
|
|
26
|
+
/** El proveedor está revisando. Tampoco hay acción del usuario. */
|
|
27
|
+
OnboardingAccountMessageKeyEnum["KEEP_CALM"] = "KEEP_CALM";
|
|
28
|
+
/**
|
|
29
|
+
* El proveedor espera que la persona conteste las preguntas de validación (OOW).
|
|
30
|
+
*
|
|
31
|
+
* CLAVE NUEVA: el catálogo viejo no tenía un mensaje para este caso. No se reusó `KEEP_CALM`
|
|
32
|
+
* porque diría lo contrario de lo que corresponde — ahí la pelota está del lado del usuario, no
|
|
33
|
+
* del nuestro. **Hay que darle de alta el copy en Remote Config**; hasta entonces el consumidor
|
|
34
|
+
* cae a su texto por defecto.
|
|
35
|
+
*/
|
|
36
|
+
OnboardingAccountMessageKeyEnum["ANSWER_VERIFICATION_QUESTIONS"] = "ANSWER_VERIFICATION_QUESTIONS";
|
|
37
|
+
/** Trámite en curso, esperando que la persona complete sus pasos. */
|
|
38
|
+
OnboardingAccountMessageKeyEnum["COMPLETE_YOUR_INFORMATION"] = "COMPLETE_YOUR_INFORMATION";
|
|
39
|
+
})(OnboardingAccountMessageKeyEnum || (exports.OnboardingAccountMessageKeyEnum = OnboardingAccountMessageKeyEnum = {}));
|
|
@@ -2,4 +2,5 @@ export * from './enums/OnboardingStepIdEnum';
|
|
|
2
2
|
export * from './enums/OnboardingStepStatusEnum';
|
|
3
3
|
export * from './enums/OnboardingAccountStatusEnum';
|
|
4
4
|
export * from './enums/OnboardingAccountReasonEnum';
|
|
5
|
+
export * from './enums/OnboardingAccountMessageKeyEnum';
|
|
5
6
|
export * from './dtos/responses/OnboardingStepsResponse';
|
package/bin/onboarding/index.js
CHANGED
|
@@ -19,5 +19,6 @@ __exportStar(require("./enums/OnboardingStepIdEnum"), exports);
|
|
|
19
19
|
__exportStar(require("./enums/OnboardingStepStatusEnum"), exports);
|
|
20
20
|
__exportStar(require("./enums/OnboardingAccountStatusEnum"), exports);
|
|
21
21
|
__exportStar(require("./enums/OnboardingAccountReasonEnum"), exports);
|
|
22
|
+
__exportStar(require("./enums/OnboardingAccountMessageKeyEnum"), exports);
|
|
22
23
|
// Response DTOs
|
|
23
24
|
__exportStar(require("./dtos/responses/OnboardingStepsResponse"), exports);
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PeopleResponse } from '../../identity/dtos/PeopleResponse';
|
|
2
|
+
/**
|
|
3
|
+
* Fila de AccountRequirementControl_GT, con el mismo shape que identity ya publica anidado
|
|
4
|
+
* dentro de PeopleResponse.
|
|
5
|
+
*/
|
|
6
|
+
export type AccountRequirementControlRecord = PeopleResponse['accountRequirementControl'];
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { AccountRequirementControlRecord } from './AccountRequirementControlRecord';
|
|
2
|
+
import { PeopleRecord } from './PeopleRecord';
|
|
3
|
+
/**
|
|
4
|
+
* Un peopleId del lote con lo que se encontró de él. Cada tabla viene en null si no se pidió
|
|
5
|
+
* en el include o si esa tabla no tiene fila para ese id.
|
|
6
|
+
*/
|
|
7
|
+
export declare class PeopleBatchItem {
|
|
8
|
+
id: string;
|
|
9
|
+
people: PeopleRecord | null;
|
|
10
|
+
accountRequirementControl: AccountRequirementControlRecord | null;
|
|
11
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PeopleBatchItem = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Un peopleId del lote con lo que se encontró de él. Cada tabla viene en null si no se pidió
|
|
6
|
+
* en el include o si esa tabla no tiene fila para ese id.
|
|
7
|
+
*/
|
|
8
|
+
class PeopleBatchItem {
|
|
9
|
+
}
|
|
10
|
+
exports.PeopleBatchItem = PeopleBatchItem;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PeopleBatchItem } from './PeopleBatchItem';
|
|
2
|
+
/**
|
|
3
|
+
* Respuesta del lote. `items` sale en el orden en que llegaron los ids; `notFound` lista los
|
|
4
|
+
* que ninguna de las tablas pedidas devolvió, porque DynamoDB no avisa cuáles faltaron.
|
|
5
|
+
*/
|
|
6
|
+
export declare class PeopleBatchResponse {
|
|
7
|
+
items: PeopleBatchItem[];
|
|
8
|
+
notFound: string[];
|
|
9
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PeopleBatchResponse = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Respuesta del lote. `items` sale en el orden en que llegaron los ids; `notFound` lista los
|
|
6
|
+
* que ninguna de las tablas pedidas devolvió, porque DynamoDB no avisa cuáles faltaron.
|
|
7
|
+
*/
|
|
8
|
+
class PeopleBatchResponse {
|
|
9
|
+
}
|
|
10
|
+
exports.PeopleBatchResponse = PeopleBatchResponse;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PeopleBatchIncludeEnum = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Tabla que el lector quiere en el lote. Ausente = las dos.
|
|
6
|
+
*/
|
|
7
|
+
var PeopleBatchIncludeEnum;
|
|
8
|
+
(function (PeopleBatchIncludeEnum) {
|
|
9
|
+
PeopleBatchIncludeEnum["PEOPLE"] = "people";
|
|
10
|
+
PeopleBatchIncludeEnum["ACCOUNT"] = "account";
|
|
11
|
+
})(PeopleBatchIncludeEnum || (exports.PeopleBatchIncludeEnum = PeopleBatchIncludeEnum = {}));
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./enums/PeopleBatchIncludeEnum"), exports);
|
|
18
|
+
__exportStar(require("./dtos/PeopleRecord"), exports);
|
|
19
|
+
__exportStar(require("./dtos/AccountRequirementControlRecord"), exports);
|
|
20
|
+
__exportStar(require("./dtos/PeopleBatchItem"), exports);
|
|
21
|
+
__exportStar(require("./dtos/PeopleBatchResponse"), exports);
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { CurrencyId } from '../../currency/enums/CurrencyId';
|
|
2
|
+
/**
|
|
3
|
+
* Comisión que cobra un punto de cash-in (lo que el lambda MUESTRA, no cobra).
|
|
4
|
+
* - GreenDot (US): representativo por cadena → `fixed` + `cap` (cada tienda cobra hasta el tope).
|
|
5
|
+
* - Passport (MX): por red → `fixed` + `percentage`.
|
|
6
|
+
* Response DTO — sin decoradores de validación.
|
|
7
|
+
*/
|
|
8
|
+
export declare class CashInFeeDto {
|
|
9
|
+
/** Comisión fija, en la moneda del país. */
|
|
10
|
+
fixed?: number;
|
|
11
|
+
/** Porcentaje del monto depositado (0–100). */
|
|
12
|
+
percentage?: number;
|
|
13
|
+
/** Tope máximo de comisión (GreenDot: el asociado cobra hasta este cap). */
|
|
14
|
+
cap?: number;
|
|
15
|
+
/** Moneda del fee: USD (GreenDot) | MXN (Passport). */
|
|
16
|
+
currency: CurrencyId;
|
|
17
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CashInFeeDto = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Comisión que cobra un punto de cash-in (lo que el lambda MUESTRA, no cobra).
|
|
6
|
+
* - GreenDot (US): representativo por cadena → `fixed` + `cap` (cada tienda cobra hasta el tope).
|
|
7
|
+
* - Passport (MX): por red → `fixed` + `percentage`.
|
|
8
|
+
* Response DTO — sin decoradores de validación.
|
|
9
|
+
*/
|
|
10
|
+
class CashInFeeDto {
|
|
11
|
+
}
|
|
12
|
+
exports.CashInFeeDto = CashInFeeDto;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Body del PUT /me/profile/complete (autenticado, gate post-MFA del autoregistro). DEC-RBAC-034.
|
|
3
|
+
* Opera sobre el propio usuario (cognitoSub del token). Valida nombre + los `userFieldDefs` requeridos
|
|
4
|
+
* del tenant (422 MISSING_REQUIRED_FIELDS si faltan) y flipea `profileComplete=true`.
|
|
5
|
+
*/
|
|
6
|
+
export declare class CompleteMyProfileRequest {
|
|
7
|
+
displayName: string;
|
|
8
|
+
customFields?: Record<string, string>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
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.CompleteMyProfileRequest = void 0;
|
|
13
|
+
const class_transformer_1 = require("class-transformer");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
/**
|
|
16
|
+
* Body del PUT /me/profile/complete (autenticado, gate post-MFA del autoregistro). DEC-RBAC-034.
|
|
17
|
+
* Opera sobre el propio usuario (cognitoSub del token). Valida nombre + los `userFieldDefs` requeridos
|
|
18
|
+
* del tenant (422 MISSING_REQUIRED_FIELDS si faltan) y flipea `profileComplete=true`.
|
|
19
|
+
*/
|
|
20
|
+
class CompleteMyProfileRequest {
|
|
21
|
+
}
|
|
22
|
+
exports.CompleteMyProfileRequest = CompleteMyProfileRequest;
|
|
23
|
+
__decorate([
|
|
24
|
+
(0, class_transformer_1.Expose)(),
|
|
25
|
+
(0, class_validator_1.IsString)(),
|
|
26
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
27
|
+
__metadata("design:type", String)
|
|
28
|
+
], CompleteMyProfileRequest.prototype, "displayName", void 0);
|
|
29
|
+
__decorate([
|
|
30
|
+
(0, class_transformer_1.Expose)(),
|
|
31
|
+
(0, class_validator_1.IsOptional)(),
|
|
32
|
+
(0, class_validator_1.IsObject)(),
|
|
33
|
+
__metadata("design:type", Object)
|
|
34
|
+
], CompleteMyProfileRequest.prototype, "customFields", void 0);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Body para cancelar una referencia de funding ya creada. La referencia/fundingId
|
|
3
|
+
* viaja en la URL (`/funding/{moduleName}/{fundingId}/cancel`); este body aporta
|
|
4
|
+
* el contexto del solicitante + idempotencia.
|
|
5
|
+
*
|
|
6
|
+
* NOTA: shape inferido desde el uso en `@fiado/api-invoker`
|
|
7
|
+
* (benefits-marketplace / equality-connector) — confirmar con el dueño del
|
|
8
|
+
* módulo walletFunding / el lambda equality-connector que implementa el cancel.
|
|
9
|
+
*/
|
|
10
|
+
export declare class CancelFundingReferenceRequest {
|
|
11
|
+
directoryId: string;
|
|
12
|
+
reason?: string;
|
|
13
|
+
idempotencyKey: string;
|
|
14
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
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.CancelFundingReferenceRequest = void 0;
|
|
13
|
+
const class_validator_1 = require("class-validator");
|
|
14
|
+
/**
|
|
15
|
+
* Body para cancelar una referencia de funding ya creada. La referencia/fundingId
|
|
16
|
+
* viaja en la URL (`/funding/{moduleName}/{fundingId}/cancel`); este body aporta
|
|
17
|
+
* el contexto del solicitante + idempotencia.
|
|
18
|
+
*
|
|
19
|
+
* NOTA: shape inferido desde el uso en `@fiado/api-invoker`
|
|
20
|
+
* (benefits-marketplace / equality-connector) — confirmar con el dueño del
|
|
21
|
+
* módulo walletFunding / el lambda equality-connector que implementa el cancel.
|
|
22
|
+
*/
|
|
23
|
+
class CancelFundingReferenceRequest {
|
|
24
|
+
}
|
|
25
|
+
exports.CancelFundingReferenceRequest = CancelFundingReferenceRequest;
|
|
26
|
+
__decorate([
|
|
27
|
+
(0, class_validator_1.IsString)(),
|
|
28
|
+
(0, class_validator_1.MaxLength)(64),
|
|
29
|
+
__metadata("design:type", String)
|
|
30
|
+
], CancelFundingReferenceRequest.prototype, "directoryId", void 0);
|
|
31
|
+
__decorate([
|
|
32
|
+
(0, class_validator_1.IsOptional)(),
|
|
33
|
+
(0, class_validator_1.IsString)(),
|
|
34
|
+
(0, class_validator_1.MaxLength)(256),
|
|
35
|
+
__metadata("design:type", String)
|
|
36
|
+
], CancelFundingReferenceRequest.prototype, "reason", void 0);
|
|
37
|
+
__decorate([
|
|
38
|
+
(0, class_validator_1.IsString)(),
|
|
39
|
+
(0, class_validator_1.MaxLength)(64),
|
|
40
|
+
__metadata("design:type", String)
|
|
41
|
+
], CancelFundingReferenceRequest.prototype, "idempotencyKey", void 0);
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { BenefitPaymentStatusEnum } from "../../benefitCenter/enums/BenefitPaymentStatusEnum";
|
|
2
|
+
import { WalletFundingErrorCodeEnum } from "../enums/WalletFundingErrorCodeEnum";
|
|
3
|
+
/**
|
|
4
|
+
* Respuesta de la cancelación de una referencia de funding. Mismo estilo que
|
|
5
|
+
* CreateFundingReferenceResponse.
|
|
6
|
+
*
|
|
7
|
+
* NOTA: shape inferido desde el uso en `@fiado/api-invoker` — confirmar con el
|
|
8
|
+
* dueño del módulo walletFunding / el lambda equality-connector.
|
|
9
|
+
*/
|
|
10
|
+
export declare class CancelFundingReferenceResponse {
|
|
11
|
+
/** Referencia cancelada (misma PK que se creó). */
|
|
12
|
+
reference: string;
|
|
13
|
+
status: BenefitPaymentStatusEnum;
|
|
14
|
+
errorCode?: WalletFundingErrorCodeEnum;
|
|
15
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CancelFundingReferenceResponse = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Respuesta de la cancelación de una referencia de funding. Mismo estilo que
|
|
6
|
+
* CreateFundingReferenceResponse.
|
|
7
|
+
*
|
|
8
|
+
* NOTA: shape inferido desde el uso en `@fiado/api-invoker` — confirmar con el
|
|
9
|
+
* dueño del módulo walletFunding / el lambda equality-connector.
|
|
10
|
+
*/
|
|
11
|
+
class CancelFundingReferenceResponse {
|
|
12
|
+
}
|
|
13
|
+
exports.CancelFundingReferenceResponse = CancelFundingReferenceResponse;
|
|
@@ -0,0 +1,21 @@
|
|
|
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.CancelWalletFundingRequest = void 0;
|
|
13
|
+
const class_validator_1 = require("class-validator");
|
|
14
|
+
class CancelWalletFundingRequest {
|
|
15
|
+
}
|
|
16
|
+
exports.CancelWalletFundingRequest = CancelWalletFundingRequest;
|
|
17
|
+
__decorate([
|
|
18
|
+
(0, class_validator_1.IsString)(),
|
|
19
|
+
(0, class_validator_1.MaxLength)(64),
|
|
20
|
+
__metadata("design:type", String)
|
|
21
|
+
], CancelWalletFundingRequest.prototype, "idempotencyKey", void 0);
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { BenefitPaymentStatusEnum } from "../../benefitCenter/enums/BenefitPaymentStatusEnum";
|
|
2
|
+
import { WalletFundingErrorCodeEnum } from "../enums/WalletFundingErrorCodeEnum";
|
|
3
|
+
export declare class CancelWalletFundingResponse {
|
|
4
|
+
status: BenefitPaymentStatusEnum;
|
|
5
|
+
errorCode?: WalletFundingErrorCodeEnum;
|
|
6
|
+
fundingId?: string;
|
|
7
|
+
}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -166,3 +166,5 @@ export * as Collection from './collection';
|
|
|
166
166
|
// UserConfirmations: contrato del motor de confirmaciones pendientes (people-business ↔ app) —
|
|
167
167
|
// la app consulta qué confirmaciones mostrar al usuario (verificar email, …) y reporta descartes.
|
|
168
168
|
export * as UserConfirmations from './userConfirmations';
|
|
169
|
+
// PeopleBusiness: contrato de lectura por lote de People_GT + AccountRequirementControl_GT.
|
|
170
|
+
export * as PeopleBusiness from './peopleBusiness';
|
|
@@ -3,6 +3,7 @@ import { OnboardingStepIdEnum } from '../../enums/OnboardingStepIdEnum';
|
|
|
3
3
|
import { OnboardingStepStatusEnum } from '../../enums/OnboardingStepStatusEnum';
|
|
4
4
|
import { OnboardingAccountStatusEnum } from '../../enums/OnboardingAccountStatusEnum';
|
|
5
5
|
import { OnboardingAccountReasonEnum } from '../../enums/OnboardingAccountReasonEnum';
|
|
6
|
+
import { OnboardingAccountMessageKeyEnum } from '../../enums/OnboardingAccountMessageKeyEnum';
|
|
6
7
|
|
|
7
8
|
/**
|
|
8
9
|
* Un paso: `id` + `status` y nada más. Sin motivo, sin metadata y sin lado (DEC-012 de
|
|
@@ -25,6 +26,22 @@ export class OnboardingAccountDto {
|
|
|
25
26
|
status!: OnboardingAccountStatusEnum;
|
|
26
27
|
/** `null` cuando no hay nada que explicar. */
|
|
27
28
|
reason!: OnboardingAccountReasonEnum | null;
|
|
29
|
+
/**
|
|
30
|
+
* Clave del mensaje de Fido para ESTA cuenta. El consumidor la usa TAL CUAL para buscar el copy en
|
|
31
|
+
* Firebase Remote Config, sin componerla ni interpretar `status`/`reason`.
|
|
32
|
+
*
|
|
33
|
+
* NO es `status` y `reason` concatenados: es el nombre del mensaje del catálogo que ya existe en
|
|
34
|
+
* Remote Config, para que esa configuración no haya que reescribirla. Varias combinaciones caen a
|
|
35
|
+
* propósito en la misma clave — `REJECTED:BLACKLIST` y `REJECTED:DUPLICATE_USER` son las dos
|
|
36
|
+
* `CANNOT_OPEN`, porque a las dos personas se les dice lo mismo.
|
|
37
|
+
*
|
|
38
|
+
* Va **por cuenta** y no como valor global porque el estado es por cuenta: un usuario con las dos
|
|
39
|
+
* cuentas puede tener una rechazada y la otra en curso, y cada una necesita su propio mensaje.
|
|
40
|
+
*
|
|
41
|
+
* OJO con el catálogo viejo: tenía un segundo nivel indexado por país. Ese nivel ya no aplica — el
|
|
42
|
+
* mensaje depende del estado de la cuenta, no del país, y cada cuenta trae su clave.
|
|
43
|
+
*/
|
|
44
|
+
key!: OnboardingAccountMessageKeyEnum;
|
|
28
45
|
}
|
|
29
46
|
|
|
30
47
|
/**
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Clave del mensaje de Fido que el consumidor busca en Firebase Remote Config.
|
|
3
|
+
*
|
|
4
|
+
* NO es `status`/`reason` concatenados: es el nombre del mensaje del catálogo que YA existe en Remote
|
|
5
|
+
* Config, para que el backend pueda mandar la clave sin que haya que reescribir esa configuración.
|
|
6
|
+
* Varias combinaciones de estado caen en el mismo mensaje a propósito — a la persona rechazada por
|
|
7
|
+
* lista negra y a la rechazada por duplicado se les dice lo mismo.
|
|
8
|
+
*
|
|
9
|
+
* El catálogo viejo estaba indexado por `MESSAGE.FIDO` del motor legacy y, en un segundo nivel, por
|
|
10
|
+
* país. El segundo nivel deja de usarse: el mensaje ya no depende del país sino del estado de la
|
|
11
|
+
* cuenta, y cada cuenta trae su propia clave.
|
|
12
|
+
*/
|
|
13
|
+
export enum OnboardingAccountMessageKeyEnum {
|
|
14
|
+
/** La cuenta ya está abierta. Es el CTA que dispara la firma de contratos. */
|
|
15
|
+
ACCOUNT_CREATED = 'ACCOUNT_CREATED',
|
|
16
|
+
/** No se puede abrir la cuenta: lista negra, duplicado o rechazo del proveedor. */
|
|
17
|
+
CANNOT_OPEN = 'CANNOT_OPEN',
|
|
18
|
+
/** El documento no sirvió y la persona puede volver a subirlo. */
|
|
19
|
+
UPLOAD_IDENTIFICATION_AGAIN = 'UPLOAD_IDENTIFICATION_AGAIN',
|
|
20
|
+
/** Verificación del documento en curso: no hay nada que la persona pueda hacer. */
|
|
21
|
+
INFO_VERIFICATION_IN_PROCESS = 'INFO_VERIFICATION_IN_PROCESS',
|
|
22
|
+
/** El proveedor está revisando. Tampoco hay acción del usuario. */
|
|
23
|
+
KEEP_CALM = 'KEEP_CALM',
|
|
24
|
+
/**
|
|
25
|
+
* El proveedor espera que la persona conteste las preguntas de validación (OOW).
|
|
26
|
+
*
|
|
27
|
+
* CLAVE NUEVA: el catálogo viejo no tenía un mensaje para este caso. No se reusó `KEEP_CALM`
|
|
28
|
+
* porque diría lo contrario de lo que corresponde — ahí la pelota está del lado del usuario, no
|
|
29
|
+
* del nuestro. **Hay que darle de alta el copy en Remote Config**; hasta entonces el consumidor
|
|
30
|
+
* cae a su texto por defecto.
|
|
31
|
+
*/
|
|
32
|
+
ANSWER_VERIFICATION_QUESTIONS = 'ANSWER_VERIFICATION_QUESTIONS',
|
|
33
|
+
/** Trámite en curso, esperando que la persona complete sus pasos. */
|
|
34
|
+
COMPLETE_YOUR_INFORMATION = 'COMPLETE_YOUR_INFORMATION'
|
|
35
|
+
}
|
package/src/onboarding/index.ts
CHANGED
|
@@ -3,6 +3,7 @@ export * from './enums/OnboardingStepIdEnum';
|
|
|
3
3
|
export * from './enums/OnboardingStepStatusEnum';
|
|
4
4
|
export * from './enums/OnboardingAccountStatusEnum';
|
|
5
5
|
export * from './enums/OnboardingAccountReasonEnum';
|
|
6
|
+
export * from './enums/OnboardingAccountMessageKeyEnum';
|
|
6
7
|
|
|
7
8
|
// Response DTOs
|
|
8
9
|
export * from './dtos/responses/OnboardingStepsResponse';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { PeopleResponse } from '../../identity/dtos/PeopleResponse';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Fila de AccountRequirementControl_GT, con el mismo shape que identity ya publica anidado
|
|
5
|
+
* dentro de PeopleResponse.
|
|
6
|
+
*/
|
|
7
|
+
export type AccountRequirementControlRecord = PeopleResponse['accountRequirementControl'];
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AccountRequirementControlRecord } from './AccountRequirementControlRecord';
|
|
2
|
+
import { PeopleRecord } from './PeopleRecord';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Un peopleId del lote con lo que se encontró de él. Cada tabla viene en null si no se pidió
|
|
6
|
+
* en el include o si esa tabla no tiene fila para ese id.
|
|
7
|
+
*/
|
|
8
|
+
export class PeopleBatchItem {
|
|
9
|
+
id!: string;
|
|
10
|
+
people!: PeopleRecord | null;
|
|
11
|
+
accountRequirementControl!: AccountRequirementControlRecord | null;
|
|
12
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { PeopleBatchItem } from './PeopleBatchItem';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Respuesta del lote. `items` sale en el orden en que llegaron los ids; `notFound` lista los
|
|
5
|
+
* que ninguna de las tablas pedidas devolvió, porque DynamoDB no avisa cuáles faltaron.
|
|
6
|
+
*/
|
|
7
|
+
export class PeopleBatchResponse {
|
|
8
|
+
items!: PeopleBatchItem[];
|
|
9
|
+
notFound!: string[];
|
|
10
|
+
}
|