@fiado/type-kit 3.120.0 → 3.121.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/cognitoBackofficeConnector/dtos/MfaPoolConfig.d.ts +7 -0
- package/bin/cognitoBackofficeConnector/dtos/MfaPoolConfig.js +36 -0
- package/bin/cognitoBackofficeConnector/dtos/PoolConfigResponse.d.ts +20 -0
- package/bin/cognitoBackofficeConnector/dtos/PoolConfigResponse.js +11 -0
- package/bin/cognitoBackofficeConnector/dtos/PoolsListResponse.d.ts +4 -0
- package/bin/cognitoBackofficeConnector/dtos/PoolsListResponse.js +6 -0
- package/bin/cognitoBackofficeConnector/validators/MfaTypesRequiresOne.d.ts +17 -0
- package/bin/cognitoBackofficeConnector/validators/MfaTypesRequiresOne.js +39 -0
- package/bin/rbac/enums/PoolKind.d.ts +16 -0
- package/bin/rbac/enums/PoolKind.js +20 -0
- package/bin/rbac/index.d.ts +1 -0
- package/bin/rbac/index.js +17 -0
- package/bin/remittance/dtos/internal/RemittanceCreditBackRequest.d.ts +28 -0
- package/bin/remittance/dtos/internal/RemittanceCreditBackRequest.js +80 -0
- package/bin/remittance/dtos/internal/RemittanceCreditBackResponse.d.ts +12 -0
- package/bin/remittance/dtos/internal/RemittanceCreditBackResponse.js +7 -0
- package/bin/remittance/enums/FeeAbsorbedByEnum.d.ts +4 -0
- package/bin/remittance/enums/FeeAbsorbedByEnum.js +8 -0
- package/bin/remittance/enums/RemittanceCancelOutcomeEnum.d.ts +4 -0
- package/bin/remittance/enums/RemittanceCancelOutcomeEnum.js +8 -0
- package/bin/remittance/enums/RemittanceCancelledByEnum.d.ts +4 -0
- package/bin/remittance/enums/RemittanceCancelledByEnum.js +9 -0
- package/bin/remittance/enums/RemittanceTxStatus.d.ts +1 -0
- package/bin/remittance/enums/RemittanceTxStatus.js +1 -0
- package/bin/remittance/enums/index.d.ts +3 -0
- package/bin/remittance/enums/index.js +3 -0
- package/bin/remittance/index.d.ts +2 -0
- package/bin/remittance/index.js +2 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceRequest.d.ts +5 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceRequest.js +31 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceResponse.d.ts +7 -0
- package/bin/walletFunding/dtos/CancelFundingReferenceResponse.js +6 -0
- package/bin/walletFunding/dtos/CancelFundingRequest.d.ts +11 -0
- package/bin/walletFunding/dtos/CancelFundingRequest.js +33 -0
- package/bin/walletFunding/dtos/CancelFundingResponse.d.ts +14 -0
- package/bin/walletFunding/dtos/CancelFundingResponse.js +12 -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/remittance/dtos/internal/RemittanceCreditBackRequest.ts +61 -0
- package/src/remittance/dtos/internal/RemittanceCreditBackResponse.ts +13 -0
- package/src/remittance/enums/FeeAbsorbedByEnum.ts +4 -0
- package/src/remittance/enums/RemittanceCancelOutcomeEnum.ts +4 -0
- package/src/remittance/enums/RemittanceCancelledByEnum.ts +5 -0
- package/src/remittance/enums/RemittanceTxStatus.ts +1 -0
- package/src/remittance/enums/index.ts +3 -0
- package/src/remittance/index.ts +2 -0
|
@@ -0,0 +1,36 @@
|
|
|
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.MfaPoolConfig = void 0;
|
|
13
|
+
const class_transformer_1 = require("class-transformer");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
const MfaTypesRequiresOne_1 = require("../validators/MfaTypesRequiresOne");
|
|
16
|
+
// EMAIL_OTP removido (3.41.0): el cognito-backoffice-connector no provisiona
|
|
17
|
+
// EmailMfaConfiguration a nivel pool (requiere infra SES que no está montada
|
|
18
|
+
// y la integración con messages-lambda aún no tiene diseño). Ver TD-020 +
|
|
19
|
+
// DEC-001 en cognito-backoffice-connector/docs/. Si se reintroduce, agregar
|
|
20
|
+
// 'EMAIL_OTP' a este array.
|
|
21
|
+
const ALLOWED_MFA_TYPES = ['SOFTWARE_TOKEN_MFA'];
|
|
22
|
+
class MfaPoolConfig {
|
|
23
|
+
}
|
|
24
|
+
exports.MfaPoolConfig = MfaPoolConfig;
|
|
25
|
+
__decorate([
|
|
26
|
+
(0, class_transformer_1.Expose)(),
|
|
27
|
+
(0, class_validator_1.IsBoolean)(),
|
|
28
|
+
__metadata("design:type", Boolean)
|
|
29
|
+
], MfaPoolConfig.prototype, "requireMfa", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
(0, class_transformer_1.Expose)(),
|
|
32
|
+
(0, class_validator_1.IsArray)(),
|
|
33
|
+
(0, class_validator_1.IsIn)(ALLOWED_MFA_TYPES, { each: true }),
|
|
34
|
+
(0, class_validator_1.Validate)(MfaTypesRequiresOne_1.MfaTypesRequiresOne),
|
|
35
|
+
__metadata("design:type", Array)
|
|
36
|
+
], MfaPoolConfig.prototype, "mfaTypes", void 0);
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { PoolKind } from '../../rbac/enums/PoolKind';
|
|
2
|
+
/**
|
|
3
|
+
* Shape del `PoolConfigRow` expuesto al caller (BFF M18 / otros lambdas Fiado).
|
|
4
|
+
* Refleja la configuración de un Cognito User Pool registrado en la tabla
|
|
5
|
+
* `PoolConfigs_GT` del lambda `cognito-backoffice-connector`.
|
|
6
|
+
*/
|
|
7
|
+
export declare class PoolConfigResponse {
|
|
8
|
+
userPoolId: string;
|
|
9
|
+
userPoolArn: string;
|
|
10
|
+
region: string;
|
|
11
|
+
poolKind: PoolKind;
|
|
12
|
+
displayName: string;
|
|
13
|
+
appClients: Record<string, {
|
|
14
|
+
clientId: string;
|
|
15
|
+
clientName: string;
|
|
16
|
+
}>;
|
|
17
|
+
status: 'active' | 'deprecated';
|
|
18
|
+
createdAt: number;
|
|
19
|
+
updatedAt: number;
|
|
20
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PoolConfigResponse = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Shape del `PoolConfigRow` expuesto al caller (BFF M18 / otros lambdas Fiado).
|
|
6
|
+
* Refleja la configuración de un Cognito User Pool registrado en la tabla
|
|
7
|
+
* `PoolConfigs_GT` del lambda `cognito-backoffice-connector`.
|
|
8
|
+
*/
|
|
9
|
+
class PoolConfigResponse {
|
|
10
|
+
}
|
|
11
|
+
exports.PoolConfigResponse = PoolConfigResponse;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ValidatorConstraintInterface, ValidationArguments } from 'class-validator';
|
|
2
|
+
/**
|
|
3
|
+
* Cross-field validator: si `requireMfa: true`, entonces `mfaTypes` debe tener
|
|
4
|
+
* al menos 1 elemento. Si `requireMfa: false`, `mfaTypes` puede ser vacío.
|
|
5
|
+
*
|
|
6
|
+
* Razón: cuando el pool nace con MFA habilitado, el connector llama
|
|
7
|
+
* `SetUserPoolMfaConfigCommand` con la lista de tipos del DTO. Si el array
|
|
8
|
+
* llega vacío con `requireMfa: true`, el SDK rechaza con InvalidParameterException
|
|
9
|
+
* y el pool queda en estado inconsistente (MfaConfiguration:'ON' sin tipos).
|
|
10
|
+
* Mejor rechazar en validación del DTO antes de tocar AWS.
|
|
11
|
+
*
|
|
12
|
+
* Ver pivote v1.4.1 TD-017 cerrado + spec doc §1 R3.
|
|
13
|
+
*/
|
|
14
|
+
export declare class MfaTypesRequiresOne implements ValidatorConstraintInterface {
|
|
15
|
+
validate(mfaTypes: unknown, args: ValidationArguments): boolean;
|
|
16
|
+
defaultMessage(): string;
|
|
17
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.MfaTypesRequiresOne = void 0;
|
|
10
|
+
const class_validator_1 = require("class-validator");
|
|
11
|
+
/**
|
|
12
|
+
* Cross-field validator: si `requireMfa: true`, entonces `mfaTypes` debe tener
|
|
13
|
+
* al menos 1 elemento. Si `requireMfa: false`, `mfaTypes` puede ser vacío.
|
|
14
|
+
*
|
|
15
|
+
* Razón: cuando el pool nace con MFA habilitado, el connector llama
|
|
16
|
+
* `SetUserPoolMfaConfigCommand` con la lista de tipos del DTO. Si el array
|
|
17
|
+
* llega vacío con `requireMfa: true`, el SDK rechaza con InvalidParameterException
|
|
18
|
+
* y el pool queda en estado inconsistente (MfaConfiguration:'ON' sin tipos).
|
|
19
|
+
* Mejor rechazar en validación del DTO antes de tocar AWS.
|
|
20
|
+
*
|
|
21
|
+
* Ver pivote v1.4.1 TD-017 cerrado + spec doc §1 R3.
|
|
22
|
+
*/
|
|
23
|
+
let MfaTypesRequiresOne = class MfaTypesRequiresOne {
|
|
24
|
+
validate(mfaTypes, args) {
|
|
25
|
+
const obj = args.object;
|
|
26
|
+
if (obj.requireMfa === true) {
|
|
27
|
+
return Array.isArray(mfaTypes) && mfaTypes.length >= 1;
|
|
28
|
+
}
|
|
29
|
+
// requireMfa: false → cualquier mfaTypes pasa.
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
defaultMessage() {
|
|
33
|
+
return 'mfaTypes requiere al menos un tipo cuando requireMfa=true';
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
exports.MfaTypesRequiresOne = MfaTypesRequiresOne;
|
|
37
|
+
exports.MfaTypesRequiresOne = MfaTypesRequiresOne = __decorate([
|
|
38
|
+
(0, class_validator_1.ValidatorConstraint)({ name: 'MfaTypesRequiresOneWhenMfaRequired', async: false })
|
|
39
|
+
], MfaTypesRequiresOne);
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tipo de User Pool de Cognito desde la perspectiva del modelo RBAC Fiado.
|
|
3
|
+
*
|
|
4
|
+
* Origen: spec del proyecto `cognito-backoffice-connector` (Fase 0, componente 01
|
|
5
|
+
* documento `docs/superpowers/specs/2026-05-26-cognito-connector-decisiones-pendientes-design.md`).
|
|
6
|
+
*
|
|
7
|
+
* Decisión (TD-003): el proyecto converge en estos 2 valores. El documento componente 03
|
|
8
|
+
* lista 3 valores (incluyendo una variante adicional) pero queda como outlier — la
|
|
9
|
+
* decisión vigente en los 6 docs restantes y en el plan de implementación es 2 valores:
|
|
10
|
+
* - BACKOFFICE_PLATFORM — pool del backoffice de plataforma (cross-tenant)
|
|
11
|
+
* - BACKOFFICE_TENANT — pool por tenant (multi-tenant isolation)
|
|
12
|
+
*/
|
|
13
|
+
export declare enum PoolKind {
|
|
14
|
+
BACKOFFICE_PLATFORM = "BACKOFFICE_PLATFORM",
|
|
15
|
+
BACKOFFICE_TENANT = "BACKOFFICE_TENANT"
|
|
16
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PoolKind = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Tipo de User Pool de Cognito desde la perspectiva del modelo RBAC Fiado.
|
|
6
|
+
*
|
|
7
|
+
* Origen: spec del proyecto `cognito-backoffice-connector` (Fase 0, componente 01
|
|
8
|
+
* documento `docs/superpowers/specs/2026-05-26-cognito-connector-decisiones-pendientes-design.md`).
|
|
9
|
+
*
|
|
10
|
+
* Decisión (TD-003): el proyecto converge en estos 2 valores. El documento componente 03
|
|
11
|
+
* lista 3 valores (incluyendo una variante adicional) pero queda como outlier — la
|
|
12
|
+
* decisión vigente en los 6 docs restantes y en el plan de implementación es 2 valores:
|
|
13
|
+
* - BACKOFFICE_PLATFORM — pool del backoffice de plataforma (cross-tenant)
|
|
14
|
+
* - BACKOFFICE_TENANT — pool por tenant (multi-tenant isolation)
|
|
15
|
+
*/
|
|
16
|
+
var PoolKind;
|
|
17
|
+
(function (PoolKind) {
|
|
18
|
+
PoolKind["BACKOFFICE_PLATFORM"] = "BACKOFFICE_PLATFORM";
|
|
19
|
+
PoolKind["BACKOFFICE_TENANT"] = "BACKOFFICE_TENANT";
|
|
20
|
+
})(PoolKind || (exports.PoolKind = PoolKind = {}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './enums/PoolKind';
|
|
@@ -0,0 +1,17 @@
|
|
|
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/PoolKind"), exports);
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { RemittanceCancelledByEnum } from "../../enums/RemittanceCancelledByEnum";
|
|
2
|
+
import { RemittanceCancelOutcomeEnum } from "../../enums/RemittanceCancelOutcomeEnum";
|
|
3
|
+
import { FeeAbsorbedByEnum } from "../../enums/FeeAbsorbedByEnum";
|
|
4
|
+
/**
|
|
5
|
+
* Request del credit-back de cancelacion. Lo emite uniteller-connector (cron F8)
|
|
6
|
+
* hacia el endpoint privado del processor POST remittance/credit-back, SOLO cuando
|
|
7
|
+
* UNIR confirma el outcome terminal (fondos de vuelta en el Wlp Wallet).
|
|
8
|
+
*/
|
|
9
|
+
export declare class RemittanceCreditBackRequest {
|
|
10
|
+
/** Llave de idempotencia del credit-back (= marketplaceTransactionNumber). */
|
|
11
|
+
idempotencyKey: string;
|
|
12
|
+
/** Transaction number de UNIR (trazabilidad). */
|
|
13
|
+
transactionNumber: string;
|
|
14
|
+
/** Tx del processor; sirve de relatedTransactionId del chargeback + correlacion /trx. */
|
|
15
|
+
marketplaceTransactionNumber: string;
|
|
16
|
+
/** Para resolver la cuenta CP del usuario (externalAccountId del chargeback). */
|
|
17
|
+
directoryId: string;
|
|
18
|
+
/** Monto principal (siempre se acredita). */
|
|
19
|
+
principalAmount: number;
|
|
20
|
+
/** Service fee de la remesa (se acredita solo si feeAbsorbedBy = FIADO). */
|
|
21
|
+
serviceFeeAmount: number;
|
|
22
|
+
currencyId: string;
|
|
23
|
+
cancelledBy: RemittanceCancelledByEnum;
|
|
24
|
+
cancelOutcome: RemittanceCancelOutcomeEnum;
|
|
25
|
+
feeAbsorbedBy: FeeAbsorbedByEnum;
|
|
26
|
+
cancelRequestedAt?: string;
|
|
27
|
+
cancelConfirmedAt?: string;
|
|
28
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
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.RemittanceCreditBackRequest = void 0;
|
|
13
|
+
const class_validator_1 = require("class-validator");
|
|
14
|
+
const RemittanceCancelledByEnum_1 = require("../../enums/RemittanceCancelledByEnum");
|
|
15
|
+
const RemittanceCancelOutcomeEnum_1 = require("../../enums/RemittanceCancelOutcomeEnum");
|
|
16
|
+
const FeeAbsorbedByEnum_1 = require("../../enums/FeeAbsorbedByEnum");
|
|
17
|
+
/**
|
|
18
|
+
* Request del credit-back de cancelacion. Lo emite uniteller-connector (cron F8)
|
|
19
|
+
* hacia el endpoint privado del processor POST remittance/credit-back, SOLO cuando
|
|
20
|
+
* UNIR confirma el outcome terminal (fondos de vuelta en el Wlp Wallet).
|
|
21
|
+
*/
|
|
22
|
+
class RemittanceCreditBackRequest {
|
|
23
|
+
}
|
|
24
|
+
exports.RemittanceCreditBackRequest = RemittanceCreditBackRequest;
|
|
25
|
+
__decorate([
|
|
26
|
+
(0, class_validator_1.IsString)(),
|
|
27
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
28
|
+
__metadata("design:type", String)
|
|
29
|
+
], RemittanceCreditBackRequest.prototype, "idempotencyKey", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
(0, class_validator_1.IsString)(),
|
|
32
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
33
|
+
__metadata("design:type", String)
|
|
34
|
+
], RemittanceCreditBackRequest.prototype, "transactionNumber", void 0);
|
|
35
|
+
__decorate([
|
|
36
|
+
(0, class_validator_1.IsString)(),
|
|
37
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
38
|
+
__metadata("design:type", String)
|
|
39
|
+
], RemittanceCreditBackRequest.prototype, "marketplaceTransactionNumber", void 0);
|
|
40
|
+
__decorate([
|
|
41
|
+
(0, class_validator_1.IsString)(),
|
|
42
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
43
|
+
__metadata("design:type", String)
|
|
44
|
+
], RemittanceCreditBackRequest.prototype, "directoryId", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
(0, class_validator_1.IsNumber)(),
|
|
47
|
+
(0, class_validator_1.IsPositive)(),
|
|
48
|
+
__metadata("design:type", Number)
|
|
49
|
+
], RemittanceCreditBackRequest.prototype, "principalAmount", void 0);
|
|
50
|
+
__decorate([
|
|
51
|
+
(0, class_validator_1.IsNumber)(),
|
|
52
|
+
__metadata("design:type", Number)
|
|
53
|
+
], RemittanceCreditBackRequest.prototype, "serviceFeeAmount", void 0);
|
|
54
|
+
__decorate([
|
|
55
|
+
(0, class_validator_1.IsString)(),
|
|
56
|
+
(0, class_validator_1.IsNotEmpty)(),
|
|
57
|
+
__metadata("design:type", String)
|
|
58
|
+
], RemittanceCreditBackRequest.prototype, "currencyId", void 0);
|
|
59
|
+
__decorate([
|
|
60
|
+
(0, class_validator_1.IsEnum)(RemittanceCancelledByEnum_1.RemittanceCancelledByEnum),
|
|
61
|
+
__metadata("design:type", String)
|
|
62
|
+
], RemittanceCreditBackRequest.prototype, "cancelledBy", void 0);
|
|
63
|
+
__decorate([
|
|
64
|
+
(0, class_validator_1.IsEnum)(RemittanceCancelOutcomeEnum_1.RemittanceCancelOutcomeEnum),
|
|
65
|
+
__metadata("design:type", String)
|
|
66
|
+
], RemittanceCreditBackRequest.prototype, "cancelOutcome", void 0);
|
|
67
|
+
__decorate([
|
|
68
|
+
(0, class_validator_1.IsEnum)(FeeAbsorbedByEnum_1.FeeAbsorbedByEnum),
|
|
69
|
+
__metadata("design:type", String)
|
|
70
|
+
], RemittanceCreditBackRequest.prototype, "feeAbsorbedBy", void 0);
|
|
71
|
+
__decorate([
|
|
72
|
+
(0, class_validator_1.IsString)(),
|
|
73
|
+
(0, class_validator_1.IsOptional)(),
|
|
74
|
+
__metadata("design:type", String)
|
|
75
|
+
], RemittanceCreditBackRequest.prototype, "cancelRequestedAt", void 0);
|
|
76
|
+
__decorate([
|
|
77
|
+
(0, class_validator_1.IsString)(),
|
|
78
|
+
(0, class_validator_1.IsOptional)(),
|
|
79
|
+
__metadata("design:type", String)
|
|
80
|
+
], RemittanceCreditBackRequest.prototype, "cancelConfirmedAt", void 0);
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { RemittanceTxStatus } from "../../enums/RemittanceTxStatus";
|
|
2
|
+
/** Respuesta del credit-back: confirma el credito ejecutado en CP + estado final. */
|
|
3
|
+
export declare class RemittanceCreditBackResponse {
|
|
4
|
+
/** Estado final de la remesa tras el credit-back (CANCELLED si VOID, REFUND si REFUND). */
|
|
5
|
+
status: RemittanceTxStatus;
|
|
6
|
+
/** Monto efectivamente acreditado al cliente. */
|
|
7
|
+
creditedAmount: number;
|
|
8
|
+
/** Id del credito generado en CP (chargeback) — para auditoria/conciliacion. */
|
|
9
|
+
cpCreditTransactionId?: string;
|
|
10
|
+
/** True si el credit-back ya existia (idempotencia) y no se re-ejecuto. */
|
|
11
|
+
alreadyProcessed: boolean;
|
|
12
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RemittanceCreditBackResponse = void 0;
|
|
4
|
+
/** Respuesta del credit-back: confirma el credito ejecutado en CP + estado final. */
|
|
5
|
+
class RemittanceCreditBackResponse {
|
|
6
|
+
}
|
|
7
|
+
exports.RemittanceCreditBackResponse = RemittanceCreditBackResponse;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FeeAbsorbedByEnum = void 0;
|
|
4
|
+
var FeeAbsorbedByEnum;
|
|
5
|
+
(function (FeeAbsorbedByEnum) {
|
|
6
|
+
FeeAbsorbedByEnum["CLIENT"] = "CLIENT";
|
|
7
|
+
FeeAbsorbedByEnum["FIADO"] = "FIADO";
|
|
8
|
+
})(FeeAbsorbedByEnum || (exports.FeeAbsorbedByEnum = FeeAbsorbedByEnum = {}));
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RemittanceCancelOutcomeEnum = void 0;
|
|
4
|
+
var RemittanceCancelOutcomeEnum;
|
|
5
|
+
(function (RemittanceCancelOutcomeEnum) {
|
|
6
|
+
RemittanceCancelOutcomeEnum["VOID"] = "VOID";
|
|
7
|
+
RemittanceCancelOutcomeEnum["REFUND"] = "REFUND";
|
|
8
|
+
})(RemittanceCancelOutcomeEnum || (exports.RemittanceCancelOutcomeEnum = RemittanceCancelOutcomeEnum = {}));
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RemittanceCancelledByEnum = void 0;
|
|
4
|
+
var RemittanceCancelledByEnum;
|
|
5
|
+
(function (RemittanceCancelledByEnum) {
|
|
6
|
+
RemittanceCancelledByEnum["USER"] = "USER";
|
|
7
|
+
RemittanceCancelledByEnum["SYSTEM"] = "SYSTEM";
|
|
8
|
+
// FIADO_ERROR — diferido a fase posterior (sin flujo Fiado que cancele en v1).
|
|
9
|
+
})(RemittanceCancelledByEnum || (exports.RemittanceCancelledByEnum = RemittanceCancelledByEnum = {}));
|
|
@@ -3,6 +3,7 @@ export declare enum RemittanceTxStatus {
|
|
|
3
3
|
PAYABLE = "PAYABLE",
|
|
4
4
|
PAID = "PAID",
|
|
5
5
|
HOLD = "HOLD",
|
|
6
|
+
CANCELLATION_IN_PROGRESS = "CANCELLATION_IN_PROGRESS",// intermedio: cancel aceptado, esperando settlement + credit-back
|
|
6
7
|
CANCELLED = "CANCELLED",
|
|
7
8
|
REFUND = "REFUND"
|
|
8
9
|
}
|
|
@@ -7,6 +7,7 @@ var RemittanceTxStatus;
|
|
|
7
7
|
RemittanceTxStatus["PAYABLE"] = "PAYABLE";
|
|
8
8
|
RemittanceTxStatus["PAID"] = "PAID";
|
|
9
9
|
RemittanceTxStatus["HOLD"] = "HOLD";
|
|
10
|
+
RemittanceTxStatus["CANCELLATION_IN_PROGRESS"] = "CANCELLATION_IN_PROGRESS";
|
|
10
11
|
RemittanceTxStatus["CANCELLED"] = "CANCELLED";
|
|
11
12
|
RemittanceTxStatus["REFUND"] = "REFUND";
|
|
12
13
|
})(RemittanceTxStatus || (exports.RemittanceTxStatus = RemittanceTxStatus = {}));
|
|
@@ -2,3 +2,6 @@ export * from "./ReceptionMethod";
|
|
|
2
2
|
export * from "./RemittanceTxStatus";
|
|
3
3
|
export * from "./RemittanceCountryISO";
|
|
4
4
|
export * from "./RemittanceUserState";
|
|
5
|
+
export * from "./RemittanceCancelledByEnum";
|
|
6
|
+
export * from "./RemittanceCancelOutcomeEnum";
|
|
7
|
+
export * from "./FeeAbsorbedByEnum";
|
|
@@ -18,3 +18,6 @@ __exportStar(require("./ReceptionMethod"), exports);
|
|
|
18
18
|
__exportStar(require("./RemittanceTxStatus"), exports);
|
|
19
19
|
__exportStar(require("./RemittanceCountryISO"), exports);
|
|
20
20
|
__exportStar(require("./RemittanceUserState"), exports);
|
|
21
|
+
__exportStar(require("./RemittanceCancelledByEnum"), exports);
|
|
22
|
+
__exportStar(require("./RemittanceCancelOutcomeEnum"), exports);
|
|
23
|
+
__exportStar(require("./FeeAbsorbedByEnum"), exports);
|
package/bin/remittance/index.js
CHANGED
|
@@ -18,3 +18,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
18
18
|
__exportStar(require("./enums"), exports);
|
|
19
19
|
// DTOs
|
|
20
20
|
__exportStar(require("./dtos"), exports);
|
|
21
|
+
__exportStar(require("./dtos/internal/RemittanceCreditBackRequest"), exports);
|
|
22
|
+
__exportStar(require("./dtos/internal/RemittanceCreditBackResponse"), exports);
|
|
@@ -0,0 +1,31 @@
|
|
|
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
|
+
class CancelFundingReferenceRequest {
|
|
15
|
+
}
|
|
16
|
+
exports.CancelFundingReferenceRequest = CancelFundingReferenceRequest;
|
|
17
|
+
__decorate([
|
|
18
|
+
(0, class_validator_1.IsString)(),
|
|
19
|
+
(0, class_validator_1.MaxLength)(64),
|
|
20
|
+
__metadata("design:type", String)
|
|
21
|
+
], CancelFundingReferenceRequest.prototype, "fundingId", void 0);
|
|
22
|
+
__decorate([
|
|
23
|
+
(0, class_validator_1.IsString)(),
|
|
24
|
+
(0, class_validator_1.MaxLength)(64),
|
|
25
|
+
__metadata("design:type", String)
|
|
26
|
+
], CancelFundingReferenceRequest.prototype, "directoryId", void 0);
|
|
27
|
+
__decorate([
|
|
28
|
+
(0, class_validator_1.IsString)(),
|
|
29
|
+
(0, class_validator_1.MaxLength)(64),
|
|
30
|
+
__metadata("design:type", String)
|
|
31
|
+
], CancelFundingReferenceRequest.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 CancelFundingReferenceResponse {
|
|
4
|
+
fundingId: string;
|
|
5
|
+
status: BenefitPaymentStatusEnum;
|
|
6
|
+
errorCode?: WalletFundingErrorCodeEnum;
|
|
7
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Request del cancel via Centro de Beneficios (spec 13 v2.0).
|
|
3
|
+
* `fundingId` viaja en el path, `directoryId` se resuelve del JWT.
|
|
4
|
+
* `providerModuleName` permite al marketplace rutear al publisher correcto
|
|
5
|
+
* sin tener que persistir el mapping (el wallet-app sabe el moduleName
|
|
6
|
+
* porque vino en la respuesta del authorize).
|
|
7
|
+
*/
|
|
8
|
+
export declare class CancelFundingRequest {
|
|
9
|
+
idempotencyKey: string;
|
|
10
|
+
providerModuleName: string;
|
|
11
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
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.CancelFundingRequest = void 0;
|
|
13
|
+
const class_validator_1 = require("class-validator");
|
|
14
|
+
/**
|
|
15
|
+
* Request del cancel via Centro de Beneficios (spec 13 v2.0).
|
|
16
|
+
* `fundingId` viaja en el path, `directoryId` se resuelve del JWT.
|
|
17
|
+
* `providerModuleName` permite al marketplace rutear al publisher correcto
|
|
18
|
+
* sin tener que persistir el mapping (el wallet-app sabe el moduleName
|
|
19
|
+
* porque vino en la respuesta del authorize).
|
|
20
|
+
*/
|
|
21
|
+
class CancelFundingRequest {
|
|
22
|
+
}
|
|
23
|
+
exports.CancelFundingRequest = CancelFundingRequest;
|
|
24
|
+
__decorate([
|
|
25
|
+
(0, class_validator_1.IsString)(),
|
|
26
|
+
(0, class_validator_1.MaxLength)(64),
|
|
27
|
+
__metadata("design:type", String)
|
|
28
|
+
], CancelFundingRequest.prototype, "idempotencyKey", void 0);
|
|
29
|
+
__decorate([
|
|
30
|
+
(0, class_validator_1.IsString)(),
|
|
31
|
+
(0, class_validator_1.MaxLength)(128),
|
|
32
|
+
__metadata("design:type", String)
|
|
33
|
+
], CancelFundingRequest.prototype, "providerModuleName", void 0);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { BenefitPaymentStatusEnum } from "../../benefitCenter/enums/BenefitPaymentStatusEnum";
|
|
2
|
+
import { WalletFundingErrorCodeEnum } from "../enums/WalletFundingErrorCodeEnum";
|
|
3
|
+
/**
|
|
4
|
+
* Response del cancel via Centro de Beneficios (spec 13 v2.0).
|
|
5
|
+
* `status` reusa `BenefitPaymentStatusEnum` (APPROVED = cancel aceptado;
|
|
6
|
+
* REJECTED = no se pudo) para consistencia con `CancelFundingReferenceResponse`
|
|
7
|
+
* (marketplace ↔ connector). Idempotente: re-cancelar devuelve APPROVED.
|
|
8
|
+
*/
|
|
9
|
+
export declare class CancelFundingResponse {
|
|
10
|
+
fundingId: string;
|
|
11
|
+
status: BenefitPaymentStatusEnum;
|
|
12
|
+
errorCode?: WalletFundingErrorCodeEnum;
|
|
13
|
+
message?: string;
|
|
14
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CancelFundingResponse = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Response del cancel via Centro de Beneficios (spec 13 v2.0).
|
|
6
|
+
* `status` reusa `BenefitPaymentStatusEnum` (APPROVED = cancel aceptado;
|
|
7
|
+
* REJECTED = no se pudo) para consistencia con `CancelFundingReferenceResponse`
|
|
8
|
+
* (marketplace ↔ connector). Idempotente: re-cancelar devuelve APPROVED.
|
|
9
|
+
*/
|
|
10
|
+
class CancelFundingResponse {
|
|
11
|
+
}
|
|
12
|
+
exports.CancelFundingResponse = CancelFundingResponse;
|
|
@@ -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
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { IsString, IsNotEmpty, IsNumber, IsEnum, IsOptional, IsPositive } from "class-validator";
|
|
2
|
+
import { RemittanceCancelledByEnum } from "../../enums/RemittanceCancelledByEnum";
|
|
3
|
+
import { RemittanceCancelOutcomeEnum } from "../../enums/RemittanceCancelOutcomeEnum";
|
|
4
|
+
import { FeeAbsorbedByEnum } from "../../enums/FeeAbsorbedByEnum";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Request del credit-back de cancelacion. Lo emite uniteller-connector (cron F8)
|
|
8
|
+
* hacia el endpoint privado del processor POST remittance/credit-back, SOLO cuando
|
|
9
|
+
* UNIR confirma el outcome terminal (fondos de vuelta en el Wlp Wallet).
|
|
10
|
+
*/
|
|
11
|
+
export class RemittanceCreditBackRequest {
|
|
12
|
+
/** Llave de idempotencia del credit-back (= marketplaceTransactionNumber). */
|
|
13
|
+
@IsString()
|
|
14
|
+
@IsNotEmpty()
|
|
15
|
+
idempotencyKey: string;
|
|
16
|
+
|
|
17
|
+
/** Transaction number de UNIR (trazabilidad). */
|
|
18
|
+
@IsString()
|
|
19
|
+
@IsNotEmpty()
|
|
20
|
+
transactionNumber: string;
|
|
21
|
+
|
|
22
|
+
/** Tx del processor; sirve de relatedTransactionId del chargeback + correlacion /trx. */
|
|
23
|
+
@IsString()
|
|
24
|
+
@IsNotEmpty()
|
|
25
|
+
marketplaceTransactionNumber: string;
|
|
26
|
+
|
|
27
|
+
/** Para resolver la cuenta CP del usuario (externalAccountId del chargeback). */
|
|
28
|
+
@IsString()
|
|
29
|
+
@IsNotEmpty()
|
|
30
|
+
directoryId: string;
|
|
31
|
+
|
|
32
|
+
/** Monto principal (siempre se acredita). */
|
|
33
|
+
@IsNumber()
|
|
34
|
+
@IsPositive()
|
|
35
|
+
principalAmount: number;
|
|
36
|
+
|
|
37
|
+
/** Service fee de la remesa (se acredita solo si feeAbsorbedBy = FIADO). */
|
|
38
|
+
@IsNumber()
|
|
39
|
+
serviceFeeAmount: number;
|
|
40
|
+
|
|
41
|
+
@IsString()
|
|
42
|
+
@IsNotEmpty()
|
|
43
|
+
currencyId: string;
|
|
44
|
+
|
|
45
|
+
@IsEnum(RemittanceCancelledByEnum)
|
|
46
|
+
cancelledBy: RemittanceCancelledByEnum;
|
|
47
|
+
|
|
48
|
+
@IsEnum(RemittanceCancelOutcomeEnum)
|
|
49
|
+
cancelOutcome: RemittanceCancelOutcomeEnum;
|
|
50
|
+
|
|
51
|
+
@IsEnum(FeeAbsorbedByEnum)
|
|
52
|
+
feeAbsorbedBy: FeeAbsorbedByEnum;
|
|
53
|
+
|
|
54
|
+
@IsString()
|
|
55
|
+
@IsOptional()
|
|
56
|
+
cancelRequestedAt?: string;
|
|
57
|
+
|
|
58
|
+
@IsString()
|
|
59
|
+
@IsOptional()
|
|
60
|
+
cancelConfirmedAt?: string;
|
|
61
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { RemittanceTxStatus } from "../../enums/RemittanceTxStatus";
|
|
2
|
+
|
|
3
|
+
/** Respuesta del credit-back: confirma el credito ejecutado en CP + estado final. */
|
|
4
|
+
export class RemittanceCreditBackResponse {
|
|
5
|
+
/** Estado final de la remesa tras el credit-back (CANCELLED si VOID, REFUND si REFUND). */
|
|
6
|
+
status: RemittanceTxStatus;
|
|
7
|
+
/** Monto efectivamente acreditado al cliente. */
|
|
8
|
+
creditedAmount: number;
|
|
9
|
+
/** Id del credito generado en CP (chargeback) — para auditoria/conciliacion. */
|
|
10
|
+
cpCreditTransactionId?: string;
|
|
11
|
+
/** True si el credit-back ya existia (idempotencia) y no se re-ejecuto. */
|
|
12
|
+
alreadyProcessed: boolean;
|
|
13
|
+
}
|
|
@@ -2,3 +2,6 @@ export * from "./ReceptionMethod";
|
|
|
2
2
|
export * from "./RemittanceTxStatus";
|
|
3
3
|
export * from "./RemittanceCountryISO";
|
|
4
4
|
export * from "./RemittanceUserState";
|
|
5
|
+
export * from "./RemittanceCancelledByEnum";
|
|
6
|
+
export * from "./RemittanceCancelOutcomeEnum";
|
|
7
|
+
export * from "./FeeAbsorbedByEnum";
|