@fiado/api-invoker 4.59.0 → 4.61.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (335) hide show
  1. package/.claude/settings.json +33 -33
  2. package/README.md +600 -600
  3. package/bin/container.config.js +4 -0
  4. package/bin/index.d.ts +2 -0
  5. package/bin/index.js +2 -0
  6. package/bin/modelias-connector/api/ModeliasConnectorApi.d.ts +11 -0
  7. package/bin/modelias-connector/api/ModeliasConnectorApi.js +30 -0
  8. package/bin/modelias-connector/api/interfaces/IModeliasConnectorApi.d.ts +9 -0
  9. package/bin/modelias-connector/api/interfaces/IModeliasConnectorApi.js +1 -0
  10. package/bin/modelias-connector/index.d.ts +2 -0
  11. package/bin/modelias-connector/index.js +2 -0
  12. package/bin/synergypay-connector/api/SynergyPayConnectorApi.d.ts +17 -0
  13. package/bin/synergypay-connector/api/SynergyPayConnectorApi.js +48 -0
  14. package/bin/synergypay-connector/api/interfaces/ISynergyPayConnectorApi.d.ts +45 -0
  15. package/bin/synergypay-connector/api/interfaces/ISynergyPayConnectorApi.js +1 -0
  16. package/bin/synergypay-connector/index.d.ts +2 -0
  17. package/bin/synergypay-connector/index.js +2 -0
  18. package/docs/TECH_DEBT.md +16 -16
  19. package/jest.config.cjs +12 -12
  20. package/package.json +56 -56
  21. package/src/account-beneficiary/AccountBeneficiaryApi.ts +18 -18
  22. package/src/account-beneficiary/index.ts +2 -2
  23. package/src/account-beneficiary/interfaces/IAccountBeneficiaryApi.ts +7 -7
  24. package/src/account-fiadoinc/AccountFiadoIncApi.ts +126 -126
  25. package/src/account-fiadoinc/index.ts +4 -4
  26. package/src/account-fiadoinc/interfaces/IAccountFiadoIncApi.ts +50 -50
  27. package/src/account-fiadoinc/queue/Publisher.ts +23 -23
  28. package/src/account-fiadoinc/queue/interfaces/IPublisher.ts +4 -4
  29. package/src/account-fiadosa/AccountFiadoSAApi.ts +38 -38
  30. package/src/account-fiadosa/index.ts +1 -1
  31. package/src/account-fiadosa/interfaces/IAccountFiadoSAApi.ts +16 -16
  32. package/src/account-pagoconfiado/AccountPagoConfiadoApi.ts +78 -78
  33. package/src/account-pagoconfiado/index.ts +2 -2
  34. package/src/account-pagoconfiado/interfaces/IAccountPagoConfiadoApi.ts +37 -37
  35. package/src/activity-business/ActivityApi.ts +36 -36
  36. package/src/activity-business/index.ts +5 -5
  37. package/src/activity-business/interfaces/IActivityApi.ts +13 -13
  38. package/src/activity-business/queue/ActivityPublisher.ts +30 -30
  39. package/src/activity-business/queue/IActivityPublisher.ts +4 -4
  40. package/src/address/AddressApi.ts +46 -46
  41. package/src/address/index.ts +3 -3
  42. package/src/address/interfaces/IAddressApi.ts +30 -30
  43. package/src/ai-engine-connector/AiEngineApi.ts +28 -28
  44. package/src/ai-engine-connector/index.ts +2 -2
  45. package/src/ai-engine-connector/interfaces/IAiEngineApi.ts +6 -6
  46. package/src/appselectondata/AppSelectionDataApi.ts +32 -32
  47. package/src/appselectondata/index.ts +2 -2
  48. package/src/appselectondata/interfaces/IAppSelectionDataApi.ts +17 -17
  49. package/src/authentication/AuthenticationApi.ts +56 -56
  50. package/src/authentication/index.ts +2 -2
  51. package/src/authentication/interfaces/IAuthenticationApi.ts +49 -49
  52. package/src/authentication/interfaces/LegacyApiResponse.ts +11 -11
  53. package/src/bankAccount/BankAccountApi.ts +34 -34
  54. package/src/bankAccount/index.ts +1 -1
  55. package/src/bankAccount/interfaces/IBankAccountApi.ts +6 -6
  56. package/src/bbvaRst/api/BBVARstApi.ts +16 -16
  57. package/src/bbvaRst/api/interfaces/IBBVARstApi.ts +4 -4
  58. package/src/bbvaRst/index.ts +1 -1
  59. package/src/benefits-marketplace/api/BenefitsMarketplaceApi.ts +59 -59
  60. package/src/benefits-marketplace/api/dtos/BenefitLeafDisplayResponse.ts +33 -33
  61. package/src/benefits-marketplace/api/interfaces/IBenefitsMarketplaceApi.ts +93 -93
  62. package/src/benefits-marketplace/index.ts +3 -3
  63. package/src/blacklist/BlackListApi.ts +19 -19
  64. package/src/blacklist/index.ts +2 -2
  65. package/src/blacklist/interfaces/IBlackListApi.ts +20 -20
  66. package/src/card/CardApi.ts +103 -103
  67. package/src/card/index.ts +3 -3
  68. package/src/card/interfaces/ICardApi.ts +32 -32
  69. package/src/card-business/index.ts +2 -2
  70. package/src/card-business/queue/CardBusinessPublisher.ts +23 -23
  71. package/src/card-business/queue/ICardBusinessPublisher.ts +10 -10
  72. package/src/centralPayments/CentralPaymentsConnectorApi.ts +317 -317
  73. package/src/centralPayments/index.ts +1 -1
  74. package/src/centralPayments/interfaces/ICentralPaymentsConnectorApi.ts +153 -153
  75. package/src/circuloCredito/api/CirculoCreditoApi.ts +21 -21
  76. package/src/circuloCredito/api/interfaces/ICirculoCreditoApi.ts +7 -7
  77. package/src/circuloCredito/index.ts +2 -2
  78. package/src/cnbv-business/CnbvApi.ts +31 -31
  79. package/src/cnbv-business/index.ts +4 -4
  80. package/src/cnbv-business/interfaces/ICnbvApi.ts +19 -19
  81. package/src/cnbv-connector/CnbvConnectorApi.ts +18 -18
  82. package/src/cnbv-connector/index.ts +1 -1
  83. package/src/cnbv-connector/interfaces/ICnbvConnectorApi.ts +6 -6
  84. package/src/cognitoBackofficeConnector/api/CognitoBackofficeConnectorApi.ts +281 -281
  85. package/src/cognitoBackofficeConnector/api/interfaces/ICognitoBackofficeConnectorApi.ts +216 -216
  86. package/src/cognitoBackofficeConnector/index.ts +2 -2
  87. package/src/cognitoConnector/CognitoConnectorApi.ts +112 -112
  88. package/src/cognitoConnector/CognitoConnectorV2.ts +87 -87
  89. package/src/cognitoConnector/index.ts +11 -11
  90. package/src/cognitoConnector/interfaces/ICognitoConnectorApi.ts +16 -16
  91. package/src/cognitoConnector/interfaces/ICognitoV2Api.ts +63 -63
  92. package/src/collector/CollectorApi.ts +96 -96
  93. package/src/collector/index.ts +2 -2
  94. package/src/collector/interfaces/ICollectorApi.ts +47 -47
  95. package/src/commission-business/CommissionBusinessApi.ts +19 -19
  96. package/src/commission-business/index.ts +3 -3
  97. package/src/commission-business/interfaces/ICommissionBusinessApi.ts +15 -15
  98. package/src/complaint/ComplaintApi.ts +33 -33
  99. package/src/complaint/index.ts +2 -2
  100. package/src/complaint/interfaces/IComplaintApi.ts +22 -22
  101. package/src/contactInformation/ContactInformationApi.ts +20 -20
  102. package/src/contactInformation/index.ts +2 -2
  103. package/src/contactInformation/interface/IContactInformationApi.ts +8 -8
  104. package/src/contacts-business/api/ContactsBusinessApi.ts +17 -17
  105. package/src/contacts-business/api/interfaces/IContactsBusinessApi.ts +15 -15
  106. package/src/contacts-business/index.ts +2 -2
  107. package/src/container.config.ts +332 -328
  108. package/src/contract-business/api/ContractBusinessApi.ts +37 -37
  109. package/src/contract-business/api/interfaces/IContractBusinessApi.ts +32 -32
  110. package/src/contract-business/index.ts +2 -2
  111. package/src/contract-generator/ContractGeneratorApi.ts +18 -18
  112. package/src/contract-generator/index.ts +2 -2
  113. package/src/contract-generator/interfaces/IContractGeneratorApi.ts +16 -16
  114. package/src/countries-business/CountriesBusinessApi.ts +26 -26
  115. package/src/countries-business/index.ts +2 -2
  116. package/src/countries-business/interfaces/ICountriesBusinessApi.ts +22 -22
  117. package/src/credit-engine/CreditEngineApi.ts +54 -54
  118. package/src/credit-engine/index.ts +17 -17
  119. package/src/credit-engine/interfaces/ICreditEngineApi.ts +46 -46
  120. package/src/credit-engine/queue/CreditCollectionPublisher.ts +24 -24
  121. package/src/credit-engine/queue/CreditDelinquencyPublisher.ts +24 -24
  122. package/src/credit-engine/queue/CreditIncomeDetectionPublisher.ts +24 -24
  123. package/src/credit-engine/queue/CreditLienCollectionPublisher.ts +24 -24
  124. package/src/credit-engine/queue/CreditNotificationPublisher.ts +24 -24
  125. package/src/credit-engine/queue/CreditOfferGenerationPublisher.ts +24 -24
  126. package/src/credit-engine/queue/CreditReconciliationPublisher.ts +24 -24
  127. package/src/credit-engine/queue/CreditScoringPublisher.ts +24 -24
  128. package/src/credit-engine/queue/CreditStatementPublisher.ts +24 -24
  129. package/src/credit-engine/queue/CreditTransferPublisher.ts +24 -24
  130. package/src/credit-engine/queue/interfaces/ICreditCollectionPublisher.ts +5 -5
  131. package/src/credit-engine/queue/interfaces/ICreditDelinquencyPublisher.ts +5 -5
  132. package/src/credit-engine/queue/interfaces/ICreditIncomeDetectionPublisher.ts +5 -5
  133. package/src/credit-engine/queue/interfaces/ICreditLienCollectionPublisher.ts +5 -5
  134. package/src/credit-engine/queue/interfaces/ICreditNotificationPublisher.ts +5 -5
  135. package/src/credit-engine/queue/interfaces/ICreditOfferGenerationPublisher.ts +5 -5
  136. package/src/credit-engine/queue/interfaces/ICreditReconciliationPublisher.ts +5 -5
  137. package/src/credit-engine/queue/interfaces/ICreditScoringPublisher.ts +5 -5
  138. package/src/credit-engine/queue/interfaces/ICreditStatementPublisher.ts +5 -5
  139. package/src/credit-engine/queue/interfaces/ICreditTransferPublisher.ts +5 -5
  140. package/src/credit-payment/CreditPaymentApi.ts +73 -73
  141. package/src/credit-payment/index.ts +2 -2
  142. package/src/credit-payment/interfaces/ICreditPaymentApi.ts +52 -52
  143. package/src/credit-statements/api/CreditStatementsApi.ts +25 -25
  144. package/src/credit-statements/api/interfaces/ICreditStatementsApi.ts +30 -30
  145. package/src/credit-statements/index.ts +2 -2
  146. package/src/device/DeviceApi.ts +32 -32
  147. package/src/device/index.ts +2 -2
  148. package/src/device/interfaces/IDeviceApi.ts +41 -41
  149. package/src/directories/DirectoriesApi.ts +68 -68
  150. package/src/directories/index.ts +3 -3
  151. package/src/directories/interfaces/IDirectoriesApi.ts +21 -21
  152. package/src/directory/DirectoryApi.ts +210 -210
  153. package/src/directory/index.ts +3 -3
  154. package/src/directory/interfaces/IDirectoryApi.ts +80 -80
  155. package/src/directorySetting/DirectorySettingApi.ts +42 -42
  156. package/src/directorySetting/index.ts +3 -3
  157. package/src/directorySetting/interfaces/IDirectorySettingApi.ts +56 -56
  158. package/src/disputes/DisputesApi.ts +66 -66
  159. package/src/disputes/index.ts +2 -2
  160. package/src/disputes/interfaces/IDisputesApi.ts +79 -79
  161. package/src/document-generator/DocumentGeneratorApi.ts +51 -51
  162. package/src/document-generator/index.ts +2 -2
  163. package/src/document-generator/interfaces/IDocumentGeneratorApi.ts +34 -34
  164. package/src/document-image-processor/DocumentImageProcessorApi.ts +22 -22
  165. package/src/document-image-processor/index.ts +1 -1
  166. package/src/document-image-processor/interfaces/IDocumentImageProcessorApi.ts +7 -7
  167. package/src/equality-connector/api/EqualityConnectorApi.ts +101 -101
  168. package/src/equality-connector/api/interfaces/IEqualityConnectorApi.ts +101 -101
  169. package/src/equality-connector/index.ts +2 -2
  170. package/src/estafeta/api/EstafetaApi.ts +67 -67
  171. package/src/estafeta/api/interfaces/IEstafetaApi.ts +28 -28
  172. package/src/estafeta/index.ts +1 -1
  173. package/src/event-history-business/EventHistoryApi.ts +108 -108
  174. package/src/event-history-business/index.ts +3 -3
  175. package/src/event-history-business/interfaces/IEventHistoryApi.ts +47 -47
  176. package/src/exchangeRates/ExchangeRatesApi.ts +27 -27
  177. package/src/exchangeRates/index.ts +1 -1
  178. package/src/exchangeRates/interfaces/IExchangeRatesApi.ts +8 -8
  179. package/src/fiadoMessages/api/FiadoMessagesApi.ts +20 -20
  180. package/src/fiadoMessages/api/interfaces/IFiadoMessagesApi.ts +2 -2
  181. package/src/fiadoMessages/index.ts +1 -1
  182. package/src/firebase-connector/FirebaseConnectorApi.ts +53 -53
  183. package/src/firebase-connector/index.ts +3 -3
  184. package/src/firebase-connector/interfaces/IFirebaseConnectorApi.ts +6 -6
  185. package/src/fraudPreventionEngine/api/FraudPreventionEngineApi.ts +22 -22
  186. package/src/fraudPreventionEngine/api/interfaces/IFraudPreventionEngineApi.ts +7 -7
  187. package/src/fraudPreventionEngine/index.ts +1 -1
  188. package/src/group/GroupApi.ts +74 -74
  189. package/src/group/index.ts +1 -1
  190. package/src/group/interfaces/IGroupApi.ts +47 -47
  191. package/src/identity/IdentityApi.ts +153 -153
  192. package/src/identity/index.ts +4 -4
  193. package/src/identity/interfaces/IIdentityApi.ts +66 -66
  194. package/src/identity/interfaces/LegacyApiResponse.ts +11 -11
  195. package/src/index.ts +89 -87
  196. package/src/legalDocument/api/LegalDocumentApi.ts +38 -38
  197. package/src/legalDocument/api/interfaces/ILegalDocumentApi.ts +7 -7
  198. package/src/legalDocument/index.ts +3 -3
  199. package/src/messages-business/api/MessagesBusinessApi.ts +50 -50
  200. package/src/messages-business/api/interfaces/IMessagesBusinessApi.ts +20 -20
  201. package/src/messages-business/index.ts +4 -4
  202. package/src/messages-business/queue/MessagesBusinessPublisher.ts +33 -33
  203. package/src/messages-business/queue/interfaces/IMessagesBusinessPublisher.ts +5 -5
  204. package/src/milestone-business/api/MilestoneBusinessApi.ts +56 -56
  205. package/src/milestone-business/api/interfaces/IMilestoneBusinessApi.ts +17 -17
  206. package/src/milestone-business/index.ts +2 -2
  207. package/src/modelias-connector/api/ModeliasConnectorApi.ts +18 -0
  208. package/src/modelias-connector/api/interfaces/IModeliasConnectorApi.ts +10 -0
  209. package/src/modelias-connector/index.ts +2 -0
  210. package/src/multicommServicePayment/api/MulticommServicePaymentApi.ts +119 -119
  211. package/src/multicommServicePayment/api/interfaces/IMulticommServicePaymentApi.ts +52 -52
  212. package/src/multicommServicePayment/index.ts +1 -1
  213. package/src/notificationMessages/index.ts +1 -1
  214. package/src/notificationMessages/queue/NotificationMessagePublisher.ts +42 -42
  215. package/src/notificationMessages/queue/interfaces/INotificationMessagesPublisher.ts +7 -7
  216. package/src/notificationWebsockets/index.ts +1 -1
  217. package/src/notificationWebsockets/queue/NotificationWSMessagePublisher.ts +29 -29
  218. package/src/notificationWebsockets/queue/interfaces/INotificationWSMessagesPublisher.ts +4 -4
  219. package/src/observations/ObservationsApi.ts +23 -23
  220. package/src/observations/index.ts +3 -3
  221. package/src/observations/interfaces/IObservationsApi.ts +9 -9
  222. package/src/onboarding/api/OnboardingApi.ts +29 -29
  223. package/src/onboarding/api/interfaces/IOnboardingApi.ts +14 -14
  224. package/src/onboarding/index.ts +1 -1
  225. package/src/onboarding-business/api/OnboardingBusinessApi.ts +220 -220
  226. package/src/onboarding-business/api/interfaces/IOnboardingBusinessApi.ts +14 -14
  227. package/src/onboarding-business/index.ts +1 -1
  228. package/src/order-collector-business/OrderCollectorApi.ts +20 -20
  229. package/src/order-collector-business/index.ts +3 -3
  230. package/src/order-collector-business/interfaces/IOrderCollectorApi.ts +9 -9
  231. package/src/p2pContact/api/P2pContactApi.ts +19 -19
  232. package/src/p2pContact/api/interfaces/IP2pContactApi.ts +4 -4
  233. package/src/p2pContact/index.ts +1 -1
  234. package/src/payroll-business/PayrollApi.ts +19 -19
  235. package/src/payroll-business/index.ts +1 -1
  236. package/src/payroll-business/interfaces/IPayrollApi.ts +18 -18
  237. package/src/people-business/api/PeopleBusinessApi.ts +32 -32
  238. package/src/people-business/api/interfaces/IPeopleBusinessApi.ts +7 -7
  239. package/src/people-business/index.ts +1 -1
  240. package/src/platform-error-events/index.ts +2 -2
  241. package/src/platform-error-events/queue/PlatformErrorEventsPublisher.ts +24 -24
  242. package/src/platform-error-events/queue/interfaces/IPlatformErrorEventsPublisher.ts +5 -5
  243. package/src/platformRbac/api/PlatformRbacBusinessApi.ts +98 -98
  244. package/src/platformRbac/api/interfaces/IPlatformRbacBusinessApi.ts +98 -98
  245. package/src/platformRbac/index.ts +4 -4
  246. package/src/platformRbac/resolver/ApiInvokerPermissionResolver.ts +59 -59
  247. package/src/platformRbac/resolver/apiInvokerResolverBindings.ts +23 -23
  248. package/src/pomelo/api/PomeloApi.ts +109 -109
  249. package/src/pomelo/api/interfaces/IPomeloApi.ts +29 -29
  250. package/src/pomelo/index.ts +1 -1
  251. package/src/pomeloProcessor/api/PomeloProcessorApi.ts +17 -17
  252. package/src/pomeloProcessor/api/interfaces/IPomeloProcessorApi.ts +2 -2
  253. package/src/pomeloProcessor/index.ts +2 -2
  254. package/src/pricelist-business/PriceListApi.ts +45 -45
  255. package/src/pricelist-business/index.ts +1 -1
  256. package/src/pricelist-business/interfaces/IPriceListApi.ts +16 -16
  257. package/src/product-catalog/ProductCatalogApi.ts +17 -17
  258. package/src/product-catalog/index.ts +1 -1
  259. package/src/product-catalog/interfaces/IProductCatalogApi.ts +6 -6
  260. package/src/product-payment/api/ProductPaymentApi.ts +25 -25
  261. package/src/product-payment/api/interfaces/IProductPaymentApi.ts +8 -8
  262. package/src/product-payment/index.ts +1 -1
  263. package/src/referral-business/ReferralBusinessApi.ts +42 -42
  264. package/src/referral-business/index.ts +1 -1
  265. package/src/referral-business/interfaces/IReferralBusinessApi.ts +45 -45
  266. package/src/remittance-business/api/RemittanceBusinessApi.ts +33 -33
  267. package/src/remittance-business/api/interfaces/IRemittanceBusinessApi.ts +16 -16
  268. package/src/remittance-business/index.ts +2 -2
  269. package/src/report-processor-business/api/IReportProcessorBusinessApi.ts +4 -4
  270. package/src/report-processor-business/api/ReportProcessorBusinessApi.ts +17 -17
  271. package/src/report-processor-business/index.ts +5 -5
  272. package/src/riskProfile/api/RiskProfileApi.ts +88 -88
  273. package/src/riskProfile/api/TransactionAlertApi.ts +49 -49
  274. package/src/riskProfile/api/interfaces/IRiskProfileApi.ts +69 -69
  275. package/src/riskProfile/api/interfaces/ITransactionAlertApi.ts +70 -70
  276. package/src/riskProfile/index.ts +7 -7
  277. package/src/riskProfile/queue/TransactionAlarmPublisher.ts +25 -25
  278. package/src/riskProfile/queue/interfaces/ITransactionAlarmPublisher.ts +4 -4
  279. package/src/service-business/ServiceApi.ts +78 -78
  280. package/src/service-business/index.ts +2 -2
  281. package/src/service-business/interfaces/IServiceApi.ts +73 -73
  282. package/src/sessionActivity/index.ts +2 -2
  283. package/src/sessionActivity/queue/SessionActivityPublisher.ts +23 -23
  284. package/src/sessionActivity/queue/interfaces/ISessionActivityPublisher.ts +4 -4
  285. package/src/sns-ses-connector/api/SnsSesConnectorApi.ts +18 -18
  286. package/src/sns-ses-connector/api/interfaces/ISnsSesConnectorApi.ts +7 -7
  287. package/src/sns-ses-connector/index.ts +2 -2
  288. package/src/stp-business/api/STPBusinessApi.ts +37 -37
  289. package/src/stp-business/api/interfaces/ISTPBusinessApi.ts +17 -17
  290. package/src/stp-business/index.ts +1 -1
  291. package/src/stpAccount/api/STPAccountApi.ts +111 -111
  292. package/src/stpAccount/api/interfaces/ISTPAccountApi.ts +7 -7
  293. package/src/stpAccount/index.ts +1 -1
  294. package/src/stpServicePayment/api/StpServicePaymentApi.ts +119 -119
  295. package/src/stpServicePayment/api/interfaces/IStpServicePaymentApi.ts +52 -52
  296. package/src/stpServicePayment/index.ts +1 -1
  297. package/src/stpSpei/api/StpSpeiApi.ts +32 -32
  298. package/src/stpSpei/api/interfaces/IStpSpeiApi.ts +6 -6
  299. package/src/stpSpei/index.ts +1 -1
  300. package/src/synergypay-connector/api/SynergyPayConnectorApi.ts +52 -0
  301. package/src/synergypay-connector/api/interfaces/ISynergyPayConnectorApi.ts +61 -0
  302. package/src/synergypay-connector/index.ts +2 -0
  303. package/src/teams-connector/index.ts +2 -2
  304. package/src/teams-connector/queue/TeamsNotificationPublisher.ts +24 -24
  305. package/src/teams-connector/queue/interfaces/ITeamsNotificationPublisher.ts +5 -5
  306. package/src/tern/api/TernApi.ts +147 -147
  307. package/src/tern/api/interfaces/ITernApi.ts +54 -54
  308. package/src/tern/index.ts +1 -1
  309. package/src/totp-security/api/TotpSecurityApi.ts +38 -38
  310. package/src/totp-security/api/interfaces/ITotpSecurityApi.ts +16 -16
  311. package/src/totp-security/index.ts +2 -2
  312. package/src/transaction/api/TransactionApi.ts +177 -177
  313. package/src/transaction/api/interfaces/ITransactionApi.ts +96 -96
  314. package/src/transaction/index.ts +5 -5
  315. package/src/transaction/queue/TransactionPublisher.ts +25 -25
  316. package/src/transaction/queue/interfaces/ITransactionPublisher.ts +4 -4
  317. package/src/transactionProcessor/api/TransactionProcessorApi.ts +104 -104
  318. package/src/transactionProcessor/api/interfaces/ITransactionProcessorApi.ts +86 -86
  319. package/src/transactionProcessor/index.ts +1 -1
  320. package/src/twilio-connector/api/TwilioConnectorApi.ts +18 -18
  321. package/src/twilio-connector/api/interfaces/ITwilioConnectorApi.ts +12 -12
  322. package/src/twilio-connector/index.ts +2 -2
  323. package/src/uniteller-connector/api/UnitellerConnectorApi.ts +311 -311
  324. package/src/uniteller-connector/api/interfaces/IUnitellerConnectorApi.ts +231 -231
  325. package/src/uniteller-connector/index.ts +2 -2
  326. package/src/utils/InvokerUtils.ts +18 -18
  327. package/src/wallet-funding-rules/api/WalletFundingRulesApi.ts +37 -37
  328. package/src/wallet-funding-rules/api/interfaces/IWalletFundingRulesApi.ts +36 -36
  329. package/src/wallet-funding-rules/index.ts +2 -2
  330. package/src/walletFundingSettlement/api/WalletFundingSettlementApi.ts +22 -22
  331. package/src/walletFundingSettlement/api/interfaces/IWalletFundingSettlementApi.ts +31 -31
  332. package/src/walletFundingSettlement/index.ts +2 -2
  333. package/src/zendesk/ZendeskApi.ts +24 -24
  334. package/src/zendesk/index.ts +3 -3
  335. package/src/zendesk/interfaces/IZendeskApi.ts +10 -10
@@ -1,2 +1,2 @@
1
- export * from './api/OnboardingBusinessApi.js';
1
+ export * from './api/OnboardingBusinessApi.js';
2
2
  export * from './api/interfaces/IOnboardingBusinessApi.js';
@@ -1,20 +1,20 @@
1
- import dotenv from 'dotenv';
2
- import { inject, injectable } from "inversify";
3
- import { IHttpRequest } from "@fiado/http-client";
4
- import { IOrderCollectorApi } from './interfaces/IOrderCollectorApi.js';
5
- import { CollectorOrderStatus } from '@fiado/type-kit/bin/collector/index.js';
6
-
7
- dotenv.config();
8
-
9
- @injectable()
10
- export class OrderCollectorApi implements IOrderCollectorApi {
11
-
12
- private readonly baseUrl = process.env.ORDER_COLLECTOR_BUSINESS || "";
13
-
14
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
15
-
16
- async executeOrder(input: CollectorOrderStatus[]): Promise<any> {
17
- const url = `${this.baseUrl}private/execution`;
18
- return await this.httpRequest.post(url, input);
19
- }
20
- }
1
+ import dotenv from 'dotenv';
2
+ import { inject, injectable } from "inversify";
3
+ import { IHttpRequest } from "@fiado/http-client";
4
+ import { IOrderCollectorApi } from './interfaces/IOrderCollectorApi.js';
5
+ import { CollectorOrderStatus } from '@fiado/type-kit/bin/collector/index.js';
6
+
7
+ dotenv.config();
8
+
9
+ @injectable()
10
+ export class OrderCollectorApi implements IOrderCollectorApi {
11
+
12
+ private readonly baseUrl = process.env.ORDER_COLLECTOR_BUSINESS || "";
13
+
14
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
15
+
16
+ async executeOrder(input: CollectorOrderStatus[]): Promise<any> {
17
+ const url = `${this.baseUrl}private/execution`;
18
+ return await this.httpRequest.post(url, input);
19
+ }
20
+ }
@@ -1,4 +1,4 @@
1
-
2
-
3
- export * from './interfaces/IOrderCollectorApi.js';
1
+
2
+
3
+ export * from './interfaces/IOrderCollectorApi.js';
4
4
  export * from './OrderCollectorApi.js';
@@ -1,9 +1,9 @@
1
- import { CollectorOrderStatus } from '@fiado/type-kit/bin/collector/index.js';
2
-
3
- /**
4
- * Interfaz para el servicio Contract Generator.
5
- */
6
- export interface IOrderCollectorApi {
7
-
8
- executeOrder(input: CollectorOrderStatus[]): Promise<void>;
9
- }
1
+ import { CollectorOrderStatus } from '@fiado/type-kit/bin/collector/index.js';
2
+
3
+ /**
4
+ * Interfaz para el servicio Contract Generator.
5
+ */
6
+ export interface IOrderCollectorApi {
7
+
8
+ executeOrder(input: CollectorOrderStatus[]): Promise<void>;
9
+ }
@@ -1,20 +1,20 @@
1
- import {IP2pContactApi} from "./interfaces/IP2pContactApi.js";
2
- import {inject, injectable} from "inversify";
3
- import {IHttpRequest} from "@fiado/http-client";
4
- import {CreateP2pContactRequest} from "@fiado/type-kit/bin/p2pContact/index.js";
5
-
6
- @injectable()
7
- export default class P2pContactApi implements IP2pContactApi {
8
- private readonly baseUrl = process.env.P2P_CONTACTS_LAMBDA_URL || "";
9
-
10
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
11
- }
12
-
13
- async createP2pContact(request: CreateP2pContactRequest): Promise<any> {
14
- const url = `${this.baseUrl}p2pcontacts/contacts/create`;
15
- const headers = {
16
- 'Content-Type': 'application/json'
17
- }
18
- return await this.httpRequest.post(url, request, headers);
19
- }
1
+ import {IP2pContactApi} from "./interfaces/IP2pContactApi.js";
2
+ import {inject, injectable} from "inversify";
3
+ import {IHttpRequest} from "@fiado/http-client";
4
+ import {CreateP2pContactRequest} from "@fiado/type-kit/bin/p2pContact/index.js";
5
+
6
+ @injectable()
7
+ export default class P2pContactApi implements IP2pContactApi {
8
+ private readonly baseUrl = process.env.P2P_CONTACTS_LAMBDA_URL || "";
9
+
10
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
11
+ }
12
+
13
+ async createP2pContact(request: CreateP2pContactRequest): Promise<any> {
14
+ const url = `${this.baseUrl}p2pcontacts/contacts/create`;
15
+ const headers = {
16
+ 'Content-Type': 'application/json'
17
+ }
18
+ return await this.httpRequest.post(url, request, headers);
19
+ }
20
20
  }
@@ -1,5 +1,5 @@
1
- import {CreateP2pContactRequest} from "@fiado/type-kit/bin/p2pContact/index.js";
2
-
3
- export interface IP2pContactApi {
4
- createP2pContact(request: CreateP2pContactRequest): Promise<any>;
1
+ import {CreateP2pContactRequest} from "@fiado/type-kit/bin/p2pContact/index.js";
2
+
3
+ export interface IP2pContactApi {
4
+ createP2pContact(request: CreateP2pContactRequest): Promise<any>;
5
5
  }
@@ -1,2 +1,2 @@
1
- export * from './api/interfaces/IP2pContactApi.js';
1
+ export * from './api/interfaces/IP2pContactApi.js';
2
2
  export * from './api/P2pContactApi.js';
@@ -1,20 +1,20 @@
1
- import { inject, injectable } from "inversify";
2
- import { IHttpRequest } from "@fiado/http-client";
3
- import dotenv from 'dotenv';
4
- import { IPayrollApi } from "./interfaces/IPayrollApi.js";
5
- import { PayrollBossStatusEnum } from "@fiado/type-kit/bin/payroll-business/index.js";
6
-
7
- dotenv.config();
8
-
9
- @injectable()
10
- export class PayrollApi implements IPayrollApi {
11
-
12
- private readonly baseUrl = process.env.PAYROLL_BUSINESS_LAMBDA_URL || "";
13
-
14
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
15
- async getByDirectoryId(params: {directoryId: string,index?:string,pageSize?:number, sort?:string, status?:PayrollBossStatusEnum}): Promise<any> {
16
- const url = `${this.baseUrl}private/payroll-boss/directory/${params.directoryId}`;
17
- return await this.httpRequest.get(`${url}`);
18
- }
19
-
1
+ import { inject, injectable } from "inversify";
2
+ import { IHttpRequest } from "@fiado/http-client";
3
+ import dotenv from 'dotenv';
4
+ import { IPayrollApi } from "./interfaces/IPayrollApi.js";
5
+ import { PayrollBossStatusEnum } from "@fiado/type-kit/bin/payroll-business/index.js";
6
+
7
+ dotenv.config();
8
+
9
+ @injectable()
10
+ export class PayrollApi implements IPayrollApi {
11
+
12
+ private readonly baseUrl = process.env.PAYROLL_BUSINESS_LAMBDA_URL || "";
13
+
14
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
15
+ async getByDirectoryId(params: {directoryId: string,index?:string,pageSize?:number, sort?:string, status?:PayrollBossStatusEnum}): Promise<any> {
16
+ const url = `${this.baseUrl}private/payroll-boss/directory/${params.directoryId}`;
17
+ return await this.httpRequest.get(`${url}`);
18
+ }
19
+
20
20
  }
@@ -1,2 +1,2 @@
1
- export * from './interfaces/IPayrollApi.js';
1
+ export * from './interfaces/IPayrollApi.js';
2
2
  export * from './PayrollApi.js';
@@ -1,18 +1,18 @@
1
- import { PayrollBossStatusEnum } from "@fiado/type-kit/bin/payroll-business/index.js";
2
-
3
- /**
4
- * Interfaz para el servicio Payroll que permite operaciones sobre payroll.
5
- */
6
- export interface IPayrollApi {
7
-
8
- /**
9
- * Obtiene registros de payroll por directorio.
10
- * @param directoryId ID del directorio.
11
- * @param index Indice de la página.
12
- * @param pageSize Tamaño de la página.
13
- * @param sort Orden de los resultados.
14
- * @param status Estado del payroll.
15
- * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
16
- */
17
- getByDirectoryId(params: {directoryId: string,index?:string,pageSize?:number, sort?:string, status?:PayrollBossStatusEnum}): Promise<any>;
18
- }
1
+ import { PayrollBossStatusEnum } from "@fiado/type-kit/bin/payroll-business/index.js";
2
+
3
+ /**
4
+ * Interfaz para el servicio Payroll que permite operaciones sobre payroll.
5
+ */
6
+ export interface IPayrollApi {
7
+
8
+ /**
9
+ * Obtiene registros de payroll por directorio.
10
+ * @param directoryId ID del directorio.
11
+ * @param index Indice de la página.
12
+ * @param pageSize Tamaño de la página.
13
+ * @param sort Orden de los resultados.
14
+ * @param status Estado del payroll.
15
+ * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
16
+ */
17
+ getByDirectoryId(params: {directoryId: string,index?:string,pageSize?:number, sort?:string, status?:PayrollBossStatusEnum}): Promise<any>;
18
+ }
@@ -1,32 +1,32 @@
1
- import { inject, injectable } from "inversify";
2
- import { IHttpRequest } from "@fiado/http-client";
3
- import { IPeopleBusinessApi } from "./interfaces/IPeopleBusinessApi.js";
4
- type FiadoApiResponse<T> = import("@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse.js").default<T>;
5
- import { CPStatusEnum } from "@fiado/type-kit/bin/identity/index.js";
6
-
7
-
8
- @injectable()
9
- export default class PeopleBusinessApi implements IPeopleBusinessApi {
10
-
11
- private readonly baseUrl = process.env.PEOPLE_BUSINESS_LAMBDA_URL || "";
12
-
13
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
14
- }
15
-
16
- getByCPStatus(params: { index?: string; pageSize?: number; cpStatus: CPStatusEnum; sort?: "ascending" | "descending"; }): Promise<FiadoApiResponse<{ items: { people: any; accountRequirementControl: any; }[]; index: string | null; }>> {
17
- const queryParamsArray = [];
18
- if (params.index) {
19
- queryParamsArray.push(`index=${params.index}`);
20
- }
21
- if (params.pageSize) {
22
- queryParamsArray.push(`pageSize=${params.pageSize}`);
23
- }
24
- if (params.sort) {
25
- queryParamsArray.push(`sort=${params.sort}`);
26
- }
27
-
28
- const queryString = queryParamsArray.length > 0 ? '?' + queryParamsArray.join('&') : '';
29
- return this.httpRequest.get(`${this.baseUrl}private/people/get/cpstatus/${params.cpStatus}${queryString}`);
30
- }
31
- }
32
-
1
+ import { inject, injectable } from "inversify";
2
+ import { IHttpRequest } from "@fiado/http-client";
3
+ import { IPeopleBusinessApi } from "./interfaces/IPeopleBusinessApi.js";
4
+ type FiadoApiResponse<T> = import("@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse.js").default<T>;
5
+ import { CPStatusEnum } from "@fiado/type-kit/bin/identity/index.js";
6
+
7
+
8
+ @injectable()
9
+ export default class PeopleBusinessApi implements IPeopleBusinessApi {
10
+
11
+ private readonly baseUrl = process.env.PEOPLE_BUSINESS_LAMBDA_URL || "";
12
+
13
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
14
+ }
15
+
16
+ getByCPStatus(params: { index?: string; pageSize?: number; cpStatus: CPStatusEnum; sort?: "ascending" | "descending"; }): Promise<FiadoApiResponse<{ items: { people: any; accountRequirementControl: any; }[]; index: string | null; }>> {
17
+ const queryParamsArray = [];
18
+ if (params.index) {
19
+ queryParamsArray.push(`index=${params.index}`);
20
+ }
21
+ if (params.pageSize) {
22
+ queryParamsArray.push(`pageSize=${params.pageSize}`);
23
+ }
24
+ if (params.sort) {
25
+ queryParamsArray.push(`sort=${params.sort}`);
26
+ }
27
+
28
+ const queryString = queryParamsArray.length > 0 ? '?' + queryParamsArray.join('&') : '';
29
+ return this.httpRequest.get(`${this.baseUrl}private/people/get/cpstatus/${params.cpStatus}${queryString}`);
30
+ }
31
+ }
32
+
@@ -1,8 +1,8 @@
1
- import { CPStatusEnum } from "@fiado/type-kit/bin/identity/index.js";
2
- type FiadoApiResponse<T> = import("@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse.js").default<T>;
3
-
4
-
5
- export interface IPeopleBusinessApi {
6
- getByCPStatus(params: { index: string; pageSize: number; cpStatus: CPStatusEnum; sort: "ascending" | "descending"; }): Promise<FiadoApiResponse<{ items: {people: any, accountRequirementControl: any}[]; index: string | null; }>>;
7
-
1
+ import { CPStatusEnum } from "@fiado/type-kit/bin/identity/index.js";
2
+ type FiadoApiResponse<T> = import("@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse.js").default<T>;
3
+
4
+
5
+ export interface IPeopleBusinessApi {
6
+ getByCPStatus(params: { index: string; pageSize: number; cpStatus: CPStatusEnum; sort: "ascending" | "descending"; }): Promise<FiadoApiResponse<{ items: {people: any, accountRequirementControl: any}[]; index: string | null; }>>;
7
+
8
8
  }
@@ -1,2 +1,2 @@
1
- export * from './api/PeopleBusinessApi.js';
1
+ export * from './api/PeopleBusinessApi.js';
2
2
  export * from './api/interfaces/IPeopleBusinessApi.js';
@@ -1,2 +1,2 @@
1
- export * from './queue/PlatformErrorEventsPublisher.js';
2
- export * from './queue/interfaces/IPlatformErrorEventsPublisher.js';
1
+ export * from './queue/PlatformErrorEventsPublisher.js';
2
+ export * from './queue/interfaces/IPlatformErrorEventsPublisher.js';
@@ -1,24 +1,24 @@
1
- import { SendMessageCommand, SendMessageRequest, SQSClient } from "@aws-sdk/client-sqs";
2
- import { IPlatformErrorEventsPublisher } from "./interfaces/IPlatformErrorEventsPublisher.js";
3
- import { PlatformErrorEventMessage } from "@fiado/type-kit/bin/platformErrorEvents/index.js";
4
- import { injectable } from "inversify";
5
-
6
- @injectable()
7
- export default class PlatformErrorEventsPublisher implements IPlatformErrorEventsPublisher {
8
- private readonly PLATFORM_ERROR_EVENTS_QUEUE = process.env.PLATFORM_ERROR_EVENTS_QUEUE;
9
-
10
- async publish(message: PlatformErrorEventMessage): Promise<void> {
11
- try {
12
- const client: SQSClient = new SQSClient();
13
- const sendMessageRequest: SendMessageRequest = {
14
- QueueUrl: this.PLATFORM_ERROR_EVENTS_QUEUE,
15
- MessageBody: JSON.stringify(message)
16
- };
17
- const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
18
- await client.send(command);
19
- } catch (error) {
20
- const errorMessage = error instanceof Error ? error.message : String(error);
21
- throw new Error(`Error publishing message to PlatformErrorEventsQueue${': ' + errorMessage}`);
22
- }
23
- }
24
- }
1
+ import { SendMessageCommand, SendMessageRequest, SQSClient } from "@aws-sdk/client-sqs";
2
+ import { IPlatformErrorEventsPublisher } from "./interfaces/IPlatformErrorEventsPublisher.js";
3
+ import { PlatformErrorEventMessage } from "@fiado/type-kit/bin/platformErrorEvents/index.js";
4
+ import { injectable } from "inversify";
5
+
6
+ @injectable()
7
+ export default class PlatformErrorEventsPublisher implements IPlatformErrorEventsPublisher {
8
+ private readonly PLATFORM_ERROR_EVENTS_QUEUE = process.env.PLATFORM_ERROR_EVENTS_QUEUE;
9
+
10
+ async publish(message: PlatformErrorEventMessage): Promise<void> {
11
+ try {
12
+ const client: SQSClient = new SQSClient();
13
+ const sendMessageRequest: SendMessageRequest = {
14
+ QueueUrl: this.PLATFORM_ERROR_EVENTS_QUEUE,
15
+ MessageBody: JSON.stringify(message)
16
+ };
17
+ const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
18
+ await client.send(command);
19
+ } catch (error) {
20
+ const errorMessage = error instanceof Error ? error.message : String(error);
21
+ throw new Error(`Error publishing message to PlatformErrorEventsQueue${': ' + errorMessage}`);
22
+ }
23
+ }
24
+ }
@@ -1,5 +1,5 @@
1
- import { PlatformErrorEventMessage } from "@fiado/type-kit/bin/platformErrorEvents/index.js";
2
-
3
- export interface IPlatformErrorEventsPublisher {
4
- publish(message: PlatformErrorEventMessage): Promise<void>;
5
- }
1
+ import { PlatformErrorEventMessage } from "@fiado/type-kit/bin/platformErrorEvents/index.js";
2
+
3
+ export interface IPlatformErrorEventsPublisher {
4
+ publish(message: PlatformErrorEventMessage): Promise<void>;
5
+ }
@@ -1,98 +1,98 @@
1
- import { inject, injectable } from "inversify";
2
- import type { IHttpRequest } from "@fiado/http-client";
3
- import { ApiGatewayResponse, ResolvedPermissions, ResolveInput } from "@fiado/gateway-adapter";
4
- // TD-AI-001: import de @fiado/type-kit/bin/platformRbac requiere npm link a type-kit 3.43.1 hasta publish final. Ver docs/TECH_DEBT.md.
5
- import {
6
- DefineNextChallengeRequest,
7
- DefineNextChallengeResponse,
8
- PrepareChallengeRequest,
9
- PrepareChallengeResponse,
10
- VerifyChallengeRequest,
11
- VerifyChallengeResponse,
12
- AuthorizeRequest,
13
- AuthorizeResponse,
14
- EffectivePermissionsResponse,
15
- InjectableUserAttributesResponse,
16
- } from "@fiado/type-kit/bin/platformRbac/index.js";
17
- import { IPlatformRbacBusinessApi } from "./interfaces/IPlatformRbacBusinessApi.js";
18
-
19
- /**
20
- * Publisher HTTP del lambda `platform-rbac-business` (componente 06 SureKeep Fase 0)
21
- * para los 3 endpoints internos del Custom Auth Challenge flow.
22
- *
23
- * Env var requerida en el consumer: `PLATFORM_RBAC_BUSINESS_URL`.
24
- * El template.yml del consumer la setea con:
25
- *
26
- * PLATFORM_RBAC_BUSINESS_URL: '{{resolve:ssm:platform-rbac-business}}'
27
- *
28
- * Convención CLAUDE.md global: SSM key = nombre del lambda owner de la URL.
29
- * El rbac-business publica su URL en SSM bajo la key `platform-rbac-business`
30
- * vía el `post_build` del buildspec.yml estándar Fiado.
31
- */
32
- @injectable()
33
- export default class PlatformRbacBusinessApi implements IPlatformRbacBusinessApi {
34
- // DEC-RBAC-069 (unificado a env var): toda la URL de rbac — incluido el endpoint del resolver — sale
35
- // del env var PLATFORM_RBAC_BUSINESS_URL ('{{resolve:ssm:platform-rbac-business}}'), una por ambiente.
36
- // Es server-to-server (VpcEndpoint), sin relación con el dominio de cookies del navegador.
37
- private readonly baseUrl = process.env.PLATFORM_RBAC_BUSINESS_URL || "";
38
-
39
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {}
40
-
41
- async defineNextChallenge(
42
- input: DefineNextChallengeRequest,
43
- ): Promise<ApiGatewayResponse<DefineNextChallengeResponse>> {
44
- const url = `${this.baseUrl}/internal/auth/define-next-challenge`;
45
- return await this.httpRequest.post(url, input);
46
- }
47
-
48
- async prepareChallenge(
49
- input: PrepareChallengeRequest,
50
- ): Promise<ApiGatewayResponse<PrepareChallengeResponse>> {
51
- const url = `${this.baseUrl}/internal/auth/prepare-challenge`;
52
- return await this.httpRequest.post(url, input);
53
- }
54
-
55
- async verifyChallenge(
56
- input: VerifyChallengeRequest,
57
- ): Promise<ApiGatewayResponse<VerifyChallengeResponse>> {
58
- const url = `${this.baseUrl}/internal/auth/verify-challenge`;
59
- return await this.httpRequest.post(url, input);
60
- }
61
-
62
- async authorize(
63
- input: AuthorizeRequest,
64
- ): Promise<ApiGatewayResponse<AuthorizeResponse>> {
65
- const url = `${this.baseUrl}/internal/authorize`;
66
- return await this.httpRequest.post(url, input);
67
- }
68
-
69
- async effectivePermissions(
70
- cognitoSub: string,
71
- tenantId?: string,
72
- ): Promise<ApiGatewayResponse<EffectivePermissionsResponse>> {
73
- const base = `${this.baseUrl}/internal/users/${encodeURIComponent(cognitoSub)}/effective-permissions`;
74
- // El tenantId es opcional: los usuarios de plataforma resuelven por el silo PlatformUser
75
- // sin él, pero los usuarios de un tenant LO NECESITAN para que el rbac sepa en qué silo
76
- // buscarlos (sin él, el resolve cae a la rama platform y devuelve 404). Lo manda el
77
- // jwt-inyector con el tenantId que ya resolvió del userPoolId.
78
- const url = tenantId
79
- ? `${base}?tenantId=${encodeURIComponent(tenantId)}`
80
- : base;
81
- return await this.httpRequest.get(url);
82
- }
83
-
84
- async getInjectableUserAttributes(
85
- cognitoSub: string,
86
- tenantId: string,
87
- ): Promise<ApiGatewayResponse<InjectableUserAttributesResponse>> {
88
- const url = `${this.baseUrl}/internal/users/${encodeURIComponent(cognitoSub)}/injectable-attributes?tenantId=${encodeURIComponent(tenantId)}`;
89
- return await this.httpRequest.get(url);
90
- }
91
-
92
- async resolvePermissions(
93
- input: ResolveInput,
94
- ): Promise<ApiGatewayResponse<ResolvedPermissions>> {
95
- const url = `${this.baseUrl}/internal/permissions/resolve`;
96
- return await this.httpRequest.post(url, input);
97
- }
98
- }
1
+ import { inject, injectable } from "inversify";
2
+ import type { IHttpRequest } from "@fiado/http-client";
3
+ import { ApiGatewayResponse, ResolvedPermissions, ResolveInput } from "@fiado/gateway-adapter";
4
+ // TD-AI-001: import de @fiado/type-kit/bin/platformRbac requiere npm link a type-kit 3.43.1 hasta publish final. Ver docs/TECH_DEBT.md.
5
+ import {
6
+ DefineNextChallengeRequest,
7
+ DefineNextChallengeResponse,
8
+ PrepareChallengeRequest,
9
+ PrepareChallengeResponse,
10
+ VerifyChallengeRequest,
11
+ VerifyChallengeResponse,
12
+ AuthorizeRequest,
13
+ AuthorizeResponse,
14
+ EffectivePermissionsResponse,
15
+ InjectableUserAttributesResponse,
16
+ } from "@fiado/type-kit/bin/platformRbac/index.js";
17
+ import { IPlatformRbacBusinessApi } from "./interfaces/IPlatformRbacBusinessApi.js";
18
+
19
+ /**
20
+ * Publisher HTTP del lambda `platform-rbac-business` (componente 06 SureKeep Fase 0)
21
+ * para los 3 endpoints internos del Custom Auth Challenge flow.
22
+ *
23
+ * Env var requerida en el consumer: `PLATFORM_RBAC_BUSINESS_URL`.
24
+ * El template.yml del consumer la setea con:
25
+ *
26
+ * PLATFORM_RBAC_BUSINESS_URL: '{{resolve:ssm:platform-rbac-business}}'
27
+ *
28
+ * Convención CLAUDE.md global: SSM key = nombre del lambda owner de la URL.
29
+ * El rbac-business publica su URL en SSM bajo la key `platform-rbac-business`
30
+ * vía el `post_build` del buildspec.yml estándar Fiado.
31
+ */
32
+ @injectable()
33
+ export default class PlatformRbacBusinessApi implements IPlatformRbacBusinessApi {
34
+ // DEC-RBAC-069 (unificado a env var): toda la URL de rbac — incluido el endpoint del resolver — sale
35
+ // del env var PLATFORM_RBAC_BUSINESS_URL ('{{resolve:ssm:platform-rbac-business}}'), una por ambiente.
36
+ // Es server-to-server (VpcEndpoint), sin relación con el dominio de cookies del navegador.
37
+ private readonly baseUrl = process.env.PLATFORM_RBAC_BUSINESS_URL || "";
38
+
39
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {}
40
+
41
+ async defineNextChallenge(
42
+ input: DefineNextChallengeRequest,
43
+ ): Promise<ApiGatewayResponse<DefineNextChallengeResponse>> {
44
+ const url = `${this.baseUrl}/internal/auth/define-next-challenge`;
45
+ return await this.httpRequest.post(url, input);
46
+ }
47
+
48
+ async prepareChallenge(
49
+ input: PrepareChallengeRequest,
50
+ ): Promise<ApiGatewayResponse<PrepareChallengeResponse>> {
51
+ const url = `${this.baseUrl}/internal/auth/prepare-challenge`;
52
+ return await this.httpRequest.post(url, input);
53
+ }
54
+
55
+ async verifyChallenge(
56
+ input: VerifyChallengeRequest,
57
+ ): Promise<ApiGatewayResponse<VerifyChallengeResponse>> {
58
+ const url = `${this.baseUrl}/internal/auth/verify-challenge`;
59
+ return await this.httpRequest.post(url, input);
60
+ }
61
+
62
+ async authorize(
63
+ input: AuthorizeRequest,
64
+ ): Promise<ApiGatewayResponse<AuthorizeResponse>> {
65
+ const url = `${this.baseUrl}/internal/authorize`;
66
+ return await this.httpRequest.post(url, input);
67
+ }
68
+
69
+ async effectivePermissions(
70
+ cognitoSub: string,
71
+ tenantId?: string,
72
+ ): Promise<ApiGatewayResponse<EffectivePermissionsResponse>> {
73
+ const base = `${this.baseUrl}/internal/users/${encodeURIComponent(cognitoSub)}/effective-permissions`;
74
+ // El tenantId es opcional: los usuarios de plataforma resuelven por el silo PlatformUser
75
+ // sin él, pero los usuarios de un tenant LO NECESITAN para que el rbac sepa en qué silo
76
+ // buscarlos (sin él, el resolve cae a la rama platform y devuelve 404). Lo manda el
77
+ // jwt-inyector con el tenantId que ya resolvió del userPoolId.
78
+ const url = tenantId
79
+ ? `${base}?tenantId=${encodeURIComponent(tenantId)}`
80
+ : base;
81
+ return await this.httpRequest.get(url);
82
+ }
83
+
84
+ async getInjectableUserAttributes(
85
+ cognitoSub: string,
86
+ tenantId: string,
87
+ ): Promise<ApiGatewayResponse<InjectableUserAttributesResponse>> {
88
+ const url = `${this.baseUrl}/internal/users/${encodeURIComponent(cognitoSub)}/injectable-attributes?tenantId=${encodeURIComponent(tenantId)}`;
89
+ return await this.httpRequest.get(url);
90
+ }
91
+
92
+ async resolvePermissions(
93
+ input: ResolveInput,
94
+ ): Promise<ApiGatewayResponse<ResolvedPermissions>> {
95
+ const url = `${this.baseUrl}/internal/permissions/resolve`;
96
+ return await this.httpRequest.post(url, input);
97
+ }
98
+ }