@artu-ai/compliance-sdk 0.12.4 → 0.13.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 (292) hide show
  1. package/README.md +0 -3
  2. package/dist/exports/index.d.ts +5 -3
  3. package/dist/exports/index.d.ts.map +1 -1
  4. package/dist/exports/index.js +3 -5
  5. package/dist/exports/mx/av/ari.d.ts +11 -6
  6. package/dist/exports/mx/av/ari.d.ts.map +1 -1
  7. package/dist/exports/mx/av/ari.js +9 -5
  8. package/dist/exports/mx/av/avi.d.ts +11 -6
  9. package/dist/exports/mx/av/avi.d.ts.map +1 -1
  10. package/dist/exports/mx/av/avi.js +9 -5
  11. package/dist/exports/mx/av/jys.d.ts +11 -6
  12. package/dist/exports/mx/av/jys.d.ts.map +1 -1
  13. package/dist/exports/mx/av/jys.js +9 -5
  14. package/dist/exports/mx/av/mjr.d.ts +11 -6
  15. package/dist/exports/mx/av/mjr.d.ts.map +1 -1
  16. package/dist/exports/mx/av/mjr.js +9 -5
  17. package/dist/exports/mx/av/tsc.d.ts +11 -6
  18. package/dist/exports/mx/av/tsc.d.ts.map +1 -1
  19. package/dist/exports/mx/av/tsc.js +9 -5
  20. package/dist/exports/mx/cnbv/transmisor.d.ts +11 -6
  21. package/dist/exports/mx/cnbv/transmisor.d.ts.map +1 -1
  22. package/dist/exports/mx/cnbv/transmisor.js +9 -5
  23. package/dist/exports/mx/index.d.ts +5 -4
  24. package/dist/exports/mx/index.d.ts.map +1 -1
  25. package/dist/exports/mx/index.js +3 -5
  26. package/dist/models/Alert.d.ts +5 -1
  27. package/dist/models/Alert.d.ts.map +1 -1
  28. package/dist/models/Alert.js +6 -0
  29. package/dist/models/Client.d.ts +60 -1
  30. package/dist/models/Client.d.ts.map +1 -1
  31. package/dist/models/Client.js +109 -0
  32. package/dist/models/Product.d.ts +86 -0
  33. package/dist/models/Product.d.ts.map +1 -0
  34. package/dist/models/Product.js +128 -0
  35. package/dist/models/Rule.d.ts +5 -1
  36. package/dist/models/Rule.d.ts.map +1 -1
  37. package/dist/models/Rule.js +6 -0
  38. package/dist/models/RuleEvaluation.d.ts +1 -0
  39. package/dist/models/RuleEvaluation.d.ts.map +1 -1
  40. package/dist/models/RuleEvaluation.js +3 -0
  41. package/dist/models/Transaction.d.ts +70 -1
  42. package/dist/models/Transaction.d.ts.map +1 -1
  43. package/dist/models/Transaction.js +124 -0
  44. package/dist/models/index.d.ts +4 -3
  45. package/dist/models/index.d.ts.map +1 -1
  46. package/dist/models/index.js +14 -6
  47. package/dist/models/mx/MexProduct.d.ts +57 -0
  48. package/dist/models/mx/MexProduct.d.ts.map +1 -0
  49. package/dist/models/mx/MexProduct.js +83 -0
  50. package/dist/models/mx/av/MexActividadVulnerableProduct.d.ts +34 -0
  51. package/dist/models/mx/av/MexActividadVulnerableProduct.d.ts.map +1 -0
  52. package/dist/models/mx/av/MexActividadVulnerableProduct.js +46 -0
  53. package/dist/models/mx/av/ari/MexARIProduct.d.ts +59 -0
  54. package/dist/models/mx/av/ari/MexARIProduct.d.ts.map +1 -0
  55. package/dist/models/mx/av/ari/MexARIProduct.js +88 -0
  56. package/dist/models/mx/av/avi/MexAVIProduct.d.ts +45 -0
  57. package/dist/models/mx/av/avi/MexAVIProduct.d.ts.map +1 -0
  58. package/dist/models/mx/av/avi/MexAVIProduct.js +75 -0
  59. package/dist/models/mx/av/index.d.ts +6 -0
  60. package/dist/models/mx/av/index.d.ts.map +1 -1
  61. package/dist/models/mx/av/index.js +9 -0
  62. package/dist/models/mx/av/jys/MexJYSProduct.d.ts +96 -0
  63. package/dist/models/mx/av/jys/MexJYSProduct.d.ts.map +1 -0
  64. package/dist/models/mx/av/jys/MexJYSProduct.js +174 -0
  65. package/dist/models/mx/av/mjr/MexMJRProduct.d.ts +70 -0
  66. package/dist/models/mx/av/mjr/MexMJRProduct.d.ts.map +1 -0
  67. package/dist/models/mx/av/mjr/MexMJRProduct.js +114 -0
  68. package/dist/models/mx/av/tsc/MexTSCProduct.d.ts +49 -0
  69. package/dist/models/mx/av/tsc/MexTSCProduct.d.ts.map +1 -0
  70. package/dist/models/mx/av/tsc/MexTSCProduct.js +77 -0
  71. package/dist/models/mx/cnbv/MexCNBVProduct.d.ts +34 -0
  72. package/dist/models/mx/cnbv/MexCNBVProduct.d.ts.map +1 -0
  73. package/dist/models/mx/cnbv/MexCNBVProduct.js +46 -0
  74. package/dist/models/mx/cnbv/index.d.ts +1 -0
  75. package/dist/models/mx/cnbv/index.d.ts.map +1 -1
  76. package/dist/models/mx/cnbv/index.js +2 -0
  77. package/dist/models/mx/cnbv/transmisor/MexTransmisorProduct.d.ts +50 -0
  78. package/dist/models/mx/cnbv/transmisor/MexTransmisorProduct.d.ts.map +1 -0
  79. package/dist/models/mx/cnbv/transmisor/MexTransmisorProduct.js +70 -0
  80. package/dist/models/mx/cnbv/transmisor/index.d.ts +1 -0
  81. package/dist/models/mx/cnbv/transmisor/index.d.ts.map +1 -1
  82. package/dist/models/mx/cnbv/transmisor/index.js +1 -0
  83. package/dist/models/mx/index.d.ts +1 -0
  84. package/dist/models/mx/index.d.ts.map +1 -1
  85. package/dist/models/mx/index.js +2 -0
  86. package/dist/resources/alerts.d.ts +22 -1
  87. package/dist/resources/alerts.d.ts.map +1 -1
  88. package/dist/resources/alerts.js +46 -2
  89. package/dist/resources/api-keys.d.ts +23 -0
  90. package/dist/resources/api-keys.d.ts.map +1 -0
  91. package/dist/resources/api-keys.js +47 -0
  92. package/dist/resources/clients.d.ts +24 -1
  93. package/dist/resources/clients.d.ts.map +1 -1
  94. package/dist/resources/clients.js +36 -0
  95. package/dist/resources/index.d.ts +10 -1
  96. package/dist/resources/index.d.ts.map +1 -1
  97. package/dist/resources/index.js +13 -1
  98. package/dist/resources/merge-tenant-defaults/index.d.ts +6 -0
  99. package/dist/resources/merge-tenant-defaults/index.d.ts.map +1 -0
  100. package/dist/resources/merge-tenant-defaults/index.js +5 -0
  101. package/dist/resources/merge-tenant-defaults/mx/av/merge.d.ts +27 -0
  102. package/dist/resources/merge-tenant-defaults/mx/av/merge.d.ts.map +1 -0
  103. package/dist/resources/merge-tenant-defaults/mx/av/merge.js +64 -0
  104. package/dist/resources/merge-tenant-defaults/mx/cnbv/merge.d.ts +20 -0
  105. package/dist/resources/merge-tenant-defaults/mx/cnbv/merge.d.ts.map +1 -0
  106. package/dist/resources/merge-tenant-defaults/mx/cnbv/merge.js +38 -0
  107. package/dist/resources/merge-tenant-defaults/utils.d.ts +8 -0
  108. package/dist/resources/merge-tenant-defaults/utils.d.ts.map +1 -0
  109. package/dist/resources/merge-tenant-defaults/utils.js +36 -0
  110. package/dist/resources/mx/av/ari/index.d.ts +1 -0
  111. package/dist/resources/mx/av/ari/index.d.ts.map +1 -1
  112. package/dist/resources/mx/av/ari/index.js +1 -0
  113. package/dist/resources/mx/av/ari/products.d.ts +54 -0
  114. package/dist/resources/mx/av/ari/products.d.ts.map +1 -0
  115. package/dist/resources/mx/av/ari/products.js +165 -0
  116. package/dist/resources/mx/av/ari/tenant.d.ts +30 -0
  117. package/dist/resources/mx/av/ari/tenant.d.ts.map +1 -0
  118. package/dist/resources/mx/av/ari/tenant.js +36 -0
  119. package/dist/resources/mx/av/ari/transactions.d.ts +1 -0
  120. package/dist/resources/mx/av/ari/transactions.d.ts.map +1 -1
  121. package/dist/resources/mx/av/ari/transactions.js +17 -6
  122. package/dist/resources/mx/av/avi/index.d.ts +1 -0
  123. package/dist/resources/mx/av/avi/index.d.ts.map +1 -1
  124. package/dist/resources/mx/av/avi/index.js +1 -0
  125. package/dist/resources/mx/av/avi/products.d.ts +28 -0
  126. package/dist/resources/mx/av/avi/products.d.ts.map +1 -0
  127. package/dist/resources/mx/av/avi/products.js +119 -0
  128. package/dist/resources/mx/av/avi/tenant.d.ts +33 -0
  129. package/dist/resources/mx/av/avi/tenant.d.ts.map +1 -0
  130. package/dist/resources/mx/av/avi/tenant.js +39 -0
  131. package/dist/resources/mx/av/avi/transactions.d.ts +1 -0
  132. package/dist/resources/mx/av/avi/transactions.d.ts.map +1 -1
  133. package/dist/resources/mx/av/avi/transactions.js +17 -6
  134. package/dist/resources/mx/av/jys/index.d.ts +1 -0
  135. package/dist/resources/mx/av/jys/index.d.ts.map +1 -1
  136. package/dist/resources/mx/av/jys/index.js +1 -0
  137. package/dist/resources/mx/av/jys/products.d.ts +28 -0
  138. package/dist/resources/mx/av/jys/products.d.ts.map +1 -0
  139. package/dist/resources/mx/av/jys/products.js +119 -0
  140. package/dist/resources/mx/av/jys/tenant.d.ts +30 -0
  141. package/dist/resources/mx/av/jys/tenant.d.ts.map +1 -0
  142. package/dist/resources/mx/av/jys/tenant.js +36 -0
  143. package/dist/resources/mx/av/jys/transactions.d.ts +1 -0
  144. package/dist/resources/mx/av/jys/transactions.d.ts.map +1 -1
  145. package/dist/resources/mx/av/jys/transactions.js +17 -6
  146. package/dist/resources/mx/av/mjr/index.d.ts +1 -0
  147. package/dist/resources/mx/av/mjr/index.d.ts.map +1 -1
  148. package/dist/resources/mx/av/mjr/index.js +1 -0
  149. package/dist/resources/mx/av/mjr/products.d.ts +28 -0
  150. package/dist/resources/mx/av/mjr/products.d.ts.map +1 -0
  151. package/dist/resources/mx/av/mjr/products.js +138 -0
  152. package/dist/resources/mx/av/mjr/tenant.d.ts +30 -0
  153. package/dist/resources/mx/av/mjr/tenant.d.ts.map +1 -0
  154. package/dist/resources/mx/av/mjr/tenant.js +36 -0
  155. package/dist/resources/mx/av/mjr/transactions.d.ts +1 -0
  156. package/dist/resources/mx/av/mjr/transactions.d.ts.map +1 -1
  157. package/dist/resources/mx/av/mjr/transactions.js +17 -6
  158. package/dist/resources/mx/av/tsc/index.d.ts +1 -0
  159. package/dist/resources/mx/av/tsc/index.d.ts.map +1 -1
  160. package/dist/resources/mx/av/tsc/index.js +1 -0
  161. package/dist/resources/mx/av/tsc/products.d.ts +28 -0
  162. package/dist/resources/mx/av/tsc/products.d.ts.map +1 -0
  163. package/dist/resources/mx/av/tsc/products.js +130 -0
  164. package/dist/resources/mx/av/tsc/tenant.d.ts +30 -0
  165. package/dist/resources/mx/av/tsc/tenant.d.ts.map +1 -0
  166. package/dist/resources/mx/av/tsc/tenant.js +36 -0
  167. package/dist/resources/mx/av/tsc/transactions.d.ts +1 -0
  168. package/dist/resources/mx/av/tsc/transactions.d.ts.map +1 -1
  169. package/dist/resources/mx/av/tsc/transactions.js +17 -6
  170. package/dist/resources/mx/cnbv/transmisor/index.d.ts +1 -0
  171. package/dist/resources/mx/cnbv/transmisor/index.d.ts.map +1 -1
  172. package/dist/resources/mx/cnbv/transmisor/index.js +1 -0
  173. package/dist/resources/mx/cnbv/transmisor/products.d.ts +28 -0
  174. package/dist/resources/mx/cnbv/transmisor/products.d.ts.map +1 -0
  175. package/dist/resources/mx/cnbv/transmisor/products.js +138 -0
  176. package/dist/resources/mx/cnbv/transmisor/tenant.d.ts +32 -0
  177. package/dist/resources/mx/cnbv/transmisor/tenant.d.ts.map +1 -0
  178. package/dist/resources/mx/cnbv/transmisor/tenant.js +36 -0
  179. package/dist/resources/mx/cnbv/transmisor/transactions.d.ts +1 -0
  180. package/dist/resources/mx/cnbv/transmisor/transactions.d.ts.map +1 -1
  181. package/dist/resources/mx/cnbv/transmisor/transactions.js +15 -5
  182. package/dist/resources/mx/index.d.ts +3 -1
  183. package/dist/resources/mx/index.d.ts.map +1 -1
  184. package/dist/resources/mx/index.js +2 -1
  185. package/dist/resources/mx/products.d.ts +86 -0
  186. package/dist/resources/mx/products.d.ts.map +1 -0
  187. package/dist/resources/mx/products.js +170 -0
  188. package/dist/resources/mx/tenant.d.ts +69 -0
  189. package/dist/resources/mx/tenant.d.ts.map +1 -0
  190. package/dist/resources/mx/tenant.js +48 -0
  191. package/dist/resources/mx/transactions.d.ts +1 -0
  192. package/dist/resources/mx/transactions.d.ts.map +1 -1
  193. package/dist/resources/mx/transactions.js +17 -6
  194. package/dist/resources/products.d.ts +137 -0
  195. package/dist/resources/products.d.ts.map +1 -0
  196. package/dist/resources/products.js +200 -0
  197. package/dist/resources/reference-data/index.d.ts +0 -3
  198. package/dist/resources/reference-data/index.d.ts.map +1 -1
  199. package/dist/resources/reference-data/index.js +0 -3
  200. package/dist/resources/reference-data/reference-data.d.ts +26 -20
  201. package/dist/resources/reference-data/reference-data.d.ts.map +1 -1
  202. package/dist/resources/reference-data/reference-data.js +58 -23
  203. package/dist/resources/roles.d.ts +20 -0
  204. package/dist/resources/roles.d.ts.map +1 -0
  205. package/dist/resources/roles.js +50 -0
  206. package/dist/resources/rule-templates.d.ts +0 -5
  207. package/dist/resources/rule-templates.d.ts.map +1 -1
  208. package/dist/resources/rule-templates.js +0 -8
  209. package/dist/resources/rules.d.ts +17 -1
  210. package/dist/resources/rules.d.ts.map +1 -1
  211. package/dist/resources/rules.js +27 -0
  212. package/dist/resources/tags.d.ts +22 -0
  213. package/dist/resources/tags.d.ts.map +1 -0
  214. package/dist/resources/tags.js +63 -0
  215. package/dist/resources/tenant.d.ts +52 -0
  216. package/dist/resources/tenant.d.ts.map +1 -0
  217. package/dist/resources/tenant.js +85 -0
  218. package/dist/resources/transactions.d.ts +56 -1
  219. package/dist/resources/transactions.d.ts.map +1 -1
  220. package/dist/resources/transactions.js +203 -6
  221. package/dist/resources/users.d.ts +61 -0
  222. package/dist/resources/users.d.ts.map +1 -0
  223. package/dist/resources/users.js +71 -0
  224. package/dist/sdk/ComplianceSDK.d.ts +46 -1
  225. package/dist/sdk/ComplianceSDK.d.ts.map +1 -1
  226. package/dist/sdk/ComplianceSDK.js +52 -1
  227. package/dist/sdk/base.d.ts.map +1 -1
  228. package/dist/sdk/base.js +2 -1
  229. package/dist/sdk/mx/ComplianceSDK.d.ts +5 -22
  230. package/dist/sdk/mx/ComplianceSDK.d.ts.map +1 -1
  231. package/dist/sdk/mx/ComplianceSDK.js +5 -33
  232. package/dist/sdk/mx/av/ari/ComplianceSDK.d.ts +5 -26
  233. package/dist/sdk/mx/av/ari/ComplianceSDK.d.ts.map +1 -1
  234. package/dist/sdk/mx/av/ari/ComplianceSDK.js +4 -27
  235. package/dist/sdk/mx/av/ari/types.d.ts +4 -5
  236. package/dist/sdk/mx/av/ari/types.d.ts.map +1 -1
  237. package/dist/sdk/mx/av/ari/types.js +2 -1
  238. package/dist/sdk/mx/av/avi/ComplianceSDK.d.ts +5 -1
  239. package/dist/sdk/mx/av/avi/ComplianceSDK.d.ts.map +1 -1
  240. package/dist/sdk/mx/av/avi/ComplianceSDK.js +4 -1
  241. package/dist/sdk/mx/av/avi/types.d.ts +4 -5
  242. package/dist/sdk/mx/av/avi/types.d.ts.map +1 -1
  243. package/dist/sdk/mx/av/avi/types.js +2 -1
  244. package/dist/sdk/mx/av/jys/ComplianceSDK.d.ts +5 -7
  245. package/dist/sdk/mx/av/jys/ComplianceSDK.d.ts.map +1 -1
  246. package/dist/sdk/mx/av/jys/ComplianceSDK.js +4 -8
  247. package/dist/sdk/mx/av/jys/types.d.ts +4 -5
  248. package/dist/sdk/mx/av/jys/types.d.ts.map +1 -1
  249. package/dist/sdk/mx/av/jys/types.js +2 -1
  250. package/dist/sdk/mx/av/mjr/ComplianceSDK.d.ts +5 -19
  251. package/dist/sdk/mx/av/mjr/ComplianceSDK.d.ts.map +1 -1
  252. package/dist/sdk/mx/av/mjr/ComplianceSDK.js +4 -20
  253. package/dist/sdk/mx/av/mjr/types.d.ts +4 -5
  254. package/dist/sdk/mx/av/mjr/types.d.ts.map +1 -1
  255. package/dist/sdk/mx/av/mjr/types.js +2 -1
  256. package/dist/sdk/mx/av/tsc/ComplianceSDK.d.ts +5 -7
  257. package/dist/sdk/mx/av/tsc/ComplianceSDK.d.ts.map +1 -1
  258. package/dist/sdk/mx/av/tsc/ComplianceSDK.js +4 -8
  259. package/dist/sdk/mx/av/tsc/types.d.ts +4 -5
  260. package/dist/sdk/mx/av/tsc/types.d.ts.map +1 -1
  261. package/dist/sdk/mx/av/tsc/types.js +2 -1
  262. package/dist/sdk/mx/cnbv/transmisor/ComplianceSDK.d.ts +5 -7
  263. package/dist/sdk/mx/cnbv/transmisor/ComplianceSDK.d.ts.map +1 -1
  264. package/dist/sdk/mx/cnbv/transmisor/ComplianceSDK.js +4 -8
  265. package/dist/sdk/mx/cnbv/transmisor/types.d.ts +4 -5
  266. package/dist/sdk/mx/cnbv/transmisor/types.d.ts.map +1 -1
  267. package/dist/sdk/mx/cnbv/transmisor/types.js +2 -1
  268. package/dist/sdk/mx/index.d.ts.map +1 -1
  269. package/dist/sdk/mx/index.js +2 -0
  270. package/dist/sdk/mx/types.d.ts +3 -6
  271. package/dist/sdk/mx/types.d.ts.map +1 -1
  272. package/dist/sdk/resource-registry.d.ts +3 -0
  273. package/dist/sdk/resource-registry.d.ts.map +1 -1
  274. package/package.json +2 -2
  275. package/dist/resources/mx/ebr.d.ts +0 -214
  276. package/dist/resources/mx/ebr.d.ts.map +0 -1
  277. package/dist/resources/mx/ebr.js +0 -418
  278. package/dist/resources/reference-data/global/basel-aml.d.ts +0 -16
  279. package/dist/resources/reference-data/global/basel-aml.d.ts.map +0 -1
  280. package/dist/resources/reference-data/global/basel-aml.js +0 -46
  281. package/dist/resources/reference-data/global/index.d.ts +0 -2
  282. package/dist/resources/reference-data/global/index.d.ts.map +0 -1
  283. package/dist/resources/reference-data/global/index.js +0 -1
  284. package/dist/resources/reference-data/metadata.d.ts +0 -11
  285. package/dist/resources/reference-data/metadata.d.ts.map +0 -1
  286. package/dist/resources/reference-data/metadata.js +0 -22
  287. package/dist/resources/reference-data/mx/index.d.ts +0 -2
  288. package/dist/resources/reference-data/mx/index.d.ts.map +0 -1
  289. package/dist/resources/reference-data/mx/index.js +0 -1
  290. package/dist/resources/reference-data/mx/postal-codes.d.ts +0 -16
  291. package/dist/resources/reference-data/mx/postal-codes.d.ts.map +0 -1
  292. package/dist/resources/reference-data/mx/postal-codes.js +0 -46
@@ -0,0 +1,54 @@
1
+ /**
2
+ * ARI (Arrendamiento de Inmuebles - Real Estate Leasing) Products Resource
3
+ *
4
+ * Extends MexProductsResource with ARI-specific behavior:
5
+ * - Accepts flattened CreateARIProductInput (ARI fields at root level)
6
+ * - Returns MexARIProduct models
7
+ * - Handles property fields and payment defaults
8
+ */
9
+ import type { CreateARIProductInput, CreateProductInput, ListOptions, PaginatedResponse, ProductFilter, ProductSort, UpdateARIProductInput, UpdateProductInput, UpsertARIProductInput, UpsertResult } from "@artu-ai/shared";
10
+ import { MexARIProduct, type ProductData } from "../../../../models";
11
+ import { MexProductsResource } from "../../products";
12
+ /**
13
+ * ARI (Arrendamiento de Inmuebles) scoped products resource.
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * const ariSdk = new ComplianceSDK({
18
+ * apiKey,
19
+ * environment: "test",
20
+ * scope: "MX:AV:ARI",
21
+ * });
22
+ *
23
+ * const product = await ariSdk.products.create({
24
+ * name: "Standard Lease",
25
+ * operationType: "1501",
26
+ * property: {
27
+ * type: "1",
28
+ * value: "1500000",
29
+ * colonia: "Roma Norte",
30
+ * calle: "Alvaro Obregon",
31
+ * numeroExterior: "100",
32
+ * postalCode: "06700",
33
+ * },
34
+ * });
35
+ * ```
36
+ */
37
+ export declare class ARIProductsResource extends MexProductsResource<ProductSort> {
38
+ create(data: CreateARIProductInput): Promise<MexARIProduct>;
39
+ retrieve(id: string): Promise<MexARIProduct>;
40
+ retrieveByExternalId(externalId: string): Promise<MexARIProduct>;
41
+ update(id: string, data: UpdateARIProductInput): Promise<MexARIProduct>;
42
+ list(options?: ListOptions<ProductFilter, ProductSort>): Promise<PaginatedResponse<MexARIProduct>>;
43
+ count(filter?: ProductFilter): Promise<number>;
44
+ iterate(options?: {
45
+ filter?: ProductFilter;
46
+ sort?: ProductSort;
47
+ pageSize?: number;
48
+ }): AsyncGenerator<MexARIProduct, void, undefined>;
49
+ upsertByExternalId(data: UpsertARIProductInput): Promise<UpsertResult<MexARIProduct>>;
50
+ protected transformToNested(data: CreateARIProductInput): CreateProductInput;
51
+ protected transformUpdateToNested(data: UpdateARIProductInput): UpdateProductInput;
52
+ protected instantiate(data: ProductData): MexARIProduct;
53
+ }
54
+ //# sourceMappingURL=products.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"products.d.ts","sourceRoot":"","sources":["../../../../../src/resources/mx/av/ari/products.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACX,qBAAqB,EACrB,kBAAkB,EAClB,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EAErB,YAAY,EACZ,MAAM,iBAAiB,CAAC;AAOzB,OAAO,EAAE,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAMrD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,mBAAoB,SAAQ,mBAAmB,CAAC,WAAW,CAAC;IAKlE,MAAM,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,aAAa,CAAC;IAW3D,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAO5C,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAOhE,MAAM,CACX,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,qBAAqB,GACzB,OAAO,CAAC,aAAa,CAAC;IAcnB,IAAI,CACT,OAAO,CAAC,EAAE,WAAW,CAAC,aAAa,EAAE,WAAW,CAAC,GAC/C,OAAO,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAWtC,KAAK,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IAOpD,OAAO,CAAC,OAAO,CAAC,EAAE;QACjB,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,IAAI,CAAC,EAAE,WAAW,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,cAAc,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC;IAY5C,kBAAkB,CACvB,IAAI,EAAE,qBAAqB,GACzB,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;cAkBpB,iBAAiB,CACnC,IAAI,EAAE,qBAAqB,GACzB,kBAAkB;cAqCF,uBAAuB,CACzC,IAAI,EAAE,qBAAqB,GACzB,kBAAkB;cAwCF,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,aAAa;CAGhE"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * ARI (Arrendamiento de Inmuebles - Real Estate Leasing) Products Resource
3
+ *
4
+ * Extends MexProductsResource with ARI-specific behavior:
5
+ * - Accepts flattened CreateARIProductInput (ARI fields at root level)
6
+ * - Returns MexARIProduct models
7
+ * - Handles property fields and payment defaults
8
+ */
9
+ import { CodigoActividad, createARIProductInputSchema, updateARIProductInputSchema, upsertARIProductInputSchema, } from "@artu-ai/shared";
10
+ import { MexARIProduct } from "../../../../models";
11
+ import { MexProductsResource } from "../../products";
12
+ // ===========================
13
+ // ARIProductsResource
14
+ // ===========================
15
+ /**
16
+ * ARI (Arrendamiento de Inmuebles) scoped products resource.
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * const ariSdk = new ComplianceSDK({
21
+ * apiKey,
22
+ * environment: "test",
23
+ * scope: "MX:AV:ARI",
24
+ * });
25
+ *
26
+ * const product = await ariSdk.products.create({
27
+ * name: "Standard Lease",
28
+ * operationType: "1501",
29
+ * property: {
30
+ * type: "1",
31
+ * value: "1500000",
32
+ * colonia: "Roma Norte",
33
+ * calle: "Alvaro Obregon",
34
+ * numeroExterior: "100",
35
+ * postalCode: "06700",
36
+ * },
37
+ * });
38
+ * ```
39
+ */
40
+ export class ARIProductsResource extends MexProductsResource {
41
+ // ─────────────────────────────────────────────────────────────────
42
+ // CRUD Operations
43
+ // ─────────────────────────────────────────────────────────────────
44
+ async create(data) {
45
+ const validated = this.validate(createARIProductInputSchema, data);
46
+ const nestedData = this.transformToNested(validated);
47
+ const response = await this.execute(() => this.trpc.products.create.mutate(nestedData));
48
+ return this.instantiate(response);
49
+ }
50
+ async retrieve(id) {
51
+ const response = await this.execute(() => this.trpc.products.retrieve.query({ id }));
52
+ return this.instantiate(response);
53
+ }
54
+ async retrieveByExternalId(externalId) {
55
+ const response = await this.execute(() => this.trpc.products.retrieveByExternalId.query({ externalId }));
56
+ return this.instantiate(response);
57
+ }
58
+ async update(id, data) {
59
+ const validated = this.validate(updateARIProductInputSchema, data);
60
+ const nestedData = this.transformUpdateToNested(validated);
61
+ const response = await this.execute(() => this.trpc.products.update.mutate({ id, data: nestedData }));
62
+ return this.instantiate(response);
63
+ }
64
+ // ─────────────────────────────────────────────────────────────────
65
+ // List & Pagination
66
+ // ─────────────────────────────────────────────────────────────────
67
+ async list(options) {
68
+ const response = await this.execute(() => this.trpc.products.list.query(options));
69
+ return {
70
+ data: response.data.map((p) => this.instantiate(p)),
71
+ pagination: response.pagination,
72
+ };
73
+ }
74
+ async count(filter) {
75
+ const response = await this.execute(() => this.trpc.products.count.query({ filter }));
76
+ return response.count;
77
+ }
78
+ iterate(options) {
79
+ return this.createIterator({
80
+ filter: options?.filter,
81
+ sort: options?.sort,
82
+ pageSize: options?.pageSize,
83
+ });
84
+ }
85
+ // ─────────────────────────────────────────────────────────────────
86
+ // Upsert Operations
87
+ // ─────────────────────────────────────────────────────────────────
88
+ async upsertByExternalId(data) {
89
+ const validated = this.validate(upsertARIProductInputSchema, data);
90
+ const nestedData = this.transformToNested(validated);
91
+ const response = await this.execute(() => this.trpc.products.upsertByExternalId.mutate(nestedData));
92
+ return {
93
+ data: this.instantiate(response.data),
94
+ action: response.action,
95
+ };
96
+ }
97
+ // ─────────────────────────────────────────────────────────────────
98
+ // Protected Helpers
99
+ // ─────────────────────────────────────────────────────────────────
100
+ transformToNested(data) {
101
+ const { name, description, externalId, metadata, operationType, property, paymentForm, monetaryInstrument, } = data;
102
+ const baseFields = { name };
103
+ if (description !== undefined)
104
+ baseFields.description = description;
105
+ if (externalId !== undefined)
106
+ baseFields.externalId = externalId;
107
+ if (metadata !== undefined)
108
+ baseFields.metadata = metadata;
109
+ const ariData = {};
110
+ if (operationType !== undefined)
111
+ ariData.operationType = operationType;
112
+ if (property !== undefined)
113
+ ariData.property = property;
114
+ if (paymentForm !== undefined)
115
+ ariData.paymentForm = paymentForm;
116
+ if (monetaryInstrument !== undefined)
117
+ ariData.monetaryInstrument = monetaryInstrument;
118
+ return {
119
+ ...baseFields,
120
+ scopes: ["MX", "MX:AV:ARI"],
121
+ jurisdictions: {
122
+ MX: {
123
+ actividadVulnerable: {
124
+ [CodigoActividad.ARI]: ariData,
125
+ },
126
+ },
127
+ },
128
+ };
129
+ }
130
+ transformUpdateToNested(data) {
131
+ const input = data;
132
+ const { name, description, externalId, metadata, operationType, property, paymentForm, monetaryInstrument, } = input;
133
+ const result = {};
134
+ if (name !== undefined)
135
+ result.name = name;
136
+ if (description !== undefined)
137
+ result.description = description;
138
+ if (externalId !== undefined)
139
+ result.externalId = externalId;
140
+ if (metadata !== undefined)
141
+ result.metadata = metadata;
142
+ const ariData = {};
143
+ if (operationType !== undefined)
144
+ ariData.operationType = operationType;
145
+ if (property !== undefined)
146
+ ariData.property = property;
147
+ if (paymentForm !== undefined)
148
+ ariData.paymentForm = paymentForm;
149
+ if (monetaryInstrument !== undefined)
150
+ ariData.monetaryInstrument = monetaryInstrument;
151
+ const resultRecord = result;
152
+ resultRecord.scopes = ["MX", "MX:AV:ARI"];
153
+ resultRecord.jurisdictions = {
154
+ MX: {
155
+ actividadVulnerable: {
156
+ [CodigoActividad.ARI]: ariData,
157
+ },
158
+ },
159
+ };
160
+ return result;
161
+ }
162
+ instantiate(data) {
163
+ return new MexARIProduct(data);
164
+ }
165
+ }
@@ -0,0 +1,30 @@
1
+ /**
2
+ * ARI Tenant Resource
3
+ *
4
+ * Extends MexTenantResource with ARI-specific fields flattened to root.
5
+ */
6
+ import type { TenantResponse } from "@artu-ai/shared";
7
+ import type { MexUpdateTenantInput } from "../../tenant";
8
+ import { MexTenantResource } from "../../tenant";
9
+ export interface ARIUpdateTenantInput extends Omit<MexUpdateTenantInput, "actividadVulnerable"> {
10
+ /** Collegiate entity code */
11
+ collegiateEntityCode?: string;
12
+ /** Whether the entity is exempt */
13
+ exempt?: boolean;
14
+ }
15
+ /**
16
+ * ARI-scoped tenant resource.
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * await ariSdk.tenant.update({
21
+ * rfc: "ABC123456789",
22
+ * collegiateEntityCode: "12345",
23
+ * exempt: false,
24
+ * });
25
+ * ```
26
+ */
27
+ export declare class ARITenantResource extends MexTenantResource {
28
+ update(data: ARIUpdateTenantInput): Promise<TenantResponse>;
29
+ }
30
+ //# sourceMappingURL=tenant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tenant.d.ts","sourceRoot":"","sources":["../../../../../src/resources/mx/av/ari/tenant.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAMjD,MAAM,WAAW,oBAChB,SAAQ,IAAI,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;IACzD,6BAA6B;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mCAAmC;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB;AAMD;;;;;;;;;;;GAWG;AACH,qBAAa,iBAAkB,SAAQ,iBAAiB;IACjD,MAAM,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,cAAc,CAAC;CAejE"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * ARI Tenant Resource
3
+ *
4
+ * Extends MexTenantResource with ARI-specific fields flattened to root.
5
+ */
6
+ import { MexTenantResource } from "../../tenant";
7
+ // ===========================
8
+ // ARITenantResource
9
+ // ===========================
10
+ /**
11
+ * ARI-scoped tenant resource.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * await ariSdk.tenant.update({
16
+ * rfc: "ABC123456789",
17
+ * collegiateEntityCode: "12345",
18
+ * exempt: false,
19
+ * });
20
+ * ```
21
+ */
22
+ export class ARITenantResource extends MexTenantResource {
23
+ async update(data) {
24
+ const { collegiateEntityCode, exempt, ...rest } = data;
25
+ const scopeData = {};
26
+ if (collegiateEntityCode !== undefined)
27
+ scopeData.collegiateEntityCode = collegiateEntityCode;
28
+ if (exempt !== undefined)
29
+ scopeData.exempt = exempt;
30
+ const mexInput = { ...rest };
31
+ if (Object.keys(scopeData).length > 0) {
32
+ mexInput.actividadVulnerable = { ARI: scopeData };
33
+ }
34
+ return super.update(mexInput);
35
+ }
36
+ }
@@ -44,6 +44,7 @@ import { MexTransactionsResource } from "../../transactions";
44
44
  * ```
45
45
  */
46
46
  export declare class ARITransactionsResource extends MexTransactionsResource<ARITransactionSort> {
47
+ protected static readonly SCOPE_PATH: string[];
47
48
  create(data: CreateARITransactionInput): Promise<MexARITransaction>;
48
49
  retrieve(id: string): Promise<MexARITransaction>;
49
50
  retrieveByMetadata(key: string, value: string): Promise<MexARITransaction>;
@@ -1 +1 @@
1
- {"version":3,"file":"transactions.d.ts","sourceRoot":"","sources":["../../../../../src/resources/mx/av/ari/transactions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transactions.d.ts","sourceRoot":"","sources":["../../../../../src/resources/mx/av/ari/transactions.ts"],"names":[],"mappings":"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"}
@@ -51,8 +51,10 @@ export class ARITransactionsResource extends MexTransactionsResource {
51
51
  // ─────────────────────────────────────────────────────────────────
52
52
  // CRUD Operations
53
53
  // ─────────────────────────────────────────────────────────────────
54
+ static SCOPE_PATH = ["MX", "actividadVulnerable", "ARI"];
54
55
  async create(data) {
55
- const validated = this.validate(createARITransactionInputSchema, data);
56
+ const merged = await this.mergeProductDataFlat(data, ARITransactionsResource.SCOPE_PATH);
57
+ const validated = this.validate(createARITransactionInputSchema, merged);
56
58
  const nestedData = this.transformToNested(validated);
57
59
  const response = await this.execute(() => this.trpc.transactions.create.mutate(nestedData));
58
60
  return this.instantiate(response);
@@ -66,7 +68,8 @@ export class ARITransactionsResource extends MexTransactionsResource {
66
68
  return this.instantiate(response);
67
69
  }
68
70
  async update(id, data) {
69
- const validated = this.validate(updateARITransactionInputSchema, data);
71
+ const merged = await this.mergeProductDataFlat(data, ARITransactionsResource.SCOPE_PATH);
72
+ const validated = this.validate(updateARITransactionInputSchema, merged);
70
73
  const nestedData = this.transformUpdateToNested(validated);
71
74
  const response = await this.execute(() => this.trpc.transactions.update.mutate({ id, data: nestedData }));
72
75
  return this.instantiate(response);
@@ -134,7 +137,8 @@ export class ARITransactionsResource extends MexTransactionsResource {
134
137
  }
135
138
  async createMany(transactions, options = {}) {
136
139
  const atomic = options.atomic ?? true;
137
- const validated = this.validate(z.array(createARITransactionInputSchema), transactions);
140
+ const merged = await this.mergeProductDataFlatBatch(transactions, ARITransactionsResource.SCOPE_PATH);
141
+ const validated = this.validate(z.array(createARITransactionInputSchema), merged);
138
142
  const nestedItems = validated.map((t) => this.transformToNested(t));
139
143
  const response = await this.execute(() => this.trpc.transactions.createMany.mutate({ items: nestedItems, atomic }));
140
144
  if (response.atomic) {
@@ -160,7 +164,12 @@ export class ARITransactionsResource extends MexTransactionsResource {
160
164
  id: z.uuid(),
161
165
  data: updateARITransactionInputSchema,
162
166
  });
163
- const validated = this.validate(z.array(updateItemSchema), updates);
167
+ const mergedData = await this.mergeProductDataFlatBatch(updates.map((u) => u.data), ARITransactionsResource.SCOPE_PATH);
168
+ const mergedUpdates = updates.map((u, i) => ({
169
+ id: u.id,
170
+ data: mergedData[i],
171
+ }));
172
+ const validated = this.validate(z.array(updateItemSchema), mergedUpdates);
164
173
  const nestedUpdates = validated.map((u) => ({
165
174
  id: u.id,
166
175
  data: this.transformUpdateToNested(u.data),
@@ -190,7 +199,8 @@ export class ARITransactionsResource extends MexTransactionsResource {
190
199
  // Upsert Operations
191
200
  // ─────────────────────────────────────────────────────────────────
192
201
  async upsertByExternalId(data) {
193
- const validated = this.validate(upsertARITransactionInputSchema, data);
202
+ const merged = await this.mergeProductDataFlat(data, ARITransactionsResource.SCOPE_PATH);
203
+ const validated = this.validate(upsertARITransactionInputSchema, merged);
194
204
  const nestedData = this.transformToNested(validated);
195
205
  const response = await this.execute(() => this.trpc.transactions.upsertByExternalId.mutate(nestedData));
196
206
  return {
@@ -200,7 +210,8 @@ export class ARITransactionsResource extends MexTransactionsResource {
200
210
  }
201
211
  async upsertManyByExternalId(transactions, options = {}) {
202
212
  const atomic = options.atomic ?? true;
203
- const validated = this.validate(z.array(upsertARITransactionInputSchema), transactions);
213
+ const merged = await this.mergeProductDataFlatBatch(transactions, ARITransactionsResource.SCOPE_PATH);
214
+ const validated = this.validate(z.array(upsertARITransactionInputSchema), merged);
204
215
  const nestedItems = validated.map((t) => this.transformToNested(t));
205
216
  const response = await this.execute(() => this.trpc.transactions.upsertManyByExternalId.mutate({
206
217
  items: nestedItems,
@@ -3,5 +3,6 @@
3
3
  */
4
4
  export { AVIAlertsResource } from "./alerts";
5
5
  export { AVIClientsResource } from "./clients";
6
+ export { AVIProductsResource } from "./products";
6
7
  export { AVITransactionsResource } from "./transactions";
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/resources/mx/av/avi/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/resources/mx/av/avi/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -3,4 +3,5 @@
3
3
  */
4
4
  export { AVIAlertsResource } from "./alerts";
5
5
  export { AVIClientsResource } from "./clients";
6
+ export { AVIProductsResource } from "./products";
6
7
  export { AVITransactionsResource } from "./transactions";
@@ -0,0 +1,28 @@
1
+ /**
2
+ * AVI (Activos Virtuales) Products Resource
3
+ *
4
+ * Extends MexProductsResource with AVI-specific behavior:
5
+ * - Accepts flattened CreateAVIProductInput (AVI fields at root level)
6
+ * - Returns MexAVIProduct models
7
+ */
8
+ import type { CreateAVIProductInput, CreateProductInput, ListOptions, PaginatedResponse, ProductFilter, ProductSort, UpdateAVIProductInput, UpdateProductInput, UpsertAVIProductInput, UpsertResult } from "@artu-ai/shared";
9
+ import { MexAVIProduct, type ProductData } from "../../../../models";
10
+ import { MexProductsResource } from "../../products";
11
+ export declare class AVIProductsResource extends MexProductsResource<ProductSort> {
12
+ create(data: CreateAVIProductInput): Promise<MexAVIProduct>;
13
+ retrieve(id: string): Promise<MexAVIProduct>;
14
+ retrieveByExternalId(externalId: string): Promise<MexAVIProduct>;
15
+ update(id: string, data: UpdateAVIProductInput): Promise<MexAVIProduct>;
16
+ list(options?: ListOptions<ProductFilter, ProductSort>): Promise<PaginatedResponse<MexAVIProduct>>;
17
+ count(filter?: ProductFilter): Promise<number>;
18
+ iterate(options?: {
19
+ filter?: ProductFilter;
20
+ sort?: ProductSort;
21
+ pageSize?: number;
22
+ }): AsyncGenerator<MexAVIProduct, void, undefined>;
23
+ upsertByExternalId(data: UpsertAVIProductInput): Promise<UpsertResult<MexAVIProduct>>;
24
+ protected transformToNested(data: CreateAVIProductInput): CreateProductInput;
25
+ protected transformUpdateToNested(data: UpdateAVIProductInput): UpdateProductInput;
26
+ protected instantiate(data: ProductData): MexAVIProduct;
27
+ }
28
+ //# sourceMappingURL=products.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"products.d.ts","sourceRoot":"","sources":["../../../../../src/resources/mx/av/avi/products.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACX,qBAAqB,EACrB,kBAAkB,EAClB,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EAErB,YAAY,EACZ,MAAM,iBAAiB,CAAC;AAOzB,OAAO,EAAE,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAMrD,qBAAa,mBAAoB,SAAQ,mBAAmB,CAAC,WAAW,CAAC;IAKlE,MAAM,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,aAAa,CAAC;IAW3D,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAO5C,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAOhE,MAAM,CACX,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,qBAAqB,GACzB,OAAO,CAAC,aAAa,CAAC;IAcnB,IAAI,CACT,OAAO,CAAC,EAAE,WAAW,CAAC,aAAa,EAAE,WAAW,CAAC,GAC/C,OAAO,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAWtC,KAAK,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IAOpD,OAAO,CAAC,OAAO,CAAC,EAAE;QACjB,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,IAAI,CAAC,EAAE,WAAW,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,cAAc,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC;IAY5C,kBAAkB,CACvB,IAAI,EAAE,qBAAqB,GACzB,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;cAkBpB,iBAAiB,CACnC,IAAI,EAAE,qBAAqB,GACzB,kBAAkB;cAsBF,uBAAuB,CACzC,IAAI,EAAE,qBAAqB,GACzB,kBAAkB;cAsBF,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,aAAa;CAGhE"}
@@ -0,0 +1,119 @@
1
+ /**
2
+ * AVI (Activos Virtuales) Products Resource
3
+ *
4
+ * Extends MexProductsResource with AVI-specific behavior:
5
+ * - Accepts flattened CreateAVIProductInput (AVI fields at root level)
6
+ * - Returns MexAVIProduct models
7
+ */
8
+ import { CodigoActividad, createAVIProductInputSchema, updateAVIProductInputSchema, upsertAVIProductInputSchema, } from "@artu-ai/shared";
9
+ import { MexAVIProduct } from "../../../../models";
10
+ import { MexProductsResource } from "../../products";
11
+ // ===========================
12
+ // AVIProductsResource
13
+ // ===========================
14
+ export class AVIProductsResource extends MexProductsResource {
15
+ // ─────────────────────────────────────────────────────────────────
16
+ // CRUD Operations
17
+ // ─────────────────────────────────────────────────────────────────
18
+ async create(data) {
19
+ const validated = this.validate(createAVIProductInputSchema, data);
20
+ const nestedData = this.transformToNested(validated);
21
+ const response = await this.execute(() => this.trpc.products.create.mutate(nestedData));
22
+ return this.instantiate(response);
23
+ }
24
+ async retrieve(id) {
25
+ const response = await this.execute(() => this.trpc.products.retrieve.query({ id }));
26
+ return this.instantiate(response);
27
+ }
28
+ async retrieveByExternalId(externalId) {
29
+ const response = await this.execute(() => this.trpc.products.retrieveByExternalId.query({ externalId }));
30
+ return this.instantiate(response);
31
+ }
32
+ async update(id, data) {
33
+ const validated = this.validate(updateAVIProductInputSchema, data);
34
+ const nestedData = this.transformUpdateToNested(validated);
35
+ const response = await this.execute(() => this.trpc.products.update.mutate({ id, data: nestedData }));
36
+ return this.instantiate(response);
37
+ }
38
+ // ─────────────────────────────────────────────────────────────────
39
+ // List & Pagination
40
+ // ─────────────────────────────────────────────────────────────────
41
+ async list(options) {
42
+ const response = await this.execute(() => this.trpc.products.list.query(options));
43
+ return {
44
+ data: response.data.map((p) => this.instantiate(p)),
45
+ pagination: response.pagination,
46
+ };
47
+ }
48
+ async count(filter) {
49
+ const response = await this.execute(() => this.trpc.products.count.query({ filter }));
50
+ return response.count;
51
+ }
52
+ iterate(options) {
53
+ return this.createIterator({
54
+ filter: options?.filter,
55
+ sort: options?.sort,
56
+ pageSize: options?.pageSize,
57
+ });
58
+ }
59
+ // ─────────────────────────────────────────────────────────────────
60
+ // Upsert Operations
61
+ // ─────────────────────────────────────────────────────────────────
62
+ async upsertByExternalId(data) {
63
+ const validated = this.validate(upsertAVIProductInputSchema, data);
64
+ const nestedData = this.transformToNested(validated);
65
+ const response = await this.execute(() => this.trpc.products.upsertByExternalId.mutate(nestedData));
66
+ return {
67
+ data: this.instantiate(response.data),
68
+ action: response.action,
69
+ };
70
+ }
71
+ // ─────────────────────────────────────────────────────────────────
72
+ // Protected Helpers
73
+ // ─────────────────────────────────────────────────────────────────
74
+ transformToNested(data) {
75
+ const { name, description, externalId, metadata, ...aviFields } = data;
76
+ const baseFields = { name };
77
+ if (description !== undefined)
78
+ baseFields.description = description;
79
+ if (externalId !== undefined)
80
+ baseFields.externalId = externalId;
81
+ if (metadata !== undefined)
82
+ baseFields.metadata = metadata;
83
+ return {
84
+ ...baseFields,
85
+ scopes: ["MX", "MX:AV:AVI"],
86
+ jurisdictions: {
87
+ MX: {
88
+ actividadVulnerable: {
89
+ [CodigoActividad.AVI]: aviFields,
90
+ },
91
+ },
92
+ },
93
+ };
94
+ }
95
+ transformUpdateToNested(data) {
96
+ const { name, description, externalId, metadata, ...aviFields } = data;
97
+ const result = {};
98
+ if (name !== undefined)
99
+ result.name = name;
100
+ if (description !== undefined)
101
+ result.description = description;
102
+ if (externalId !== undefined)
103
+ result.externalId = externalId;
104
+ if (metadata !== undefined)
105
+ result.metadata = metadata;
106
+ result.scopes = ["MX", "MX:AV:AVI"];
107
+ result.jurisdictions = {
108
+ MX: {
109
+ actividadVulnerable: {
110
+ [CodigoActividad.AVI]: aviFields,
111
+ },
112
+ },
113
+ };
114
+ return result;
115
+ }
116
+ instantiate(data) {
117
+ return new MexAVIProduct(data);
118
+ }
119
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * AVI Tenant Resource
3
+ *
4
+ * Extends MexTenantResource with AVI-specific fields flattened to root.
5
+ */
6
+ import type { TenantResponse } from "@artu-ai/shared";
7
+ import type { MexUpdateTenantInput } from "../../tenant";
8
+ import { MexTenantResource } from "../../tenant";
9
+ export interface AVIUpdateTenantInput extends Omit<MexUpdateTenantInput, "actividadVulnerable"> {
10
+ /** Collegiate entity code */
11
+ collegiateEntityCode?: string;
12
+ /** Whether the entity is exempt */
13
+ exempt?: boolean;
14
+ /** AVI platform domain */
15
+ platformDomain?: string;
16
+ }
17
+ /**
18
+ * AVI-scoped tenant resource.
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * await aviSdk.tenant.update({
23
+ * rfc: "ABC123456789",
24
+ * collegiateEntityCode: "12345",
25
+ * exempt: false,
26
+ * platformDomain: "exchange.example.com",
27
+ * });
28
+ * ```
29
+ */
30
+ export declare class AVITenantResource extends MexTenantResource {
31
+ update(data: AVIUpdateTenantInput): Promise<TenantResponse>;
32
+ }
33
+ //# sourceMappingURL=tenant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tenant.d.ts","sourceRoot":"","sources":["../../../../../src/resources/mx/av/avi/tenant.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAMjD,MAAM,WAAW,oBAChB,SAAQ,IAAI,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;IACzD,6BAA6B;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mCAAmC;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0BAA0B;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAMD;;;;;;;;;;;;GAYG;AACH,qBAAa,iBAAkB,SAAQ,iBAAiB;IACjD,MAAM,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,cAAc,CAAC;CAgBjE"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * AVI Tenant Resource
3
+ *
4
+ * Extends MexTenantResource with AVI-specific fields flattened to root.
5
+ */
6
+ import { MexTenantResource } from "../../tenant";
7
+ // ===========================
8
+ // AVITenantResource
9
+ // ===========================
10
+ /**
11
+ * AVI-scoped tenant resource.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * await aviSdk.tenant.update({
16
+ * rfc: "ABC123456789",
17
+ * collegiateEntityCode: "12345",
18
+ * exempt: false,
19
+ * platformDomain: "exchange.example.com",
20
+ * });
21
+ * ```
22
+ */
23
+ export class AVITenantResource extends MexTenantResource {
24
+ async update(data) {
25
+ const { collegiateEntityCode, exempt, platformDomain, ...rest } = data;
26
+ const aviData = {};
27
+ if (collegiateEntityCode !== undefined)
28
+ aviData.collegiateEntityCode = collegiateEntityCode;
29
+ if (exempt !== undefined)
30
+ aviData.exempt = exempt;
31
+ if (platformDomain !== undefined)
32
+ aviData.platformDomain = platformDomain;
33
+ const mexInput = { ...rest };
34
+ if (Object.keys(aviData).length > 0) {
35
+ mexInput.actividadVulnerable = { AVI: aviData };
36
+ }
37
+ return super.update(mexInput);
38
+ }
39
+ }
@@ -35,6 +35,7 @@ import { MexTransactionsResource } from "../../transactions";
35
35
  * ```
36
36
  */
37
37
  export declare class AVITransactionsResource extends MexTransactionsResource<AVITransactionSort> {
38
+ protected static readonly SCOPE_PATH: string[];
38
39
  create(data: CreateAVITransactionInput): Promise<MexAVITransaction>;
39
40
  retrieve(id: string): Promise<MexAVITransaction>;
40
41
  retrieveByMetadata(key: string, value: string): Promise<MexAVITransaction>;