@plyaz/types 1.15.6 → 1.15.8

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.
@@ -86,30 +86,43 @@ export declare enum WEBHOOK_VERIFICATION_REASON {
86
86
  * Provides type safety and autocompletion for all PaymentError subclasses.
87
87
  */
88
88
  export declare const PAYMENT_RESOLUTION_KEYS: {
89
- readonly GENERIC: "payments.resolution.generic";
90
- readonly PAYMENTS_PACKAGE_ERROR: "payments.resolution.payments_package_error";
91
- readonly PAYMENT_VALIDATION_ERROR: "payments.resolution.payment_validation_error";
92
- readonly INVALID_AMOUNT_ERROR: "payments.resolution.invalid_amount_error";
93
- readonly INVALID_PAYMENT_METHOD_ERROR: "payments.resolution.invalid_payment_method_error";
94
- readonly PAYMENT_PROCESSING_ERROR: "payments.resolution.payment_processing_error";
95
- readonly PAYMENT_DECLINED_ERROR: "payments.resolution.payment_declined_error";
96
- readonly INSUFFICIENT_FUNDS_ERROR: "payments.resolution.insufficient_funds_error";
97
- readonly PAYMENT_PROVIDER_ERROR: "payments.resolution.payment_provider_error";
98
- readonly PROVIDER_TIMEOUT_ERROR: "payments.resolution.provider_timeout_error";
99
- readonly PROVIDER_RATE_LIMIT_ERROR: "payments.resolution.provider_rate_limit_error";
100
- readonly PAYMENT_SECURITY_ERROR: "payments.resolution.payment_security_error";
101
- readonly FRAUD_DETECTED_ERROR: "payments.resolution.fraud_detected_error";
102
- readonly VELOCITY_LIMIT_EXCEEDED_ERROR: "payments.resolution.velocity_limit_exceeded_error";
103
- readonly REFUND_ERROR: "payments.resolution.refund_error";
104
- readonly REFUND_NOT_ALLOWED_ERROR: "payments.resolution.refund_not_allowed_error";
105
- readonly REFUND_AUTHORIZATION_ERROR: "payments.resolution.refund_authorization_error";
106
- readonly COMPLIANCE_ERROR: "payments.resolution.compliance_error";
107
- readonly KYC_VERIFICATION_REQUIRED: "payments.resolution.kyc_verification_required";
108
- readonly GEOGRAPHIC_RESTRICTION: "payments.resolution.geographic_restriction";
109
- readonly PAYMENT_WEBHOOK_PACKAGE_ERROR: "payments.resolution.payment_webhook_package_error";
110
- readonly PAYMENT_WEBHOOK_VERIFICATION_ERROR: "payments.resolution.payment_webhook_verification_error";
111
- readonly PAYMENT_WEBHOOK_PROCESSING_ERROR: "payments.resolution.payment_webhook_processing_error";
112
- readonly PAYMENT_WEBHOOK_REPLAY_ERROR: "payments.resolution.payment_webhook_replay_error";
89
+ readonly GENERIC: "resolution.generic";
90
+ readonly PAYMENTS_PACKAGE_ERROR: "resolution._package_error";
91
+ readonly PAYMENT_VALIDATION_ERROR: "resolution.payment_validation_error";
92
+ readonly INVALID_AMOUNT_ERROR: "resolution.invalid_amount_error";
93
+ readonly INVALID_PAYMENT_METHOD_ERROR: "resolution.invalid_payment_method_error";
94
+ readonly PAYMENT_PROCESSING_ERROR: "resolution.payment_processing_error";
95
+ readonly PAYMENT_DECLINED_ERROR: "resolution.payment_declined_error";
96
+ readonly INSUFFICIENT_FUNDS_ERROR: "resolution.insufficient_funds_error";
97
+ readonly PAYMENT_PROVIDER_ERROR: "resolution.payment_provider_error";
98
+ readonly PROVIDER_TIMEOUT_ERROR: "resolution.provider_timeout_error";
99
+ readonly PROVIDER_RATE_LIMIT_ERROR: "resolution.provider_rate_limit_error";
100
+ readonly PAYMENT_SECURITY_ERROR: "resolution.payment_security_error";
101
+ readonly FRAUD_DETECTED_ERROR: "resolution.fraud_detected_error";
102
+ readonly VELOCITY_LIMIT_EXCEEDED_ERROR: "resolution.velocity_limit_exceeded_error";
103
+ readonly REFUND_ERROR: "resolution.refund_error";
104
+ readonly REFUND_NOT_ALLOWED_ERROR: "resolution.refund_not_allowed_error";
105
+ readonly REFUND_AUTHORIZATION_ERROR: "resolution.refund_authorization_error";
106
+ readonly COMPLIANCE_ERROR: "resolution.compliance_error";
107
+ readonly KYC_VERIFICATION_REQUIRED: "resolution.kyc_verification_required";
108
+ readonly GEOGRAPHIC_RESTRICTION: "resolution.geographic_restriction";
109
+ readonly PAYMENT_WEBHOOK_PACKAGE_ERROR: "resolution.payment_webhook_package_error";
110
+ readonly PAYMENT_WEBHOOK_VERIFICATION_ERROR: "resolution.payment_webhook_verification_error";
111
+ readonly PAYMENT_WEBHOOK_PROCESSING_ERROR: "resolution.payment_webhook_processing_error";
112
+ readonly PAYMENT_WEBHOOK_REPLAY_ERROR: "resolution.payment_webhook_replay_error";
113
113
  };
114
114
  /** Union type of all available resolution keys */
115
115
  export type PaymentResolutionKey = (typeof PAYMENT_RESOLUTION_KEYS)[keyof typeof PAYMENT_RESOLUTION_KEYS];
116
+ /**
117
+ * Central registry for all payment recommendation translation keys.
118
+ * Provides type safety and autocompletion for analytics, alerts, and monitoring logic.
119
+ */
120
+ export declare const PAYMENT_RECOMMENDATION_KEYS: {
121
+ readonly RETRY_LOGIC: "recommendation.retry_logic";
122
+ readonly CHECK_PROVIDER: "recommendation.check_provider";
123
+ readonly CRITICAL_ALERT: "recommendation.critical_alert";
124
+ readonly USER_FACING: "recommendation.user_facing";
125
+ readonly SYSTEM_STABLE: "recommendation.system_stable";
126
+ };
127
+ /** Union type of all available recommendation keys */
128
+ export type PaymentRecommendationKey = (typeof PAYMENT_RECOMMENDATION_KEYS)[keyof typeof PAYMENT_RECOMMENDATION_KEYS];
@@ -85,3 +85,22 @@ export declare enum ROUTINGSTRATEGY {
85
85
  /** Custom routing logic */
86
86
  Custom = "custom"
87
87
  }
88
+ /**
89
+ * Enumerates all routing rule identifiers used within RouterStrategy.
90
+ *
91
+ * Purpose:
92
+ * - Avoid hardcoded strings for rule names
93
+ * - Provide consistent naming for debugging and error contexts
94
+ * - Improve developer experience via auto-completion
95
+ */
96
+ export declare enum ROUTER_RULE_NAME {
97
+ AmountBasedSelection = "amountBasedSelection",
98
+ CurrencySpecificProviders = "currencySpecificProviders",
99
+ RegionSelection = "regionSelection",
100
+ RegionCompliance = "regionCompliance",
101
+ UserTypeSelection = "userTypeSelection",
102
+ TimeBasedSelection = "timeBasedSelection",
103
+ CustomRuleEvaluation = "customRuleEvaluation",
104
+ ABTesting = "abTesting",
105
+ DefaultSelection = "defaultSelection"
106
+ }
@@ -510,22 +510,3 @@ export interface ABTestExperiment {
510
510
  /** Experiment active status */
511
511
  active: boolean;
512
512
  }
513
- /**
514
- * Enumerates all routing rule identifiers used within RouterStrategy.
515
- *
516
- * Purpose:
517
- * - Avoid hardcoded strings for rule names
518
- * - Provide consistent naming for debugging and error contexts
519
- * - Improve developer experience via auto-completion
520
- */
521
- export declare enum ROUTER_RULE_NAME {
522
- AmountBasedSelection = "amountBasedSelection",
523
- CurrencySpecificProviders = "currencySpecificProviders",
524
- RegionSelection = "regionSelection",
525
- RegionCompliance = "regionCompliance",
526
- UserTypeSelection = "userTypeSelection",
527
- TimeBasedSelection = "timeBasedSelection",
528
- CustomRuleEvaluation = "customRuleEvaluation",
529
- ABTesting = "abTesting",
530
- DefaultSelection = "defaultSelection"
531
- }
@@ -288,6 +288,18 @@ var ROUTINGSTRATEGY = /* @__PURE__ */ ((ROUTINGSTRATEGY2) => {
288
288
  ROUTINGSTRATEGY2["Custom"] = "custom";
289
289
  return ROUTINGSTRATEGY2;
290
290
  })(ROUTINGSTRATEGY || {});
291
+ var ROUTER_RULE_NAME = /* @__PURE__ */ ((ROUTER_RULE_NAME2) => {
292
+ ROUTER_RULE_NAME2["AmountBasedSelection"] = "amountBasedSelection";
293
+ ROUTER_RULE_NAME2["CurrencySpecificProviders"] = "currencySpecificProviders";
294
+ ROUTER_RULE_NAME2["RegionSelection"] = "regionSelection";
295
+ ROUTER_RULE_NAME2["RegionCompliance"] = "regionCompliance";
296
+ ROUTER_RULE_NAME2["UserTypeSelection"] = "userTypeSelection";
297
+ ROUTER_RULE_NAME2["TimeBasedSelection"] = "timeBasedSelection";
298
+ ROUTER_RULE_NAME2["CustomRuleEvaluation"] = "customRuleEvaluation";
299
+ ROUTER_RULE_NAME2["ABTesting"] = "abTesting";
300
+ ROUTER_RULE_NAME2["DefaultSelection"] = "defaultSelection";
301
+ return ROUTER_RULE_NAME2;
302
+ })(ROUTER_RULE_NAME || {});
291
303
 
292
304
  // src/payments/base-error/enum.ts
293
305
  var PAYMENT_ERROR_CATEGORY = {
@@ -364,35 +376,42 @@ var WEBHOOK_VERIFICATION_REASON = /* @__PURE__ */ ((WEBHOOK_VERIFICATION_REASON2
364
376
  return WEBHOOK_VERIFICATION_REASON2;
365
377
  })(WEBHOOK_VERIFICATION_REASON || {});
366
378
  var PAYMENT_RESOLUTION_KEYS = {
367
- GENERIC: "payments.resolution.generic",
368
- PAYMENTS_PACKAGE_ERROR: "payments.resolution.payments_package_error",
379
+ GENERIC: "resolution.generic",
380
+ PAYMENTS_PACKAGE_ERROR: "resolution._package_error",
369
381
  // Validation
370
- PAYMENT_VALIDATION_ERROR: "payments.resolution.payment_validation_error",
371
- INVALID_AMOUNT_ERROR: "payments.resolution.invalid_amount_error",
372
- INVALID_PAYMENT_METHOD_ERROR: "payments.resolution.invalid_payment_method_error",
382
+ PAYMENT_VALIDATION_ERROR: "resolution.payment_validation_error",
383
+ INVALID_AMOUNT_ERROR: "resolution.invalid_amount_error",
384
+ INVALID_PAYMENT_METHOD_ERROR: "resolution.invalid_payment_method_error",
373
385
  // Processing
374
- PAYMENT_PROCESSING_ERROR: "payments.resolution.payment_processing_error",
375
- PAYMENT_DECLINED_ERROR: "payments.resolution.payment_declined_error",
376
- INSUFFICIENT_FUNDS_ERROR: "payments.resolution.insufficient_funds_error",
386
+ PAYMENT_PROCESSING_ERROR: "resolution.payment_processing_error",
387
+ PAYMENT_DECLINED_ERROR: "resolution.payment_declined_error",
388
+ INSUFFICIENT_FUNDS_ERROR: "resolution.insufficient_funds_error",
377
389
  // Provider
378
- PAYMENT_PROVIDER_ERROR: "payments.resolution.payment_provider_error",
379
- PROVIDER_TIMEOUT_ERROR: "payments.resolution.provider_timeout_error",
380
- PROVIDER_RATE_LIMIT_ERROR: "payments.resolution.provider_rate_limit_error",
390
+ PAYMENT_PROVIDER_ERROR: "resolution.payment_provider_error",
391
+ PROVIDER_TIMEOUT_ERROR: "resolution.provider_timeout_error",
392
+ PROVIDER_RATE_LIMIT_ERROR: "resolution.provider_rate_limit_error",
381
393
  // Security
382
- PAYMENT_SECURITY_ERROR: "payments.resolution.payment_security_error",
383
- FRAUD_DETECTED_ERROR: "payments.resolution.fraud_detected_error",
384
- VELOCITY_LIMIT_EXCEEDED_ERROR: "payments.resolution.velocity_limit_exceeded_error",
394
+ PAYMENT_SECURITY_ERROR: "resolution.payment_security_error",
395
+ FRAUD_DETECTED_ERROR: "resolution.fraud_detected_error",
396
+ VELOCITY_LIMIT_EXCEEDED_ERROR: "resolution.velocity_limit_exceeded_error",
385
397
  // Refund
386
- REFUND_ERROR: "payments.resolution.refund_error",
387
- REFUND_NOT_ALLOWED_ERROR: "payments.resolution.refund_not_allowed_error",
388
- REFUND_AUTHORIZATION_ERROR: "payments.resolution.refund_authorization_error",
389
- COMPLIANCE_ERROR: "payments.resolution.compliance_error",
390
- KYC_VERIFICATION_REQUIRED: "payments.resolution.kyc_verification_required",
391
- GEOGRAPHIC_RESTRICTION: "payments.resolution.geographic_restriction",
392
- PAYMENT_WEBHOOK_PACKAGE_ERROR: "payments.resolution.payment_webhook_package_error",
393
- PAYMENT_WEBHOOK_VERIFICATION_ERROR: "payments.resolution.payment_webhook_verification_error",
394
- PAYMENT_WEBHOOK_PROCESSING_ERROR: "payments.resolution.payment_webhook_processing_error",
395
- PAYMENT_WEBHOOK_REPLAY_ERROR: "payments.resolution.payment_webhook_replay_error"
398
+ REFUND_ERROR: "resolution.refund_error",
399
+ REFUND_NOT_ALLOWED_ERROR: "resolution.refund_not_allowed_error",
400
+ REFUND_AUTHORIZATION_ERROR: "resolution.refund_authorization_error",
401
+ COMPLIANCE_ERROR: "resolution.compliance_error",
402
+ KYC_VERIFICATION_REQUIRED: "resolution.kyc_verification_required",
403
+ GEOGRAPHIC_RESTRICTION: "resolution.geographic_restriction",
404
+ PAYMENT_WEBHOOK_PACKAGE_ERROR: "resolution.payment_webhook_package_error",
405
+ PAYMENT_WEBHOOK_VERIFICATION_ERROR: "resolution.payment_webhook_verification_error",
406
+ PAYMENT_WEBHOOK_PROCESSING_ERROR: "resolution.payment_webhook_processing_error",
407
+ PAYMENT_WEBHOOK_REPLAY_ERROR: "resolution.payment_webhook_replay_error"
408
+ };
409
+ var PAYMENT_RECOMMENDATION_KEYS = {
410
+ RETRY_LOGIC: "recommendation.retry_logic",
411
+ CHECK_PROVIDER: "recommendation.check_provider",
412
+ CRITICAL_ALERT: "recommendation.critical_alert",
413
+ USER_FACING: "recommendation.user_facing",
414
+ SYSTEM_STABLE: "recommendation.system_stable"
396
415
  };
397
416
 
398
417
  exports.COSTOPTIMIZATIONSTRATEGY = COSTOPTIMIZATIONSTRATEGY;
@@ -405,6 +424,7 @@ exports.PAYMENT_EVENT_ERROR_CATEGORY = PAYMENT_EVENT_ERROR_CATEGORY;
405
424
  exports.PAYMENT_EVENT_TYPE = PAYMENT_EVENT_TYPE;
406
425
  exports.PAYMENT_METHOD = PAYMENT_METHOD;
407
426
  exports.PAYMENT_PROVIDER_TYPE = PAYMENT_PROVIDER_TYPE;
427
+ exports.PAYMENT_RECOMMENDATION_KEYS = PAYMENT_RECOMMENDATION_KEYS;
408
428
  exports.PAYMENT_RESOLUTION_KEYS = PAYMENT_RESOLUTION_KEYS;
409
429
  exports.PAYMENT_STATUS = PAYMENT_STATUS;
410
430
  exports.PERFORMANCEMETRICTYPE = PERFORMANCEMETRICTYPE;
@@ -414,6 +434,7 @@ exports.REFUND_NOT_ALLOWED_REASON = REFUND_NOT_ALLOWED_REASON;
414
434
  exports.REGULATORYFRAMEWORK = REGULATORYFRAMEWORK;
415
435
  exports.REGULATORY_FRAMEWORK = REGULATORY_FRAMEWORK;
416
436
  exports.REQUIREDACTIONTYPE = REQUIREDACTIONTYPE;
437
+ exports.ROUTER_RULE_NAME = ROUTER_RULE_NAME;
417
438
  exports.ROUTINGSTRATEGY = ROUTINGSTRATEGY;
418
439
  exports.SECURITY_THREAT_TYPE = SECURITY_THREAT_TYPE;
419
440
  exports.TRANSACTION_TYPE = TRANSACTION_TYPE;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/payments/events/enums.ts","../../src/payments/events/unified-event/enums.ts","../../src/payments/provider/provider-capability/enums.ts","../../src/payments/request/enums.ts","../../src/payments/gateways/routings/enums.ts","../../src/payments/base-error/enum.ts"],"names":["PAYMENT_EVENT_TYPE","PAYMENT_EVENT_CATEGORY","PAYMENT_EVENT_ERROR_CATEGORY","EVENTPROCESSINGSTATUS","PAYMENT_PROVIDER_TYPE","PAYMENT_METHOD","PAYMENT_STATUS","TRANSACTION_TYPE","USER_TYPE","PRODUCT_TYPE","REQUIREDACTIONTYPE","COSTOPTIMIZATIONSTRATEGY","FAILOVERSTRATEGY","REGULATORYFRAMEWORK","LOADBALANCINGSTRATEGY","PERFORMANCEMETRICTYPE","ROUTINGSTRATEGY","REFUND_ERROR_TYPES","REGULATORY_FRAMEWORK","REFUND_NOT_ALLOWED_REASON","SECURITY_THREAT_TYPE","WEBHOOK_VERIFICATION_REASON"],"mappings":";;;;;AAUO,IAAK,kBAAA,qBAAAA,mBAAAA,KAAL;AAEL,EAAAA,oBAAA,kBAAA,CAAA,GAAmB,mBAAA;AACnB,EAAAA,oBAAA,mBAAA,CAAA,GAAoB,oBAAA;AACpB,EAAAA,oBAAA,uBAAA,CAAA,GAAwB,yBAAA;AACxB,EAAAA,oBAAA,kBAAA,CAAA,GAAmB,mBAAA;AACnB,EAAAA,oBAAA,eAAA,CAAA,GAAgB,gBAAA;AAChB,EAAAA,oBAAA,kBAAA,CAAA,GAAmB,mBAAA;AACnB,EAAAA,oBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,oBAAA,mBAAA,CAAA,GAAoB,oBAAA;AACpB,EAAAA,oBAAA,iBAAA,CAAA,GAAkB,kBAAA;AAClB,EAAAA,oBAAA,aAAA,CAAA,GAAc,cAAA;AACd,EAAAA,oBAAA,iBAAA,CAAA,GAAkB,kBAAA;AAGlB,EAAAA,oBAAA,iBAAA,CAAA,GAAkB,kBAAA;AAClB,EAAAA,oBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,oBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,oBAAA,kBAAA,CAAA,GAAmB,mBAAA;AACnB,EAAAA,oBAAA,iBAAA,CAAA,GAAkB,kBAAA;AAClB,EAAAA,oBAAA,cAAA,CAAA,GAAe,eAAA;AACf,EAAAA,oBAAA,iBAAA,CAAA,GAAkB,kBAAA;AAGlB,EAAAA,oBAAA,yBAAA,CAAA,GAA0B,2BAAA;AAC1B,EAAAA,oBAAA,0BAAA,CAAA,GAA2B,4BAAA;AAC3B,EAAAA,oBAAA,uBAAA,CAAA,GAAwB,yBAAA;AACxB,EAAAA,oBAAA,mBAAA,CAAA,GAAoB,qBAAA;AACpB,EAAAA,oBAAA,sBAAA,CAAA,GAAuB,wBAAA;AACvB,EAAAA,oBAAA,mBAAA,CAAA,GAAoB,qBAAA;AACpB,EAAAA,oBAAA,iBAAA,CAAA,GAAkB,kBAAA;AAClB,EAAAA,oBAAA,uBAAA,CAAA,GAAwB,yBAAA;AAGxB,EAAAA,oBAAA,qBAAA,CAAA,GAAsB,sBAAA;AACtB,EAAAA,oBAAA,qBAAA,CAAA,GAAsB,sBAAA;AACtB,EAAAA,oBAAA,kBAAA,CAAA,GAAmB,mBAAA;AACnB,EAAAA,oBAAA,iBAAA,CAAA,GAAkB,kBAAA;AAClB,EAAAA,oBAAA,iBAAA,CAAA,GAAkB,kBAAA;AAClB,EAAAA,oBAAA,cAAA,CAAA,GAAe,eAAA;AAGf,EAAAA,oBAAA,oBAAA,CAAA,GAAqB,qBAAA;AACrB,EAAAA,oBAAA,qBAAA,CAAA,GAAsB,sBAAA;AACtB,EAAAA,oBAAA,eAAA,CAAA,GAAgB,gBAAA;AAChB,EAAAA,oBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,oBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,oBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,oBAAA,iBAAA,CAAA,GAAkB,kBAAA;AAClB,EAAAA,oBAAA,kBAAA,CAAA,GAAmB,mBAAA;AAGnB,EAAAA,oBAAA,eAAA,CAAA,GAAgB,gBAAA;AAChB,EAAAA,oBAAA,qBAAA,CAAA,GAAsB,uBAAA;AACtB,EAAAA,oBAAA,cAAA,CAAA,GAAe,eAAA;AACf,EAAAA,oBAAA,oBAAA,CAAA,GAAqB,qBAAA;AACrB,EAAAA,oBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,oBAAA,qBAAA,CAAA,GAAsB,uBAAA;AACtB,EAAAA,oBAAA,uBAAA,CAAA,GAAwB,yBAAA;AAGxB,EAAAA,oBAAA,oBAAA,CAAA,GAAqB,sBAAA;AACrB,EAAAA,oBAAA,sBAAA,CAAA,GAAuB,wBAAA;AACvB,EAAAA,oBAAA,sBAAA,CAAA,GAAuB,wBAAA;AACvB,EAAAA,oBAAA,uBAAA,CAAA,GAAwB,yBAAA;AACxB,EAAAA,oBAAA,sBAAA,CAAA,GAAuB,wBAAA;AAGvB,EAAAA,oBAAA,qBAAA,CAAA,GAAsB,sBAAA;AACtB,EAAAA,oBAAA,qBAAA,CAAA,GAAsB,sBAAA;AACtB,EAAAA,oBAAA,uBAAA,CAAA,GAAwB,wBAAA;AACxB,EAAAA,oBAAA,qBAAA,CAAA,GAAsB,sBAAA;AACtB,EAAAA,oBAAA,oBAAA,CAAA,GAAqB,qBAAA;AACrB,EAAAA,oBAAA,0BAAA,CAAA,GAA2B,4BAAA;AAC3B,EAAAA,oBAAA,wBAAA,CAAA,GAAyB,0BAAA;AAGzB,EAAAA,oBAAA,sBAAA,CAAA,GAAuB,wBAAA;AACvB,EAAAA,oBAAA,uBAAA,CAAA,GAAwB,yBAAA;AACxB,EAAAA,oBAAA,uBAAA,CAAA,GAAwB,yBAAA;AACxB,EAAAA,oBAAA,4BAAA,CAAA,GAA6B,8BAAA;AAC7B,EAAAA,oBAAA,0BAAA,CAAA,GAA2B,4BAAA;AAG3B,EAAAA,oBAAA,yBAAA,CAAA,GAA0B,2BAAA;AAC1B,EAAAA,oBAAA,uBAAA,CAAA,GAAwB,yBAAA;AACxB,EAAAA,oBAAA,uBAAA,CAAA,GAAwB,yBAAA;AACxB,EAAAA,oBAAA,mBAAA,CAAA,GAAoB,qBAAA;AACpB,EAAAA,oBAAA,2BAAA,CAAA,GAA4B,6BAAA;AAxFlB,EAAA,OAAAA,mBAAAA;AAAA,CAAA,EAAA,kBAAA,IAAA,EAAA;AA8FL,IAAK,sBAAA,qBAAAC,uBAAAA,KAAL;AACL,EAAAA,wBAAA,aAAA,CAAA,GAAc,aAAA;AACd,EAAAA,wBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,wBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,wBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,wBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,wBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,EAAAA,wBAAA,cAAA,CAAA,GAAe,cAAA;AACf,EAAAA,wBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,wBAAA,OAAA,CAAA,GAAQ,OAAA;AATE,EAAA,OAAAA,uBAAAA;AAAA,CAAA,EAAA,sBAAA,IAAA,EAAA;AAeL,IAAK,4BAAA,qBAAAC,6BAAAA,KAAL;AACL,EAAAA,8BAAA,WAAA,CAAA,GAAY,YAAA;AACZ,EAAAA,8BAAA,eAAA,CAAA,GAAgB,gBAAA;AAChB,EAAAA,8BAAA,aAAA,CAAA,GAAc,cAAA;AACd,EAAAA,8BAAA,cAAA,CAAA,GAAe,eAAA;AACf,EAAAA,8BAAA,YAAA,CAAA,GAAa,aAAA;AACb,EAAAA,8BAAA,iBAAA,CAAA,GAAkB,kBAAA;AAClB,EAAAA,8BAAA,YAAA,CAAA,GAAa,aAAA;AACb,EAAAA,8BAAA,oBAAA,CAAA,GAAqB,qBAAA;AACrB,EAAAA,8BAAA,cAAA,CAAA,GAAe,eAAA;AACf,EAAAA,8BAAA,iBAAA,CAAA,GAAkB,kBAAA;AAVR,EAAA,OAAAA,6BAAAA;AAAA,CAAA,EAAA,4BAAA,IAAA,EAAA;;;ACpHL,IAAK,qBAAA,qBAAAC,sBAAAA,KAAL;AACL,EAAAA,uBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,uBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,uBAAA,aAAA,CAAA,GAAc,aAAA;AACd,EAAAA,uBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,uBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,uBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,EAAAA,uBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,uBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,uBAAA,SAAA,CAAA,GAAU,SAAA;AATA,EAAA,OAAAA,sBAAAA;AAAA,CAAA,EAAA,qBAAA,IAAA,EAAA;;;ACAL,IAAK,qBAAA,qBAAAC,sBAAAA,KAAL;AAEL,EAAAA,uBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,uBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,uBAAA,aAAA,CAAA,GAAc,cAAA;AACd,EAAAA,uBAAA,OAAA,CAAA,GAAQ,OAAA;AAGR,EAAAA,uBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,uBAAA,kBAAA,CAAA,GAAmB,mBAAA;AACnB,EAAAA,uBAAA,kBAAA,CAAA,GAAmB,mBAAA;AAGnB,EAAAA,uBAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,uBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,uBAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,uBAAA,OAAA,CAAA,GAAQ,OAAA;AACR,EAAAA,uBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,uBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,uBAAA,WAAA,CAAA,GAAY,YAAA;AAGZ,EAAAA,uBAAA,cAAA,CAAA,GAAe,eAAA;AAtBL,EAAA,OAAAA,sBAAAA;AAAA,CAAA,EAAA,qBAAA,IAAA,EAAA;AA4BL,IAAK,cAAA,qBAAAC,eAAAA,KAAL;AAEL,EAAAA,gBAAA,YAAA,CAAA,GAAa,aAAA;AACb,EAAAA,gBAAA,WAAA,CAAA,GAAY,YAAA;AACZ,EAAAA,gBAAA,cAAA,CAAA,GAAe,eAAA;AACf,EAAAA,gBAAA,eAAA,CAAA,GAAgB,gBAAA;AAGhB,EAAAA,gBAAA,eAAA,CAAA,GAAgB,gBAAA;AAChB,EAAAA,gBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,gBAAA,eAAA,CAAA,GAAgB,gBAAA;AAChB,EAAAA,gBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,gBAAA,YAAA,CAAA,GAAa,aAAA;AACb,EAAAA,gBAAA,YAAA,CAAA,GAAa,aAAA;AACb,EAAAA,gBAAA,mBAAA,CAAA,GAAoB,qBAAA;AAGpB,EAAAA,gBAAA,YAAA,CAAA,GAAa,aAAA;AACb,EAAAA,gBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,gBAAA,iBAAA,CAAA,GAAkB,mBAAA;AAClB,EAAAA,gBAAA,WAAA,CAAA,GAAY,YAAA;AACZ,EAAAA,gBAAA,eAAA,CAAA,GAAgB,gBAAA;AAChB,EAAAA,gBAAA,eAAA,CAAA,GAAgB,gBAAA;AAChB,EAAAA,gBAAA,kBAAA,CAAA,GAAmB,oBAAA;AAGnB,EAAAA,gBAAA,UAAA,CAAA,GAAW,WAAA;AACX,EAAAA,gBAAA,WAAA,CAAA,GAAY,YAAA;AACZ,EAAAA,gBAAA,YAAA,CAAA,GAAa,aAAA;AA5BH,EAAA,OAAAA,eAAAA;AAAA,CAAA,EAAA,cAAA,IAAA,EAAA;AAkCL,IAAK,cAAA,qBAAAC,eAAAA,KAAL;AAEL,EAAAA,gBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,EAAAA,gBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,gBAAA,YAAA,CAAA,GAAa,YAAA;AAGb,EAAAA,gBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,gBAAA,sBAAA,CAAA,GAAuB,uBAAA;AACvB,EAAAA,gBAAA,uBAAA,CAAA,GAAwB,yBAAA;AAGxB,EAAAA,gBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,EAAAA,gBAAA,SAAA,CAAA,GAAU,SAAA;AAGV,EAAAA,gBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,gBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,gBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,EAAAA,gBAAA,SAAA,CAAA,GAAU,SAAA;AAGV,EAAAA,gBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,gBAAA,mBAAA,CAAA,GAAoB,oBAAA;AAGpB,EAAAA,gBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,gBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,gBAAA,oBAAA,CAAA,GAAqB,qBAAA;AAGrB,EAAAA,gBAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,gBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,gBAAA,UAAA,CAAA,GAAW,UAAA;AAjCD,EAAA,OAAAA,eAAAA;AAAA,CAAA,EAAA,cAAA,IAAA,EAAA;AAuCL,IAAK,gBAAA,qBAAAC,iBAAAA,KAAL;AACL,EAAAA,kBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,kBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,kBAAA,eAAA,CAAA,GAAgB,gBAAA;AAChB,EAAAA,kBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,kBAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,kBAAA,cAAA,CAAA,GAAe,cAAA;AACf,EAAAA,kBAAA,qBAAA,CAAA,GAAsB,sBAAA;AACtB,EAAAA,kBAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,kBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,kBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,kBAAA,QAAA,CAAA,GAAS,QAAA;AACT,EAAAA,kBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,kBAAA,UAAA,CAAA,GAAW,UAAA;AAbD,EAAA,OAAAA,iBAAAA;AAAA,CAAA,EAAA,gBAAA,IAAA,EAAA;AAmBL,IAAK,SAAA,qBAAAC,UAAAA,KAAL;AACL,EAAAA,WAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,WAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,WAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,WAAA,OAAA,CAAA,GAAQ,OAAA;AACR,EAAAA,WAAA,OAAA,CAAA,GAAQ,OAAA;AACR,EAAAA,WAAA,OAAA,CAAA,GAAQ,OAAA;AACR,EAAAA,WAAA,QAAA,CAAA,GAAS,QAAA;AAPC,EAAA,OAAAA,UAAAA;AAAA,CAAA,EAAA,SAAA,IAAA,EAAA;AAaL,IAAK,YAAA,qBAAAC,aAAAA,KAAL;AACL,EAAAA,cAAA,UAAA,CAAA,GAAW,UAAA;AACX,EAAAA,cAAA,cAAA,CAAA,GAAe,cAAA;AACf,EAAAA,cAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,cAAA,aAAA,CAAA,GAAc,aAAA;AACd,EAAAA,cAAA,aAAA,CAAA,GAAc,cAAA;AACd,EAAAA,cAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,cAAA,iBAAA,CAAA,GAAkB,kBAAA;AAClB,EAAAA,cAAA,cAAA,CAAA,GAAe,cAAA;AACf,EAAAA,cAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,cAAA,iBAAA,CAAA,GAAkB,kBAAA;AAVR,EAAA,OAAAA,aAAAA;AAAA,CAAA,EAAA,YAAA,IAAA,EAAA;;;ACrIL,IAAK,kBAAA,qBAAAC,mBAAAA,KAAL;AAEL,EAAAA,oBAAA,UAAA,CAAA,GAAW,UAAA;AAGX,EAAAA,oBAAA,iBAAA,CAAA,GAAkB,kBAAA;AAGlB,EAAAA,oBAAA,gBAAA,CAAA,GAAiB,iBAAA;AAGjB,EAAAA,oBAAA,uBAAA,CAAA,GAAwB,yBAAA;AAGxB,EAAAA,oBAAA,qBAAA,CAAA,GAAsB,sBAAA;AAGtB,EAAAA,oBAAA,oBAAA,CAAA,GAAqB,qBAAA;AAGrB,EAAAA,oBAAA,mBAAA,CAAA,GAAoB,qBAAA;AApBV,EAAA,OAAAA,mBAAAA;AAAA,CAAA,EAAA,kBAAA,IAAA,EAAA;;;ACAL,IAAK,wBAAA,qBAAAC,yBAAAA,KAAL;AAEL,EAAAA,0BAAA,YAAA,CAAA,GAAa,YAAA;AAGb,EAAAA,0BAAA,UAAA,CAAA,GAAW,UAAA;AAGX,EAAAA,0BAAA,cAAA,CAAA,GAAe,cAAA;AAGf,EAAAA,0BAAA,UAAA,CAAA,GAAW,UAAA;AAXD,EAAA,OAAAA,yBAAAA;AAAA,CAAA,EAAA,wBAAA,IAAA,EAAA;AAiBL,IAAK,gBAAA,qBAAAC,iBAAAA,KAAL;AAEL,EAAAA,kBAAA,eAAA,CAAA,GAAgB,gBAAA;AAGhB,EAAAA,kBAAA,eAAA,CAAA,GAAgB,gBAAA;AAGhB,EAAAA,kBAAA,kBAAA,CAAA,GAAmB,mBAAA;AAGnB,EAAAA,kBAAA,cAAA,CAAA,GAAe,eAAA;AAGf,EAAAA,kBAAA,YAAA,CAAA,GAAa,YAAA;AAdH,EAAA,OAAAA,iBAAAA;AAAA,CAAA,EAAA,gBAAA,IAAA,EAAA;AAoBL,IAAK,mBAAA,qBAAAC,oBAAAA,KAAL;AACL,EAAAA,qBAAA,QAAA,CAAA,GAAS,SAAA;AACT,EAAAA,qBAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,qBAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,qBAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,qBAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,qBAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,qBAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,qBAAA,cAAA,CAAA,GAAe,eAAA;AARL,EAAA,OAAAA,oBAAAA;AAAA,CAAA,EAAA,mBAAA,IAAA,EAAA;AAcL,IAAK,qBAAA,qBAAAC,sBAAAA,KAAL;AAEL,EAAAA,uBAAA,YAAA,CAAA,GAAa,aAAA;AAGb,EAAAA,uBAAA,UAAA,CAAA,GAAW,UAAA;AAGX,EAAAA,uBAAA,kBAAA,CAAA,GAAmB,mBAAA;AAGnB,EAAAA,uBAAA,kBAAA,CAAA,GAAmB,mBAAA;AAGnB,EAAAA,uBAAA,QAAA,CAAA,GAAS,QAAA;AAdC,EAAA,OAAAA,sBAAAA;AAAA,CAAA,EAAA,qBAAA,IAAA,EAAA;AAoBL,IAAK,qBAAA,qBAAAC,sBAAAA,KAAL;AACL,EAAAA,uBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,uBAAA,aAAA,CAAA,GAAc,cAAA;AACd,EAAAA,uBAAA,WAAA,CAAA,GAAY,YAAA;AACZ,EAAAA,uBAAA,YAAA,CAAA,GAAa,YAAA;AACb,EAAAA,uBAAA,SAAA,CAAA,GAAU,SAAA;AACV,EAAAA,uBAAA,cAAA,CAAA,GAAe,cAAA;AACf,EAAAA,uBAAA,MAAA,CAAA,GAAO,MAAA;AAPG,EAAA,OAAAA,sBAAAA;AAAA,CAAA,EAAA,qBAAA,IAAA,EAAA;AAaL,IAAK,eAAA,qBAAAC,gBAAAA,KAAL;AAEL,EAAAA,iBAAA,eAAA,CAAA,GAAgB,gBAAA;AAGhB,EAAAA,iBAAA,kBAAA,CAAA,GAAmB,mBAAA;AAGnB,EAAAA,iBAAA,kBAAA,CAAA,GAAmB,mBAAA;AAGnB,EAAAA,iBAAA,UAAA,CAAA,GAAW,UAAA;AAGX,EAAAA,iBAAA,gBAAA,CAAA,GAAiB,iBAAA;AAGjB,EAAAA,iBAAA,YAAA,CAAA,GAAa,aAAA;AAGb,EAAAA,iBAAA,QAAA,CAAA,GAAS,QAAA;AApBC,EAAA,OAAAA,gBAAAA;AAAA,CAAA,EAAA,eAAA,IAAA,EAAA;;;ACnFL,IAAM,sBAAA,GAAyB;AAAA;AAAA,EAEpC,aAAA,EAAe,gBAAA;AAAA;AAAA,EAGf,WAAA,EAAa,aAAA;AAAA;AAAA,EAGb,OAAA,EAAS,SAAA;AAAA;AAAA,EAGT,aAAA,EAAe,eAAA;AAAA;AAAA,EAGf,UAAA,EAAY,YAAA;AAAA;AAAA,EAGZ,MAAA,EAAQ,QAAA;AAAA;AAAA,EAGR,OAAA,EAAS,SAAA;AAAA;AAAA,EAGT,KAAA,EAAO,OAAA;AAAA;AAAA,EAGP,UAAA,EAAY,YAAA;AAAA;AAAA,EAGZ,MAAA,EAAQ,QAAA;AAAA;AAAA,EAGR,OAAA,EAAS,SAAA;AAAA;AAAA,EAGT,QAAA,EAAU,UAAA;AAAA;AAAA,EAGV,OAAA,EAAS,SAAA;AAAA;AAAA,EAGT,aAAA,EAAe;AACjB;AAEO,IAAK,kBAAA,qBAAAC,mBAAAA,KAAL;AACL,EAAAA,oBAAA,YAAA,CAAA,GAAa,aAAA;AACb,EAAAA,oBAAA,eAAA,CAAA,GAAgB,eAAA;AAChB,EAAAA,oBAAA,YAAA,CAAA,GAAa,YAAA;AAHH,EAAA,OAAAA,mBAAAA;AAAA,CAAA,EAAA,kBAAA,IAAA,EAAA;AASL,IAAK,oBAAA,qBAAAC,qBAAAA,KAAL;AACL,EAAAA,sBAAA,QAAA,CAAA,GAAS,SAAA;AACT,EAAAA,sBAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,sBAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,sBAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,sBAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,sBAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,sBAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,sBAAA,cAAA,CAAA,GAAe,eAAA;AARL,EAAA,OAAAA,qBAAAA;AAAA,CAAA,EAAA,oBAAA,IAAA,EAAA;AAcL,IAAK,yBAAA,qBAAAC,0BAAAA,KAAL;AACL,EAAAA,2BAAA,iBAAA,CAAA,GAAkB,kBAAA;AAClB,EAAAA,2BAAA,qBAAA,CAAA,GAAsB,uBAAA;AACtB,EAAAA,2BAAA,mBAAA,CAAA,GAAoB,qBAAA;AACpB,EAAAA,2BAAA,qBAAA,CAAA,GAAsB,sBAAA;AACtB,EAAAA,2BAAA,qBAAA,CAAA,GAAsB,sBAAA;AACtB,EAAAA,2BAAA,uBAAA,CAAA,GAAwB,wBAAA;AANd,EAAA,OAAAA,0BAAAA;AAAA,CAAA,EAAA,yBAAA,IAAA,EAAA;AAYL,IAAK,oBAAA,qBAAAC,qBAAAA,KAAL;AACL,EAAAA,sBAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,sBAAA,kBAAA,CAAA,GAAmB,mBAAA;AACnB,EAAAA,sBAAA,mBAAA,CAAA,GAAoB,oBAAA;AACpB,EAAAA,sBAAA,eAAA,CAAA,GAAgB,gBAAA;AAChB,EAAAA,sBAAA,mBAAA,CAAA,GAAoB,oBAAA;AACpB,EAAAA,sBAAA,cAAA,CAAA,GAAe,eAAA;AANL,EAAA,OAAAA,qBAAAA;AAAA,CAAA,EAAA,oBAAA,IAAA,EAAA;AAYL,IAAK,2BAAA,qBAAAC,4BAAAA,KAAL;AACL,EAAAA,6BAAA,kBAAA,CAAA,GAAmB,mBAAA;AACnB,EAAAA,6BAAA,kBAAA,CAAA,GAAmB,mBAAA;AACnB,EAAAA,6BAAA,kBAAA,CAAA,GAAmB,mBAAA;AACnB,EAAAA,6BAAA,gBAAA,CAAA,GAAiB,iBAAA;AACjB,EAAAA,6BAAA,iBAAA,CAAA,GAAkB,kBAAA;AALR,EAAA,OAAAA,4BAAAA;AAAA,CAAA,EAAA,2BAAA,IAAA,EAAA;AAaL,IAAM,uBAAA,GAA0B;AAAA,EACrC,OAAA,EAAS,6BAAA;AAAA,EACT,sBAAA,EAAwB,4CAAA;AAAA;AAAA,EAGxB,wBAAA,EAA0B,8CAAA;AAAA,EAC1B,oBAAA,EAAsB,0CAAA;AAAA,EACtB,4BAAA,EAA8B,kDAAA;AAAA;AAAA,EAG9B,wBAAA,EAA0B,8CAAA;AAAA,EAC1B,sBAAA,EAAwB,4CAAA;AAAA,EACxB,wBAAA,EAA0B,8CAAA;AAAA;AAAA,EAG1B,sBAAA,EAAwB,4CAAA;AAAA,EACxB,sBAAA,EAAwB,4CAAA;AAAA,EACxB,yBAAA,EAA2B,+CAAA;AAAA;AAAA,EAG3B,sBAAA,EAAwB,4CAAA;AAAA,EACxB,oBAAA,EAAsB,0CAAA;AAAA,EACtB,6BAAA,EAA+B,mDAAA;AAAA;AAAA,EAG/B,YAAA,EAAc,kCAAA;AAAA,EACd,wBAAA,EAA0B,8CAAA;AAAA,EAC1B,0BAAA,EAA4B,gDAAA;AAAA,EAE5B,gBAAA,EAAkB,sCAAA;AAAA,EAClB,yBAAA,EAA2B,+CAAA;AAAA,EAC3B,sBAAA,EAAwB,4CAAA;AAAA,EAExB,6BAAA,EAA+B,mDAAA;AAAA,EAC/B,kCAAA,EAAoC,wDAAA;AAAA,EACpC,gCAAA,EAAkC,sDAAA;AAAA,EAClC,4BAAA,EAA8B;AAChC","file":"index.cjs","sourcesContent":["/**\n * Comprehensive enumeration of all payment-related events that can occur\n * in the system. Events are organized by category and follow a hierarchical\n * naming convention for easy filtering and subscription.\n *\n * Naming Convention:\n * - Category.Action (e.g., payment.completed)\n * - Use present tense for ongoing events, past tense for completed events\n * - Include both success and failure events for complete audit trails\n */\nexport enum PAYMENT_EVENT_TYPE {\n // Payment lifecycle events\n PaymentInitiated = 'payment.initiated',\n PaymentProcessing = 'payment.processing',\n PaymentRequiresAction = 'payment.requires_action',\n PaymentCompleted = 'payment.completed',\n PaymentFailed = 'payment.failed',\n PaymentCancelled = 'payment.cancelled',\n PaymentExpired = 'payment.expired',\n PaymentAuthorized = 'payment.authorized',\n PaymentCaptured = 'payment.captured',\n PaymentHeld = 'payment.held',\n PaymentReleased = 'payment.released',\n\n // Refund lifecycle events\n RefundRequested = 'refund.requested',\n RefundApproved = 'refund.approved',\n RefundRejected = 'refund.rejected',\n RefundProcessing = 'refund.processing',\n RefundCompleted = 'refund.completed',\n RefundFailed = 'refund.failed',\n RefundCancelled = 'refund.cancelled',\n\n // Provider interaction events\n ProviderWebhookReceived = 'provider.webhook.received',\n ProviderWebhookProcessed = 'provider.webhook.processed',\n ProviderWebhookFailed = 'provider.webhook.failed',\n ProviderApiCalled = 'provider.api.called',\n ProviderApiSucceeded = 'provider.api.succeeded',\n ProviderApiFailed = 'provider.api.failed',\n ProviderTimeout = 'provider.timeout',\n ProviderHealthChanged = 'provider.health.changed',\n\n // Financial events\n SettlementInitiated = 'settlement.initiated',\n SettlementCompleted = 'settlement.completed',\n SettlementFailed = 'settlement.failed',\n PayoutRequested = 'payout.requested',\n PayoutProcessed = 'payout.processed',\n PayoutFailed = 'payout.failed',\n\n // Dispute and chargeback events\n ChargebackReceived = 'chargeback.received',\n ChargebackResponded = 'chargeback.responded',\n ChargebackWon = 'chargeback.won',\n ChargebackLost = 'chargeback.lost',\n DisputeCreated = 'dispute.created',\n DisputeUpdated = 'dispute.updated',\n DisputeResolved = 'dispute.resolved',\n DisputeEscalated = 'dispute.escalated',\n\n // Security and fraud events\n FraudDetected = 'fraud.detected',\n FraudReviewRequired = 'fraud.review_required',\n FraudCleared = 'fraud.cleared',\n SuspiciousActivity = 'suspicious.activity',\n PaymentBlocked = 'payment.blocked',\n SecurityCheckFailed = 'security.check_failed',\n VelocityLimitExceeded = 'velocity.limit_exceeded',\n\n // Payment method events\n PaymentMethodAdded = 'payment_method.added',\n PaymentMethodUpdated = 'payment_method.updated',\n PaymentMethodDeleted = 'payment_method.deleted',\n PaymentMethodVerified = 'payment_method.verified',\n PaymentMethodExpired = 'payment_method.expired',\n\n // Subscription events\n SubscriptionCreated = 'subscription.created',\n SubscriptionUpdated = 'subscription.updated',\n SubscriptionCancelled = 'subscription.cancelled',\n SubscriptionRenewed = 'subscription.renewed',\n SubscriptionFailed = 'subscription.failed',\n SubscriptionTrialStarted = 'subscription.trial_started',\n SubscriptionTrialEnded = 'subscription.trial_ended',\n\n // System and operational events\n PaymentLimitsUpdated = 'payment_limits.updated',\n PaymentLimitsExceeded = 'payment_limits.exceeded',\n ProviderConfigUpdated = 'provider.config_updated',\n ProviderMaintenanceStarted = 'provider.maintenance_started',\n ProviderMaintenanceEnded = 'provider.maintenance_ended',\n\n // Compliance and audit events\n ComplianceCheckRequired = 'compliance.check_required',\n ComplianceCheckPassed = 'compliance.check_passed',\n ComplianceCheckFailed = 'compliance.check_failed',\n AuditTrailCreated = 'audit.trail_created',\n RegulatoryReportGenerated = 'regulatory.report_generated',\n}\n\n/**\n * Payment event categories for organization and routing.\n */\nexport enum PAYMENT_EVENT_CATEGORY {\n TRANSACTION = 'transaction',\n REFUND = 'refund',\n PROVIDER = 'provider',\n SECURITY = 'security',\n COMPLIANCE = 'compliance',\n FINANCIAL = 'financial',\n SUBSCRIPTION = 'subscription',\n SYSTEM = 'system',\n AUDIT = 'audit',\n}\n\n/**\n * Error categories for payment events.\n */\nexport enum PAYMENT_EVENT_ERROR_CATEGORY {\n UserError = 'user_error', // User input or action errors\n ProviderError = 'provider_error', // Payment provider errors\n SystemError = 'system_error', // Internal system errors\n NetworkError = 'network_error', // Network connectivity errors\n FraudError = 'fraud_error', // Fraud detection errors\n ComplianceError = 'compliance_error', // Regulatory compliance errors\n LimitError = 'limit_error', // Limit exceeded errors\n ConfigurationError = 'configuration_error', // Configuration errors\n TimeoutError = 'timeout_error', // Timeout errors\n ValidationError = 'validation_error', // Data validation errors\n}\n","/**\n * Event processing status enumeration.\n */\nexport enum EVENTPROCESSINGSTATUS {\n Received = 'received', // Event received from provider\n Validating = 'validating', // Signature and format validation\n Normalizing = 'normalizing', // Converting to unified format\n Normalized = 'normalized', // Successfully normalized\n Processing = 'processing', // Business logic processing\n Completed = 'completed', // Processing completed successfully\n Failed = 'failed', // Processing failed\n Retrying = 'retrying', // Retrying after failure\n Skipped = 'skipped', // Skipped due to filters/rules\n}\n","/**\n * Enumeration of all supported payment providers in the Plyaz ecosystem.\n */\nexport enum PAYMENT_PROVIDER_TYPE {\n // Traditional payment processors\n Stripe = 'stripe',\n Paypal = 'paypal',\n CheckoutCom = 'checkout_com',\n Adyen = 'adyen',\n\n // Cryptocurrency payment providers\n Moonpay = 'moonpay',\n CoinbaseCommerce = 'coinbase_commerce',\n BlockchainBridge = 'blockchain_bridge',\n\n // Regional payment providers\n Pix = 'pix',\n Boleto = 'boleto',\n Sepa = 'sepa',\n Ideal = 'ideal',\n Sofort = 'sofort',\n Alipay = 'alipay',\n WechatPay = 'wechat_pay',\n\n // Mock provider for testing\n MockProvider = 'mock_provider',\n}\n\n/**\n * Enumeration of payment methods supported across all providers.\n */\nexport enum PAYMENT_METHOD {\n // Traditional payment methods\n CreditCard = 'credit_card',\n DebitCard = 'debit_card',\n BankTransfer = 'bank_transfer',\n PaypalAccount = 'paypal_account',\n\n // Cryptocurrency payment methods\n CryptoBitcoin = 'crypto_bitcoin',\n CryptoEthereum = 'crypto_ethereum',\n CryptoPolygon = 'crypto_polygon',\n CryptoOptimism = 'crypto_optimism',\n CryptoUsdc = 'crypto_usdc',\n CryptoUsdt = 'crypto_usdt',\n CryptoNativeToken = 'crypto_native_token',\n\n // Regional payment methods\n PixInstant = 'pix_instant',\n BoletoBancario = 'boleto_bancario',\n SepaDirectDebit = 'sepa_direct_debit',\n IdealBank = 'ideal_bank',\n SofortBanking = 'sofort_banking',\n AlipayDigital = 'alipay_digital',\n WechatPayDigital = 'wechat_pay_digital',\n\n // Digital wallets\n ApplePay = 'apple_pay',\n GooglePay = 'google_pay',\n SamsungPay = 'samsung_pay',\n}\n\n/**\n * Comprehensive payment status enumeration.\n */\nexport enum PAYMENT_STATUS {\n // Initial states\n Initiated = 'initiated',\n Pending = 'pending',\n Processing = 'processing',\n\n // Action required states\n RequiresAction = 'requires_action',\n RequiresConfirmation = 'requires_confirmation',\n RequiresPaymentMethod = 'requires_payment_method',\n\n // Success states\n Completed = 'completed',\n Settled = 'settled',\n\n // Failure states\n Failed = 'failed',\n Declined = 'declined',\n Cancelled = 'cancelled',\n Expired = 'expired',\n\n // Refund states\n Refunded = 'refunded',\n PartiallyRefunded = 'partially_refunded',\n\n // Dispute states\n Disputed = 'disputed',\n Chargeback = 'chargeback',\n ChargebackResolved = 'chargeback_resolved',\n\n // Special states\n Held = 'held',\n Authorized = 'authorized',\n Captured = 'captured',\n}\n\n/**\n * Transaction type enumeration.\n */\nexport enum TRANSACTION_TYPE {\n Payment = 'payment',\n Refund = 'refund',\n PartialRefund = 'partial_refund',\n Withdrawal = 'withdrawal',\n Donation = 'donation',\n Subscription = 'subscription',\n SubscriptionRenewal = 'subscription_renewal',\n Fee = 'fee',\n Chargeback = 'chargeback',\n Adjustment = 'adjustment',\n Reward = 'reward',\n Penalty = 'penalty',\n Transfer = 'transfer',\n}\n\n/**\n * User type enumeration.\n */\nexport enum USER_TYPE {\n Fan = 'fan',\n Athlete = 'athlete',\n Club = 'club',\n Agent = 'agent',\n Scout = 'scout',\n Admin = 'admin',\n System = 'system',\n}\n\n/**\n * Product type enumeration.\n */\nexport enum PRODUCT_TYPE {\n Campaign = 'campaign',\n Subscription = 'subscription',\n Nft = 'nft',\n Merchandise = 'merchandise',\n EventTicket = 'event_ticket',\n PremiumContent = 'premium_content',\n TrainingSession = 'training_session',\n Consultation = 'consultation',\n DigitalProduct = 'digital_product',\n PhysicalProduct = 'physical_product',\n}\n","/**\n * Enumeration of action types that users might need to complete.\n */\nexport enum REQUIREDACTIONTYPE {\n /** Redirect to external page (3D Secure, bank auth, etc.) */\n Redirect = 'redirect',\n\n /** Enter SMS or email verification code */\n OtpVerification = 'otp_verification',\n\n /** Upload identity or financial documents */\n DocumentUpload = 'document_upload',\n\n /** Provide additional payment information */\n AdditionalPaymentInfo = 'additional_payment_info',\n\n /** Confirm payment via mobile app or email */\n PaymentConfirmation = 'payment_confirmation',\n\n /** Contact customer support for manual verification */\n ManualVerification = 'manual_verification',\n\n /** Wait for bank transfer or other delayed method */\n WaitForCompletion = 'wait_for_completion',\n}\n","/**\n * Cost optimization strategies.\n */\nexport enum COSTOPTIMIZATIONSTRATEGY {\n /** Always use cheapest option */\n Aggressive = 'aggressive',\n\n /** Balance cost with reliability */\n Balanced = 'balanced',\n\n /** Prefer reliability over cost */\n Conservative = 'conservative',\n\n /** Optimize for specific cost components */\n Targeted = 'targeted',\n}\n\n/**\n * Failover strategies.\n */\nexport enum FAILOVERSTRATEGY {\n /** Use predefined provider order */\n PriorityOrder = 'priority_order',\n\n /** Failover to next available provider */\n NextAvailable = 'next_available',\n\n /** Failover based on performance metrics */\n PerformanceBased = 'performance_based',\n\n /** Failover to least loaded provider */\n LoadBalanced = 'load_balanced',\n\n /** Geographic failover preference */\n Geographic = 'geographic',\n}\n\n/**\n * Regulatory frameworks.\n */\nexport enum REGULATORYFRAMEWORK {\n PciDss = 'pci_dss',\n Gdpr = 'gdpr',\n Psd2 = 'psd2',\n Sox = 'sox',\n Aml = 'aml',\n Kyc = 'kyc',\n Ccpa = 'ccpa',\n LocalBanking = 'local_banking',\n}\n\n/**\n * Load balancing strategies.\n */\nexport enum LOADBALANCINGSTRATEGY {\n /** Rotate through providers evenly */\n RoundRobin = 'round_robin',\n\n /** Use weighted distribution */\n Weighted = 'weighted',\n\n /** Choose provider with least active traffic */\n LeastConnections = 'least_connections',\n\n /** Choose based on best performance metrics */\n PerformanceBased = 'performance_based',\n\n /** Custom strategy defined by merchant */\n Custom = 'custom',\n}\n\n/**\n * Types of performance metrics.\n */\nexport enum PERFORMANCEMETRICTYPE {\n Latency = 'latency',\n SuccessRate = 'success_rate',\n ErrorRate = 'error_rate',\n Throughput = 'throughput',\n Retries = 'retries',\n Availability = 'availability',\n Cost = 'cost',\n}\n\n/**\n * Primary routing strategies.\n */\nexport enum ROUTINGSTRATEGY {\n /** Optimize for lowest total cost */\n CostOptimized = 'cost_optimized',\n\n /** Optimize for highest reliability */\n ReliabilityFirst = 'reliability_first',\n\n /** Optimize for fastest processing */\n PerformanceFirst = 'performance_first',\n\n /** Balance cost, reliability, and performance */\n Balanced = 'balanced',\n\n /** Use user or region preferences */\n UserPreference = 'user_preference',\n\n /** Distribute load evenly */\n RoundRobin = 'round_robin',\n\n /** Custom routing logic */\n Custom = 'custom',\n}\n","/**\n * Payment-specific error categories\n */\n// TODO: check if this is correct\nexport const PAYMENT_ERROR_CATEGORY = {\n /** Payment method validation or processing error */\n PaymentMethod: 'payment.method',\n\n /** Transaction processing error */\n Transaction: 'transaction',\n\n /** Payment capture error */\n Capture: 'capture',\n\n /** Payment authorization error */\n Authorization: 'authorization',\n\n /** Payment settlement error */\n Settlement: 'settlement',\n\n /** Refund processing error */\n Refund: 'refund',\n\n /** Payment gateway or provider error */\n Gateway: 'gateway',\n\n /** Payment fraud detection error */\n Fraud: 'fraud',\n\n /** Payment compliance error (AML/KYC) */\n Compliance: 'compliance',\n\n /** Payment limits exceeded */\n Limits: 'limits',\n\n /** Payment webhook error */\n Webhook: 'webhook',\n\n /** Payment security error */\n Security: 'security',\n\n /** Payment processing timeout */\n Timeout: 'timeout',\n\n /** Payment configuration error */\n Configuration: 'configuration',\n} as const;\n\nexport enum REFUND_ERROR_TYPES {\n NotAllowed = 'not_allowed',\n Authorization = 'authorization',\n Processing = 'processing',\n}\n\n/**\n * Regulatory frameworks.\n */\nexport enum REGULATORY_FRAMEWORK {\n PCIDSS = 'pci_dss',\n GDPR = 'gdpr',\n PSD2 = 'psd2',\n SOX = 'sox',\n AML = 'aml',\n KYC = 'kyc',\n CCPA = 'ccpa',\n LOCALBANKING = 'local_banking',\n}\n\n/**\n * Refund not allowed reasons.\n */\nexport enum REFUND_NOT_ALLOWED_REASON {\n AlreadyRefunded = 'already_refunded',\n PartialNotSupported = 'partial_not_supported',\n TimeLimitExceeded = 'time_limit_exceeded',\n InsufficientBalance = 'insufficient_balance',\n ProviderRestriction = 'provider_restriction',\n ComplianceRestriction = 'compliance_restriction',\n}\n\n/**\n * Security threat types.\n */\nexport enum SECURITY_THREAT_TYPE {\n FraudSuspected = 'fraud_suspected',\n VelocityExceeded = 'velocity_exceeded',\n SuspiciousPattern = 'suspicious_pattern',\n BlockedRegion = 'blocked_region',\n BlacklistedMethod = 'blacklisted_method',\n SystemThreat = 'system_threat',\n}\n\n/**\n * Webhook verification failure reasons.\n */\nexport enum WEBHOOK_VERIFICATION_REASON {\n InvalidSignature = 'invalid_signature',\n MissingSignature = 'missing_signature',\n ExpiredTimestamp = 'expired_timestamp',\n InvalidPayload = 'invalid_payload',\n UnknownEndpoint = 'unknown_endpoint',\n}\n\n/**\n * Central registry for all payment resolution translation keys.\n * Provides type safety and autocompletion for all PaymentError subclasses.\n */\n\nexport const PAYMENT_RESOLUTION_KEYS = {\n GENERIC: 'payments.resolution.generic',\n PAYMENTS_PACKAGE_ERROR: 'payments.resolution.payments_package_error',\n\n // Validation\n PAYMENT_VALIDATION_ERROR: 'payments.resolution.payment_validation_error',\n INVALID_AMOUNT_ERROR: 'payments.resolution.invalid_amount_error',\n INVALID_PAYMENT_METHOD_ERROR: 'payments.resolution.invalid_payment_method_error',\n\n // Processing\n PAYMENT_PROCESSING_ERROR: 'payments.resolution.payment_processing_error',\n PAYMENT_DECLINED_ERROR: 'payments.resolution.payment_declined_error',\n INSUFFICIENT_FUNDS_ERROR: 'payments.resolution.insufficient_funds_error',\n\n // Provider\n PAYMENT_PROVIDER_ERROR: 'payments.resolution.payment_provider_error',\n PROVIDER_TIMEOUT_ERROR: 'payments.resolution.provider_timeout_error',\n PROVIDER_RATE_LIMIT_ERROR: 'payments.resolution.provider_rate_limit_error',\n\n // Security\n PAYMENT_SECURITY_ERROR: 'payments.resolution.payment_security_error',\n FRAUD_DETECTED_ERROR: 'payments.resolution.fraud_detected_error',\n VELOCITY_LIMIT_EXCEEDED_ERROR: 'payments.resolution.velocity_limit_exceeded_error',\n\n // Refund\n REFUND_ERROR: 'payments.resolution.refund_error',\n REFUND_NOT_ALLOWED_ERROR: 'payments.resolution.refund_not_allowed_error',\n REFUND_AUTHORIZATION_ERROR: 'payments.resolution.refund_authorization_error',\n\n COMPLIANCE_ERROR: 'payments.resolution.compliance_error',\n KYC_VERIFICATION_REQUIRED: 'payments.resolution.kyc_verification_required',\n GEOGRAPHIC_RESTRICTION: 'payments.resolution.geographic_restriction',\n\n PAYMENT_WEBHOOK_PACKAGE_ERROR: 'payments.resolution.payment_webhook_package_error',\n PAYMENT_WEBHOOK_VERIFICATION_ERROR: 'payments.resolution.payment_webhook_verification_error',\n PAYMENT_WEBHOOK_PROCESSING_ERROR: 'payments.resolution.payment_webhook_processing_error',\n PAYMENT_WEBHOOK_REPLAY_ERROR: 'payments.resolution.payment_webhook_replay_error',\n} as const;\n\n/** Union type of all available resolution keys */\nexport type PaymentResolutionKey =\n (typeof PAYMENT_RESOLUTION_KEYS)[keyof typeof PAYMENT_RESOLUTION_KEYS];\n"]}
1
+ {"version":3,"sources":["../../src/payments/events/enums.ts","../../src/payments/events/unified-event/enums.ts","../../src/payments/provider/provider-capability/enums.ts","../../src/payments/request/enums.ts","../../src/payments/gateways/routings/enums.ts","../../src/payments/base-error/enum.ts"],"names":["PAYMENT_EVENT_TYPE","PAYMENT_EVENT_CATEGORY","PAYMENT_EVENT_ERROR_CATEGORY","EVENTPROCESSINGSTATUS","PAYMENT_PROVIDER_TYPE","PAYMENT_METHOD","PAYMENT_STATUS","TRANSACTION_TYPE","USER_TYPE","PRODUCT_TYPE","REQUIREDACTIONTYPE","COSTOPTIMIZATIONSTRATEGY","FAILOVERSTRATEGY","REGULATORYFRAMEWORK","LOADBALANCINGSTRATEGY","PERFORMANCEMETRICTYPE","ROUTINGSTRATEGY","ROUTER_RULE_NAME","REFUND_ERROR_TYPES","REGULATORY_FRAMEWORK","REFUND_NOT_ALLOWED_REASON","SECURITY_THREAT_TYPE","WEBHOOK_VERIFICATION_REASON"],"mappings":"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","file":"index.cjs","sourcesContent":["/**\n * Comprehensive enumeration of all payment-related events that can occur\n * in the system. Events are organized by category and follow a hierarchical\n * naming convention for easy filtering and subscription.\n *\n * Naming Convention:\n * - Category.Action (e.g., payment.completed)\n * - Use present tense for ongoing events, past tense for completed events\n * - Include both success and failure events for complete audit trails\n */\nexport enum PAYMENT_EVENT_TYPE {\n // Payment lifecycle events\n PaymentInitiated = 'payment.initiated',\n PaymentProcessing = 'payment.processing',\n PaymentRequiresAction = 'payment.requires_action',\n PaymentCompleted = 'payment.completed',\n PaymentFailed = 'payment.failed',\n PaymentCancelled = 'payment.cancelled',\n PaymentExpired = 'payment.expired',\n PaymentAuthorized = 'payment.authorized',\n PaymentCaptured = 'payment.captured',\n PaymentHeld = 'payment.held',\n PaymentReleased = 'payment.released',\n\n // Refund lifecycle events\n RefundRequested = 'refund.requested',\n RefundApproved = 'refund.approved',\n RefundRejected = 'refund.rejected',\n RefundProcessing = 'refund.processing',\n RefundCompleted = 'refund.completed',\n RefundFailed = 'refund.failed',\n RefundCancelled = 'refund.cancelled',\n\n // Provider interaction events\n ProviderWebhookReceived = 'provider.webhook.received',\n ProviderWebhookProcessed = 'provider.webhook.processed',\n ProviderWebhookFailed = 'provider.webhook.failed',\n ProviderApiCalled = 'provider.api.called',\n ProviderApiSucceeded = 'provider.api.succeeded',\n ProviderApiFailed = 'provider.api.failed',\n ProviderTimeout = 'provider.timeout',\n ProviderHealthChanged = 'provider.health.changed',\n\n // Financial events\n SettlementInitiated = 'settlement.initiated',\n SettlementCompleted = 'settlement.completed',\n SettlementFailed = 'settlement.failed',\n PayoutRequested = 'payout.requested',\n PayoutProcessed = 'payout.processed',\n PayoutFailed = 'payout.failed',\n\n // Dispute and chargeback events\n ChargebackReceived = 'chargeback.received',\n ChargebackResponded = 'chargeback.responded',\n ChargebackWon = 'chargeback.won',\n ChargebackLost = 'chargeback.lost',\n DisputeCreated = 'dispute.created',\n DisputeUpdated = 'dispute.updated',\n DisputeResolved = 'dispute.resolved',\n DisputeEscalated = 'dispute.escalated',\n\n // Security and fraud events\n FraudDetected = 'fraud.detected',\n FraudReviewRequired = 'fraud.review_required',\n FraudCleared = 'fraud.cleared',\n SuspiciousActivity = 'suspicious.activity',\n PaymentBlocked = 'payment.blocked',\n SecurityCheckFailed = 'security.check_failed',\n VelocityLimitExceeded = 'velocity.limit_exceeded',\n\n // Payment method events\n PaymentMethodAdded = 'payment_method.added',\n PaymentMethodUpdated = 'payment_method.updated',\n PaymentMethodDeleted = 'payment_method.deleted',\n PaymentMethodVerified = 'payment_method.verified',\n PaymentMethodExpired = 'payment_method.expired',\n\n // Subscription events\n SubscriptionCreated = 'subscription.created',\n SubscriptionUpdated = 'subscription.updated',\n SubscriptionCancelled = 'subscription.cancelled',\n SubscriptionRenewed = 'subscription.renewed',\n SubscriptionFailed = 'subscription.failed',\n SubscriptionTrialStarted = 'subscription.trial_started',\n SubscriptionTrialEnded = 'subscription.trial_ended',\n\n // System and operational events\n PaymentLimitsUpdated = 'payment_limits.updated',\n PaymentLimitsExceeded = 'payment_limits.exceeded',\n ProviderConfigUpdated = 'provider.config_updated',\n ProviderMaintenanceStarted = 'provider.maintenance_started',\n ProviderMaintenanceEnded = 'provider.maintenance_ended',\n\n // Compliance and audit events\n ComplianceCheckRequired = 'compliance.check_required',\n ComplianceCheckPassed = 'compliance.check_passed',\n ComplianceCheckFailed = 'compliance.check_failed',\n AuditTrailCreated = 'audit.trail_created',\n RegulatoryReportGenerated = 'regulatory.report_generated',\n}\n\n/**\n * Payment event categories for organization and routing.\n */\nexport enum PAYMENT_EVENT_CATEGORY {\n TRANSACTION = 'transaction',\n REFUND = 'refund',\n PROVIDER = 'provider',\n SECURITY = 'security',\n COMPLIANCE = 'compliance',\n FINANCIAL = 'financial',\n SUBSCRIPTION = 'subscription',\n SYSTEM = 'system',\n AUDIT = 'audit',\n}\n\n/**\n * Error categories for payment events.\n */\nexport enum PAYMENT_EVENT_ERROR_CATEGORY {\n UserError = 'user_error', // User input or action errors\n ProviderError = 'provider_error', // Payment provider errors\n SystemError = 'system_error', // Internal system errors\n NetworkError = 'network_error', // Network connectivity errors\n FraudError = 'fraud_error', // Fraud detection errors\n ComplianceError = 'compliance_error', // Regulatory compliance errors\n LimitError = 'limit_error', // Limit exceeded errors\n ConfigurationError = 'configuration_error', // Configuration errors\n TimeoutError = 'timeout_error', // Timeout errors\n ValidationError = 'validation_error', // Data validation errors\n}\n","/**\n * Event processing status enumeration.\n */\nexport enum EVENTPROCESSINGSTATUS {\n Received = 'received', // Event received from provider\n Validating = 'validating', // Signature and format validation\n Normalizing = 'normalizing', // Converting to unified format\n Normalized = 'normalized', // Successfully normalized\n Processing = 'processing', // Business logic processing\n Completed = 'completed', // Processing completed successfully\n Failed = 'failed', // Processing failed\n Retrying = 'retrying', // Retrying after failure\n Skipped = 'skipped', // Skipped due to filters/rules\n}\n","/**\n * Enumeration of all supported payment providers in the Plyaz ecosystem.\n */\nexport enum PAYMENT_PROVIDER_TYPE {\n // Traditional payment processors\n Stripe = 'stripe',\n Paypal = 'paypal',\n CheckoutCom = 'checkout_com',\n Adyen = 'adyen',\n\n // Cryptocurrency payment providers\n Moonpay = 'moonpay',\n CoinbaseCommerce = 'coinbase_commerce',\n BlockchainBridge = 'blockchain_bridge',\n\n // Regional payment providers\n Pix = 'pix',\n Boleto = 'boleto',\n Sepa = 'sepa',\n Ideal = 'ideal',\n Sofort = 'sofort',\n Alipay = 'alipay',\n WechatPay = 'wechat_pay',\n\n // Mock provider for testing\n MockProvider = 'mock_provider',\n}\n\n/**\n * Enumeration of payment methods supported across all providers.\n */\nexport enum PAYMENT_METHOD {\n // Traditional payment methods\n CreditCard = 'credit_card',\n DebitCard = 'debit_card',\n BankTransfer = 'bank_transfer',\n PaypalAccount = 'paypal_account',\n\n // Cryptocurrency payment methods\n CryptoBitcoin = 'crypto_bitcoin',\n CryptoEthereum = 'crypto_ethereum',\n CryptoPolygon = 'crypto_polygon',\n CryptoOptimism = 'crypto_optimism',\n CryptoUsdc = 'crypto_usdc',\n CryptoUsdt = 'crypto_usdt',\n CryptoNativeToken = 'crypto_native_token',\n\n // Regional payment methods\n PixInstant = 'pix_instant',\n BoletoBancario = 'boleto_bancario',\n SepaDirectDebit = 'sepa_direct_debit',\n IdealBank = 'ideal_bank',\n SofortBanking = 'sofort_banking',\n AlipayDigital = 'alipay_digital',\n WechatPayDigital = 'wechat_pay_digital',\n\n // Digital wallets\n ApplePay = 'apple_pay',\n GooglePay = 'google_pay',\n SamsungPay = 'samsung_pay',\n}\n\n/**\n * Comprehensive payment status enumeration.\n */\nexport enum PAYMENT_STATUS {\n // Initial states\n Initiated = 'initiated',\n Pending = 'pending',\n Processing = 'processing',\n\n // Action required states\n RequiresAction = 'requires_action',\n RequiresConfirmation = 'requires_confirmation',\n RequiresPaymentMethod = 'requires_payment_method',\n\n // Success states\n Completed = 'completed',\n Settled = 'settled',\n\n // Failure states\n Failed = 'failed',\n Declined = 'declined',\n Cancelled = 'cancelled',\n Expired = 'expired',\n\n // Refund states\n Refunded = 'refunded',\n PartiallyRefunded = 'partially_refunded',\n\n // Dispute states\n Disputed = 'disputed',\n Chargeback = 'chargeback',\n ChargebackResolved = 'chargeback_resolved',\n\n // Special states\n Held = 'held',\n Authorized = 'authorized',\n Captured = 'captured',\n}\n\n/**\n * Transaction type enumeration.\n */\nexport enum TRANSACTION_TYPE {\n Payment = 'payment',\n Refund = 'refund',\n PartialRefund = 'partial_refund',\n Withdrawal = 'withdrawal',\n Donation = 'donation',\n Subscription = 'subscription',\n SubscriptionRenewal = 'subscription_renewal',\n Fee = 'fee',\n Chargeback = 'chargeback',\n Adjustment = 'adjustment',\n Reward = 'reward',\n Penalty = 'penalty',\n Transfer = 'transfer',\n}\n\n/**\n * User type enumeration.\n */\nexport enum USER_TYPE {\n Fan = 'fan',\n Athlete = 'athlete',\n Club = 'club',\n Agent = 'agent',\n Scout = 'scout',\n Admin = 'admin',\n System = 'system',\n}\n\n/**\n * Product type enumeration.\n */\nexport enum PRODUCT_TYPE {\n Campaign = 'campaign',\n Subscription = 'subscription',\n Nft = 'nft',\n Merchandise = 'merchandise',\n EventTicket = 'event_ticket',\n PremiumContent = 'premium_content',\n TrainingSession = 'training_session',\n Consultation = 'consultation',\n DigitalProduct = 'digital_product',\n PhysicalProduct = 'physical_product',\n}\n","/**\n * Enumeration of action types that users might need to complete.\n */\nexport enum REQUIREDACTIONTYPE {\n /** Redirect to external page (3D Secure, bank auth, etc.) */\n Redirect = 'redirect',\n\n /** Enter SMS or email verification code */\n OtpVerification = 'otp_verification',\n\n /** Upload identity or financial documents */\n DocumentUpload = 'document_upload',\n\n /** Provide additional payment information */\n AdditionalPaymentInfo = 'additional_payment_info',\n\n /** Confirm payment via mobile app or email */\n PaymentConfirmation = 'payment_confirmation',\n\n /** Contact customer support for manual verification */\n ManualVerification = 'manual_verification',\n\n /** Wait for bank transfer or other delayed method */\n WaitForCompletion = 'wait_for_completion',\n}\n","/**\n * Cost optimization strategies.\n */\nexport enum COSTOPTIMIZATIONSTRATEGY {\n /** Always use cheapest option */\n Aggressive = 'aggressive',\n\n /** Balance cost with reliability */\n Balanced = 'balanced',\n\n /** Prefer reliability over cost */\n Conservative = 'conservative',\n\n /** Optimize for specific cost components */\n Targeted = 'targeted',\n}\n\n/**\n * Failover strategies.\n */\nexport enum FAILOVERSTRATEGY {\n /** Use predefined provider order */\n PriorityOrder = 'priority_order',\n\n /** Failover to next available provider */\n NextAvailable = 'next_available',\n\n /** Failover based on performance metrics */\n PerformanceBased = 'performance_based',\n\n /** Failover to least loaded provider */\n LoadBalanced = 'load_balanced',\n\n /** Geographic failover preference */\n Geographic = 'geographic',\n}\n\n/**\n * Regulatory frameworks.\n */\nexport enum REGULATORYFRAMEWORK {\n PciDss = 'pci_dss',\n Gdpr = 'gdpr',\n Psd2 = 'psd2',\n Sox = 'sox',\n Aml = 'aml',\n Kyc = 'kyc',\n Ccpa = 'ccpa',\n LocalBanking = 'local_banking',\n}\n\n/**\n * Load balancing strategies.\n */\nexport enum LOADBALANCINGSTRATEGY {\n /** Rotate through providers evenly */\n RoundRobin = 'round_robin',\n\n /** Use weighted distribution */\n Weighted = 'weighted',\n\n /** Choose provider with least active traffic */\n LeastConnections = 'least_connections',\n\n /** Choose based on best performance metrics */\n PerformanceBased = 'performance_based',\n\n /** Custom strategy defined by merchant */\n Custom = 'custom',\n}\n\n/**\n * Types of performance metrics.\n */\nexport enum PERFORMANCEMETRICTYPE {\n Latency = 'latency',\n SuccessRate = 'success_rate',\n ErrorRate = 'error_rate',\n Throughput = 'throughput',\n Retries = 'retries',\n Availability = 'availability',\n Cost = 'cost',\n}\n\n/**\n * Primary routing strategies.\n */\nexport enum ROUTINGSTRATEGY {\n /** Optimize for lowest total cost */\n CostOptimized = 'cost_optimized',\n\n /** Optimize for highest reliability */\n ReliabilityFirst = 'reliability_first',\n\n /** Optimize for fastest processing */\n PerformanceFirst = 'performance_first',\n\n /** Balance cost, reliability, and performance */\n Balanced = 'balanced',\n\n /** Use user or region preferences */\n UserPreference = 'user_preference',\n\n /** Distribute load evenly */\n RoundRobin = 'round_robin',\n\n /** Custom routing logic */\n Custom = 'custom',\n}\n\n/**\n * Enumerates all routing rule identifiers used within RouterStrategy.\n *\n * Purpose:\n * - Avoid hardcoded strings for rule names\n * - Provide consistent naming for debugging and error contexts\n * - Improve developer experience via auto-completion\n */\nexport enum ROUTER_RULE_NAME {\n AmountBasedSelection = 'amountBasedSelection',\n CurrencySpecificProviders = 'currencySpecificProviders',\n RegionSelection = 'regionSelection',\n RegionCompliance = 'regionCompliance',\n UserTypeSelection = 'userTypeSelection',\n TimeBasedSelection = 'timeBasedSelection',\n CustomRuleEvaluation = 'customRuleEvaluation',\n ABTesting = 'abTesting',\n DefaultSelection = 'defaultSelection',\n}\n","/**\n * Payment-specific error categories\n */\n// TODO: check if this is correct\nexport const PAYMENT_ERROR_CATEGORY = {\n /** Payment method validation or processing error */\n PaymentMethod: 'payment.method',\n\n /** Transaction processing error */\n Transaction: 'transaction',\n\n /** Payment capture error */\n Capture: 'capture',\n\n /** Payment authorization error */\n Authorization: 'authorization',\n\n /** Payment settlement error */\n Settlement: 'settlement',\n\n /** Refund processing error */\n Refund: 'refund',\n\n /** Payment gateway or provider error */\n Gateway: 'gateway',\n\n /** Payment fraud detection error */\n Fraud: 'fraud',\n\n /** Payment compliance error (AML/KYC) */\n Compliance: 'compliance',\n\n /** Payment limits exceeded */\n Limits: 'limits',\n\n /** Payment webhook error */\n Webhook: 'webhook',\n\n /** Payment security error */\n Security: 'security',\n\n /** Payment processing timeout */\n Timeout: 'timeout',\n\n /** Payment configuration error */\n Configuration: 'configuration',\n} as const;\n\nexport enum REFUND_ERROR_TYPES {\n NotAllowed = 'not_allowed',\n Authorization = 'authorization',\n Processing = 'processing',\n}\n\n/**\n * Regulatory frameworks.\n */\nexport enum REGULATORY_FRAMEWORK {\n PCIDSS = 'pci_dss',\n GDPR = 'gdpr',\n PSD2 = 'psd2',\n SOX = 'sox',\n AML = 'aml',\n KYC = 'kyc',\n CCPA = 'ccpa',\n LOCALBANKING = 'local_banking',\n}\n\n/**\n * Refund not allowed reasons.\n */\nexport enum REFUND_NOT_ALLOWED_REASON {\n AlreadyRefunded = 'already_refunded',\n PartialNotSupported = 'partial_not_supported',\n TimeLimitExceeded = 'time_limit_exceeded',\n InsufficientBalance = 'insufficient_balance',\n ProviderRestriction = 'provider_restriction',\n ComplianceRestriction = 'compliance_restriction',\n}\n\n/**\n * Security threat types.\n */\nexport enum SECURITY_THREAT_TYPE {\n FraudSuspected = 'fraud_suspected',\n VelocityExceeded = 'velocity_exceeded',\n SuspiciousPattern = 'suspicious_pattern',\n BlockedRegion = 'blocked_region',\n BlacklistedMethod = 'blacklisted_method',\n SystemThreat = 'system_threat',\n}\n\n/**\n * Webhook verification failure reasons.\n */\nexport enum WEBHOOK_VERIFICATION_REASON {\n InvalidSignature = 'invalid_signature',\n MissingSignature = 'missing_signature',\n ExpiredTimestamp = 'expired_timestamp',\n InvalidPayload = 'invalid_payload',\n UnknownEndpoint = 'unknown_endpoint',\n}\n\n/**\n * Central registry for all payment resolution translation keys.\n * Provides type safety and autocompletion for all PaymentError subclasses.\n */\n\nexport const PAYMENT_RESOLUTION_KEYS = {\n GENERIC: 'resolution.generic',\n PAYMENTS_PACKAGE_ERROR: 'resolution._package_error',\n\n // Validation\n PAYMENT_VALIDATION_ERROR: 'resolution.payment_validation_error',\n INVALID_AMOUNT_ERROR: 'resolution.invalid_amount_error',\n INVALID_PAYMENT_METHOD_ERROR: 'resolution.invalid_payment_method_error',\n\n // Processing\n PAYMENT_PROCESSING_ERROR: 'resolution.payment_processing_error',\n PAYMENT_DECLINED_ERROR: 'resolution.payment_declined_error',\n INSUFFICIENT_FUNDS_ERROR: 'resolution.insufficient_funds_error',\n\n // Provider\n PAYMENT_PROVIDER_ERROR: 'resolution.payment_provider_error',\n PROVIDER_TIMEOUT_ERROR: 'resolution.provider_timeout_error',\n PROVIDER_RATE_LIMIT_ERROR: 'resolution.provider_rate_limit_error',\n\n // Security\n PAYMENT_SECURITY_ERROR: 'resolution.payment_security_error',\n FRAUD_DETECTED_ERROR: 'resolution.fraud_detected_error',\n VELOCITY_LIMIT_EXCEEDED_ERROR: 'resolution.velocity_limit_exceeded_error',\n\n // Refund\n REFUND_ERROR: 'resolution.refund_error',\n REFUND_NOT_ALLOWED_ERROR: 'resolution.refund_not_allowed_error',\n REFUND_AUTHORIZATION_ERROR: 'resolution.refund_authorization_error',\n\n COMPLIANCE_ERROR: 'resolution.compliance_error',\n KYC_VERIFICATION_REQUIRED: 'resolution.kyc_verification_required',\n GEOGRAPHIC_RESTRICTION: 'resolution.geographic_restriction',\n\n PAYMENT_WEBHOOK_PACKAGE_ERROR: 'resolution.payment_webhook_package_error',\n PAYMENT_WEBHOOK_VERIFICATION_ERROR: 'resolution.payment_webhook_verification_error',\n PAYMENT_WEBHOOK_PROCESSING_ERROR: 'resolution.payment_webhook_processing_error',\n PAYMENT_WEBHOOK_REPLAY_ERROR: 'resolution.payment_webhook_replay_error',\n} as const;\n\n/** Union type of all available resolution keys */\nexport type PaymentResolutionKey =\n (typeof PAYMENT_RESOLUTION_KEYS)[keyof typeof PAYMENT_RESOLUTION_KEYS];\n\n/**\n * Central registry for all payment recommendation translation keys.\n * Provides type safety and autocompletion for analytics, alerts, and monitoring logic.\n */\n\nexport const PAYMENT_RECOMMENDATION_KEYS = {\n RETRY_LOGIC: 'recommendation.retry_logic',\n CHECK_PROVIDER: 'recommendation.check_provider',\n CRITICAL_ALERT: 'recommendation.critical_alert',\n USER_FACING: 'recommendation.user_facing',\n SYSTEM_STABLE: 'recommendation.system_stable',\n} as const;\n\n/** Union type of all available recommendation keys */\nexport type PaymentRecommendationKey =\n (typeof PAYMENT_RECOMMENDATION_KEYS)[keyof typeof PAYMENT_RECOMMENDATION_KEYS];\n"]}
@@ -286,6 +286,18 @@ var ROUTINGSTRATEGY = /* @__PURE__ */ ((ROUTINGSTRATEGY2) => {
286
286
  ROUTINGSTRATEGY2["Custom"] = "custom";
287
287
  return ROUTINGSTRATEGY2;
288
288
  })(ROUTINGSTRATEGY || {});
289
+ var ROUTER_RULE_NAME = /* @__PURE__ */ ((ROUTER_RULE_NAME2) => {
290
+ ROUTER_RULE_NAME2["AmountBasedSelection"] = "amountBasedSelection";
291
+ ROUTER_RULE_NAME2["CurrencySpecificProviders"] = "currencySpecificProviders";
292
+ ROUTER_RULE_NAME2["RegionSelection"] = "regionSelection";
293
+ ROUTER_RULE_NAME2["RegionCompliance"] = "regionCompliance";
294
+ ROUTER_RULE_NAME2["UserTypeSelection"] = "userTypeSelection";
295
+ ROUTER_RULE_NAME2["TimeBasedSelection"] = "timeBasedSelection";
296
+ ROUTER_RULE_NAME2["CustomRuleEvaluation"] = "customRuleEvaluation";
297
+ ROUTER_RULE_NAME2["ABTesting"] = "abTesting";
298
+ ROUTER_RULE_NAME2["DefaultSelection"] = "defaultSelection";
299
+ return ROUTER_RULE_NAME2;
300
+ })(ROUTER_RULE_NAME || {});
289
301
 
290
302
  // src/payments/base-error/enum.ts
291
303
  var PAYMENT_ERROR_CATEGORY = {
@@ -362,37 +374,44 @@ var WEBHOOK_VERIFICATION_REASON = /* @__PURE__ */ ((WEBHOOK_VERIFICATION_REASON2
362
374
  return WEBHOOK_VERIFICATION_REASON2;
363
375
  })(WEBHOOK_VERIFICATION_REASON || {});
364
376
  var PAYMENT_RESOLUTION_KEYS = {
365
- GENERIC: "payments.resolution.generic",
366
- PAYMENTS_PACKAGE_ERROR: "payments.resolution.payments_package_error",
377
+ GENERIC: "resolution.generic",
378
+ PAYMENTS_PACKAGE_ERROR: "resolution._package_error",
367
379
  // Validation
368
- PAYMENT_VALIDATION_ERROR: "payments.resolution.payment_validation_error",
369
- INVALID_AMOUNT_ERROR: "payments.resolution.invalid_amount_error",
370
- INVALID_PAYMENT_METHOD_ERROR: "payments.resolution.invalid_payment_method_error",
380
+ PAYMENT_VALIDATION_ERROR: "resolution.payment_validation_error",
381
+ INVALID_AMOUNT_ERROR: "resolution.invalid_amount_error",
382
+ INVALID_PAYMENT_METHOD_ERROR: "resolution.invalid_payment_method_error",
371
383
  // Processing
372
- PAYMENT_PROCESSING_ERROR: "payments.resolution.payment_processing_error",
373
- PAYMENT_DECLINED_ERROR: "payments.resolution.payment_declined_error",
374
- INSUFFICIENT_FUNDS_ERROR: "payments.resolution.insufficient_funds_error",
384
+ PAYMENT_PROCESSING_ERROR: "resolution.payment_processing_error",
385
+ PAYMENT_DECLINED_ERROR: "resolution.payment_declined_error",
386
+ INSUFFICIENT_FUNDS_ERROR: "resolution.insufficient_funds_error",
375
387
  // Provider
376
- PAYMENT_PROVIDER_ERROR: "payments.resolution.payment_provider_error",
377
- PROVIDER_TIMEOUT_ERROR: "payments.resolution.provider_timeout_error",
378
- PROVIDER_RATE_LIMIT_ERROR: "payments.resolution.provider_rate_limit_error",
388
+ PAYMENT_PROVIDER_ERROR: "resolution.payment_provider_error",
389
+ PROVIDER_TIMEOUT_ERROR: "resolution.provider_timeout_error",
390
+ PROVIDER_RATE_LIMIT_ERROR: "resolution.provider_rate_limit_error",
379
391
  // Security
380
- PAYMENT_SECURITY_ERROR: "payments.resolution.payment_security_error",
381
- FRAUD_DETECTED_ERROR: "payments.resolution.fraud_detected_error",
382
- VELOCITY_LIMIT_EXCEEDED_ERROR: "payments.resolution.velocity_limit_exceeded_error",
392
+ PAYMENT_SECURITY_ERROR: "resolution.payment_security_error",
393
+ FRAUD_DETECTED_ERROR: "resolution.fraud_detected_error",
394
+ VELOCITY_LIMIT_EXCEEDED_ERROR: "resolution.velocity_limit_exceeded_error",
383
395
  // Refund
384
- REFUND_ERROR: "payments.resolution.refund_error",
385
- REFUND_NOT_ALLOWED_ERROR: "payments.resolution.refund_not_allowed_error",
386
- REFUND_AUTHORIZATION_ERROR: "payments.resolution.refund_authorization_error",
387
- COMPLIANCE_ERROR: "payments.resolution.compliance_error",
388
- KYC_VERIFICATION_REQUIRED: "payments.resolution.kyc_verification_required",
389
- GEOGRAPHIC_RESTRICTION: "payments.resolution.geographic_restriction",
390
- PAYMENT_WEBHOOK_PACKAGE_ERROR: "payments.resolution.payment_webhook_package_error",
391
- PAYMENT_WEBHOOK_VERIFICATION_ERROR: "payments.resolution.payment_webhook_verification_error",
392
- PAYMENT_WEBHOOK_PROCESSING_ERROR: "payments.resolution.payment_webhook_processing_error",
393
- PAYMENT_WEBHOOK_REPLAY_ERROR: "payments.resolution.payment_webhook_replay_error"
396
+ REFUND_ERROR: "resolution.refund_error",
397
+ REFUND_NOT_ALLOWED_ERROR: "resolution.refund_not_allowed_error",
398
+ REFUND_AUTHORIZATION_ERROR: "resolution.refund_authorization_error",
399
+ COMPLIANCE_ERROR: "resolution.compliance_error",
400
+ KYC_VERIFICATION_REQUIRED: "resolution.kyc_verification_required",
401
+ GEOGRAPHIC_RESTRICTION: "resolution.geographic_restriction",
402
+ PAYMENT_WEBHOOK_PACKAGE_ERROR: "resolution.payment_webhook_package_error",
403
+ PAYMENT_WEBHOOK_VERIFICATION_ERROR: "resolution.payment_webhook_verification_error",
404
+ PAYMENT_WEBHOOK_PROCESSING_ERROR: "resolution.payment_webhook_processing_error",
405
+ PAYMENT_WEBHOOK_REPLAY_ERROR: "resolution.payment_webhook_replay_error"
406
+ };
407
+ var PAYMENT_RECOMMENDATION_KEYS = {
408
+ RETRY_LOGIC: "recommendation.retry_logic",
409
+ CHECK_PROVIDER: "recommendation.check_provider",
410
+ CRITICAL_ALERT: "recommendation.critical_alert",
411
+ USER_FACING: "recommendation.user_facing",
412
+ SYSTEM_STABLE: "recommendation.system_stable"
394
413
  };
395
414
 
396
- export { COSTOPTIMIZATIONSTRATEGY, EVENTPROCESSINGSTATUS, FAILOVERSTRATEGY, LOADBALANCINGSTRATEGY, PAYMENT_ERROR_CATEGORY, PAYMENT_EVENT_CATEGORY, PAYMENT_EVENT_ERROR_CATEGORY, PAYMENT_EVENT_TYPE, PAYMENT_METHOD, PAYMENT_PROVIDER_TYPE, PAYMENT_RESOLUTION_KEYS, PAYMENT_STATUS, PERFORMANCEMETRICTYPE, PRODUCT_TYPE, REFUND_ERROR_TYPES, REFUND_NOT_ALLOWED_REASON, REGULATORYFRAMEWORK, REGULATORY_FRAMEWORK, REQUIREDACTIONTYPE, ROUTINGSTRATEGY, SECURITY_THREAT_TYPE, TRANSACTION_TYPE, USER_TYPE, WEBHOOK_VERIFICATION_REASON };
415
+ export { COSTOPTIMIZATIONSTRATEGY, EVENTPROCESSINGSTATUS, FAILOVERSTRATEGY, LOADBALANCINGSTRATEGY, PAYMENT_ERROR_CATEGORY, PAYMENT_EVENT_CATEGORY, PAYMENT_EVENT_ERROR_CATEGORY, PAYMENT_EVENT_TYPE, PAYMENT_METHOD, PAYMENT_PROVIDER_TYPE, PAYMENT_RECOMMENDATION_KEYS, PAYMENT_RESOLUTION_KEYS, PAYMENT_STATUS, PERFORMANCEMETRICTYPE, PRODUCT_TYPE, REFUND_ERROR_TYPES, REFUND_NOT_ALLOWED_REASON, REGULATORYFRAMEWORK, REGULATORY_FRAMEWORK, REQUIREDACTIONTYPE, ROUTER_RULE_NAME, ROUTINGSTRATEGY, SECURITY_THREAT_TYPE, TRANSACTION_TYPE, USER_TYPE, WEBHOOK_VERIFICATION_REASON };
397
416
  //# sourceMappingURL=index.js.map
398
417
  //# sourceMappingURL=index.js.map