@artu-ai/compliance-sdk 0.0.5 → 0.2.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 (484) 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 +257 -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 +191 -0
  170. package/dist/resources/base.d.ts.map +1 -0
  171. package/dist/resources/base.js +202 -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 +253 -0
  179. package/dist/resources/documents.d.ts.map +1 -0
  180. package/dist/resources/documents.js +340 -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 +159 -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 +304 -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 +134 -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 +333 -0
  193. package/dist/resources/mex/actividad-vulnerable/avi/transactions.d.ts +83 -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 +239 -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 +112 -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 +218 -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 +110 -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 +309 -0
  208. package/dist/resources/mex/actividad-vulnerable/jys/transactions.d.ts +86 -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 +240 -0
  211. package/dist/resources/mex/actividad-vulnerable/tsc/clients.d.ts +112 -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 +218 -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 +110 -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 +309 -0
  220. package/dist/resources/mex/actividad-vulnerable/tsc/transactions.d.ts +83 -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 +246 -0
  223. package/dist/resources/mex/addresses.d.ts +135 -0
  224. package/dist/resources/mex/addresses.d.ts.map +1 -0
  225. package/dist/resources/mex/addresses.js +313 -0
  226. package/dist/resources/mex/bank-accounts.d.ts +99 -0
  227. package/dist/resources/mex/bank-accounts.d.ts.map +1 -0
  228. package/dist/resources/mex/bank-accounts.js +147 -0
  229. package/dist/resources/mex/clients.d.ts +186 -0
  230. package/dist/resources/mex/clients.d.ts.map +1 -0
  231. package/dist/resources/mex/clients.js +438 -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 +204 -0
  239. package/dist/resources/mex/reports.d.ts.map +1 -0
  240. package/dist/resources/mex/reports.js +404 -0
  241. package/dist/resources/mex/transactions.d.ts +117 -0
  242. package/dist/resources/mex/transactions.d.ts.map +1 -0
  243. package/dist/resources/mex/transactions.js +259 -0
  244. package/dist/resources/reports.d.ts +217 -0
  245. package/dist/resources/reports.d.ts.map +1 -0
  246. package/dist/resources/reports.js +310 -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 +457 -0
  251. package/dist/sdk/ComplianceSDK.d.ts.map +1 -0
  252. package/dist/sdk/ComplianceSDK.js +520 -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-CsFkAge8.d.ts → sdk/mex/ComplianceSDK.d.ts} +16 -7
  260. package/dist/sdk/mex/ComplianceSDK.d.ts.map +1 -0
  261. package/dist/{ComplianceSDK-DzmqGCLF.d.cts → 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 +19 -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 +19 -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 +19 -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 +209 -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 +102 -0
  308. package/dist/utils/environment.d.ts.map +1 -0
  309. package/dist/utils/environment.js +110 -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 +13 -0
  314. package/dist/utils/index.d.ts.map +1 -0
  315. package/dist/utils/index.js +39 -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 +155 -0
  320. package/dist/utils/session.d.ts.map +1 -0
  321. package/dist/utils/session.js +50 -0
  322. package/dist/utils/trpc-client.d.ts +19337 -0
  323. package/dist/utils/trpc-client.d.ts.map +1 -0
  324. package/dist/utils/trpc-client.js +128 -0
  325. package/package.json +16 -27
  326. package/src/errors/api.ts +305 -0
  327. package/src/errors/base.ts +127 -0
  328. package/src/errors/index.ts +63 -0
  329. package/src/errors/upload.ts +204 -0
  330. package/src/errors/validation.ts +163 -0
  331. package/src/exports/base.ts +139 -0
  332. package/src/exports/index.ts +187 -0
  333. package/src/exports/mexico/actividad-vulnerable/avi.ts +207 -0
  334. package/src/exports/mexico/actividad-vulnerable/jys.ts +214 -0
  335. package/src/exports/mexico/actividad-vulnerable/tsc.ts +202 -0
  336. package/src/exports/mexico/index.ts +215 -0
  337. package/src/models/Address.ts +235 -0
  338. package/src/models/BankAccount.ts +235 -0
  339. package/src/models/Client.ts +343 -0
  340. package/src/models/ContactMethod.ts +197 -0
  341. package/src/models/Document.ts +355 -0
  342. package/src/models/LinkedClient.ts +84 -0
  343. package/src/models/Report.ts +193 -0
  344. package/src/models/ReportItem.ts +211 -0
  345. package/src/models/Transaction.ts +219 -0
  346. package/src/models/base.ts +56 -0
  347. package/src/models/index.ts +148 -0
  348. package/src/models/mex/MexAddress.ts +184 -0
  349. package/src/models/mex/MexBankAccount.ts +121 -0
  350. package/src/models/mex/MexClient.ts +177 -0
  351. package/src/models/mex/MexDocument.ts +890 -0
  352. package/src/models/mex/MexReport.ts +99 -0
  353. package/src/models/mex/MexReportItem.ts +79 -0
  354. package/src/models/mex/MexTransaction.ts +105 -0
  355. package/src/models/mex/actividad-vulnerable/MexActividadVulnerableClient.ts +66 -0
  356. package/src/models/mex/actividad-vulnerable/MexActividadVulnerableReport.ts +73 -0
  357. package/src/models/mex/actividad-vulnerable/MexActividadVulnerableReportItem.ts +74 -0
  358. package/src/models/mex/actividad-vulnerable/MexActividadVulnerableTransaction.ts +50 -0
  359. package/src/models/mex/actividad-vulnerable/avi/MexAVIClient.ts +80 -0
  360. package/src/models/mex/actividad-vulnerable/avi/MexAVIReport.ts +114 -0
  361. package/src/models/mex/actividad-vulnerable/avi/MexAVIReportItem.ts +105 -0
  362. package/src/models/mex/actividad-vulnerable/avi/MexAVITransaction.ts +157 -0
  363. package/src/models/mex/actividad-vulnerable/index.ts +78 -0
  364. package/src/models/mex/actividad-vulnerable/jys/MexJYSClient.ts +73 -0
  365. package/src/models/mex/actividad-vulnerable/jys/MexJYSReport.ts +114 -0
  366. package/src/models/mex/actividad-vulnerable/jys/MexJYSReportItem.ts +105 -0
  367. package/src/models/mex/actividad-vulnerable/jys/MexJYSTransaction.ts +178 -0
  368. package/src/models/mex/actividad-vulnerable/tsc/MexTSCClient.ts +73 -0
  369. package/src/models/mex/actividad-vulnerable/tsc/MexTSCReport.ts +114 -0
  370. package/src/models/mex/actividad-vulnerable/tsc/MexTSCReportItem.ts +105 -0
  371. package/src/models/mex/actividad-vulnerable/tsc/MexTSCTransaction.ts +104 -0
  372. package/src/models/mex/index.ts +57 -0
  373. package/src/models/types.ts +196 -0
  374. package/src/namespaces/index.ts +29 -0
  375. package/src/namespaces/mexico/actividad-vulnerable/avi/index.ts +62 -0
  376. package/src/namespaces/mexico/actividad-vulnerable/index.ts +79 -0
  377. package/src/namespaces/mexico/actividad-vulnerable/jys/index.ts +72 -0
  378. package/src/namespaces/mexico/actividad-vulnerable/tsc/index.ts +60 -0
  379. package/src/namespaces/mexico/index.ts +325 -0
  380. package/src/resources/addresses.ts +387 -0
  381. package/src/resources/bank-accounts.ts +413 -0
  382. package/src/resources/base.ts +322 -0
  383. package/src/resources/clients.ts +802 -0
  384. package/src/resources/contact-methods.ts +410 -0
  385. package/src/resources/documents.ts +508 -0
  386. package/src/resources/index.ts +35 -0
  387. package/src/resources/mex/actividad-vulnerable/avi/clients.ts +537 -0
  388. package/src/resources/mex/actividad-vulnerable/avi/index.ts +7 -0
  389. package/src/resources/mex/actividad-vulnerable/avi/reports.ts +513 -0
  390. package/src/resources/mex/actividad-vulnerable/avi/transactions.ts +386 -0
  391. package/src/resources/mex/actividad-vulnerable/index.ts +12 -0
  392. package/src/resources/mex/actividad-vulnerable/jys/clients.ts +427 -0
  393. package/src/resources/mex/actividad-vulnerable/jys/index.ts +7 -0
  394. package/src/resources/mex/actividad-vulnerable/jys/reports.ts +489 -0
  395. package/src/resources/mex/actividad-vulnerable/jys/transactions.ts +377 -0
  396. package/src/resources/mex/actividad-vulnerable/tsc/clients.ts +427 -0
  397. package/src/resources/mex/actividad-vulnerable/tsc/index.ts +7 -0
  398. package/src/resources/mex/actividad-vulnerable/tsc/reports.ts +489 -0
  399. package/src/resources/mex/actividad-vulnerable/tsc/transactions.ts +386 -0
  400. package/src/resources/mex/addresses.ts +471 -0
  401. package/src/resources/mex/bank-accounts.ts +259 -0
  402. package/src/resources/mex/clients.ts +735 -0
  403. package/src/resources/mex/ebr.ts +621 -0
  404. package/src/resources/mex/index.ts +23 -0
  405. package/src/resources/mex/reports.ts +575 -0
  406. package/src/resources/mex/transactions.ts +400 -0
  407. package/src/resources/reports.ts +493 -0
  408. package/src/resources/transactions.ts +354 -0
  409. package/src/sdk/ComplianceSDK.ts +797 -0
  410. package/src/sdk/base.ts +43 -0
  411. package/src/sdk/index.ts +98 -0
  412. package/src/sdk/mex/ComplianceSDK.ts +140 -0
  413. package/src/sdk/mex/actividad-vulnerable/avi/ComplianceSDK.ts +51 -0
  414. package/src/sdk/mex/actividad-vulnerable/avi/index.ts +16 -0
  415. package/src/sdk/mex/actividad-vulnerable/avi/types.ts +72 -0
  416. package/src/sdk/mex/actividad-vulnerable/index.ts +58 -0
  417. package/src/sdk/mex/actividad-vulnerable/jys/ComplianceSDK.ts +51 -0
  418. package/src/sdk/mex/actividad-vulnerable/jys/index.ts +16 -0
  419. package/src/sdk/mex/actividad-vulnerable/jys/types.ts +72 -0
  420. package/src/sdk/mex/actividad-vulnerable/tsc/ComplianceSDK.ts +51 -0
  421. package/src/sdk/mex/actividad-vulnerable/tsc/index.ts +16 -0
  422. package/src/sdk/mex/actividad-vulnerable/tsc/types.ts +72 -0
  423. package/src/sdk/mex/index.ts +66 -0
  424. package/src/sdk/mex/types.ts +84 -0
  425. package/src/sdk/resource-registry.ts +204 -0
  426. package/src/sdk/sdk-registry.ts +99 -0
  427. package/src/sdk/types.ts +275 -0
  428. package/src/utils/environment.ts +145 -0
  429. package/src/utils/filters.ts +412 -0
  430. package/src/utils/index.ts +115 -0
  431. package/src/utils/pagination.ts +143 -0
  432. package/src/utils/session.ts +273 -0
  433. package/src/utils/trpc-client.ts +233 -0
  434. package/dist/chunk-C4Y56E4V.js +0 -23
  435. package/dist/chunk-C4Y56E4V.js.map +0 -1
  436. package/dist/chunk-E36XEOE2.js +0 -22558
  437. package/dist/chunk-E36XEOE2.js.map +0 -1
  438. package/dist/chunk-EO7ANPLK.cjs +0 -26
  439. package/dist/chunk-EO7ANPLK.cjs.map +0 -1
  440. package/dist/chunk-F5LRN233.cjs +0 -26
  441. package/dist/chunk-F5LRN233.cjs.map +0 -1
  442. package/dist/chunk-IS3YJ7Y5.cjs +0 -26
  443. package/dist/chunk-IS3YJ7Y5.cjs.map +0 -1
  444. package/dist/chunk-MNPRPINS.js +0 -23
  445. package/dist/chunk-MNPRPINS.js.map +0 -1
  446. package/dist/chunk-NQWTMQQL.js +0 -249
  447. package/dist/chunk-NQWTMQQL.js.map +0 -1
  448. package/dist/chunk-Q3J7CQWL.js +0 -23
  449. package/dist/chunk-Q3J7CQWL.js.map +0 -1
  450. package/dist/chunk-U3W5OO7I.cjs +0 -22711
  451. package/dist/chunk-U3W5OO7I.cjs.map +0 -1
  452. package/dist/chunk-UVM75OVG.cjs +0 -261
  453. package/dist/chunk-UVM75OVG.cjs.map +0 -1
  454. package/dist/filters-CEVr2pEJ.d.cts +0 -6368
  455. package/dist/filters-CEVr2pEJ.d.ts +0 -6368
  456. package/dist/index-CWAflRhP.d.ts +0 -2866
  457. package/dist/index-FBXIzHa9.d.cts +0 -2866
  458. package/dist/index.cjs +0 -417
  459. package/dist/index.cjs.map +0 -1
  460. package/dist/index.d.cts +0 -9
  461. package/dist/index.d.ts +0 -9
  462. package/dist/index.js +0 -28
  463. package/dist/index.js.map +0 -1
  464. package/dist/mexico/actividad-vulnerable/avi.cjs +0 -320
  465. package/dist/mexico/actividad-vulnerable/avi.cjs.map +0 -1
  466. package/dist/mexico/actividad-vulnerable/avi.d.cts +0 -680
  467. package/dist/mexico/actividad-vulnerable/avi.js +0 -55
  468. package/dist/mexico/actividad-vulnerable/avi.js.map +0 -1
  469. package/dist/mexico/actividad-vulnerable/jys.cjs +0 -330
  470. package/dist/mexico/actividad-vulnerable/jys.cjs.map +0 -1
  471. package/dist/mexico/actividad-vulnerable/jys.d.cts +0 -746
  472. package/dist/mexico/actividad-vulnerable/jys.js +0 -65
  473. package/dist/mexico/actividad-vulnerable/jys.js.map +0 -1
  474. package/dist/mexico/actividad-vulnerable/tsc.cjs +0 -318
  475. package/dist/mexico/actividad-vulnerable/tsc.cjs.map +0 -1
  476. package/dist/mexico/actividad-vulnerable/tsc.d.cts +0 -600
  477. package/dist/mexico/actividad-vulnerable/tsc.js +0 -53
  478. package/dist/mexico/actividad-vulnerable/tsc.js.map +0 -1
  479. package/dist/mexico/index.cjs +0 -384
  480. package/dist/mexico/index.cjs.map +0 -1
  481. package/dist/mexico/index.d.cts +0 -1422
  482. package/dist/mexico/index.d.ts +0 -1422
  483. package/dist/mexico/index.js +0 -7
  484. package/dist/mexico/index.js.map +0 -1
@@ -0,0 +1,325 @@
1
+ /**
2
+ * Mexico namespace
3
+ *
4
+ * All Mexico-specific functionality organized in one place:
5
+ * - Enums (ActividadEconomica, GiroMercantil, DocumentType)
6
+ * - Validators (RFC, CURP, CLABE)
7
+ * - Models (MexClient, MexTransaction, etc.)
8
+ * - Resources (MexClientsResource, etc.)
9
+ * - TypeGuards (isMexClient, etc.)
10
+ * - Types (MexJurisdictionData, etc.)
11
+ * - ActividadVulnerable (AVI, JYS, TSC subnamespaces)
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * import { Mexico } from "@artu/compliance-sdk";
16
+ *
17
+ * // General enums
18
+ * Mexico.Enums.ActividadEconomica.Comercio
19
+ * Mexico.Enums.DocumentType.INE
20
+ *
21
+ * // Validators
22
+ * Mexico.Validators.Rfc.validate("GOAP820528H00")
23
+ *
24
+ * // Models
25
+ * Mexico.Models.Client // MexClient
26
+ *
27
+ * // Actividad Vulnerable (nested)
28
+ * Mexico.ActividadVulnerable.Enums.CodigoActividad.AVI
29
+ * Mexico.ActividadVulnerable.AVI.Enums.TipoOperacion.Buy
30
+ * Mexico.ActividadVulnerable.AVI.Models.Client // MexAVIClient
31
+ * ```
32
+ */
33
+
34
+ import {
35
+ ActividadEconomica,
36
+ ActividadesEconomicas,
37
+ GiroMercantil,
38
+ GirosMercantiles,
39
+ MexDocumentType,
40
+ MexDocumentTypes,
41
+ AddressProofServiceType,
42
+ AddressProofServiceTypes,
43
+ MexEntityType,
44
+ MexEntityTypes,
45
+ PoderType,
46
+ PoderTypes,
47
+ Rfc,
48
+ Curp,
49
+ Clabe,
50
+ } from "@artu-ai/shared";
51
+
52
+ import type {
53
+ MexJurisdictionData,
54
+ MexPersonJurisdictionData,
55
+ MexCompanyJurisdictionData,
56
+ MexTrustJurisdictionData,
57
+ ActividadVulnerableClientData,
58
+ MexBankAccountData as MexBankAccountDataType,
59
+ MexDocument as MexDocumentSchema,
60
+ CreateMexDocumentInput,
61
+ UpdateMexDocumentInput,
62
+ // Document field types
63
+ IneFrontFields,
64
+ IneBackFields,
65
+ CurpDocumentFields,
66
+ RfcConstanciaFields,
67
+ AddressProofFields,
68
+ ActaConstitutivaFields,
69
+ PoderNotarialFields,
70
+ // Create input types per document type
71
+ CreateMexIneFrontInput,
72
+ CreateMexIneBackInput,
73
+ CreateMexPassportInput,
74
+ CreateMexCurpInput,
75
+ CreateMexRfcConstanciaInput,
76
+ CreateMexAddressProofInput,
77
+ CreateMexActaConstitutivaInput,
78
+ CreateMexPoderNotarialInput,
79
+ // Update input types per document type
80
+ UpdateMexIneFrontInput,
81
+ UpdateMexIneBackInput,
82
+ UpdateMexPassportInput,
83
+ UpdateMexCurpInput,
84
+ UpdateMexRfcConstanciaInput,
85
+ UpdateMexAddressProofInput,
86
+ UpdateMexActaConstitutivaInput,
87
+ UpdateMexPoderNotarialInput,
88
+ } from "@artu-ai/shared";
89
+
90
+ import {
91
+ MexClient,
92
+ MexTransaction,
93
+ MexBankAccount,
94
+ MexAddress,
95
+ MexReport,
96
+ MexReportItem,
97
+ // Document models
98
+ MexDocument,
99
+ MexIneFrontDocument,
100
+ MexIneBackDocument,
101
+ MexPassportDocument,
102
+ MexCurpDocument,
103
+ MexRfcConstanciaDocument,
104
+ MexAddressProofDocument,
105
+ MexActaConstitutivaDocument,
106
+ MexPoderNotarialDocument,
107
+ // Type guards
108
+ isMexClient,
109
+ isMexTransaction,
110
+ isMexBankAccount,
111
+ isMexAddress,
112
+ isMexReport,
113
+ isMexReportItem,
114
+ isMexDocument,
115
+ isMexIneFront,
116
+ isMexIneBack,
117
+ isMexPassport,
118
+ isMexCurp,
119
+ isMexRfcConstancia,
120
+ isMexAddressProof,
121
+ isMexActaConstitutiva,
122
+ isMexPoderNotarial,
123
+ } from "../../models";
124
+
125
+ import {
126
+ MexClientsResource,
127
+ MexTransactionsResource,
128
+ MexBankAccountsResource,
129
+ MexReportsResource,
130
+ } from "../../resources";
131
+
132
+ // Actividad Vulnerable namespace
133
+ import { ActividadVulnerable, AVI, JYS, TSC } from "./actividad-vulnerable";
134
+
135
+ // Re-export for convenience
136
+ export { ActividadVulnerable, AVI, JYS, TSC } from "./actividad-vulnerable";
137
+
138
+ // ===========================
139
+ // Enums
140
+ // ===========================
141
+
142
+ export const Enums = {
143
+ // Enum values
144
+ ActividadEconomica,
145
+ GiroMercantil,
146
+ DocumentType: MexDocumentType,
147
+ AddressProofServiceType,
148
+ EntityType: MexEntityType,
149
+ PoderType,
150
+ // Enum utilities (with .enum, .map, .codes, .options, .schema())
151
+ ActividadesEconomicas,
152
+ GirosMercantiles,
153
+ DocumentTypes: MexDocumentTypes,
154
+ AddressProofServiceTypes,
155
+ EntityTypes: MexEntityTypes,
156
+ PoderTypes,
157
+ } as const;
158
+
159
+ // ===========================
160
+ // Validators
161
+ // ===========================
162
+
163
+ export const Validators = {
164
+ Rfc,
165
+ Curp,
166
+ Clabe,
167
+ } as const;
168
+
169
+ // ===========================
170
+ // Models
171
+ // ===========================
172
+
173
+ export const Models = {
174
+ Client: MexClient,
175
+ Transaction: MexTransaction,
176
+ BankAccount: MexBankAccount,
177
+ Address: MexAddress,
178
+ Report: MexReport,
179
+ ReportItem: MexReportItem,
180
+ // Document models
181
+ Document: MexDocument,
182
+ IneFrontDocument: MexIneFrontDocument,
183
+ IneBackDocument: MexIneBackDocument,
184
+ PassportDocument: MexPassportDocument,
185
+ CurpDocument: MexCurpDocument,
186
+ RfcConstanciaDocument: MexRfcConstanciaDocument,
187
+ AddressProofDocument: MexAddressProofDocument,
188
+ ActaConstitutivaDocument: MexActaConstitutivaDocument,
189
+ PoderNotarialDocument: MexPoderNotarialDocument,
190
+ } as const;
191
+
192
+ // ===========================
193
+ // Resources
194
+ // ===========================
195
+
196
+ export const Resources = {
197
+ Clients: MexClientsResource,
198
+ Transactions: MexTransactionsResource,
199
+ BankAccounts: MexBankAccountsResource,
200
+ Reports: MexReportsResource,
201
+ } as const;
202
+
203
+ // ===========================
204
+ // TypeGuards
205
+ // ===========================
206
+
207
+ export const TypeGuards = {
208
+ isClient: isMexClient,
209
+ isTransaction: isMexTransaction,
210
+ isBankAccount: isMexBankAccount,
211
+ isAddress: isMexAddress,
212
+ isReport: isMexReport,
213
+ isReportItem: isMexReportItem,
214
+ // Document guards
215
+ isDocument: isMexDocument,
216
+ isIneFront: isMexIneFront,
217
+ isIneBack: isMexIneBack,
218
+ isPassport: isMexPassport,
219
+ isCurp: isMexCurp,
220
+ isRfcConstancia: isMexRfcConstancia,
221
+ isAddressProof: isMexAddressProof,
222
+ isActaConstitutiva: isMexActaConstitutiva,
223
+ isPoderNotarial: isMexPoderNotarial,
224
+ } as const;
225
+
226
+ // ===========================
227
+ // Types
228
+ // ===========================
229
+
230
+ export interface Types {
231
+ JurisdictionData: MexJurisdictionData;
232
+ PersonJurisdictionData: MexPersonJurisdictionData;
233
+ CompanyJurisdictionData: MexCompanyJurisdictionData;
234
+ TrustJurisdictionData: MexTrustJurisdictionData;
235
+ ActividadVulnerableClientData: ActividadVulnerableClientData;
236
+ BankAccountData: MexBankAccountDataType;
237
+ Document: MexDocumentSchema;
238
+ CreateDocumentInput: CreateMexDocumentInput;
239
+ UpdateDocumentInput: UpdateMexDocumentInput;
240
+ // Document field types
241
+ IneFrontFields: IneFrontFields;
242
+ IneBackFields: IneBackFields;
243
+ CurpDocumentFields: CurpDocumentFields;
244
+ RfcConstanciaFields: RfcConstanciaFields;
245
+ AddressProofFields: AddressProofFields;
246
+ ActaConstitutivaFields: ActaConstitutivaFields;
247
+ PoderNotarialFields: PoderNotarialFields;
248
+ }
249
+
250
+ // Re-export types for direct usage
251
+ export type {
252
+ MexJurisdictionData,
253
+ MexPersonJurisdictionData,
254
+ MexCompanyJurisdictionData,
255
+ MexTrustJurisdictionData,
256
+ ActividadVulnerableClientData,
257
+ MexBankAccountDataType as MexBankAccountData,
258
+ MexDocumentSchema as MexDocument,
259
+ CreateMexDocumentInput,
260
+ UpdateMexDocumentInput,
261
+ // Document field types
262
+ IneFrontFields,
263
+ IneBackFields,
264
+ CurpDocumentFields,
265
+ RfcConstanciaFields,
266
+ AddressProofFields,
267
+ ActaConstitutivaFields,
268
+ PoderNotarialFields,
269
+ // Create input types per document type
270
+ CreateMexIneFrontInput,
271
+ CreateMexIneBackInput,
272
+ CreateMexPassportInput,
273
+ CreateMexCurpInput,
274
+ CreateMexRfcConstanciaInput,
275
+ CreateMexAddressProofInput,
276
+ CreateMexActaConstitutivaInput,
277
+ CreateMexPoderNotarialInput,
278
+ // Update input types per document type
279
+ UpdateMexIneFrontInput,
280
+ UpdateMexIneBackInput,
281
+ UpdateMexPassportInput,
282
+ UpdateMexCurpInput,
283
+ UpdateMexRfcConstanciaInput,
284
+ UpdateMexAddressProofInput,
285
+ UpdateMexActaConstitutivaInput,
286
+ UpdateMexPoderNotarialInput,
287
+ };
288
+
289
+ // ===========================
290
+ // SDK Types
291
+ // ===========================
292
+
293
+ export type {
294
+ ComplianceSDKOptionsMexico,
295
+ MexicoSDKOptions,
296
+ MexicoComplianceSDK,
297
+ AVISDKOptions,
298
+ AVIComplianceSDK,
299
+ JYSSDKOptions,
300
+ JYSComplianceSDK,
301
+ TSCSDKOptions,
302
+ TSCComplianceSDK,
303
+ } from "../../sdk/mex";
304
+
305
+ // ===========================
306
+ // Main Mexico Namespace
307
+ // ===========================
308
+
309
+ /**
310
+ * Mexico namespace - all Mexico-specific SDK functionality
311
+ */
312
+ export const Mexico = {
313
+ Enums,
314
+ Validators,
315
+ Models,
316
+ Resources,
317
+ TypeGuards,
318
+ ActividadVulnerable,
319
+ // Shortcuts to activity namespaces
320
+ AVI,
321
+ JYS,
322
+ TSC,
323
+ } as const;
324
+
325
+ export default Mexico;
@@ -0,0 +1,387 @@
1
+ /**
2
+ * Addresses Resource
3
+ *
4
+ * Manages physical and mailing addresses for clients.
5
+ */
6
+
7
+ import { z } from "zod";
8
+ import type {
9
+ CreateAddressInput,
10
+ UpdateAddressInput,
11
+ AddressFilter,
12
+ AddressType,
13
+ ListOptions,
14
+ PaginatedResponse,
15
+ AtomicBatchResult,
16
+ PartialBatchResult,
17
+ SyncItem,
18
+ SyncResult,
19
+ } from "@artu-ai/shared";
20
+ import {
21
+ createAddressInputSchema,
22
+ updateAddressInputSchema,
23
+ replaceSyncItemSchema,
24
+ } from "@artu-ai/shared";
25
+ import { BaseResource } from "./base";
26
+ import { Address, type AddressData } from "../models/Address";
27
+ import type { BatchOptions } from "./clients";
28
+
29
+ // ===========================
30
+ // AddressesResource
31
+ // ===========================
32
+
33
+ /**
34
+ * Resource for managing client addresses.
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * // Create an address for a client
39
+ * const address = await sdk.addresses.create({
40
+ * clientId: "client_123",
41
+ * type: "home",
42
+ * street1: "Avenida Reforma 123",
43
+ * city: "Ciudad de México",
44
+ * state: "CDMX",
45
+ * postalCode: "06600",
46
+ * country: "MX",
47
+ * isPrimary: true,
48
+ * });
49
+ *
50
+ * // List all addresses for a client
51
+ * const addresses = await sdk.addresses.listByClient("client_123");
52
+ * ```
53
+ */
54
+ export class AddressesResource extends BaseResource<
55
+ Address,
56
+ CreateAddressInput,
57
+ UpdateAddressInput,
58
+ AddressFilter
59
+ > {
60
+ // ─────────────────────────────────────────────────────────────────
61
+ // CRUD Operations
62
+ // ─────────────────────────────────────────────────────────────────
63
+
64
+ /**
65
+ * Creates an address for a client
66
+ *
67
+ * @param data - Address data including clientId
68
+ * @returns The created Address
69
+ */
70
+ async create(data: CreateAddressInput): Promise<Address> {
71
+ const validated = this.validate(createAddressInputSchema, data);
72
+
73
+ const response = await this.execute(() =>
74
+ this.trpc.addresses.create.mutate(validated)
75
+ );
76
+ return this.instantiate(response);
77
+ }
78
+
79
+ /**
80
+ * Retrieves an address by ID
81
+ *
82
+ * @param id - The address ID
83
+ * @returns The Address
84
+ */
85
+ async retrieve(id: string): Promise<Address> {
86
+ const response = await this.execute(() =>
87
+ this.trpc.addresses.retrieve.query({ id })
88
+ );
89
+ return this.instantiate(response);
90
+ }
91
+
92
+ /**
93
+ * Retrieves an address by metadata key/value.
94
+ */
95
+ async retrieveByMetadata(key: string, value: string): Promise<Address> {
96
+ const response = await this.execute(() =>
97
+ this.trpc.addresses.retrieveByMetadata.query({ key, value })
98
+ );
99
+ return this.instantiate(response);
100
+ }
101
+
102
+ /**
103
+ * Retrieves an address by externalId
104
+ */
105
+ async retrieveByExternalId(externalId: string): Promise<Address> {
106
+ const response = await this.execute(() =>
107
+ this.trpc.addresses.retrieveByExternalId.query({ externalId })
108
+ );
109
+ return this.instantiate(response);
110
+ }
111
+
112
+ /**
113
+ * Updates an address
114
+ *
115
+ * @param id - The address ID
116
+ * @param data - Fields to update
117
+ * @returns The updated Address
118
+ */
119
+ async update(id: string, data: UpdateAddressInput): Promise<Address> {
120
+ const validated = this.validate(updateAddressInputSchema, data);
121
+
122
+ const response = await this.execute(() =>
123
+ this.trpc.addresses.update.mutate({ id, data: validated })
124
+ );
125
+ return this.instantiate(response);
126
+ }
127
+
128
+ /**
129
+ * Deletes an address
130
+ *
131
+ * @param id - The address ID
132
+ */
133
+ async delete(id: string): Promise<void> {
134
+ await this.execute(() => this.trpc.addresses.delete.mutate({ id }));
135
+ }
136
+
137
+ // ─────────────────────────────────────────────────────────────────
138
+ // List Operations
139
+ // ─────────────────────────────────────────────────────────────────
140
+
141
+ /**
142
+ * Lists addresses with optional filtering
143
+ *
144
+ * @param options - Filtering and pagination options
145
+ * @returns Paginated list of Addresses
146
+ */
147
+ async list(
148
+ options?: ListOptions<AddressFilter>
149
+ ): Promise<PaginatedResponse<Address>> {
150
+ const response = await this.execute(() =>
151
+ this.trpc.addresses.list.query(options)
152
+ );
153
+ return {
154
+ data: response.data.map((a) => this.instantiate(a)),
155
+ pagination: response.pagination,
156
+ };
157
+ }
158
+
159
+ /**
160
+ * Lists all addresses for a specific client
161
+ *
162
+ * @param clientId - The client ID
163
+ * @param options - Optional pagination options
164
+ * @returns Paginated list of Addresses
165
+ */
166
+ async listByClient(
167
+ clientId: string,
168
+ options?: { cursor?: string; limit?: number }
169
+ ): Promise<PaginatedResponse<Address>> {
170
+ const response = await this.execute(() =>
171
+ this.trpc.addresses.listByClient.query({ clientId, ...options })
172
+ );
173
+ return {
174
+ data: response.data.map((a) => this.instantiate(a)),
175
+ pagination: response.pagination,
176
+ };
177
+ }
178
+
179
+ /**
180
+ * Returns an async iterator over all addresses matching the filter.
181
+ */
182
+ iterate(filter?: AddressFilter): AsyncGenerator<Address, void, undefined> {
183
+ return this.createIterator({ filter });
184
+ }
185
+
186
+ // ─────────────────────────────────────────────────────────────────
187
+ // Batch Operations
188
+ // ─────────────────────────────────────────────────────────────────
189
+
190
+ /**
191
+ * Creates multiple addresses in a single request.
192
+ *
193
+ * @param addresses - Array of address creation data (each includes clientId)
194
+ * @param options - Batch options (atomic: true by default)
195
+ * @returns Atomic result with data array, or partial result with succeeded/failed
196
+ */
197
+ async createMany(
198
+ addresses: CreateAddressInput[],
199
+ options?: { atomic?: true }
200
+ ): Promise<AtomicBatchResult<Address>>;
201
+ async createMany(
202
+ addresses: CreateAddressInput[],
203
+ options: { atomic: false }
204
+ ): Promise<PartialBatchResult<Address>>;
205
+ async createMany(
206
+ addresses: CreateAddressInput[],
207
+ options: BatchOptions = {}
208
+ ): Promise<AtomicBatchResult<Address> | PartialBatchResult<Address>> {
209
+ const atomic = options.atomic ?? true;
210
+ const validated = this.validate(
211
+ z.array(createAddressInputSchema),
212
+ addresses
213
+ );
214
+
215
+ const response = await this.execute(() =>
216
+ this.trpc.addresses.createMany.mutate({ items: validated, atomic })
217
+ );
218
+
219
+ if (response.atomic) {
220
+ return {
221
+ atomic: true,
222
+ data: response.data.map((a) => this.instantiate(a)),
223
+ };
224
+ } else {
225
+ return {
226
+ atomic: false,
227
+ succeeded: response.succeeded.map((item) => ({
228
+ index: item.index,
229
+ data: this.instantiate(item.data),
230
+ })),
231
+ failed: response.failed,
232
+ };
233
+ }
234
+ }
235
+
236
+ /**
237
+ * Updates multiple addresses in a single request.
238
+ *
239
+ * @param updates - Array of { id, data } updates
240
+ * @param options - Batch options (atomic: true by default)
241
+ * @returns Atomic result with data array, or partial result with succeeded/failed
242
+ */
243
+ async updateMany(
244
+ updates: { id: string; data: UpdateAddressInput }[],
245
+ options?: { atomic?: true }
246
+ ): Promise<AtomicBatchResult<Address>>;
247
+ async updateMany(
248
+ updates: { id: string; data: UpdateAddressInput }[],
249
+ options: { atomic: false }
250
+ ): Promise<PartialBatchResult<Address>>;
251
+ async updateMany(
252
+ updates: { id: string; data: UpdateAddressInput }[],
253
+ options: BatchOptions = {}
254
+ ): Promise<AtomicBatchResult<Address> | PartialBatchResult<Address>> {
255
+ const atomic = options.atomic ?? true;
256
+ const updateItemSchema = z.object({
257
+ id: z.uuid(),
258
+ data: updateAddressInputSchema,
259
+ });
260
+
261
+ const validated = this.validate(z.array(updateItemSchema), updates);
262
+
263
+ const response = await this.execute(() =>
264
+ this.trpc.addresses.updateMany.mutate({ items: validated, atomic })
265
+ );
266
+
267
+ if (response.atomic) {
268
+ return {
269
+ atomic: true,
270
+ data: response.data.map((a) => this.instantiate(a)),
271
+ };
272
+ } else {
273
+ return {
274
+ atomic: false,
275
+ succeeded: response.succeeded.map((item) => ({
276
+ index: item.index,
277
+ data: this.instantiate(item.data),
278
+ })),
279
+ failed: response.failed,
280
+ };
281
+ }
282
+ }
283
+
284
+ // ─────────────────────────────────────────────────────────────────
285
+ // Sync Operations
286
+ // ─────────────────────────────────────────────────────────────────
287
+
288
+ /**
289
+ * Syncs addresses for a client - handles create, update, and delete in bulk.
290
+ *
291
+ * This is the most efficient way to reconcile a set of addresses for a client.
292
+ *
293
+ * @param clientId - The client ID
294
+ * @param items - Array of sync items:
295
+ * - Without `id`: create new address
296
+ * - With `id` and `_delete: true`: delete existing address
297
+ * - With `id` (no `_delete`): update existing address
298
+ * @param options - Sync options
299
+ * @param options.replaceMode - When true, items not in the array are deleted (default: false)
300
+ * @returns Sync result with created, updated, and deleted arrays
301
+ *
302
+ * @example
303
+ * ```typescript
304
+ * // Patch mode (default) - only mentioned items are affected
305
+ * const result = await sdk.addresses.sync("client_123", [
306
+ * // Create new address (no id)
307
+ * { street: "123 New St", city: "Mexico City", country: "MX" },
308
+ * // Update existing address (has id)
309
+ * { id: "addr_456", street: "456 Updated Ave" },
310
+ * // Delete address (has id and _delete: true)
311
+ * { id: "addr_789", _delete: true },
312
+ * ]);
313
+ *
314
+ * // Replace mode - provided array becomes the complete set
315
+ * const result = await sdk.addresses.sync("client_123", addresses, { replaceMode: true });
316
+ *
317
+ * console.log(result.created); // newly created addresses
318
+ * console.log(result.updated); // updated addresses
319
+ * console.log(result.deleted); // array of deleted address IDs
320
+ * ```
321
+ */
322
+ async sync(
323
+ clientId: string,
324
+ items: SyncItem<CreateAddressInput>[],
325
+ options?: { replaceMode: true }
326
+ ): Promise<SyncResult<Address>>;
327
+ async sync(
328
+ clientId: string,
329
+ items: SyncItem<UpdateAddressInput>[],
330
+ options?: { replaceMode?: boolean }
331
+ ): Promise<SyncResult<Address>>;
332
+ async sync(
333
+ clientId: string,
334
+ items: SyncItem<UpdateAddressInput | CreateAddressInput>[],
335
+ options?: { replaceMode?: boolean }
336
+ ): Promise<SyncResult<Address>> {
337
+ const validated = this.validate(
338
+ z.array(
339
+ replaceSyncItemSchema(createAddressInputSchema, updateAddressInputSchema)
340
+ ),
341
+ items
342
+ );
343
+
344
+ const response = await this.execute(() =>
345
+ this.trpc.addresses.sync.mutate({
346
+ clientId,
347
+ items: validated,
348
+ replaceMode: options?.replaceMode,
349
+ })
350
+ );
351
+
352
+ return {
353
+ created: response.created.map((a) => this.instantiate(a)),
354
+ updated: response.updated.map((a) => this.instantiate(a)),
355
+ deleted: response.deleted,
356
+ };
357
+ }
358
+
359
+ // ─────────────────────────────────────────────────────────────────
360
+ // Helper Methods
361
+ // ─────────────────────────────────────────────────────────────────
362
+
363
+ /**
364
+ * Gets the primary address for a client
365
+ *
366
+ * @param clientId - The client ID
367
+ * @param type - Optional address type filter
368
+ * @returns The primary Address or null
369
+ */
370
+ async getPrimary(
371
+ clientId: string,
372
+ type?: AddressType
373
+ ): Promise<Address | null> {
374
+ const response = await this.execute(() =>
375
+ this.trpc.addresses.getPrimary.query({ clientId, type })
376
+ );
377
+ return response ? this.instantiate(response) : null;
378
+ }
379
+
380
+ // ─────────────────────────────────────────────────────────────────
381
+ // Instantiation
382
+ // ─────────────────────────────────────────────────────────────────
383
+
384
+ protected instantiate(data: AddressData): Address {
385
+ return new Address(data);
386
+ }
387
+ }