@konplit-services/common 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/build/Schema/CFLESCHEMA.d.ts +138 -0
  2. package/build/Schema/CFLESCHEMA.js +144 -0
  3. package/build/errors/axios-request-error.d.ts +17 -0
  4. package/build/errors/axios-request-error.js +32 -0
  5. package/build/errors/bad-request-error.d.ts +17 -0
  6. package/build/errors/bad-request-error.js +28 -0
  7. package/build/errors/custom-error.d.ts +15 -0
  8. package/build/errors/custom-error.js +11 -0
  9. package/build/errors/database-error.d.ts +17 -0
  10. package/build/errors/database-error.js +28 -0
  11. package/build/errors/error.interface.d.ts +4 -0
  12. package/build/errors/error.interface.js +2 -0
  13. package/build/errors/forbidden-error.d.ts +17 -0
  14. package/build/errors/forbidden-error.js +28 -0
  15. package/build/errors/invalid-input-error.d.ts +19 -0
  16. package/build/errors/invalid-input-error.js +31 -0
  17. package/build/errors/mongoose-validation-error.d.ts +17 -0
  18. package/build/errors/mongoose-validation-error.js +28 -0
  19. package/build/errors/not-found.d.ts +17 -0
  20. package/build/errors/not-found.js +28 -0
  21. package/build/errors/notAuthorized.d.ts +17 -0
  22. package/build/errors/notAuthorized.js +28 -0
  23. package/build/errors/request-validation-error.d.ts +17 -0
  24. package/build/errors/request-validation-error.js +28 -0
  25. package/build/errors/service-not-available.d.ts +17 -0
  26. package/build/errors/service-not-available.js +28 -0
  27. package/build/events/accounts-events/interfaces/account-created.interface.d.ts +11 -0
  28. package/build/events/accounts-events/interfaces/account-created.interface.js +2 -0
  29. package/build/events/accounts-events/interfaces/account-updated.interface.d.ts +0 -0
  30. package/build/events/accounts-events/interfaces/account-updated.interface.js +1 -0
  31. package/build/events/accounts-events/interfaces/permission-created.interface.d.ts +12 -0
  32. package/build/events/accounts-events/interfaces/permission-created.interface.js +2 -0
  33. package/build/events/accounts-events/interfaces/permission-removed.interface.d.ts +12 -0
  34. package/build/events/accounts-events/interfaces/permission-removed.interface.js +2 -0
  35. package/build/events/base-events/base-events.listener.d.ts +103 -0
  36. package/build/events/base-events/base-events.listener.js +164 -0
  37. package/build/events/base-events/base-events.publisher.d.ts +75 -0
  38. package/build/events/base-events/base-events.publisher.js +110 -0
  39. package/build/events/logs-events/interfaces/admins-logs.created.interface.d.ts +15 -0
  40. package/build/events/logs-events/interfaces/admins-logs.created.interface.js +2 -0
  41. package/build/events/logs-events/interfaces/merchants-logs-created.interface.d.ts +15 -0
  42. package/build/events/logs-events/interfaces/merchants-logs-created.interface.js +2 -0
  43. package/build/events/subjects.d.ts +26 -0
  44. package/build/events/subjects.js +37 -0
  45. package/build/events/types/order-statu.types.d.ts +22 -0
  46. package/build/events/types/order-statu.types.js +26 -0
  47. package/build/helper/Two-fa-type.d.ts +7 -0
  48. package/build/helper/Two-fa-type.js +11 -0
  49. package/build/helper/account-balance-types.d.ts +4 -0
  50. package/build/helper/account-balance-types.js +8 -0
  51. package/build/helper/account-status.d.ts +4 -0
  52. package/build/helper/account-status.js +8 -0
  53. package/build/helper/bank-code.d.ts +1 -0
  54. package/build/helper/bank-code.js +16 -0
  55. package/build/helper/business-category.d.ts +12 -0
  56. package/build/helper/business-category.js +17 -0
  57. package/build/helper/bvn-validation-type.d.ts +4 -0
  58. package/build/helper/bvn-validation-type.js +8 -0
  59. package/build/helper/card-types.d.ts +10 -0
  60. package/build/helper/card-types.js +14 -0
  61. package/build/helper/card_auth_type.d.ts +5 -0
  62. package/build/helper/card_auth_type.js +9 -0
  63. package/build/helper/chargeback.d.ts +7 -0
  64. package/build/helper/chargeback.js +11 -0
  65. package/build/helper/charges.d.ts +7 -0
  66. package/build/helper/charges.js +11 -0
  67. package/build/helper/currency-types.d.ts +4 -0
  68. package/build/helper/currency-types.js +8 -0
  69. package/build/helper/custom-paginate.d.ts +19 -0
  70. package/build/helper/custom-paginate.js +50 -0
  71. package/build/helper/email-types.d.ts +22 -0
  72. package/build/helper/email-types.js +26 -0
  73. package/build/helper/errorCodes/error-codes.d.ts +92 -0
  74. package/build/helper/errorCodes/error-codes.js +99 -0
  75. package/build/helper/extract-card-details.d.ts +4 -0
  76. package/build/helper/extract-card-details.js +20 -0
  77. package/build/helper/invoice.d.ts +19 -0
  78. package/build/helper/invoice.js +26 -0
  79. package/build/helper/lang/email.d.ts +12 -0
  80. package/build/helper/lang/email.js +19 -0
  81. package/build/helper/lang/error-text.d.ts +32 -0
  82. package/build/helper/lang/error-text.js +35 -0
  83. package/build/helper/lang/error.d.ts +0 -0
  84. package/build/helper/lang/error.js +1 -0
  85. package/build/helper/lang/language.d.ts +113 -0
  86. package/build/helper/lang/language.js +146 -0
  87. package/build/helper/last-three.d.ts +1 -0
  88. package/build/helper/last-three.js +8 -0
  89. package/build/helper/location.d.ts +2 -0
  90. package/build/helper/location.js +20 -0
  91. package/build/helper/media-types.d.ts +6 -0
  92. package/build/helper/media-types.js +10 -0
  93. package/build/helper/nibss-scopes.d.ts +9 -0
  94. package/build/helper/nibss-scopes.js +13 -0
  95. package/build/helper/payment-options.d.ts +7 -0
  96. package/build/helper/payment-options.js +11 -0
  97. package/build/helper/pdf-generator.d.ts +9 -0
  98. package/build/helper/pdf-generator.js +73 -0
  99. package/build/helper/permistions.d.ts +126 -0
  100. package/build/helper/permistions.js +129 -0
  101. package/build/helper/plan-types.d.ts +9 -0
  102. package/build/helper/plan-types.js +13 -0
  103. package/build/helper/query/query-option.d.ts +23 -0
  104. package/build/helper/query/query-option.js +40 -0
  105. package/build/helper/refund.d.ts +21 -0
  106. package/build/helper/refund.js +28 -0
  107. package/build/helper/roles.d.ts +15 -0
  108. package/build/helper/roles.js +19 -0
  109. package/build/helper/settlement.d.ts +14 -0
  110. package/build/helper/settlement.js +20 -0
  111. package/build/helper/status.d.ts +15 -0
  112. package/build/helper/status.js +19 -0
  113. package/build/helper/subscriptions-types.d.ts +16 -0
  114. package/build/helper/subscriptions-types.js +22 -0
  115. package/build/helper/success-response.d.ts +9 -0
  116. package/build/helper/success-response.js +13 -0
  117. package/build/helper/transaction-authentication-type.d.ts +5 -0
  118. package/build/helper/transaction-authentication-type.js +9 -0
  119. package/build/helper/transaction-type.d.ts +15 -0
  120. package/build/helper/transaction-type.js +20 -0
  121. package/build/helper/transfer.d.ts +9 -0
  122. package/build/helper/transfer.js +13 -0
  123. package/build/helper/user-types.d.ts +4 -0
  124. package/build/helper/user-types.js +8 -0
  125. package/build/helper/util/gender.d.ts +4 -0
  126. package/build/helper/util/gender.js +8 -0
  127. package/build/helper/util/get-transaction-id.d.ts +9 -0
  128. package/build/helper/util/get-transaction-id.js +17 -0
  129. package/build/helper/util/getobject-keys.d.ts +10 -0
  130. package/build/helper/util/getobject-keys.js +22 -0
  131. package/build/helper/util/pagination.d.ts +25 -0
  132. package/build/helper/util/pagination.js +19 -0
  133. package/build/helper/util/remove-transactionId.d.ts +14 -0
  134. package/build/helper/util/remove-transactionId.js +16 -0
  135. package/build/helper/util/sort-by.d.ts +8 -0
  136. package/build/helper/util/sort-by.js +11 -0
  137. package/build/helper/validateParams.d.ts +7 -0
  138. package/build/helper/validateParams.js +13 -0
  139. package/build/helper/worker-task-types.d.ts +8 -0
  140. package/build/helper/worker-task-types.js +12 -0
  141. package/build/index.d.ts +79 -0
  142. package/build/index.js +103 -0
  143. package/build/log-activities/actions.d.ts +17 -0
  144. package/build/log-activities/actions.js +25 -0
  145. package/build/middlewares/check-inputs.d.ts +2 -0
  146. package/build/middlewares/check-inputs.js +24 -0
  147. package/build/middlewares/current-user.d.ts +10 -0
  148. package/build/middlewares/current-user.js +41 -0
  149. package/build/middlewares/error-handler.d.ts +3 -0
  150. package/build/middlewares/error-handler.js +61 -0
  151. package/build/middlewares/permission.d.ts +10 -0
  152. package/build/middlewares/permission.js +46 -0
  153. package/build/middlewares/require-auth.d.ts +2 -0
  154. package/build/middlewares/require-auth.js +13 -0
  155. package/build/middlewares/validate-request.d.ts +2 -0
  156. package/build/middlewares/validate-request.js +13 -0
  157. package/build/redis/base/index.d.ts +13 -0
  158. package/build/redis/base/index.js +104 -0
  159. package/build/redis/constants/index.d.ts +5 -0
  160. package/build/redis/constants/index.js +12 -0
  161. package/build/repository/interface/baseRepository.d.ts +9 -0
  162. package/build/repository/interface/baseRepository.js +8 -0
  163. package/build/repository/interface/based.d.ts +9 -0
  164. package/build/repository/interface/based.js +2 -0
  165. package/build/services/Jwt.d.ts +17 -0
  166. package/build/services/Jwt.js +44 -0
  167. package/build/services/base.service.d.ts +14 -0
  168. package/build/services/base.service.js +20 -0
  169. package/build/services/mailersend.d.ts +25 -0
  170. package/build/services/mailersend.js +56 -0
  171. package/build/util/jwt.validation.d.ts +1 -0
  172. package/build/util/jwt.validation.js +27 -0
  173. package/build/util/lib/nats/nat-error-codes.d.ts +4 -0
  174. package/build/util/lib/nats/nat-error-codes.js +7 -0
  175. package/build/util/parse-query-string.d.ts +4 -0
  176. package/build/util/parse-query-string.js +22 -0
  177. package/package.json +46 -0
@@ -0,0 +1,26 @@
1
+ export declare enum StreamEvent {
2
+ Event = "events.>",
3
+ LOG = "logs.>"
4
+ }
5
+ export declare enum StreamName {
6
+ name = "EVENTS",
7
+ logName = "LOGS"
8
+ }
9
+ export declare enum Subjects {
10
+ AccountCreated = "events.account.created",
11
+ AccountVerified = "events.account.verified",
12
+ AccountUpdated = "events.account.updated",
13
+ AccountBlocked = "events.account.blocked",
14
+ MerchantCreated = "events.merchant.created",
15
+ MerchantUpdated = "events.merchant.updated",
16
+ MerchantKeyUpdated = "events.merchant.key.updated",
17
+ MerchantLogCreated = "events.merchant.Log.created",
18
+ TransferCreated = "events.transfer.created",
19
+ TransferUpdated = "events.transfer.updated",
20
+ PermissionCreated = "events.permission.created",
21
+ PermissionUpdated = "events.permission.updated",
22
+ PermissionRemoved = "events.permission.removed",
23
+ AddPermissionToUser = "events.add.permission.to.user",
24
+ UserRoleUpdated = "events.user.role.updated",
25
+ AdminLogCreated = "events.admin.log.created"
26
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Subjects = exports.StreamName = exports.StreamEvent = void 0;
4
+ var StreamEvent;
5
+ (function (StreamEvent) {
6
+ StreamEvent["Event"] = "events.>";
7
+ StreamEvent["LOG"] = "logs.>";
8
+ })(StreamEvent = exports.StreamEvent || (exports.StreamEvent = {}));
9
+ var StreamName;
10
+ (function (StreamName) {
11
+ StreamName["name"] = "EVENTS";
12
+ StreamName["logName"] = "LOGS";
13
+ })(StreamName = exports.StreamName || (exports.StreamName = {}));
14
+ var Subjects;
15
+ (function (Subjects) {
16
+ // Accounts Subjects
17
+ Subjects["AccountCreated"] = "events.account.created";
18
+ Subjects["AccountVerified"] = "events.account.verified";
19
+ Subjects["AccountUpdated"] = "events.account.updated";
20
+ Subjects["AccountBlocked"] = "events.account.blocked";
21
+ //Merchants Subjects
22
+ Subjects["MerchantCreated"] = "events.merchant.created";
23
+ Subjects["MerchantUpdated"] = "events.merchant.updated";
24
+ Subjects["MerchantKeyUpdated"] = "events.merchant.key.updated";
25
+ Subjects["MerchantLogCreated"] = "events.merchant.Log.created";
26
+ //Transfer Subjects
27
+ Subjects["TransferCreated"] = "events.transfer.created";
28
+ Subjects["TransferUpdated"] = "events.transfer.updated";
29
+ // Permissions
30
+ Subjects["PermissionCreated"] = "events.permission.created";
31
+ Subjects["PermissionUpdated"] = "events.permission.updated";
32
+ Subjects["PermissionRemoved"] = "events.permission.removed";
33
+ Subjects["AddPermissionToUser"] = "events.add.permission.to.user";
34
+ // Roles
35
+ Subjects["UserRoleUpdated"] = "events.user.role.updated";
36
+ Subjects["AdminLogCreated"] = "events.admin.log.created";
37
+ })(Subjects = exports.Subjects || (exports.Subjects = {}));
@@ -0,0 +1,22 @@
1
+ export declare enum OrderStatus {
2
+ /**
3
+ When an order is created.
4
+ But the ticket has not been reserved
5
+ */
6
+ Created = "created",
7
+ /**
8
+ The ticket the order is trying to reserved has already been reserved
9
+ or when the user cancelled the order.
10
+ The order has expires before payment has been made.
11
+ */
12
+ Cancelled = "cancelled",
13
+ /**
14
+ The order has successfully been reserved
15
+ */
16
+ AwaitingPayment = "waiting:payment",
17
+ /**
18
+ The order has successfully been reserved and
19
+ the user made the payment successfully
20
+ */
21
+ Complete = "complete"
22
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OrderStatus = void 0;
4
+ var OrderStatus;
5
+ (function (OrderStatus) {
6
+ /**
7
+ When an order is created.
8
+ But the ticket has not been reserved
9
+ */
10
+ OrderStatus["Created"] = "created";
11
+ /**
12
+ The ticket the order is trying to reserved has already been reserved
13
+ or when the user cancelled the order.
14
+ The order has expires before payment has been made.
15
+ */
16
+ OrderStatus["Cancelled"] = "cancelled";
17
+ /**
18
+ The order has successfully been reserved
19
+ */
20
+ OrderStatus["AwaitingPayment"] = "waiting:payment";
21
+ /**
22
+ The order has successfully been reserved and
23
+ the user made the payment successfully
24
+ */
25
+ OrderStatus["Complete"] = "complete";
26
+ })(OrderStatus = exports.OrderStatus || (exports.OrderStatus = {}));
@@ -0,0 +1,7 @@
1
+ export declare enum TwoFAType {
2
+ PHONE = "PHONE",
3
+ EMAIL = "EMAIL",
4
+ PHONE_EMAIL = "PHONE_EMAIL",
5
+ TWOFA_APP = "TWOFA_APP",
6
+ DEFAULT_APP = "DEFAULT_APP"
7
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TwoFAType = void 0;
4
+ var TwoFAType;
5
+ (function (TwoFAType) {
6
+ TwoFAType["PHONE"] = "PHONE";
7
+ TwoFAType["EMAIL"] = "EMAIL";
8
+ TwoFAType["PHONE_EMAIL"] = "PHONE_EMAIL";
9
+ TwoFAType["TWOFA_APP"] = "TWOFA_APP";
10
+ TwoFAType["DEFAULT_APP"] = "DEFAULT_APP";
11
+ })(TwoFAType = exports.TwoFAType || (exports.TwoFAType = {}));
@@ -0,0 +1,4 @@
1
+ export declare enum ACCOUNT_BALANCE_TYPE {
2
+ ledger = "ledger",
3
+ main = "main"
4
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ACCOUNT_BALANCE_TYPE = void 0;
4
+ var ACCOUNT_BALANCE_TYPE;
5
+ (function (ACCOUNT_BALANCE_TYPE) {
6
+ ACCOUNT_BALANCE_TYPE["ledger"] = "ledger";
7
+ ACCOUNT_BALANCE_TYPE["main"] = "main";
8
+ })(ACCOUNT_BALANCE_TYPE = exports.ACCOUNT_BALANCE_TYPE || (exports.ACCOUNT_BALANCE_TYPE = {}));
@@ -0,0 +1,4 @@
1
+ export declare enum Account_Status {
2
+ active = "Active",
3
+ blocked = "Blocked"
4
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Account_Status = void 0;
4
+ var Account_Status;
5
+ (function (Account_Status) {
6
+ Account_Status["active"] = "Active";
7
+ Account_Status["blocked"] = "Blocked";
8
+ })(Account_Status = exports.Account_Status || (exports.Account_Status = {}));
@@ -0,0 +1 @@
1
+ export declare const getBankCode: (inputString: string) => string;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBankCode = void 0;
4
+ const getBankCode = (inputString) => {
5
+ // PAN validation pattern for variable length PAN (minimum 6 digits)
6
+ const panPattern = /^\d{6,}$/;
7
+ if (typeof inputString !== 'string') {
8
+ throw new Error('Input must be a string.');
9
+ }
10
+ if (!panPattern.test(inputString)) {
11
+ throw new Error('invalid bank code');
12
+ }
13
+ const code = inputString.substring(inputString.length - 3);
14
+ return code;
15
+ };
16
+ exports.getBankCode = getBankCode;
@@ -0,0 +1,12 @@
1
+ export declare enum BUSINESS_CATEGORY {
2
+ INDIVIDUAL = "INDIVIDUAL_ACCOUNT",
3
+ BUSINESS = "BUSINESS_ACCOUNT",
4
+ NGO = "NGO_ACCOUNT",
5
+ EVENT = "EVENT_ACCOUNT"
6
+ }
7
+ export declare enum INDIVIDUAL_REQUIRED_TYPE {
8
+ driver_license = "DRIVER_LICENSE",
9
+ nin = "NIN",
10
+ internation_passport = "INTERNATIONAL_PASSPORT",
11
+ voter_card = "VOTER_CARD"
12
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.INDIVIDUAL_REQUIRED_TYPE = exports.BUSINESS_CATEGORY = void 0;
4
+ var BUSINESS_CATEGORY;
5
+ (function (BUSINESS_CATEGORY) {
6
+ BUSINESS_CATEGORY["INDIVIDUAL"] = "INDIVIDUAL_ACCOUNT";
7
+ BUSINESS_CATEGORY["BUSINESS"] = "BUSINESS_ACCOUNT";
8
+ BUSINESS_CATEGORY["NGO"] = "NGO_ACCOUNT";
9
+ BUSINESS_CATEGORY["EVENT"] = "EVENT_ACCOUNT";
10
+ })(BUSINESS_CATEGORY = exports.BUSINESS_CATEGORY || (exports.BUSINESS_CATEGORY = {}));
11
+ var INDIVIDUAL_REQUIRED_TYPE;
12
+ (function (INDIVIDUAL_REQUIRED_TYPE) {
13
+ INDIVIDUAL_REQUIRED_TYPE["driver_license"] = "DRIVER_LICENSE";
14
+ INDIVIDUAL_REQUIRED_TYPE["nin"] = "NIN";
15
+ INDIVIDUAL_REQUIRED_TYPE["internation_passport"] = "INTERNATIONAL_PASSPORT";
16
+ INDIVIDUAL_REQUIRED_TYPE["voter_card"] = "VOTER_CARD";
17
+ })(INDIVIDUAL_REQUIRED_TYPE = exports.INDIVIDUAL_REQUIRED_TYPE || (exports.INDIVIDUAL_REQUIRED_TYPE = {}));
@@ -0,0 +1,4 @@
1
+ export declare enum BVNVALIDATIONTYPE {
2
+ bvn = "bvn",
3
+ bank_account = "bank_account"
4
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BVNVALIDATIONTYPE = void 0;
4
+ var BVNVALIDATIONTYPE;
5
+ (function (BVNVALIDATIONTYPE) {
6
+ BVNVALIDATIONTYPE["bvn"] = "bvn";
7
+ BVNVALIDATIONTYPE["bank_account"] = "bank_account";
8
+ })(BVNVALIDATIONTYPE = exports.BVNVALIDATIONTYPE || (exports.BVNVALIDATIONTYPE = {}));
@@ -0,0 +1,10 @@
1
+ export declare enum CARD_TYPES {
2
+ visa = "VISA",
3
+ verve = "VERVE",
4
+ amex = "AMEX",
5
+ masterCard = "MASTERCARD",
6
+ discover = "DISCOVER",
7
+ diners = "DINERS",
8
+ jcb = "JCB",
9
+ china_union_pay = "CHINA_UNION_PAY"
10
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CARD_TYPES = void 0;
4
+ var CARD_TYPES;
5
+ (function (CARD_TYPES) {
6
+ CARD_TYPES["visa"] = "VISA";
7
+ CARD_TYPES["verve"] = "VERVE";
8
+ CARD_TYPES["amex"] = "AMEX";
9
+ CARD_TYPES["masterCard"] = "MASTERCARD";
10
+ CARD_TYPES["discover"] = "DISCOVER";
11
+ CARD_TYPES["diners"] = "DINERS";
12
+ CARD_TYPES["jcb"] = "JCB";
13
+ CARD_TYPES["china_union_pay"] = "CHINA_UNION_PAY";
14
+ })(CARD_TYPES = exports.CARD_TYPES || (exports.CARD_TYPES = {}));
@@ -0,0 +1,5 @@
1
+ export declare enum CARD_ATH_TYPE {
2
+ user_otp = "user_otp",
3
+ user_3ds = "user_3ds",
4
+ no_auth = "no_auth"
5
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CARD_ATH_TYPE = void 0;
4
+ var CARD_ATH_TYPE;
5
+ (function (CARD_ATH_TYPE) {
6
+ CARD_ATH_TYPE["user_otp"] = "user_otp";
7
+ CARD_ATH_TYPE["user_3ds"] = "user_3ds";
8
+ CARD_ATH_TYPE["no_auth"] = "no_auth";
9
+ })(CARD_ATH_TYPE = exports.CARD_ATH_TYPE || (exports.CARD_ATH_TYPE = {}));
@@ -0,0 +1,7 @@
1
+ export declare enum CHARGEBACK_STATUS {
2
+ ACCEPTED = "ACCEPTED",
3
+ DECLINED = "DECLINED",
4
+ WON = "WON",
5
+ LOST = "LOST",
6
+ PENDING = "PENDING"
7
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CHARGEBACK_STATUS = void 0;
4
+ var CHARGEBACK_STATUS;
5
+ (function (CHARGEBACK_STATUS) {
6
+ CHARGEBACK_STATUS["ACCEPTED"] = "ACCEPTED";
7
+ CHARGEBACK_STATUS["DECLINED"] = "DECLINED";
8
+ CHARGEBACK_STATUS["WON"] = "WON";
9
+ CHARGEBACK_STATUS["LOST"] = "LOST";
10
+ CHARGEBACK_STATUS["PENDING"] = "PENDING";
11
+ })(CHARGEBACK_STATUS = exports.CHARGEBACK_STATUS || (exports.CHARGEBACK_STATUS = {}));
@@ -0,0 +1,7 @@
1
+ export declare enum TOPUP_TRANSACTIONS {
2
+ FUND_WALLET = "FUND_WALLET",
3
+ BUY_DATA = "BUY_DATA",
4
+ BUY_AIRTIME = "BUY_AIRTIME",
5
+ TV_SUBSCRIPTION = "TV_SUBSCRIPTION",
6
+ TRANSFER = "TRANSFER"
7
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TOPUP_TRANSACTIONS = void 0;
4
+ var TOPUP_TRANSACTIONS;
5
+ (function (TOPUP_TRANSACTIONS) {
6
+ TOPUP_TRANSACTIONS["FUND_WALLET"] = "FUND_WALLET";
7
+ TOPUP_TRANSACTIONS["BUY_DATA"] = "BUY_DATA";
8
+ TOPUP_TRANSACTIONS["BUY_AIRTIME"] = "BUY_AIRTIME";
9
+ TOPUP_TRANSACTIONS["TV_SUBSCRIPTION"] = "TV_SUBSCRIPTION";
10
+ TOPUP_TRANSACTIONS["TRANSFER"] = "TRANSFER";
11
+ })(TOPUP_TRANSACTIONS = exports.TOPUP_TRANSACTIONS || (exports.TOPUP_TRANSACTIONS = {}));
@@ -0,0 +1,4 @@
1
+ export declare enum CURRENCY_TYPE {
2
+ NGN = "NGN",
3
+ USD = "USD"
4
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CURRENCY_TYPE = void 0;
4
+ var CURRENCY_TYPE;
5
+ (function (CURRENCY_TYPE) {
6
+ CURRENCY_TYPE["NGN"] = "NGN";
7
+ CURRENCY_TYPE["USD"] = "USD";
8
+ })(CURRENCY_TYPE = exports.CURRENCY_TYPE || (exports.CURRENCY_TYPE = {}));
@@ -0,0 +1,19 @@
1
+ import { Document, Model } from 'mongoose';
2
+ export interface PaginationOptions<T extends Document> {
3
+ page?: number;
4
+ limit?: number;
5
+ sort?: Record<string, 'asc' | 'desc'>;
6
+ select?: string | Record<string, any>;
7
+ query?: Record<string, any>;
8
+ }
9
+ export interface PaginationResult<T extends Document> {
10
+ current_page: number;
11
+ total_page: number;
12
+ total_docs: number;
13
+ has_next: boolean;
14
+ has_previous: boolean;
15
+ next_page: number | null;
16
+ previous_page: number | null;
17
+ results: T[];
18
+ }
19
+ export declare function paginate<T extends Document>(model: Model<T>, options?: PaginationOptions<T>): Promise<PaginationResult<T>>;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.paginate = void 0;
13
+ function paginate(model, options = {}) {
14
+ return __awaiter(this, void 0, void 0, function* () {
15
+ const page = options.page || 1;
16
+ const limit = options.limit || 10;
17
+ const skip = (page - 1) * limit;
18
+ const query = options.query || {};
19
+ const sort = options.sort || {};
20
+ const select = options.select || '';
21
+ const keys = Object.keys(query);
22
+ let totalDocs;
23
+ if (keys.length > 0) {
24
+ totalDocs = yield model.countDocuments(query);
25
+ }
26
+ else {
27
+ totalDocs = yield model.estimatedDocumentCount();
28
+ }
29
+ const totalPages = Math.ceil(totalDocs / limit);
30
+ const queryBuilder = model.find(query).sort(sort);
31
+ if (select) {
32
+ queryBuilder.select(select);
33
+ }
34
+ const results = yield queryBuilder.skip(skip).limit(limit);
35
+ const hasNextPage = page < totalPages;
36
+ const hasPreviousPage = page > 1;
37
+ const paginationInfo = {
38
+ current_page: page,
39
+ total_page: totalPages,
40
+ total_docs: totalDocs,
41
+ has_next: hasNextPage,
42
+ has_previous: hasPreviousPage,
43
+ next_page: hasNextPage ? page + 1 : null,
44
+ previous_page: hasPreviousPage ? page - 1 : null,
45
+ results,
46
+ };
47
+ return paginationInfo;
48
+ });
49
+ }
50
+ exports.paginate = paginate;
@@ -0,0 +1,22 @@
1
+ export declare enum EMAIL_TYPES {
2
+ VERIFY_ACCOUNT = "VERIFY_ACCOUNT",
3
+ BUSINESS_ADDED = "BUSINESS_ADDED",
4
+ CONFIRMATION = "CONFIRMATION",
5
+ TWOFAVERIFICATION = "TWOFAVERIFICATION",
6
+ RESET_PASSWORD_REQUEST = "RESET_PASSWORD_REQUEST",
7
+ PASSWORD_CHANGED = "PASSWORD_CHANGED",
8
+ PAYEE_INVOICE = "PAYEE_INVOICE",
9
+ KEYS_GENERATED = "KEYS_GENERATED",
10
+ REFUND_REQUEST = "REFUND_REQUEST",
11
+ REFUND_UPDATE = "REFUND_UPDATE",
12
+ REFUND_SENT = "REFUND_SENT",
13
+ CHARGE_BACK_REQUEST = "CHARGE_BACK_REQUEST",
14
+ CHARGE_BACK_UPDATE = "CHARGE_BACK_UPDATE",
15
+ CHARGE_BACK_RESOLVED = "CHARGE_BACK_RESOLVED",
16
+ TRANSFER_REQUEST = "TRANSFER_REQUEST",
17
+ TRANSFER_UPDATE = "TRANSFER_UPDATE",
18
+ TRANSFER_SENT = "TRANSFER_SENT",
19
+ SETTLEMENT_CREATED = "SETTLEMENT_CREATED",
20
+ MERCHANT_CUSTOMER_PAYMENT_NOTIFICATION = "MERCHANT_CUSTOMER_PAYMENT_NOTIFICATION",
21
+ MERCHANT_BUSINESS_PAYMENT_NOTIFICATION = "MERCHANT_PAYMENT_NOTIFICATION"
22
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EMAIL_TYPES = void 0;
4
+ var EMAIL_TYPES;
5
+ (function (EMAIL_TYPES) {
6
+ EMAIL_TYPES["VERIFY_ACCOUNT"] = "VERIFY_ACCOUNT";
7
+ EMAIL_TYPES["BUSINESS_ADDED"] = "BUSINESS_ADDED";
8
+ EMAIL_TYPES["CONFIRMATION"] = "CONFIRMATION";
9
+ EMAIL_TYPES["TWOFAVERIFICATION"] = "TWOFAVERIFICATION";
10
+ EMAIL_TYPES["RESET_PASSWORD_REQUEST"] = "RESET_PASSWORD_REQUEST";
11
+ EMAIL_TYPES["PASSWORD_CHANGED"] = "PASSWORD_CHANGED";
12
+ EMAIL_TYPES["PAYEE_INVOICE"] = "PAYEE_INVOICE";
13
+ EMAIL_TYPES["KEYS_GENERATED"] = "KEYS_GENERATED";
14
+ EMAIL_TYPES["REFUND_REQUEST"] = "REFUND_REQUEST";
15
+ EMAIL_TYPES["REFUND_UPDATE"] = "REFUND_UPDATE";
16
+ EMAIL_TYPES["REFUND_SENT"] = "REFUND_SENT";
17
+ EMAIL_TYPES["CHARGE_BACK_REQUEST"] = "CHARGE_BACK_REQUEST";
18
+ EMAIL_TYPES["CHARGE_BACK_UPDATE"] = "CHARGE_BACK_UPDATE";
19
+ EMAIL_TYPES["CHARGE_BACK_RESOLVED"] = "CHARGE_BACK_RESOLVED";
20
+ EMAIL_TYPES["TRANSFER_REQUEST"] = "TRANSFER_REQUEST";
21
+ EMAIL_TYPES["TRANSFER_UPDATE"] = "TRANSFER_UPDATE";
22
+ EMAIL_TYPES["TRANSFER_SENT"] = "TRANSFER_SENT";
23
+ EMAIL_TYPES["SETTLEMENT_CREATED"] = "SETTLEMENT_CREATED";
24
+ EMAIL_TYPES["MERCHANT_CUSTOMER_PAYMENT_NOTIFICATION"] = "MERCHANT_CUSTOMER_PAYMENT_NOTIFICATION";
25
+ EMAIL_TYPES["MERCHANT_BUSINESS_PAYMENT_NOTIFICATION"] = "MERCHANT_PAYMENT_NOTIFICATION";
26
+ })(EMAIL_TYPES = exports.EMAIL_TYPES || (exports.EMAIL_TYPES = {}));
@@ -0,0 +1,92 @@
1
+ export declare const error_codes: {
2
+ INVALID_INPUT: {
3
+ error_code: string;
4
+ code: number;
5
+ };
6
+ INVALID_TOKEN: {
7
+ error_code: string;
8
+ code: number;
9
+ };
10
+ ROLE_NOT_FOUND: {
11
+ error_code: string;
12
+ code: number;
13
+ };
14
+ ROLE_NOT_VALID: {
15
+ error_code: string;
16
+ code: number;
17
+ };
18
+ ROLE_NOT_CREATED: {
19
+ error_code: string;
20
+ code: number;
21
+ };
22
+ PERMISSION_EXIST: {
23
+ error_code: string;
24
+ code: number;
25
+ };
26
+ PERMISSION_DOES_NOT_EXIST: {
27
+ error_code: string;
28
+ code: number;
29
+ };
30
+ INVALID_EMAIL_PASSWORD: string;
31
+ USER_BLOCKED: string;
32
+ EMAIL_NOT_VERIFIED: string;
33
+ EMAIL_ALREADY_EXIST: string;
34
+ PHONE_ALREADY_EXIST: string;
35
+ BUSINESS_ACCOUNT_NOT_FOUND: string;
36
+ PERMISSIONS_DENIED: string;
37
+ INVALID_STATUS_VALUE: string;
38
+ RESOURCE_NOT_FOUND: string;
39
+ BUSINESS_TYPE_NOT_SELECTED: string;
40
+ BUSINESS_NOT_LIVE: string;
41
+ BUSINESS_NOT_TEST: string;
42
+ INVALID_BUSINESS_TYPE: string;
43
+ BUSINESS_DETAILS_NOT_PROVIDED: string;
44
+ BUSINESS_AUTHORIZER_DETAIL_NOT_PROVIDED: string;
45
+ BUSINESS_DOCUMENT_NOT_PROVIDED: string;
46
+ BUSINESS_BANK_ACCOUNT_DETAIL_NOT_PROVIDED: string;
47
+ BUSINESS_BANK_ACCOUNT_NOT_FOUND: string;
48
+ MANY_REQUEST: string;
49
+ DATA_VALIDATION_ERROR: string;
50
+ CUSTOMER_BLOCKED: string;
51
+ TRANSACTION_REFERECE_EXIST: string;
52
+ CARD_NOT_VALID: string;
53
+ CARD_PIN_NOT_VALID: string;
54
+ CARD_CVV_NOT_VALID: string;
55
+ CARD_EXPIRYMONTH_NOT_VALID: string;
56
+ CARD_EXPIRYYEAR_NOT_VALID: string;
57
+ CARD_DATE_NOT_VALID: string;
58
+ CARD_BLOCKED: string;
59
+ SERVICE_NOT_AVAILABLE: string;
60
+ SERVER_NOT_ERROR: string;
61
+ INVALID_REQUEST: string;
62
+ INVALID_KEY: string;
63
+ INVALID_REFERENCE_ID: string;
64
+ TRANSACTION_ABORTED: string;
65
+ TRANSACTION_CANCELLED: string;
66
+ TRANSACTION_PROCESSING: string;
67
+ TRANSACTION_FAILED: string;
68
+ TRANSACTION_DECLINED: string;
69
+ INVALID_CARD_TYPE: string;
70
+ INVALID_CARD_NUMBER: string;
71
+ DUPLICATE_VALUE: string;
72
+ INVALID_AUTHORIZATION: {
73
+ error_code: string;
74
+ code: number;
75
+ };
76
+ INVALID_FORBIDDEN: {
77
+ error_code: string;
78
+ code: number;
79
+ };
80
+ INVALID_PAGINATION_LIMIT: {
81
+ error_code: string;
82
+ code: number;
83
+ };
84
+ INVALID_PAGINATION_PAGE: {
85
+ error_code: string;
86
+ code: number;
87
+ };
88
+ RESOUCE_NOT_FOUND: {
89
+ error_code: string;
90
+ code: number;
91
+ };
92
+ };
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.error_codes = void 0;
4
+ exports.error_codes = {
5
+ INVALID_INPUT: {
6
+ error_code: "INVALID_INPUT",
7
+ code: 100000,
8
+ },
9
+ INVALID_TOKEN: {
10
+ error_code: "INVALID_TOKEN",
11
+ code: 100001,
12
+ },
13
+ //ROles
14
+ ROLE_NOT_FOUND: {
15
+ error_code: "ROLE_NOT_FOUND",
16
+ code: 300000,
17
+ },
18
+ ROLE_NOT_VALID: {
19
+ error_code: "ROLE_NOT_VALID",
20
+ code: 300001,
21
+ },
22
+ ROLE_NOT_CREATED: {
23
+ error_code: "ROLE_NOT_VALID",
24
+ code: 300002,
25
+ },
26
+ PERMISSION_EXIST: {
27
+ error_code: "PERMISSION_EXIST",
28
+ code: 300003,
29
+ },
30
+ PERMISSION_DOES_NOT_EXIST: {
31
+ error_code: "PERMISSION_DOES_NOT_EXIST",
32
+ code: 300004,
33
+ },
34
+ INVALID_EMAIL_PASSWORD: "INVALID_EMAIL_PASSWORD",
35
+ USER_BLOCKED: "USER_BLOCKED",
36
+ EMAIL_NOT_VERIFIED: "EMAIL_NOT_VERIFIED",
37
+ EMAIL_ALREADY_EXIST: "EMAIL_ALREADY_EXIST",
38
+ PHONE_ALREADY_EXIST: "PHONE_ALREADY_EXIST",
39
+ BUSINESS_ACCOUNT_NOT_FOUND: "BUSINESS_ACCOUNT_NOT_FOUND",
40
+ PERMISSIONS_DENIED: "PERMISSIONS_DENIED",
41
+ INVALID_STATUS_VALUE: "INVALID_STATUS_VALUE",
42
+ RESOURCE_NOT_FOUND: "RESOURCE_NOT_FOUND",
43
+ BUSINESS_TYPE_NOT_SELECTED: "BUSINESS_TYPE_NOT_SELECTED",
44
+ BUSINESS_NOT_LIVE: "BUSINESS_NOT_LIVE",
45
+ BUSINESS_NOT_TEST: "BUSINESS_NOT_TEST",
46
+ INVALID_BUSINESS_TYPE: "INVALID_BUSINESS_TYPE",
47
+ BUSINESS_DETAILS_NOT_PROVIDED: "BUSINESS_DETAILS_NOT_PROVIDED",
48
+ BUSINESS_AUTHORIZER_DETAIL_NOT_PROVIDED: "BUSINESS_AUTHORIZER_DETAIL_NOT_PROVIDED",
49
+ BUSINESS_DOCUMENT_NOT_PROVIDED: "BUSINESS_DOCUMENT_NOT_PROVIDED",
50
+ BUSINESS_BANK_ACCOUNT_DETAIL_NOT_PROVIDED: "BUSINESS_BANK_ACCOUNT_DETAIL_NOT_PROVIDED",
51
+ BUSINESS_BANK_ACCOUNT_NOT_FOUND: "BUSINESS_BANK_ACCOUNT_NOT_FOUND",
52
+ MANY_REQUEST: "MANY_REQUEST",
53
+ DATA_VALIDATION_ERROR: "DATA_VALIDATION_ERROR",
54
+ CUSTOMER_BLOCKED: "CUSTOMER_BLOCKED",
55
+ TRANSACTION_REFERECE_EXIST: "TRANSACTION_REFERECE_EXIST",
56
+ //CARD
57
+ CARD_NOT_VALID: "CARD_NOT_VALID",
58
+ CARD_PIN_NOT_VALID: "CARD_PIN_NOT_VALID",
59
+ CARD_CVV_NOT_VALID: "CARD_CVV_NOT_VALID",
60
+ CARD_EXPIRYMONTH_NOT_VALID: "CARD_EXPIRYMONTH_NOT_VALID",
61
+ CARD_EXPIRYYEAR_NOT_VALID: "CARD_EXPIRYYEAR_NOT_VALID",
62
+ CARD_DATE_NOT_VALID: "CARD_DATE_NOT_VALID",
63
+ CARD_BLOCKED: "CARD_BLOCKED",
64
+ SERVICE_NOT_AVAILABLE: "SERVICE_NOT_AVAILABLE",
65
+ SERVER_NOT_ERROR: "SERVER_ERROR",
66
+ INVALID_REQUEST: "INVALID_REQUEST",
67
+ INVALID_KEY: "INVALID_KEY",
68
+ INVALID_REFERENCE_ID: "INVALID_REFERENCE_ID",
69
+ TRANSACTION_ABORTED: "TRANSACTION_ABORTED",
70
+ TRANSACTION_CANCELLED: "TRANSACTION_CANCELLED",
71
+ TRANSACTION_PROCESSING: "TRANSACTION_PROCESSING",
72
+ TRANSACTION_FAILED: "TRANSACTION_FAILED",
73
+ TRANSACTION_DECLINED: "TRANSACTION_DECLINED",
74
+ INVALID_CARD_TYPE: "INVALID_CARD_TYPE",
75
+ INVALID_CARD_NUMBER: "INVALID_CARD_NUMBER",
76
+ DUPLICATE_VALUE: "DUPLICATE_VALUE",
77
+ //AUTHORIZATION
78
+ INVALID_AUTHORIZATION: {
79
+ error_code: "INVALID_AUTHORIZATION",
80
+ code: 400001,
81
+ },
82
+ INVALID_FORBIDDEN: {
83
+ error_code: "INVALID_FORBIDDEN",
84
+ code: 400003,
85
+ },
86
+ // PAGINATION SECTION
87
+ INVALID_PAGINATION_LIMIT: {
88
+ error_code: "INVALID_PAGINATION_LIMIT",
89
+ code: 400005,
90
+ },
91
+ INVALID_PAGINATION_PAGE: {
92
+ error_code: "INVALID_PAGINATION_PAGE_VALUE",
93
+ code: 400005,
94
+ },
95
+ RESOUCE_NOT_FOUND: {
96
+ error_code: "RESOUCE_NOT_FOUND",
97
+ code: 400006,
98
+ },
99
+ };