@artu-ai/compliance-sdk 0.0.6 → 0.3.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 (488) hide show
  1. package/dist/errors/api.d.ts +160 -0
  2. package/dist/errors/api.d.ts.map +1 -0
  3. package/dist/errors/api.js +255 -0
  4. package/dist/errors/base.d.ts +87 -0
  5. package/dist/errors/base.d.ts.map +1 -0
  6. package/dist/errors/base.js +84 -0
  7. package/dist/errors/index.d.ts +32 -0
  8. package/dist/errors/index.d.ts.map +1 -0
  9. package/dist/errors/index.js +35 -0
  10. package/dist/errors/upload.d.ts +109 -0
  11. package/dist/errors/upload.d.ts.map +1 -0
  12. package/dist/errors/upload.js +163 -0
  13. package/dist/errors/validation.d.ts +98 -0
  14. package/dist/errors/validation.d.ts.map +1 -0
  15. package/dist/errors/validation.js +129 -0
  16. package/dist/exports/base.d.ts +12 -0
  17. package/dist/exports/base.d.ts.map +1 -0
  18. package/dist/exports/base.js +21 -0
  19. package/dist/exports/index.d.ts +40 -0
  20. package/dist/exports/index.d.ts.map +1 -0
  21. package/dist/exports/index.js +59 -0
  22. package/dist/{mexico → exports/mexico}/actividad-vulnerable/avi.d.ts +130 -138
  23. package/dist/exports/mexico/actividad-vulnerable/avi.d.ts.map +1 -0
  24. package/dist/exports/mexico/actividad-vulnerable/avi.js +108 -0
  25. package/dist/{mexico → exports/mexico}/actividad-vulnerable/jys.d.ts +147 -158
  26. package/dist/exports/mexico/actividad-vulnerable/jys.d.ts.map +1 -0
  27. package/dist/exports/mexico/actividad-vulnerable/jys.js +115 -0
  28. package/dist/{mexico → exports/mexico}/actividad-vulnerable/tsc.d.ts +118 -129
  29. package/dist/exports/mexico/actividad-vulnerable/tsc.d.ts.map +1 -0
  30. package/dist/exports/mexico/actividad-vulnerable/tsc.js +103 -0
  31. package/dist/exports/mexico/index.d.ts +48 -0
  32. package/dist/exports/mexico/index.d.ts.map +1 -0
  33. package/dist/exports/mexico/index.js +70 -0
  34. package/dist/models/Address.d.ts +118 -0
  35. package/dist/models/Address.d.ts.map +1 -0
  36. package/dist/models/Address.js +187 -0
  37. package/dist/models/BankAccount.d.ts +124 -0
  38. package/dist/models/BankAccount.d.ts.map +1 -0
  39. package/dist/models/BankAccount.js +190 -0
  40. package/dist/models/Client.d.ts +170 -0
  41. package/dist/models/Client.d.ts.map +1 -0
  42. package/dist/models/Client.js +275 -0
  43. package/dist/models/ContactMethod.d.ts +102 -0
  44. package/dist/models/ContactMethod.d.ts.map +1 -0
  45. package/dist/models/ContactMethod.js +152 -0
  46. package/dist/models/Document.d.ts +167 -0
  47. package/dist/models/Document.d.ts.map +1 -0
  48. package/dist/models/Document.js +295 -0
  49. package/dist/models/LinkedClient.d.ts +62 -0
  50. package/dist/models/LinkedClient.d.ts.map +1 -0
  51. package/dist/models/LinkedClient.js +70 -0
  52. package/dist/models/Report.d.ts +98 -0
  53. package/dist/models/Report.d.ts.map +1 -0
  54. package/dist/models/Report.js +156 -0
  55. package/dist/models/ReportItem.d.ts +106 -0
  56. package/dist/models/ReportItem.d.ts.map +1 -0
  57. package/dist/models/ReportItem.js +167 -0
  58. package/dist/models/Transaction.d.ts +108 -0
  59. package/dist/models/Transaction.d.ts.map +1 -0
  60. package/dist/models/Transaction.js +175 -0
  61. package/dist/models/base.d.ts +42 -0
  62. package/dist/models/base.d.ts.map +1 -0
  63. package/dist/models/base.js +51 -0
  64. package/dist/models/index.d.ts +20 -0
  65. package/dist/models/index.d.ts.map +1 -0
  66. package/dist/models/index.js +34 -0
  67. package/dist/models/mex/MexAddress.d.ts +93 -0
  68. package/dist/models/mex/MexAddress.d.ts.map +1 -0
  69. package/dist/models/mex/MexAddress.js +148 -0
  70. package/dist/models/mex/MexBankAccount.d.ts +65 -0
  71. package/dist/models/mex/MexBankAccount.d.ts.map +1 -0
  72. package/dist/models/mex/MexBankAccount.js +90 -0
  73. package/dist/models/mex/MexClient.d.ts +88 -0
  74. package/dist/models/mex/MexClient.d.ts.map +1 -0
  75. package/dist/models/mex/MexClient.js +133 -0
  76. package/dist/models/mex/MexDocument.d.ts +415 -0
  77. package/dist/models/mex/MexDocument.d.ts.map +1 -0
  78. package/dist/models/mex/MexDocument.js +687 -0
  79. package/dist/models/mex/MexReport.d.ts +50 -0
  80. package/dist/models/mex/MexReport.d.ts.map +1 -0
  81. package/dist/models/mex/MexReport.js +73 -0
  82. package/dist/models/mex/MexReportItem.d.ts +39 -0
  83. package/dist/models/mex/MexReportItem.d.ts.map +1 -0
  84. package/dist/models/mex/MexReportItem.js +50 -0
  85. package/dist/models/mex/MexTransaction.d.ts +53 -0
  86. package/dist/models/mex/MexTransaction.d.ts.map +1 -0
  87. package/dist/models/mex/MexTransaction.js +78 -0
  88. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableClient.d.ts +37 -0
  89. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableClient.d.ts.map +1 -0
  90. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableClient.js +46 -0
  91. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReport.d.ts +38 -0
  92. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReport.d.ts.map +1 -0
  93. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReport.js +39 -0
  94. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReportItem.d.ts +38 -0
  95. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReportItem.d.ts.map +1 -0
  96. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReportItem.js +39 -0
  97. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableTransaction.d.ts +29 -0
  98. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableTransaction.d.ts.map +1 -0
  99. package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableTransaction.js +37 -0
  100. package/dist/models/mex/actividad-vulnerable/avi/MexAVIClient.d.ts +43 -0
  101. package/dist/models/mex/actividad-vulnerable/avi/MexAVIClient.d.ts.map +1 -0
  102. package/dist/models/mex/actividad-vulnerable/avi/MexAVIClient.js +59 -0
  103. package/dist/models/mex/actividad-vulnerable/avi/MexAVIReport.d.ts +53 -0
  104. package/dist/models/mex/actividad-vulnerable/avi/MexAVIReport.d.ts.map +1 -0
  105. package/dist/models/mex/actividad-vulnerable/avi/MexAVIReport.js +75 -0
  106. package/dist/models/mex/actividad-vulnerable/avi/MexAVIReportItem.d.ts +56 -0
  107. package/dist/models/mex/actividad-vulnerable/avi/MexAVIReportItem.d.ts.map +1 -0
  108. package/dist/models/mex/actividad-vulnerable/avi/MexAVIReportItem.js +63 -0
  109. package/dist/models/mex/actividad-vulnerable/avi/MexAVITransaction.d.ts +67 -0
  110. package/dist/models/mex/actividad-vulnerable/avi/MexAVITransaction.d.ts.map +1 -0
  111. package/dist/models/mex/actividad-vulnerable/avi/MexAVITransaction.js +136 -0
  112. package/dist/models/mex/actividad-vulnerable/index.d.ts +20 -0
  113. package/dist/models/mex/actividad-vulnerable/index.d.ts.map +1 -0
  114. package/dist/models/mex/actividad-vulnerable/index.js +25 -0
  115. package/dist/models/mex/actividad-vulnerable/jys/MexJYSClient.d.ts +39 -0
  116. package/dist/models/mex/actividad-vulnerable/jys/MexJYSClient.d.ts.map +1 -0
  117. package/dist/models/mex/actividad-vulnerable/jys/MexJYSClient.js +53 -0
  118. package/dist/models/mex/actividad-vulnerable/jys/MexJYSReport.d.ts +53 -0
  119. package/dist/models/mex/actividad-vulnerable/jys/MexJYSReport.d.ts.map +1 -0
  120. package/dist/models/mex/actividad-vulnerable/jys/MexJYSReport.js +75 -0
  121. package/dist/models/mex/actividad-vulnerable/jys/MexJYSReportItem.d.ts +56 -0
  122. package/dist/models/mex/actividad-vulnerable/jys/MexJYSReportItem.d.ts.map +1 -0
  123. package/dist/models/mex/actividad-vulnerable/jys/MexJYSReportItem.js +63 -0
  124. package/dist/models/mex/actividad-vulnerable/jys/MexJYSTransaction.d.ts +85 -0
  125. package/dist/models/mex/actividad-vulnerable/jys/MexJYSTransaction.d.ts.map +1 -0
  126. package/dist/models/mex/actividad-vulnerable/jys/MexJYSTransaction.js +152 -0
  127. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCClient.d.ts +39 -0
  128. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCClient.d.ts.map +1 -0
  129. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCClient.js +53 -0
  130. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReport.d.ts +53 -0
  131. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReport.d.ts.map +1 -0
  132. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReport.js +75 -0
  133. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReportItem.d.ts +56 -0
  134. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReportItem.d.ts.map +1 -0
  135. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReportItem.js +63 -0
  136. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCTransaction.d.ts +53 -0
  137. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCTransaction.d.ts.map +1 -0
  138. package/dist/models/mex/actividad-vulnerable/tsc/MexTSCTransaction.js +82 -0
  139. package/dist/models/mex/index.d.ts +12 -0
  140. package/dist/models/mex/index.d.ts.map +1 -0
  141. package/dist/models/mex/index.js +20 -0
  142. package/dist/models/types.d.ts +81 -0
  143. package/dist/models/types.d.ts.map +1 -0
  144. package/dist/models/types.js +6 -0
  145. package/dist/namespaces/index.d.ts +25 -0
  146. package/dist/namespaces/index.d.ts.map +1 -0
  147. package/dist/namespaces/index.js +27 -0
  148. package/dist/namespaces/mexico/actividad-vulnerable/avi/index.d.ts +322 -0
  149. package/dist/namespaces/mexico/actividad-vulnerable/avi/index.d.ts.map +1 -0
  150. package/dist/namespaces/mexico/actividad-vulnerable/avi/index.js +42 -0
  151. package/dist/namespaces/mexico/actividad-vulnerable/index.d.ts +1361 -0
  152. package/dist/namespaces/mexico/actividad-vulnerable/index.d.ts.map +1 -0
  153. package/dist/namespaces/mexico/actividad-vulnerable/index.js +53 -0
  154. package/dist/namespaces/mexico/actividad-vulnerable/jys/index.d.ts +454 -0
  155. package/dist/namespaces/mexico/actividad-vulnerable/jys/index.d.ts.map +1 -0
  156. package/dist/namespaces/mexico/actividad-vulnerable/jys/index.js +52 -0
  157. package/dist/namespaces/mexico/actividad-vulnerable/tsc/index.d.ts +162 -0
  158. package/dist/namespaces/mexico/actividad-vulnerable/tsc/index.d.ts.map +1 -0
  159. package/dist/namespaces/mexico/actividad-vulnerable/tsc/index.js +40 -0
  160. package/dist/namespaces/mexico/index.d.ts +2481 -0
  161. package/dist/namespaces/mexico/index.d.ts.map +1 -0
  162. package/dist/namespaces/mexico/index.js +140 -0
  163. package/dist/resources/addresses.d.ts +171 -0
  164. package/dist/resources/addresses.d.ts.map +1 -0
  165. package/dist/resources/addresses.js +208 -0
  166. package/dist/resources/bank-accounts.d.ts +174 -0
  167. package/dist/resources/bank-accounts.d.ts.map +1 -0
  168. package/dist/resources/bank-accounts.js +220 -0
  169. package/dist/resources/base.d.ts +192 -0
  170. package/dist/resources/base.d.ts.map +1 -0
  171. package/dist/resources/base.js +205 -0
  172. package/dist/resources/clients.d.ts +446 -0
  173. package/dist/resources/clients.d.ts.map +1 -0
  174. package/dist/resources/clients.js +448 -0
  175. package/dist/resources/contact-methods.d.ts +176 -0
  176. package/dist/resources/contact-methods.d.ts.map +1 -0
  177. package/dist/resources/contact-methods.js +215 -0
  178. package/dist/resources/documents.d.ts +340 -0
  179. package/dist/resources/documents.d.ts.map +1 -0
  180. package/dist/resources/documents.js +447 -0
  181. package/dist/resources/index.d.ts +23 -0
  182. package/dist/resources/index.d.ts.map +1 -0
  183. package/dist/resources/index.js +25 -0
  184. package/dist/resources/mex/actividad-vulnerable/avi/clients.d.ts +165 -0
  185. package/dist/resources/mex/actividad-vulnerable/avi/clients.d.ts.map +1 -0
  186. package/dist/resources/mex/actividad-vulnerable/avi/clients.js +317 -0
  187. package/dist/resources/mex/actividad-vulnerable/avi/index.d.ts +7 -0
  188. package/dist/resources/mex/actividad-vulnerable/avi/index.d.ts.map +1 -0
  189. package/dist/resources/mex/actividad-vulnerable/avi/index.js +6 -0
  190. package/dist/resources/mex/actividad-vulnerable/avi/reports.d.ts +152 -0
  191. package/dist/resources/mex/actividad-vulnerable/avi/reports.d.ts.map +1 -0
  192. package/dist/resources/mex/actividad-vulnerable/avi/reports.js +401 -0
  193. package/dist/resources/mex/actividad-vulnerable/avi/transactions.d.ts +89 -0
  194. package/dist/resources/mex/actividad-vulnerable/avi/transactions.d.ts.map +1 -0
  195. package/dist/resources/mex/actividad-vulnerable/avi/transactions.js +252 -0
  196. package/dist/resources/mex/actividad-vulnerable/index.d.ts +7 -0
  197. package/dist/resources/mex/actividad-vulnerable/index.d.ts.map +1 -0
  198. package/dist/resources/mex/actividad-vulnerable/index.js +9 -0
  199. package/dist/resources/mex/actividad-vulnerable/jys/clients.d.ts +119 -0
  200. package/dist/resources/mex/actividad-vulnerable/jys/clients.d.ts.map +1 -0
  201. package/dist/resources/mex/actividad-vulnerable/jys/clients.js +231 -0
  202. package/dist/resources/mex/actividad-vulnerable/jys/index.d.ts +7 -0
  203. package/dist/resources/mex/actividad-vulnerable/jys/index.d.ts.map +1 -0
  204. package/dist/resources/mex/actividad-vulnerable/jys/index.js +6 -0
  205. package/dist/resources/mex/actividad-vulnerable/jys/reports.d.ts +132 -0
  206. package/dist/resources/mex/actividad-vulnerable/jys/reports.d.ts.map +1 -0
  207. package/dist/resources/mex/actividad-vulnerable/jys/reports.js +381 -0
  208. package/dist/resources/mex/actividad-vulnerable/jys/transactions.d.ts +93 -0
  209. package/dist/resources/mex/actividad-vulnerable/jys/transactions.d.ts.map +1 -0
  210. package/dist/resources/mex/actividad-vulnerable/jys/transactions.js +253 -0
  211. package/dist/resources/mex/actividad-vulnerable/tsc/clients.d.ts +119 -0
  212. package/dist/resources/mex/actividad-vulnerable/tsc/clients.d.ts.map +1 -0
  213. package/dist/resources/mex/actividad-vulnerable/tsc/clients.js +231 -0
  214. package/dist/resources/mex/actividad-vulnerable/tsc/index.d.ts +7 -0
  215. package/dist/resources/mex/actividad-vulnerable/tsc/index.d.ts.map +1 -0
  216. package/dist/resources/mex/actividad-vulnerable/tsc/index.js +6 -0
  217. package/dist/resources/mex/actividad-vulnerable/tsc/reports.d.ts +132 -0
  218. package/dist/resources/mex/actividad-vulnerable/tsc/reports.d.ts.map +1 -0
  219. package/dist/resources/mex/actividad-vulnerable/tsc/reports.js +381 -0
  220. package/dist/resources/mex/actividad-vulnerable/tsc/transactions.d.ts +90 -0
  221. package/dist/resources/mex/actividad-vulnerable/tsc/transactions.d.ts.map +1 -0
  222. package/dist/resources/mex/actividad-vulnerable/tsc/transactions.js +259 -0
  223. package/dist/resources/mex/addresses.d.ts +143 -0
  224. package/dist/resources/mex/addresses.d.ts.map +1 -0
  225. package/dist/resources/mex/addresses.js +328 -0
  226. package/dist/resources/mex/bank-accounts.d.ts +107 -0
  227. package/dist/resources/mex/bank-accounts.d.ts.map +1 -0
  228. package/dist/resources/mex/bank-accounts.js +163 -0
  229. package/dist/resources/mex/clients.d.ts +195 -0
  230. package/dist/resources/mex/clients.d.ts.map +1 -0
  231. package/dist/resources/mex/clients.js +454 -0
  232. package/dist/resources/mex/ebr.d.ts +213 -0
  233. package/dist/resources/mex/ebr.d.ts.map +1 -0
  234. package/dist/resources/mex/ebr.js +417 -0
  235. package/dist/resources/mex/index.d.ts +11 -0
  236. package/dist/resources/mex/index.d.ts.map +1 -0
  237. package/dist/resources/mex/index.js +12 -0
  238. package/dist/resources/mex/reports.d.ts +226 -0
  239. package/dist/resources/mex/reports.d.ts.map +1 -0
  240. package/dist/resources/mex/reports.js +440 -0
  241. package/dist/resources/mex/transactions.d.ts +125 -0
  242. package/dist/resources/mex/transactions.d.ts.map +1 -0
  243. package/dist/resources/mex/transactions.js +274 -0
  244. package/dist/resources/reports.d.ts +211 -0
  245. package/dist/resources/reports.d.ts.map +1 -0
  246. package/dist/resources/reports.js +308 -0
  247. package/dist/resources/transactions.d.ts +142 -0
  248. package/dist/resources/transactions.d.ts.map +1 -0
  249. package/dist/resources/transactions.js +221 -0
  250. package/dist/sdk/ComplianceSDK.d.ts +459 -0
  251. package/dist/sdk/ComplianceSDK.d.ts.map +1 -0
  252. package/dist/sdk/ComplianceSDK.js +528 -0
  253. package/dist/sdk/base.d.ts +17 -0
  254. package/dist/sdk/base.d.ts.map +1 -0
  255. package/dist/sdk/base.js +22 -0
  256. package/dist/sdk/index.d.ts +18 -0
  257. package/dist/sdk/index.d.ts.map +1 -0
  258. package/dist/sdk/index.js +43 -0
  259. package/dist/{ComplianceSDK-BgzIwSsY.d.cts → sdk/mex/ComplianceSDK.d.ts} +16 -7
  260. package/dist/sdk/mex/ComplianceSDK.d.ts.map +1 -0
  261. package/dist/{ComplianceSDK-DoIZOSJq.d.ts → sdk/mex/ComplianceSDK.js} +26 -11
  262. package/dist/sdk/mex/actividad-vulnerable/avi/ComplianceSDK.d.ts +44 -0
  263. package/dist/sdk/mex/actividad-vulnerable/avi/ComplianceSDK.d.ts.map +1 -0
  264. package/dist/sdk/mex/actividad-vulnerable/avi/ComplianceSDK.js +39 -0
  265. package/dist/sdk/mex/actividad-vulnerable/avi/index.d.ts +8 -0
  266. package/dist/sdk/mex/actividad-vulnerable/avi/index.d.ts.map +1 -0
  267. package/dist/sdk/mex/actividad-vulnerable/avi/index.js +9 -0
  268. package/dist/sdk/mex/actividad-vulnerable/avi/types.d.ts +35 -0
  269. package/dist/sdk/mex/actividad-vulnerable/avi/types.d.ts.map +1 -0
  270. package/dist/sdk/mex/actividad-vulnerable/avi/types.js +20 -0
  271. package/dist/sdk/mex/actividad-vulnerable/index.d.ts +13 -0
  272. package/dist/sdk/mex/actividad-vulnerable/index.d.ts.map +1 -0
  273. package/dist/sdk/mex/actividad-vulnerable/index.js +31 -0
  274. package/dist/sdk/mex/actividad-vulnerable/jys/ComplianceSDK.d.ts +44 -0
  275. package/dist/sdk/mex/actividad-vulnerable/jys/ComplianceSDK.d.ts.map +1 -0
  276. package/dist/sdk/mex/actividad-vulnerable/jys/ComplianceSDK.js +39 -0
  277. package/dist/sdk/mex/actividad-vulnerable/jys/index.d.ts +8 -0
  278. package/dist/sdk/mex/actividad-vulnerable/jys/index.d.ts.map +1 -0
  279. package/dist/sdk/mex/actividad-vulnerable/jys/index.js +9 -0
  280. package/dist/sdk/mex/actividad-vulnerable/jys/types.d.ts +35 -0
  281. package/dist/sdk/mex/actividad-vulnerable/jys/types.d.ts.map +1 -0
  282. package/dist/sdk/mex/actividad-vulnerable/jys/types.js +20 -0
  283. package/dist/sdk/mex/actividad-vulnerable/tsc/ComplianceSDK.d.ts +44 -0
  284. package/dist/sdk/mex/actividad-vulnerable/tsc/ComplianceSDK.d.ts.map +1 -0
  285. package/dist/sdk/mex/actividad-vulnerable/tsc/ComplianceSDK.js +39 -0
  286. package/dist/sdk/mex/actividad-vulnerable/tsc/index.d.ts +8 -0
  287. package/dist/sdk/mex/actividad-vulnerable/tsc/index.d.ts.map +1 -0
  288. package/dist/sdk/mex/actividad-vulnerable/tsc/index.js +9 -0
  289. package/dist/sdk/mex/actividad-vulnerable/tsc/types.d.ts +35 -0
  290. package/dist/sdk/mex/actividad-vulnerable/tsc/types.d.ts.map +1 -0
  291. package/dist/sdk/mex/actividad-vulnerable/tsc/types.js +20 -0
  292. package/dist/sdk/mex/index.d.ts +13 -0
  293. package/dist/sdk/mex/index.d.ts.map +1 -0
  294. package/dist/sdk/mex/index.js +38 -0
  295. package/dist/sdk/mex/types.d.ts +57 -0
  296. package/dist/sdk/mex/types.d.ts.map +1 -0
  297. package/dist/sdk/mex/types.js +7 -0
  298. package/dist/sdk/resource-registry.d.ts +118 -0
  299. package/dist/sdk/resource-registry.d.ts.map +1 -0
  300. package/dist/sdk/resource-registry.js +145 -0
  301. package/dist/sdk/sdk-registry.d.ts +59 -0
  302. package/dist/sdk/sdk-registry.d.ts.map +1 -0
  303. package/dist/sdk/sdk-registry.js +82 -0
  304. package/dist/sdk/types.d.ts +232 -0
  305. package/dist/sdk/types.d.ts.map +1 -0
  306. package/dist/sdk/types.js +42 -0
  307. package/dist/utils/environment.d.ts +126 -0
  308. package/dist/utils/environment.d.ts.map +1 -0
  309. package/dist/utils/environment.js +148 -0
  310. package/dist/utils/filters.d.ts +338 -0
  311. package/dist/utils/filters.d.ts.map +1 -0
  312. package/dist/utils/filters.js +373 -0
  313. package/dist/utils/index.d.ts +15 -0
  314. package/dist/utils/index.d.ts.map +1 -0
  315. package/dist/utils/index.js +43 -0
  316. package/dist/utils/pagination.d.ts +85 -0
  317. package/dist/utils/pagination.d.ts.map +1 -0
  318. package/dist/utils/pagination.js +120 -0
  319. package/dist/utils/session.d.ts +173 -0
  320. package/dist/utils/session.d.ts.map +1 -0
  321. package/dist/utils/session.js +58 -0
  322. package/dist/utils/trpc-client.d.ts +19507 -0
  323. package/dist/utils/trpc-client.d.ts.map +1 -0
  324. package/dist/utils/trpc-client.js +129 -0
  325. package/dist/utils/upload.d.ts +81 -0
  326. package/dist/utils/upload.d.ts.map +1 -0
  327. package/dist/utils/upload.js +261 -0
  328. package/package.json +17 -27
  329. package/src/errors/api.ts +305 -0
  330. package/src/errors/base.ts +127 -0
  331. package/src/errors/index.ts +63 -0
  332. package/src/errors/upload.ts +204 -0
  333. package/src/errors/validation.ts +163 -0
  334. package/src/exports/base.ts +139 -0
  335. package/src/exports/index.ts +187 -0
  336. package/src/exports/mexico/actividad-vulnerable/avi.ts +207 -0
  337. package/src/exports/mexico/actividad-vulnerable/jys.ts +214 -0
  338. package/src/exports/mexico/actividad-vulnerable/tsc.ts +202 -0
  339. package/src/exports/mexico/index.ts +215 -0
  340. package/src/models/Address.ts +235 -0
  341. package/src/models/BankAccount.ts +235 -0
  342. package/src/models/Client.ts +363 -0
  343. package/src/models/ContactMethod.ts +197 -0
  344. package/src/models/Document.ts +355 -0
  345. package/src/models/LinkedClient.ts +84 -0
  346. package/src/models/Report.ts +193 -0
  347. package/src/models/ReportItem.ts +211 -0
  348. package/src/models/Transaction.ts +219 -0
  349. package/src/models/base.ts +56 -0
  350. package/src/models/index.ts +148 -0
  351. package/src/models/mex/MexAddress.ts +184 -0
  352. package/src/models/mex/MexBankAccount.ts +121 -0
  353. package/src/models/mex/MexClient.ts +177 -0
  354. package/src/models/mex/MexDocument.ts +890 -0
  355. package/src/models/mex/MexReport.ts +99 -0
  356. package/src/models/mex/MexReportItem.ts +79 -0
  357. package/src/models/mex/MexTransaction.ts +105 -0
  358. package/src/models/mex/actividad-vulnerable/MexActividadVulnerableClient.ts +66 -0
  359. package/src/models/mex/actividad-vulnerable/MexActividadVulnerableReport.ts +73 -0
  360. package/src/models/mex/actividad-vulnerable/MexActividadVulnerableReportItem.ts +74 -0
  361. package/src/models/mex/actividad-vulnerable/MexActividadVulnerableTransaction.ts +50 -0
  362. package/src/models/mex/actividad-vulnerable/avi/MexAVIClient.ts +80 -0
  363. package/src/models/mex/actividad-vulnerable/avi/MexAVIReport.ts +114 -0
  364. package/src/models/mex/actividad-vulnerable/avi/MexAVIReportItem.ts +105 -0
  365. package/src/models/mex/actividad-vulnerable/avi/MexAVITransaction.ts +157 -0
  366. package/src/models/mex/actividad-vulnerable/index.ts +78 -0
  367. package/src/models/mex/actividad-vulnerable/jys/MexJYSClient.ts +73 -0
  368. package/src/models/mex/actividad-vulnerable/jys/MexJYSReport.ts +114 -0
  369. package/src/models/mex/actividad-vulnerable/jys/MexJYSReportItem.ts +105 -0
  370. package/src/models/mex/actividad-vulnerable/jys/MexJYSTransaction.ts +178 -0
  371. package/src/models/mex/actividad-vulnerable/tsc/MexTSCClient.ts +73 -0
  372. package/src/models/mex/actividad-vulnerable/tsc/MexTSCReport.ts +114 -0
  373. package/src/models/mex/actividad-vulnerable/tsc/MexTSCReportItem.ts +105 -0
  374. package/src/models/mex/actividad-vulnerable/tsc/MexTSCTransaction.ts +104 -0
  375. package/src/models/mex/index.ts +57 -0
  376. package/src/models/types.ts +196 -0
  377. package/src/namespaces/index.ts +29 -0
  378. package/src/namespaces/mexico/actividad-vulnerable/avi/index.ts +62 -0
  379. package/src/namespaces/mexico/actividad-vulnerable/index.ts +79 -0
  380. package/src/namespaces/mexico/actividad-vulnerable/jys/index.ts +72 -0
  381. package/src/namespaces/mexico/actividad-vulnerable/tsc/index.ts +60 -0
  382. package/src/namespaces/mexico/index.ts +325 -0
  383. package/src/resources/addresses.ts +391 -0
  384. package/src/resources/bank-accounts.ts +417 -0
  385. package/src/resources/base.ts +327 -0
  386. package/src/resources/clients.ts +808 -0
  387. package/src/resources/contact-methods.ts +412 -0
  388. package/src/resources/documents.ts +688 -0
  389. package/src/resources/index.ts +40 -0
  390. package/src/resources/mex/actividad-vulnerable/avi/clients.ts +559 -0
  391. package/src/resources/mex/actividad-vulnerable/avi/index.ts +7 -0
  392. package/src/resources/mex/actividad-vulnerable/avi/reports.ts +609 -0
  393. package/src/resources/mex/actividad-vulnerable/avi/transactions.ts +404 -0
  394. package/src/resources/mex/actividad-vulnerable/index.ts +12 -0
  395. package/src/resources/mex/actividad-vulnerable/jys/clients.ts +445 -0
  396. package/src/resources/mex/actividad-vulnerable/jys/index.ts +7 -0
  397. package/src/resources/mex/actividad-vulnerable/jys/reports.ts +591 -0
  398. package/src/resources/mex/actividad-vulnerable/jys/transactions.ts +395 -0
  399. package/src/resources/mex/actividad-vulnerable/tsc/clients.ts +445 -0
  400. package/src/resources/mex/actividad-vulnerable/tsc/index.ts +7 -0
  401. package/src/resources/mex/actividad-vulnerable/tsc/reports.ts +591 -0
  402. package/src/resources/mex/actividad-vulnerable/tsc/transactions.ts +404 -0
  403. package/src/resources/mex/addresses.ts +493 -0
  404. package/src/resources/mex/bank-accounts.ts +283 -0
  405. package/src/resources/mex/clients.ts +758 -0
  406. package/src/resources/mex/ebr.ts +621 -0
  407. package/src/resources/mex/index.ts +23 -0
  408. package/src/resources/mex/reports.ts +643 -0
  409. package/src/resources/mex/transactions.ts +422 -0
  410. package/src/resources/reports.ts +515 -0
  411. package/src/resources/transactions.ts +358 -0
  412. package/src/sdk/ComplianceSDK.ts +812 -0
  413. package/src/sdk/base.ts +43 -0
  414. package/src/sdk/index.ts +98 -0
  415. package/src/sdk/mex/ComplianceSDK.ts +147 -0
  416. package/src/sdk/mex/actividad-vulnerable/avi/ComplianceSDK.ts +55 -0
  417. package/src/sdk/mex/actividad-vulnerable/avi/index.ts +16 -0
  418. package/src/sdk/mex/actividad-vulnerable/avi/types.ts +86 -0
  419. package/src/sdk/mex/actividad-vulnerable/index.ts +58 -0
  420. package/src/sdk/mex/actividad-vulnerable/jys/ComplianceSDK.ts +54 -0
  421. package/src/sdk/mex/actividad-vulnerable/jys/index.ts +16 -0
  422. package/src/sdk/mex/actividad-vulnerable/jys/types.ts +86 -0
  423. package/src/sdk/mex/actividad-vulnerable/tsc/ComplianceSDK.ts +54 -0
  424. package/src/sdk/mex/actividad-vulnerable/tsc/index.ts +16 -0
  425. package/src/sdk/mex/actividad-vulnerable/tsc/types.ts +86 -0
  426. package/src/sdk/mex/index.ts +66 -0
  427. package/src/sdk/mex/types.ts +88 -0
  428. package/src/sdk/resource-registry.ts +204 -0
  429. package/src/sdk/sdk-registry.ts +99 -0
  430. package/src/sdk/types.ts +304 -0
  431. package/src/utils/environment.ts +187 -0
  432. package/src/utils/filters.ts +412 -0
  433. package/src/utils/index.ts +134 -0
  434. package/src/utils/pagination.ts +143 -0
  435. package/src/utils/session.ts +303 -0
  436. package/src/utils/trpc-client.ts +242 -0
  437. package/src/utils/upload.ts +388 -0
  438. package/dist/chunk-2CIR32CT.cjs +0 -22972
  439. package/dist/chunk-2CIR32CT.cjs.map +0 -1
  440. package/dist/chunk-5FXVLHD3.js +0 -23
  441. package/dist/chunk-5FXVLHD3.js.map +0 -1
  442. package/dist/chunk-62M35I6I.js +0 -249
  443. package/dist/chunk-62M35I6I.js.map +0 -1
  444. package/dist/chunk-ARI5WM5X.js +0 -22819
  445. package/dist/chunk-ARI5WM5X.js.map +0 -1
  446. package/dist/chunk-B75YW6BN.cjs +0 -26
  447. package/dist/chunk-B75YW6BN.cjs.map +0 -1
  448. package/dist/chunk-F6THYYF5.cjs +0 -26
  449. package/dist/chunk-F6THYYF5.cjs.map +0 -1
  450. package/dist/chunk-HAEBRF5N.js +0 -23
  451. package/dist/chunk-HAEBRF5N.js.map +0 -1
  452. package/dist/chunk-HEGTPUIS.cjs +0 -26
  453. package/dist/chunk-HEGTPUIS.cjs.map +0 -1
  454. package/dist/chunk-TYXYZ3WV.js +0 -23
  455. package/dist/chunk-TYXYZ3WV.js.map +0 -1
  456. package/dist/chunk-ZFW24DFL.cjs +0 -261
  457. package/dist/chunk-ZFW24DFL.cjs.map +0 -1
  458. package/dist/filters-UX1_wF2Z.d.cts +0 -6460
  459. package/dist/filters-UX1_wF2Z.d.ts +0 -6460
  460. package/dist/index-6dNlw8uP.d.cts +0 -2866
  461. package/dist/index-CUIwWk-y.d.ts +0 -2866
  462. package/dist/index.cjs +0 -417
  463. package/dist/index.cjs.map +0 -1
  464. package/dist/index.d.cts +0 -9
  465. package/dist/index.d.ts +0 -9
  466. package/dist/index.js +0 -28
  467. package/dist/index.js.map +0 -1
  468. package/dist/mexico/actividad-vulnerable/avi.cjs +0 -320
  469. package/dist/mexico/actividad-vulnerable/avi.cjs.map +0 -1
  470. package/dist/mexico/actividad-vulnerable/avi.d.cts +0 -680
  471. package/dist/mexico/actividad-vulnerable/avi.js +0 -55
  472. package/dist/mexico/actividad-vulnerable/avi.js.map +0 -1
  473. package/dist/mexico/actividad-vulnerable/jys.cjs +0 -330
  474. package/dist/mexico/actividad-vulnerable/jys.cjs.map +0 -1
  475. package/dist/mexico/actividad-vulnerable/jys.d.cts +0 -746
  476. package/dist/mexico/actividad-vulnerable/jys.js +0 -65
  477. package/dist/mexico/actividad-vulnerable/jys.js.map +0 -1
  478. package/dist/mexico/actividad-vulnerable/tsc.cjs +0 -318
  479. package/dist/mexico/actividad-vulnerable/tsc.cjs.map +0 -1
  480. package/dist/mexico/actividad-vulnerable/tsc.d.cts +0 -600
  481. package/dist/mexico/actividad-vulnerable/tsc.js +0 -53
  482. package/dist/mexico/actividad-vulnerable/tsc.js.map +0 -1
  483. package/dist/mexico/index.cjs +0 -384
  484. package/dist/mexico/index.cjs.map +0 -1
  485. package/dist/mexico/index.d.cts +0 -1422
  486. package/dist/mexico/index.d.ts +0 -1422
  487. package/dist/mexico/index.js +0 -7
  488. package/dist/mexico/index.js.map +0 -1
@@ -0,0 +1,417 @@
1
+ /**
2
+ * Bank Accounts Resource
3
+ *
4
+ * Manages bank account information for clients.
5
+ *
6
+ * This is the base (unscoped) resource. For jurisdiction-scoped SDKs, use:
7
+ * - MexBankAccountsResource - Mexico-scoped with flattened CLABE fields
8
+ */
9
+
10
+ import { z } from "zod";
11
+ import type {
12
+ CreateBankAccountInput,
13
+ UpdateBankAccountInput,
14
+ BankAccountFilter,
15
+ BankAccountSort,
16
+ PaginatedResponse,
17
+ ListOptions,
18
+ AtomicBatchResult,
19
+ PartialBatchResult,
20
+ SyncItem,
21
+ SyncResult,
22
+ } from "@artu-ai/shared";
23
+ import {
24
+ createBankAccountInputSchema,
25
+ updateBankAccountInputSchema,
26
+ replaceSyncItemSchema,
27
+ } from "@artu-ai/shared";
28
+ import type { BatchOptions } from "./clients";
29
+ import { BaseResource } from "./base";
30
+ import { BankAccount, type BankAccountData } from "../models/BankAccount";
31
+
32
+ // ===========================
33
+ // BankAccountsResource
34
+ // ===========================
35
+
36
+ /**
37
+ * Base resource for managing client bank accounts.
38
+ *
39
+ * @example
40
+ * ```typescript
41
+ * // Create a bank account with full nested format
42
+ * const account = await sdk.bankAccounts.create("client_123", {
43
+ * accountNumber: "1234567890",
44
+ * bankName: "BBVA México",
45
+ * type: BankAccountType.Checking,
46
+ * currency: Currency.MXN,
47
+ * jurisdictions: {
48
+ * MX: {
49
+ * clabe: "012345678901234567",
50
+ * },
51
+ * },
52
+ * });
53
+ *
54
+ * // List accounts for a client
55
+ * const accounts = await sdk.bankAccounts.list("client_123");
56
+ * ```
57
+ */
58
+ export class BankAccountsResource<
59
+ TSort = BankAccountSort,
60
+ > extends BaseResource<
61
+ BankAccount,
62
+ CreateBankAccountInput,
63
+ UpdateBankAccountInput,
64
+ BankAccountFilter,
65
+ TSort
66
+ > {
67
+ // ─────────────────────────────────────────────────────────────────
68
+ // CRUD Operations
69
+ // ─────────────────────────────────────────────────────────────────
70
+
71
+ /**
72
+ * Creates a new bank account for a client.
73
+ *
74
+ * @param data - Bank account creation data (includes clientId)
75
+ * @returns The created bank account model
76
+ */
77
+ async create(data: CreateBankAccountInput): Promise<BankAccount> {
78
+ const validated = this.validate(createBankAccountInputSchema, data);
79
+
80
+ const response = await this.execute(() =>
81
+ this.trpc.bankAccounts.create.mutate(validated)
82
+ );
83
+
84
+ return this.instantiate(response);
85
+ }
86
+
87
+ /**
88
+ * Retrieves a bank account by ID.
89
+ */
90
+ async retrieve(id: string): Promise<BankAccount> {
91
+ const response = await this.execute(() =>
92
+ this.trpc.bankAccounts.retrieve.query({ id })
93
+ );
94
+ return this.instantiate(response);
95
+ }
96
+
97
+ /**
98
+ * Retrieves a bank account by metadata key/value.
99
+ */
100
+ async retrieveByMetadata(key: string, value: string): Promise<BankAccount> {
101
+ const response = await this.execute(() =>
102
+ this.trpc.bankAccounts.retrieveByMetadata.query({ key, value })
103
+ );
104
+ return this.instantiate(response);
105
+ }
106
+
107
+ /**
108
+ * Retrieves a bank account by externalId.
109
+ */
110
+ async retrieveByExternalId(externalId: string): Promise<BankAccount> {
111
+ const response = await this.execute(() =>
112
+ this.trpc.bankAccounts.retrieveByExternalId.query({ externalId })
113
+ );
114
+ return this.instantiate(response);
115
+ }
116
+
117
+ /**
118
+ * Updates a bank account.
119
+ */
120
+ async update(id: string, data: UpdateBankAccountInput): Promise<BankAccount> {
121
+ const validated = this.validate(updateBankAccountInputSchema, data);
122
+
123
+ const response = await this.execute(() =>
124
+ this.trpc.bankAccounts.update.mutate({ id, data: validated })
125
+ );
126
+ return this.instantiate(response);
127
+ }
128
+
129
+ /**
130
+ * Deletes a bank account.
131
+ */
132
+ async delete(id: string): Promise<void> {
133
+ await this.execute(() => this.trpc.bankAccounts.delete.mutate({ id }));
134
+ }
135
+
136
+ // ─────────────────────────────────────────────────────────────────
137
+ // List & Pagination
138
+ // ─────────────────────────────────────────────────────────────────
139
+
140
+ /**
141
+ * Lists bank accounts with optional filtering.
142
+ */
143
+ async list(
144
+ options?: ListOptions<BankAccountFilter, TSort>
145
+ ): Promise<PaginatedResponse<BankAccount>> {
146
+ const response = await this.execute(() =>
147
+ this.trpc.bankAccounts.list.query(options as ListOptions<BankAccountFilter, BankAccountSort>)
148
+ );
149
+
150
+ return {
151
+ data: response.data.map((a) => this.instantiate(a)),
152
+ pagination: response.pagination,
153
+ };
154
+ }
155
+
156
+ /**
157
+ * Lists all bank accounts for a specific client.
158
+ */
159
+ async listByClient(
160
+ clientId: string,
161
+ options?: { cursor?: string; limit?: number }
162
+ ): Promise<PaginatedResponse<BankAccount>> {
163
+ const response = await this.execute(() =>
164
+ this.trpc.bankAccounts.listByClient.query({ clientId, ...options })
165
+ );
166
+
167
+ return {
168
+ data: response.data.map((a) => this.instantiate(a)),
169
+ pagination: response.pagination,
170
+ };
171
+ }
172
+
173
+ /**
174
+ * Returns an async iterator over all bank accounts matching the filter.
175
+ */
176
+ iterate(
177
+ filter?: BankAccountFilter
178
+ ): AsyncGenerator<BankAccount, void, undefined> {
179
+ return this.createIterator({ filter });
180
+ }
181
+
182
+ // ─────────────────────────────────────────────────────────────────
183
+ // Convenience Methods
184
+ // ─────────────────────────────────────────────────────────────────
185
+
186
+ /**
187
+ * Gets the primary bank account for a client.
188
+ *
189
+ * @param clientId - The client ID
190
+ * @returns The primary bank account, or null if none is marked as primary
191
+ */
192
+ async getPrimary(clientId: string): Promise<BankAccount | null> {
193
+ const response = await this.execute(() =>
194
+ this.trpc.bankAccounts.getPrimary.query({ clientId })
195
+ );
196
+
197
+ return response ? this.instantiate(response) : null;
198
+ }
199
+
200
+ /**
201
+ * Sets a bank account as the primary account for a client.
202
+ */
203
+ async setPrimary(id: string): Promise<BankAccount> {
204
+ const response = await this.execute(() =>
205
+ this.trpc.bankAccounts.update.mutate({ id, data: { isPrimary: true } })
206
+ );
207
+ return this.instantiate(response);
208
+ }
209
+
210
+ /**
211
+ * Activates a bank account.
212
+ */
213
+ async activate(id: string): Promise<BankAccount> {
214
+ const response = await this.execute(() =>
215
+ this.trpc.bankAccounts.update.mutate({ id, data: { isActive: true } })
216
+ );
217
+ return this.instantiate(response);
218
+ }
219
+
220
+ /**
221
+ * Deactivates a bank account.
222
+ */
223
+ async deactivate(id: string): Promise<BankAccount> {
224
+ const response = await this.execute(() =>
225
+ this.trpc.bankAccounts.update.mutate({ id, data: { isActive: false } })
226
+ );
227
+ return this.instantiate(response);
228
+ }
229
+
230
+ // ─────────────────────────────────────────────────────────────────
231
+ // Batch Operations
232
+ // ─────────────────────────────────────────────────────────────────
233
+
234
+ /**
235
+ * Creates multiple bank accounts in a single request.
236
+ *
237
+ * @param accounts - Array of bank account creation data (each includes clientId)
238
+ * @param options - Batch options (atomic: true by default)
239
+ * @returns Atomic result with data array, or partial result with succeeded/failed
240
+ */
241
+ async createMany(
242
+ accounts: CreateBankAccountInput[],
243
+ options?: { atomic?: true }
244
+ ): Promise<AtomicBatchResult<BankAccount>>;
245
+ async createMany(
246
+ accounts: CreateBankAccountInput[],
247
+ options: { atomic: false }
248
+ ): Promise<PartialBatchResult<BankAccount>>;
249
+ async createMany(
250
+ accounts: CreateBankAccountInput[],
251
+ options: BatchOptions = {}
252
+ ): Promise<AtomicBatchResult<BankAccount> | PartialBatchResult<BankAccount>> {
253
+ const atomic = options.atomic ?? true;
254
+ const validated = this.validate(
255
+ z.array(createBankAccountInputSchema),
256
+ accounts
257
+ );
258
+
259
+ const response = await this.execute(() =>
260
+ this.trpc.bankAccounts.createMany.mutate({ items: validated, atomic })
261
+ );
262
+
263
+ if (response.atomic) {
264
+ return {
265
+ atomic: true,
266
+ data: response.data.map((a) => this.instantiate(a)),
267
+ };
268
+ } else {
269
+ return {
270
+ atomic: false,
271
+ succeeded: response.succeeded.map((item) => ({
272
+ index: item.index,
273
+ data: this.instantiate(item.data),
274
+ })),
275
+ failed: response.failed,
276
+ };
277
+ }
278
+ }
279
+
280
+ /**
281
+ * Updates multiple bank accounts in a single request.
282
+ *
283
+ * @param updates - Array of { id, data } updates
284
+ * @param options - Batch options (atomic: true by default)
285
+ * @returns Atomic result with data array, or partial result with succeeded/failed
286
+ */
287
+ async updateMany(
288
+ updates: { id: string; data: UpdateBankAccountInput }[],
289
+ options?: { atomic?: true }
290
+ ): Promise<AtomicBatchResult<BankAccount>>;
291
+ async updateMany(
292
+ updates: { id: string; data: UpdateBankAccountInput }[],
293
+ options: { atomic: false }
294
+ ): Promise<PartialBatchResult<BankAccount>>;
295
+ async updateMany(
296
+ updates: { id: string; data: UpdateBankAccountInput }[],
297
+ options: BatchOptions = {}
298
+ ): Promise<AtomicBatchResult<BankAccount> | PartialBatchResult<BankAccount>> {
299
+ const atomic = options.atomic ?? true;
300
+ const updateItemSchema = z.object({
301
+ id: z.uuid(),
302
+ data: updateBankAccountInputSchema,
303
+ });
304
+
305
+ const validated = this.validate(z.array(updateItemSchema), updates);
306
+
307
+ const response = await this.execute(() =>
308
+ this.trpc.bankAccounts.updateMany.mutate({ items: validated, atomic })
309
+ );
310
+
311
+ if (response.atomic) {
312
+ return {
313
+ atomic: true,
314
+ data: response.data.map((a) => this.instantiate(a)),
315
+ };
316
+ } else {
317
+ return {
318
+ atomic: false,
319
+ succeeded: response.succeeded.map((item) => ({
320
+ index: item.index,
321
+ data: this.instantiate(item.data),
322
+ })),
323
+ failed: response.failed,
324
+ };
325
+ }
326
+ }
327
+
328
+ // ─────────────────────────────────────────────────────────────────
329
+ // Sync Operations
330
+ // ─────────────────────────────────────────────────────────────────
331
+
332
+ /**
333
+ * Syncs bank accounts for a client - handles create, update, and delete in bulk.
334
+ *
335
+ * This is the most efficient way to reconcile a set of bank accounts for a client.
336
+ *
337
+ * @param clientId - The client ID
338
+ * @param items - Array of sync items:
339
+ * - Without `id`: create new bank account
340
+ * - With `id` and `_delete: true`: delete existing bank account
341
+ * - With `id` (no `_delete`): update existing bank account
342
+ * @param options - Sync options
343
+ * @param options.replaceMode - When true, items not in the array are deleted (default: false)
344
+ * @returns Sync result with created, updated, and deleted arrays
345
+ *
346
+ * @example
347
+ * ```typescript
348
+ * // Patch mode (default) - only mentioned items are affected
349
+ * const result = await sdk.bankAccounts.sync("client_123", [
350
+ * // Create new account (no id)
351
+ * { accountNumber: "1234567890", bankName: "BBVA", country: "MX" },
352
+ * // Update existing account (has id)
353
+ * { id: "ba_456", bankName: "BBVA México" },
354
+ * // Delete account (has id and _delete: true)
355
+ * { id: "ba_789", _delete: true },
356
+ * ]);
357
+ *
358
+ * // Replace mode - provided array becomes the complete set (requires full create input for new items)
359
+ * const result = await sdk.bankAccounts.sync("client_123", accounts, { replaceMode: true });
360
+ *
361
+ * console.log(result.created); // newly created accounts
362
+ * console.log(result.updated); // updated accounts
363
+ * console.log(result.deleted); // array of deleted IDs
364
+ * ```
365
+ */
366
+ async sync(
367
+ clientId: string,
368
+ items: SyncItem<CreateBankAccountInput>[],
369
+ options: { replaceMode: true }
370
+ ): Promise<SyncResult<BankAccount>>;
371
+ async sync(
372
+ clientId: string,
373
+ items: SyncItem<UpdateBankAccountInput>[],
374
+ options?: { replaceMode?: boolean }
375
+ ): Promise<SyncResult<BankAccount>>;
376
+ async sync(
377
+ clientId: string,
378
+ items: SyncItem<UpdateBankAccountInput | CreateBankAccountInput>[],
379
+ options?: { replaceMode?: boolean }
380
+ ): Promise<SyncResult<BankAccount>> {
381
+ const validated = this.validate(
382
+ z.array(
383
+ replaceSyncItemSchema(
384
+ createBankAccountInputSchema,
385
+ updateBankAccountInputSchema
386
+ )
387
+ ),
388
+ items
389
+ );
390
+
391
+ const response = await this.execute(() =>
392
+ this.trpc.bankAccounts.sync.mutate({
393
+ clientId,
394
+ items: validated,
395
+ replaceMode: options?.replaceMode,
396
+ })
397
+ );
398
+
399
+ return {
400
+ created: response.created.map((a) => this.instantiate(a)),
401
+ updated: response.updated.map((a) => this.instantiate(a)),
402
+ deleted: response.deleted,
403
+ };
404
+ }
405
+
406
+ // ─────────────────────────────────────────────────────────────────
407
+ // Instantiation (protected for subclasses to override)
408
+ // ─────────────────────────────────────────────────────────────────
409
+
410
+ /**
411
+ * Instantiates a BankAccount model from API response data.
412
+ * Subclasses override this to return their specific model type.
413
+ */
414
+ protected instantiate(data: BankAccountData): BankAccount {
415
+ return new BankAccount(data);
416
+ }
417
+ }