@dalmore/api-contracts 0.0.0-dev.d8ef117 → 0.0.0-dev.dae15ec

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 (715) hide show
  1. package/README.md +23 -19
  2. package/common/constants.d.ts +33 -0
  3. package/common/constants.js +67 -0
  4. package/common/constants.js.map +1 -0
  5. package/common/helpers/index.d.ts +58 -0
  6. package/common/helpers/index.js +151 -0
  7. package/common/helpers/index.js.map +1 -0
  8. package/common/types/account-contact.types.d.ts +485 -0
  9. package/common/types/account-contact.types.js +75 -0
  10. package/common/types/account-contact.types.js.map +1 -0
  11. package/common/types/account-detail.types.d.ts +304 -0
  12. package/common/types/account-detail.types.js +20 -0
  13. package/common/types/account-detail.types.js.map +1 -0
  14. package/common/types/account-integration.types.d.ts +242 -0
  15. package/common/types/account-integration.types.js +121 -0
  16. package/common/types/account-integration.types.js.map +1 -0
  17. package/common/types/account-manager.types.d.ts +917 -0
  18. package/common/types/account-manager.types.js +89 -0
  19. package/common/types/account-manager.types.js.map +1 -0
  20. package/common/types/account-setting.types.d.ts +140 -0
  21. package/common/types/account-setting.types.js +23 -0
  22. package/common/types/account-setting.types.js.map +1 -0
  23. package/common/types/account.types.d.ts +640 -0
  24. package/common/types/account.types.js +218 -0
  25. package/common/types/account.types.js.map +1 -0
  26. package/common/types/activity.types.d.ts +590 -0
  27. package/common/types/activity.types.js +258 -0
  28. package/common/types/activity.types.js.map +1 -0
  29. package/common/types/address.types.d.ts +89 -0
  30. package/common/types/address.types.js +36 -0
  31. package/common/types/address.types.js.map +1 -0
  32. package/common/types/aic.types.d.ts +434 -0
  33. package/common/types/aic.types.js +170 -0
  34. package/common/types/aic.types.js.map +1 -0
  35. package/common/types/aml.types.d.ts +41 -0
  36. package/common/types/aml.types.js +16 -0
  37. package/common/types/aml.types.js.map +1 -0
  38. package/common/types/api-key-logs.types.d.ts +204 -0
  39. package/common/types/api-key-logs.types.js +52 -0
  40. package/common/types/api-key-logs.types.js.map +1 -0
  41. package/common/types/api-keys.types.d.ts +192 -0
  42. package/common/types/api-keys.types.js +57 -0
  43. package/common/types/api-keys.types.js.map +1 -0
  44. package/common/types/asset.types.d.ts +1100 -0
  45. package/common/types/asset.types.js +353 -0
  46. package/common/types/asset.types.js.map +1 -0
  47. package/common/types/auth.types.d.ts +523 -0
  48. package/common/types/auth.types.js +280 -0
  49. package/common/types/auth.types.js.map +1 -0
  50. package/common/types/batch-jobs.types.d.ts +321 -0
  51. package/common/types/batch-jobs.types.js +111 -0
  52. package/common/types/batch-jobs.types.js.map +1 -0
  53. package/common/types/bonus-tier.types.d.ts +991 -0
  54. package/common/types/bonus-tier.types.js +166 -0
  55. package/common/types/bonus-tier.types.js.map +1 -0
  56. package/common/types/cap-table.types.d.ts +1248 -0
  57. package/common/types/cap-table.types.js +437 -0
  58. package/common/types/cap-table.types.js.map +1 -0
  59. package/common/types/cart.types.d.ts +28 -0
  60. package/common/types/cart.types.js +19 -0
  61. package/common/types/cart.types.js.map +1 -0
  62. package/common/types/checklist-items.types.d.ts +195 -0
  63. package/common/types/checklist-items.types.js +54 -0
  64. package/common/types/checklist-items.types.js.map +1 -0
  65. package/common/types/checklist.types.d.ts +140 -0
  66. package/common/types/checklist.types.js +71 -0
  67. package/common/types/checklist.types.js.map +1 -0
  68. package/common/types/common.types.d.ts +1852 -0
  69. package/common/types/common.types.js +1502 -0
  70. package/common/types/common.types.js.map +1 -0
  71. package/common/types/comply-advantage-api.types.d.ts +3626 -0
  72. package/common/types/comply-advantage-api.types.js +291 -0
  73. package/common/types/comply-advantage-api.types.js.map +1 -0
  74. package/common/types/comply-advantage.types.d.ts +48 -0
  75. package/common/types/comply-advantage.types.js +21 -0
  76. package/common/types/comply-advantage.types.js.map +1 -0
  77. package/common/types/contact-us.types.d.ts +126 -0
  78. package/common/types/contact-us.types.js +91 -0
  79. package/common/types/contact-us.types.js.map +1 -0
  80. package/common/types/countries.types.d.ts +77 -0
  81. package/common/types/countries.types.js +349 -0
  82. package/common/types/countries.types.js.map +1 -0
  83. package/common/types/covered-person.types.d.ts +204 -0
  84. package/common/types/covered-person.types.js +234 -0
  85. package/common/types/covered-person.types.js.map +1 -0
  86. package/common/types/csv.types.d.ts +3606 -0
  87. package/common/types/csv.types.js +290 -0
  88. package/common/types/csv.types.js.map +1 -0
  89. package/common/types/dashboard.types.d.ts +2086 -0
  90. package/common/types/dashboard.types.js +690 -0
  91. package/common/types/dashboard.types.js.map +1 -0
  92. package/common/types/data-record.types.d.ts +347 -0
  93. package/common/types/data-record.types.js +261 -0
  94. package/common/types/data-record.types.js.map +1 -0
  95. package/common/types/data-room.types.d.ts +1277 -0
  96. package/common/types/data-room.types.js +167 -0
  97. package/common/types/data-room.types.js.map +1 -0
  98. package/common/types/default-theme-config.types.d.ts +445 -0
  99. package/common/types/default-theme-config.types.js +63 -0
  100. package/common/types/default-theme-config.types.js.map +1 -0
  101. package/common/types/disbursement-adjustment.types.d.ts +21 -0
  102. package/common/types/disbursement-adjustment.types.js +25 -0
  103. package/common/types/disbursement-adjustment.types.js.map +1 -0
  104. package/common/types/disbursement-approval-user.types.d.ts +935 -0
  105. package/common/types/disbursement-approval-user.types.js +68 -0
  106. package/common/types/disbursement-approval-user.types.js.map +1 -0
  107. package/common/types/disbursement-review.types.d.ts +923 -0
  108. package/common/types/disbursement-review.types.js +76 -0
  109. package/common/types/disbursement-review.types.js.map +1 -0
  110. package/common/types/disbursement-transaction.types.d.ts +621 -0
  111. package/common/types/disbursement-transaction.types.js +51 -0
  112. package/common/types/disbursement-transaction.types.js.map +1 -0
  113. package/common/types/disbursements.types.d.ts +3496 -0
  114. package/common/types/disbursements.types.js +435 -0
  115. package/common/types/disbursements.types.js.map +1 -0
  116. package/common/types/domain-filter.types.d.ts +135 -0
  117. package/common/types/domain-filter.types.js +40 -0
  118. package/common/types/domain-filter.types.js.map +1 -0
  119. package/common/types/email-theme.types.d.ts +1359 -0
  120. package/common/types/email-theme.types.js +318 -0
  121. package/common/types/email-theme.types.js.map +1 -0
  122. package/common/types/entity.types.d.ts +21 -0
  123. package/common/types/entity.types.js +14 -0
  124. package/common/types/entity.types.js.map +1 -0
  125. package/common/types/error-responses.types.d.ts +144 -0
  126. package/common/types/error-responses.types.js +125 -0
  127. package/common/types/error-responses.types.js.map +1 -0
  128. package/common/types/escrow-account.types.d.ts +415 -0
  129. package/common/types/escrow-account.types.js +78 -0
  130. package/common/types/escrow-account.types.js.map +1 -0
  131. package/common/types/exchange-api-key.types.d.ts +1010 -0
  132. package/common/types/exchange-api-key.types.js +90 -0
  133. package/common/types/exchange-api-key.types.js.map +1 -0
  134. package/common/types/exchange-import.types.d.ts +23 -0
  135. package/common/types/exchange-import.types.js +23 -0
  136. package/common/types/exchange-import.types.js.map +1 -0
  137. package/common/types/exchange-provider.types.d.ts +1308 -0
  138. package/common/types/exchange-provider.types.js +268 -0
  139. package/common/types/exchange-provider.types.js.map +1 -0
  140. package/common/types/file.types.d.ts +428 -0
  141. package/common/types/file.types.js +392 -0
  142. package/common/types/file.types.js.map +1 -0
  143. package/common/types/health.types.d.ts +112 -0
  144. package/common/types/health.types.js +22 -0
  145. package/common/types/health.types.js.map +1 -0
  146. package/common/types/i-will-do-it-later.types.d.ts +51 -0
  147. package/common/types/i-will-do-it-later.types.js +30 -0
  148. package/common/types/i-will-do-it-later.types.js.map +1 -0
  149. package/common/types/{index.ts → index.d.ts} +7 -3
  150. package/common/types/index.js +56 -0
  151. package/common/types/index.js.map +1 -0
  152. package/common/types/individuals.types.d.ts +2101 -0
  153. package/common/types/individuals.types.js +500 -0
  154. package/common/types/individuals.types.js.map +1 -0
  155. package/common/types/investor-account.types.d.ts +2996 -0
  156. package/common/types/investor-account.types.js +929 -0
  157. package/common/types/investor-account.types.js.map +1 -0
  158. package/common/types/investorAccountIdSchema.type.js +1 -0
  159. package/common/types/investorAccountIdSchema.type.js.map +1 -0
  160. package/common/types/investors-offering.types.d.ts +399 -0
  161. package/common/types/investors-offering.types.js +50 -0
  162. package/common/types/investors-offering.types.js.map +1 -0
  163. package/common/types/invite.types.d.ts +641 -0
  164. package/common/types/invite.types.js +113 -0
  165. package/common/types/invite.types.js.map +1 -0
  166. package/common/types/issuer-bank-account.types.d.ts +113 -0
  167. package/common/types/issuer-bank-account.types.js +81 -0
  168. package/common/types/issuer-bank-account.types.js.map +1 -0
  169. package/common/types/issuer-offering.types.d.ts +2236 -0
  170. package/common/types/issuer-offering.types.js +605 -0
  171. package/common/types/issuer-offering.types.js.map +1 -0
  172. package/common/types/issuer-payment-method.types.d.ts +1100 -0
  173. package/common/types/issuer-payment-method.types.js +311 -0
  174. package/common/types/issuer-payment-method.types.js.map +1 -0
  175. package/common/types/issuer.types.d.ts +539 -0
  176. package/common/types/issuer.types.js +275 -0
  177. package/common/types/issuer.types.js.map +1 -0
  178. package/common/types/job-item.types.d.ts +230 -0
  179. package/common/types/job-item.types.js +89 -0
  180. package/common/types/job-item.types.js.map +1 -0
  181. package/common/types/jobs.types.d.ts +296 -0
  182. package/common/types/jobs.types.js +150 -0
  183. package/common/types/jobs.types.js.map +1 -0
  184. package/common/types/kyb.types.d.ts +167 -0
  185. package/common/types/kyb.types.js +45 -0
  186. package/common/types/kyb.types.js.map +1 -0
  187. package/common/types/kyc.types.d.ts +2197 -0
  188. package/common/types/kyc.types.js +301 -0
  189. package/common/types/kyc.types.js.map +1 -0
  190. package/common/types/legal-entity.types.d.ts +676 -0
  191. package/common/types/legal-entity.types.js +151 -0
  192. package/common/types/legal-entity.types.js.map +1 -0
  193. package/common/types/login-history.types.d.ts +160 -0
  194. package/common/types/login-history.types.js +39 -0
  195. package/common/types/login-history.types.js.map +1 -0
  196. package/common/types/mail-template.types.d.ts +595 -0
  197. package/common/types/mail-template.types.js +401 -0
  198. package/common/types/mail-template.types.js.map +1 -0
  199. package/common/types/north-cap-integration.types.d.ts +1303 -0
  200. package/common/types/north-cap-integration.types.js +145 -0
  201. package/common/types/north-cap-integration.types.js.map +1 -0
  202. package/common/types/note.types.d.ts +216 -0
  203. package/common/types/note.types.js +82 -0
  204. package/common/types/note.types.js.map +1 -0
  205. package/common/types/notification.types.d.ts +2689 -0
  206. package/common/types/notification.types.js +408 -0
  207. package/common/types/notification.types.js.map +1 -0
  208. package/common/types/notion-api.types.d.ts +3626 -0
  209. package/common/types/notion-api.types.js +271 -0
  210. package/common/types/notion-api.types.js.map +1 -0
  211. package/common/types/notion-database.types.d.ts +191 -0
  212. package/common/types/notion-database.types.js +95 -0
  213. package/common/types/notion-database.types.js.map +1 -0
  214. package/common/types/notion-page.types.d.ts +3482 -0
  215. package/common/types/notion-page.types.js +208 -0
  216. package/common/types/notion-page.types.js.map +1 -0
  217. package/common/types/offering-reports.types.d.ts +525 -0
  218. package/common/types/offering-reports.types.js +111 -0
  219. package/common/types/offering-reports.types.js.map +1 -0
  220. package/common/types/offering-submission.types.d.ts +785 -0
  221. package/common/types/offering-submission.types.js +291 -0
  222. package/common/types/offering-submission.types.js.map +1 -0
  223. package/common/types/offering.types.d.ts +2859 -0
  224. package/common/types/offering.types.js +832 -0
  225. package/common/types/offering.types.js.map +1 -0
  226. package/common/types/page-revision.types.d.ts +74 -0
  227. package/common/types/page-revision.types.js +68 -0
  228. package/common/types/page-revision.types.js.map +1 -0
  229. package/common/types/page.types.d.ts +540 -0
  230. package/common/types/page.types.js +361 -0
  231. package/common/types/page.types.js.map +1 -0
  232. package/common/types/password.type.d.ts +2 -0
  233. package/common/types/password.type.js +14 -0
  234. package/common/types/password.type.js.map +1 -0
  235. package/common/types/payment-methods.types.d.ts +800 -0
  236. package/common/types/payment-methods.types.js +260 -0
  237. package/common/types/payment-methods.types.js.map +1 -0
  238. package/common/types/phone.type.d.ts +12 -0
  239. package/common/types/phone.type.js +29 -0
  240. package/common/types/phone.type.js.map +1 -0
  241. package/common/types/portfolio.types.d.ts +185 -0
  242. package/common/types/portfolio.types.js +36 -0
  243. package/common/types/portfolio.types.js.map +1 -0
  244. package/common/types/privacy-policy-and-tos.types.d.ts +2 -0
  245. package/common/types/{privacy-policy-and-tos.types.ts → privacy-policy-and-tos.types.js} +1 -1
  246. package/common/types/privacy-policy-and-tos.types.js.map +1 -0
  247. package/common/types/queue.types.d.ts +22 -0
  248. package/common/types/queue.types.js +73 -0
  249. package/common/types/queue.types.js.map +1 -0
  250. package/common/types/registered-reps.types.d.ts +6 -0
  251. package/common/types/registered-reps.types.js +21 -0
  252. package/common/types/registered-reps.types.js.map +1 -0
  253. package/common/types/rejection-reasons.types.d.ts +35 -0
  254. package/common/types/rejection-reasons.types.js +49 -0
  255. package/common/types/rejection-reasons.types.js.map +1 -0
  256. package/common/types/reports.types.d.ts +345 -0
  257. package/common/types/reports.types.js +69 -0
  258. package/common/types/reports.types.js.map +1 -0
  259. package/common/types/review.types.d.ts +419 -0
  260. package/common/types/review.types.js +101 -0
  261. package/common/types/review.types.js.map +1 -0
  262. package/common/types/role.types.d.ts +30 -0
  263. package/common/types/role.types.js +21 -0
  264. package/common/types/role.types.js.map +1 -0
  265. package/common/types/secondary-customer.types.d.ts +586 -0
  266. package/common/types/secondary-customer.types.js +39 -0
  267. package/common/types/secondary-customer.types.js.map +1 -0
  268. package/common/types/secondary-issuer.types.d.ts +283 -0
  269. package/common/types/secondary-issuer.types.js +37 -0
  270. package/common/types/secondary-issuer.types.js.map +1 -0
  271. package/common/types/secondary-order.types.d.ts +508 -0
  272. package/common/types/secondary-order.types.js +40 -0
  273. package/common/types/secondary-order.types.js.map +1 -0
  274. package/common/types/secondary-security.types.d.ts +175 -0
  275. package/common/types/secondary-security.types.js +45 -0
  276. package/common/types/secondary-security.types.js.map +1 -0
  277. package/common/types/secondary-trade.entity.d.ts +16 -0
  278. package/common/types/secondary-trade.entity.js +12 -0
  279. package/common/types/secondary-trade.entity.js.map +1 -0
  280. package/common/types/secondary-trade.types.d.ts +465 -0
  281. package/common/types/secondary-trade.types.js +61 -0
  282. package/common/types/secondary-trade.types.js.map +1 -0
  283. package/common/types/secure-request.types.d.ts +171 -0
  284. package/common/types/secure-request.types.js +51 -0
  285. package/common/types/secure-request.types.js.map +1 -0
  286. package/common/types/signer.types.d.ts +3406 -0
  287. package/common/types/signer.types.js +532 -0
  288. package/common/types/signer.types.js.map +1 -0
  289. package/common/types/site-link.types.d.ts +875 -0
  290. package/common/types/site-link.types.js +126 -0
  291. package/common/types/site-link.types.js.map +1 -0
  292. package/common/types/site-settings.types.d.ts +1673 -0
  293. package/common/types/site-settings.types.js +500 -0
  294. package/common/types/site-settings.types.js.map +1 -0
  295. package/common/types/site.types.d.ts +1481 -0
  296. package/common/types/site.types.js +213 -0
  297. package/common/types/site.types.js.map +1 -0
  298. package/common/types/sms.types.d.ts +40 -0
  299. package/common/types/sms.types.js +27 -0
  300. package/common/types/sms.types.js.map +1 -0
  301. package/common/types/state-machine.types.d.ts +591 -0
  302. package/common/types/state-machine.types.js +144 -0
  303. package/common/types/state-machine.types.js.map +1 -0
  304. package/common/types/states.types.d.ts +77 -0
  305. package/common/types/states.types.js +137 -0
  306. package/common/types/states.types.js.map +1 -0
  307. package/common/types/subdoc-preview.types.d.ts +379 -0
  308. package/common/types/subdoc-preview.types.js +24 -0
  309. package/common/types/subdoc-preview.types.js.map +1 -0
  310. package/common/types/task.types.d.ts +537 -0
  311. package/common/types/task.types.js +211 -0
  312. package/common/types/task.types.js.map +1 -0
  313. package/common/types/trade-adjustment.type.d.ts +40 -0
  314. package/common/types/trade-adjustment.type.js +26 -0
  315. package/common/types/trade-adjustment.type.js.map +1 -0
  316. package/common/types/trade-line-item.types.d.ts +353 -0
  317. package/common/types/trade-line-item.types.js +103 -0
  318. package/common/types/trade-line-item.types.js.map +1 -0
  319. package/common/types/trade.types.d.ts +2016 -0
  320. package/common/types/trade.types.js +805 -0
  321. package/common/types/trade.types.js.map +1 -0
  322. package/common/types/transaction.types.d.ts +453 -0
  323. package/common/types/transaction.types.js +173 -0
  324. package/common/types/transaction.types.js.map +1 -0
  325. package/common/types/trusted-contact.types.d.ts +440 -0
  326. package/common/types/trusted-contact.types.js +95 -0
  327. package/common/types/trusted-contact.types.js.map +1 -0
  328. package/common/types/typography.types.d.ts +52 -0
  329. package/common/types/typography.types.js +67 -0
  330. package/common/types/typography.types.js.map +1 -0
  331. package/common/types/user-manual.types.d.ts +287 -0
  332. package/common/types/user-manual.types.js +192 -0
  333. package/common/types/user-manual.types.js.map +1 -0
  334. package/common/types/user-setting.types.d.ts +273 -0
  335. package/common/types/user-setting.types.js +85 -0
  336. package/common/types/user-setting.types.js.map +1 -0
  337. package/common/types/user.types.d.ts +1974 -0
  338. package/common/types/user.types.js +221 -0
  339. package/common/types/user.types.js.map +1 -0
  340. package/common/types/webhook.types.d.ts +10829 -0
  341. package/common/types/webhook.types.js +658 -0
  342. package/common/types/webhook.types.js.map +1 -0
  343. package/common/types/zip.type.d.ts +35 -0
  344. package/common/types/zip.type.js +28 -0
  345. package/common/types/zip.type.js.map +1 -0
  346. package/contracts/clients/accounts/index.d.ts +308 -0
  347. package/contracts/clients/accounts/index.js +43 -0
  348. package/contracts/clients/accounts/index.js.map +1 -0
  349. package/contracts/clients/aic/index.d.ts +280 -0
  350. package/contracts/clients/aic/index.js +47 -0
  351. package/contracts/clients/aic/index.js.map +1 -0
  352. package/contracts/clients/api-key-logs/index.d.ts +287 -0
  353. package/contracts/clients/api-key-logs/index.js +37 -0
  354. package/contracts/clients/api-key-logs/index.js.map +1 -0
  355. package/contracts/clients/api-keys/index.d.ts +374 -0
  356. package/contracts/clients/api-keys/index.js +59 -0
  357. package/contracts/clients/api-keys/index.js.map +1 -0
  358. package/contracts/clients/assets/index.d.ts +1050 -0
  359. package/contracts/clients/assets/index.js +80 -0
  360. package/contracts/clients/assets/index.js.map +1 -0
  361. package/contracts/clients/auth/index.d.ts +236 -0
  362. package/contracts/clients/auth/index.js +38 -0
  363. package/contracts/clients/auth/index.js.map +1 -0
  364. package/contracts/clients/cart/index.d.ts +229 -0
  365. package/contracts/clients/cart/index.js +63 -0
  366. package/contracts/clients/cart/index.js.map +1 -0
  367. package/contracts/clients/csv/index.d.ts +1800 -0
  368. package/contracts/clients/csv/index.js +96 -0
  369. package/contracts/clients/csv/index.js.map +1 -0
  370. package/contracts/clients/files/index.d.ts +552 -0
  371. package/contracts/clients/files/index.js +142 -0
  372. package/contracts/clients/files/index.js.map +1 -0
  373. package/contracts/clients/files-public/index.d.ts +552 -0
  374. package/contracts/clients/files-public/index.js +142 -0
  375. package/contracts/clients/files-public/index.js.map +1 -0
  376. package/contracts/clients/index.d.ts +14689 -0
  377. package/contracts/clients/index.js +56 -0
  378. package/contracts/clients/index.js.map +1 -0
  379. package/contracts/clients/individuals/index.d.ts +3199 -0
  380. package/contracts/clients/individuals/index.js +74 -0
  381. package/contracts/clients/individuals/index.js.map +1 -0
  382. package/contracts/clients/investor-accounts/index.d.ts +339 -0
  383. package/contracts/clients/investor-accounts/index.js +73 -0
  384. package/contracts/clients/investor-accounts/index.js.map +1 -0
  385. package/contracts/clients/issuer-payment-methods/index.d.ts +276 -0
  386. package/contracts/clients/issuer-payment-methods/index.js +24 -0
  387. package/contracts/clients/issuer-payment-methods/index.js.map +1 -0
  388. package/contracts/clients/issuers/index.d.ts +449 -0
  389. package/contracts/clients/issuers/index.js +75 -0
  390. package/contracts/clients/issuers/index.js.map +1 -0
  391. package/contracts/clients/kyc/index.d.ts +345 -0
  392. package/contracts/clients/kyc/index.js +49 -0
  393. package/contracts/clients/kyc/index.js.map +1 -0
  394. package/contracts/clients/legal-entities/index.d.ts +887 -0
  395. package/contracts/clients/legal-entities/index.js +74 -0
  396. package/contracts/clients/legal-entities/index.js.map +1 -0
  397. package/contracts/clients/offerings/index.d.ts +1068 -0
  398. package/contracts/clients/offerings/index.js +95 -0
  399. package/contracts/clients/offerings/index.js.map +1 -0
  400. package/contracts/clients/payment-methods/index.d.ts +456 -0
  401. package/contracts/clients/payment-methods/index.js +68 -0
  402. package/contracts/clients/payment-methods/index.js.map +1 -0
  403. package/contracts/clients/review/index.d.ts +85 -0
  404. package/contracts/clients/review/index.js +27 -0
  405. package/contracts/clients/review/index.js.map +1 -0
  406. package/contracts/clients/secure-requests/index.d.ts +100 -0
  407. package/contracts/clients/secure-requests/index.js +22 -0
  408. package/contracts/clients/secure-requests/index.js.map +1 -0
  409. package/contracts/clients/sites/index.d.ts +657 -0
  410. package/contracts/clients/sites/index.js +40 -0
  411. package/contracts/clients/sites/index.js.map +1 -0
  412. package/contracts/clients/trade-line-items/index.d.ts +216 -0
  413. package/contracts/clients/trade-line-items/index.js +47 -0
  414. package/contracts/clients/trade-line-items/index.js.map +1 -0
  415. package/contracts/clients/trades/index.d.ts +871 -0
  416. package/contracts/clients/trades/index.js +156 -0
  417. package/contracts/clients/trades/index.js.map +1 -0
  418. package/contracts/clients/transactions/index.d.ts +88 -0
  419. package/contracts/clients/transactions/index.js +25 -0
  420. package/contracts/clients/transactions/index.js.map +1 -0
  421. package/package.json +27 -36
  422. package/common/helpers/index.ts +0 -59
  423. package/common/types/account-contact.types.ts +0 -98
  424. package/common/types/account-detail.types.ts +0 -27
  425. package/common/types/account-integration.types.ts +0 -143
  426. package/common/types/account-manager.types.ts +0 -124
  427. package/common/types/account.types.ts +0 -296
  428. package/common/types/activity.types.ts +0 -274
  429. package/common/types/address.types.ts +0 -41
  430. package/common/types/aic.types.ts +0 -246
  431. package/common/types/aml.types.ts +0 -18
  432. package/common/types/api-key-logs.types.ts +0 -66
  433. package/common/types/api-keys.types.ts +0 -69
  434. package/common/types/asset.types.ts +0 -338
  435. package/common/types/auth.types.ts +0 -370
  436. package/common/types/batch-jobs.types.ts +0 -151
  437. package/common/types/bonus-tier.types.ts +0 -171
  438. package/common/types/cart.types.ts +0 -21
  439. package/common/types/checklist-items.types.ts +0 -70
  440. package/common/types/checklist.types.ts +0 -97
  441. package/common/types/common.types.ts +0 -1520
  442. package/common/types/comply-advantage-api.types.ts +0 -316
  443. package/common/types/comply-advantage.types.ts +0 -25
  444. package/common/types/contact-us.types.ts +0 -107
  445. package/common/types/countries.types.ts +0 -375
  446. package/common/types/covered-person.types.ts +0 -274
  447. package/common/types/dashboard.types.ts +0 -799
  448. package/common/types/data-record.types.ts +0 -325
  449. package/common/types/data-room.types.ts +0 -242
  450. package/common/types/default-theme-config.types.ts +0 -87
  451. package/common/types/disbursement-adjustment.types.ts +0 -32
  452. package/common/types/disbursement-approval-user.types.ts +0 -100
  453. package/common/types/disbursement-review.types.ts +0 -110
  454. package/common/types/disbursement-transaction.types.ts +0 -72
  455. package/common/types/disbursements.types.ts +0 -426
  456. package/common/types/domain-filter.types.ts +0 -55
  457. package/common/types/email-theme.types.ts +0 -442
  458. package/common/types/entity.types.ts +0 -15
  459. package/common/types/error-responses.types.ts +0 -135
  460. package/common/types/escrow-account.types.ts +0 -104
  461. package/common/types/exchange-api-key.types.ts +0 -121
  462. package/common/types/exchange-import.types.ts +0 -36
  463. package/common/types/exchange-provider.types.ts +0 -329
  464. package/common/types/file.types.ts +0 -477
  465. package/common/types/health.types.ts +0 -29
  466. package/common/types/i-will-do-it-later.types.ts +0 -68
  467. package/common/types/individuals.types.ts +0 -541
  468. package/common/types/investor-account.types.ts +0 -1239
  469. package/common/types/investors-offering.types.ts +0 -65
  470. package/common/types/invite.types.ts +0 -133
  471. package/common/types/issuer-bank-account.types.ts +0 -107
  472. package/common/types/issuer-offering.types.ts +0 -395
  473. package/common/types/issuer-payment-method.types.ts +0 -382
  474. package/common/types/issuer.types.ts +0 -321
  475. package/common/types/job-item.types.ts +0 -119
  476. package/common/types/jobs.types.ts +0 -171
  477. package/common/types/kyb.types.ts +0 -53
  478. package/common/types/kyc.types.ts +0 -188
  479. package/common/types/legal-entity.types.ts +0 -185
  480. package/common/types/login-history.types.ts +0 -46
  481. package/common/types/mail-template.types.ts +0 -436
  482. package/common/types/north-cap-integration.types.ts +0 -190
  483. package/common/types/note.types.ts +0 -109
  484. package/common/types/notification.types.ts +0 -58
  485. package/common/types/notion-api.types.ts +0 -374
  486. package/common/types/notion-database.types.ts +0 -125
  487. package/common/types/notion-page.types.ts +0 -267
  488. package/common/types/offering-reports.types.ts +0 -153
  489. package/common/types/offering-submission.types.ts +0 -314
  490. package/common/types/offering.types.ts +0 -683
  491. package/common/types/page-revision.types.ts +0 -86
  492. package/common/types/page.types.ts +0 -436
  493. package/common/types/password.type.ts +0 -15
  494. package/common/types/payment-methods.types.ts +0 -298
  495. package/common/types/phone.type.ts +0 -27
  496. package/common/types/portfolio.types.ts +0 -50
  497. package/common/types/queue.types.ts +0 -112
  498. package/common/types/registered-reps.types.ts +0 -25
  499. package/common/types/rejection-reasons.types.ts +0 -56
  500. package/common/types/reminder-config.types.ts +0 -40
  501. package/common/types/review.types.ts +0 -133
  502. package/common/types/role.types.ts +0 -26
  503. package/common/types/secondary-customer.types.ts +0 -66
  504. package/common/types/secondary-issuer.types.ts +0 -50
  505. package/common/types/secondary-order.types.ts +0 -58
  506. package/common/types/secondary-security.types.ts +0 -60
  507. package/common/types/secondary-trade.entity.ts +0 -16
  508. package/common/types/secondary-trade.types.ts +0 -95
  509. package/common/types/secure-request.types.ts +0 -68
  510. package/common/types/signer.types.ts +0 -651
  511. package/common/types/site-link.types.ts +0 -166
  512. package/common/types/site-settings.types.ts +0 -726
  513. package/common/types/site.types.ts +0 -270
  514. package/common/types/sms.types.ts +0 -30
  515. package/common/types/state-machine.types.ts +0 -177
  516. package/common/types/states.types.ts +0 -163
  517. package/common/types/subdoc-preview.types.ts +0 -35
  518. package/common/types/task.types.ts +0 -258
  519. package/common/types/trade-adjustment.type.ts +0 -33
  520. package/common/types/trade-line-item.type.ts +0 -132
  521. package/common/types/trade.types.ts +0 -999
  522. package/common/types/transaction.types.ts +0 -209
  523. package/common/types/trusted-contact.types.ts +0 -122
  524. package/common/types/typography.types.ts +0 -75
  525. package/common/types/user-manual.types.ts +0 -290
  526. package/common/types/user-setting.types.ts +0 -133
  527. package/common/types/user.types.ts +0 -325
  528. package/common/types/webhook.types.ts +0 -588
  529. package/common/types/zip.type.ts +0 -36
  530. package/contracts/clients/accounts/index.ts +0 -61
  531. package/contracts/clients/aic/index.ts +0 -59
  532. package/contracts/clients/api-key-logs/index.ts +0 -53
  533. package/contracts/clients/api-keys/index.ts +0 -73
  534. package/contracts/clients/assets/index.ts +0 -102
  535. package/contracts/clients/auth/index.ts +0 -50
  536. package/contracts/clients/cart/index.ts +0 -80
  537. package/contracts/clients/files/index.ts +0 -166
  538. package/contracts/clients/files-public/index.ts +0 -166
  539. package/contracts/clients/index.ts +0 -54
  540. package/contracts/clients/individuals/index.ts +0 -93
  541. package/contracts/clients/investor-accounts/index.ts +0 -93
  542. package/contracts/clients/issuer-payment-methods/index.ts +0 -39
  543. package/contracts/clients/issuers/index.ts +0 -94
  544. package/contracts/clients/legal-entities/index.ts +0 -93
  545. package/contracts/clients/offerings/index.ts +0 -117
  546. package/contracts/clients/payment-methods/index.ts +0 -85
  547. package/contracts/clients/secure-requests/index.ts +0 -34
  548. package/contracts/clients/sites/index.ts +0 -56
  549. package/contracts/clients/trade-line-items/index.ts +0 -66
  550. package/contracts/clients/trades/index.ts +0 -186
  551. package/contracts/clients/transactions/index.ts +0 -37
  552. package/contracts/compliance/account-contacts/index.ts +0 -82
  553. package/contracts/compliance/account-managers/index.ts +0 -142
  554. package/contracts/compliance/accounts/index.ts +0 -187
  555. package/contracts/compliance/activities/index.ts +0 -55
  556. package/contracts/compliance/aic/index.ts +0 -60
  557. package/contracts/compliance/api-keys/index.ts +0 -91
  558. package/contracts/compliance/assets/index.ts +0 -122
  559. package/contracts/compliance/auth/index.ts +0 -134
  560. package/contracts/compliance/batch-jobs/index.ts +0 -62
  561. package/contracts/compliance/bonus-tiers/index.ts +0 -74
  562. package/contracts/compliance/checklist/index.ts +0 -87
  563. package/contracts/compliance/checklist-items/index.ts +0 -86
  564. package/contracts/compliance/covered-persons/index.ts +0 -97
  565. package/contracts/compliance/dashboard/index.ts +0 -111
  566. package/contracts/compliance/data-records/index.ts +0 -116
  567. package/contracts/compliance/data-rooms/index.ts +0 -113
  568. package/contracts/compliance/default-theme-configs/index.ts +0 -95
  569. package/contracts/compliance/disbursement/index.ts +0 -165
  570. package/contracts/compliance/disbursement-approval-users/index.ts +0 -84
  571. package/contracts/compliance/disbursement-transactions/index.ts +0 -37
  572. package/contracts/compliance/domain-filters/index.ts +0 -117
  573. package/contracts/compliance/email-themes/index.ts +0 -284
  574. package/contracts/compliance/escrow-accounts/index.ts +0 -85
  575. package/contracts/compliance/exchange-api-keys/index.ts +0 -129
  576. package/contracts/compliance/exchange-imports/index.ts +0 -137
  577. package/contracts/compliance/files/index.ts +0 -267
  578. package/contracts/compliance/files-public/index.ts +0 -188
  579. package/contracts/compliance/health/index.ts +0 -26
  580. package/contracts/compliance/index.ts +0 -147
  581. package/contracts/compliance/individuals/index.ts +0 -57
  582. package/contracts/compliance/investor-accounts/index.ts +0 -141
  583. package/contracts/compliance/invites/index.ts +0 -137
  584. package/contracts/compliance/issuer-bank-accounts/index.ts +0 -81
  585. package/contracts/compliance/issuer-payment-methods/index.ts +0 -81
  586. package/contracts/compliance/issuers/index.ts +0 -97
  587. package/contracts/compliance/job-items/index.ts +0 -58
  588. package/contracts/compliance/jobs/index.ts +0 -59
  589. package/contracts/compliance/kyb/index.ts +0 -54
  590. package/contracts/compliance/kyc/index.ts +0 -77
  591. package/contracts/compliance/legal-entities/index.ts +0 -57
  592. package/contracts/compliance/login-histories/index.ts +0 -37
  593. package/contracts/compliance/notes/index.ts +0 -69
  594. package/contracts/compliance/notion-databases/index.ts +0 -107
  595. package/contracts/compliance/notion-pages/index.ts +0 -105
  596. package/contracts/compliance/offering-reports/index.ts +0 -149
  597. package/contracts/compliance/offerings/index.ts +0 -233
  598. package/contracts/compliance/pages/index.ts +0 -178
  599. package/contracts/compliance/payment-methods/index.ts +0 -57
  600. package/contracts/compliance/rejection-reasons/index.ts +0 -32
  601. package/contracts/compliance/review/index.ts +0 -169
  602. package/contracts/compliance/roles/index.ts +0 -34
  603. package/contracts/compliance/secondary-customers/index.ts +0 -77
  604. package/contracts/compliance/secondary-orders/index.ts +0 -60
  605. package/contracts/compliance/secondary-trades/index.ts +0 -100
  606. package/contracts/compliance/secure-requests/index.ts +0 -54
  607. package/contracts/compliance/signer/index.ts +0 -369
  608. package/contracts/compliance/site-links/index.ts +0 -128
  609. package/contracts/compliance/site-settings/index.ts +0 -669
  610. package/contracts/compliance/sites/index.ts +0 -56
  611. package/contracts/compliance/state-machine/index.ts +0 -94
  612. package/contracts/compliance/tasks/index.ts +0 -91
  613. package/contracts/compliance/third-parties/index.ts +0 -52
  614. package/contracts/compliance/trade-line-items/index.ts +0 -59
  615. package/contracts/compliance/trades/index.ts +0 -230
  616. package/contracts/compliance/transactions/index.ts +0 -161
  617. package/contracts/compliance/user-manuals/index.ts +0 -271
  618. package/contracts/compliance/user-settings/index.ts +0 -189
  619. package/contracts/compliance/users/index.ts +0 -221
  620. package/contracts/compliance/webhooks/index.ts +0 -41
  621. package/contracts/compliance-apikey/accounts/index.ts +0 -58
  622. package/contracts/compliance-apikey/index.ts +0 -14
  623. package/contracts/index.ts +0 -6
  624. package/contracts/investors/account-contacts/index.ts +0 -58
  625. package/contracts/investors/aic/index.ts +0 -59
  626. package/contracts/investors/assets/index.ts +0 -61
  627. package/contracts/investors/auth/index.ts +0 -116
  628. package/contracts/investors/bonus-tiers/index.ts +0 -55
  629. package/contracts/investors/cart/index.ts +0 -75
  630. package/contracts/investors/contact-us/index.ts +0 -48
  631. package/contracts/investors/data-records/index.ts +0 -113
  632. package/contracts/investors/data-rooms/index.ts +0 -96
  633. package/contracts/investors/files/index.ts +0 -167
  634. package/contracts/investors/files-public/index.ts +0 -185
  635. package/contracts/investors/index.ts +0 -72
  636. package/contracts/investors/individuals/index.ts +0 -121
  637. package/contracts/investors/investor-accounts/index.ts +0 -110
  638. package/contracts/investors/issuer-payment-methods/index.ts +0 -36
  639. package/contracts/investors/issuers/index.ts +0 -30
  640. package/contracts/investors/legal-entities/index.ts +0 -93
  641. package/contracts/investors/notes/index.ts +0 -69
  642. package/contracts/investors/offerings/index.ts +0 -93
  643. package/contracts/investors/pages/index.ts +0 -88
  644. package/contracts/investors/payment-methods/index.ts +0 -149
  645. package/contracts/investors/portfolios/index.ts +0 -53
  646. package/contracts/investors/sites/index.ts +0 -96
  647. package/contracts/investors/tasks/index.ts +0 -111
  648. package/contracts/investors/trade-line-items/index.ts +0 -75
  649. package/contracts/investors/trades/index.ts +0 -114
  650. package/contracts/investors/transactions/index.ts +0 -37
  651. package/contracts/investors/trusted-contacts/index.ts +0 -93
  652. package/contracts/investors/user-manuals/index.ts +0 -62
  653. package/contracts/investors/user-settings/index.ts +0 -170
  654. package/contracts/investors/users/index.ts +0 -45
  655. package/contracts/investors/webhooks/index.ts +0 -30
  656. package/contracts/issuers/account-contacts/index.ts +0 -76
  657. package/contracts/issuers/account-integrations/index.ts +0 -97
  658. package/contracts/issuers/accounts/index.ts +0 -97
  659. package/contracts/issuers/activities/index.ts +0 -54
  660. package/contracts/issuers/aic/index.ts +0 -39
  661. package/contracts/issuers/api-key-logs/index.ts +0 -53
  662. package/contracts/issuers/api-keys/index.ts +0 -93
  663. package/contracts/issuers/assets/index.ts +0 -122
  664. package/contracts/issuers/auth/index.ts +0 -152
  665. package/contracts/issuers/bonus-tiers/index.ts +0 -73
  666. package/contracts/issuers/contact-us/index.ts +0 -48
  667. package/contracts/issuers/covered-persons/index.ts +0 -136
  668. package/contracts/issuers/dashboard/index.ts +0 -72
  669. package/contracts/issuers/data-records/index.ts +0 -257
  670. package/contracts/issuers/data-rooms/index.ts +0 -134
  671. package/contracts/issuers/disbursement-approval-users/index.ts +0 -82
  672. package/contracts/issuers/disbursement-transactions/index.ts +0 -53
  673. package/contracts/issuers/disbursements/index.ts +0 -189
  674. package/contracts/issuers/email-themes/index.ts +0 -242
  675. package/contracts/issuers/escrow-accounts/index.ts +0 -81
  676. package/contracts/issuers/exchange-api-keys/index.ts +0 -144
  677. package/contracts/issuers/files/index.ts +0 -166
  678. package/contracts/issuers/files-public/index.ts +0 -166
  679. package/contracts/issuers/health/index.ts +0 -24
  680. package/contracts/issuers/index.ts +0 -112
  681. package/contracts/issuers/investor-accounts/index.ts +0 -148
  682. package/contracts/issuers/invites/index.ts +0 -129
  683. package/contracts/issuers/issuer/index.ts +0 -94
  684. package/contracts/issuers/issuer-bank-accounts/index.ts +0 -81
  685. package/contracts/issuers/issuer-payment-methods/index.ts +0 -136
  686. package/contracts/issuers/kyc/index.ts +0 -38
  687. package/contracts/issuers/login-histories/index.ts +0 -51
  688. package/contracts/issuers/notes/index.ts +0 -69
  689. package/contracts/issuers/offerings/index.ts +0 -206
  690. package/contracts/issuers/pages/index.ts +0 -138
  691. package/contracts/issuers/payment-methods/index.ts +0 -61
  692. package/contracts/issuers/portfolios/index.ts +0 -36
  693. package/contracts/issuers/rejection-reasons/index.ts +0 -32
  694. package/contracts/issuers/review/index.ts +0 -63
  695. package/contracts/issuers/secondary-customers/index.ts +0 -55
  696. package/contracts/issuers/secondary-orders/index.ts +0 -57
  697. package/contracts/issuers/secondary-trades/index.ts +0 -57
  698. package/contracts/issuers/secure-requests/index.ts +0 -34
  699. package/contracts/issuers/site-links/index.ts +0 -116
  700. package/contracts/issuers/site-settings/index.ts +0 -585
  701. package/contracts/issuers/sites/index.ts +0 -32
  702. package/contracts/issuers/tasks/index.ts +0 -111
  703. package/contracts/issuers/trades/index.ts +0 -132
  704. package/contracts/issuers/transactions/index.ts +0 -158
  705. package/contracts/issuers/user-manuals/index.ts +0 -62
  706. package/contracts/issuers/user-settings/index.ts +0 -170
  707. package/contracts/issuers/users/index.ts +0 -126
  708. package/contracts/secondaries/accounts/index.ts +0 -58
  709. package/contracts/secondaries/index.ts +0 -23
  710. package/contracts/secondaries/secondary-customers/index.ts +0 -55
  711. package/contracts/secondaries/secondary-issuers/index.ts +0 -94
  712. package/contracts/secondaries/secondary-orders/index.ts +0 -56
  713. package/contracts/secondaries/secondary-securities/index.ts +0 -95
  714. package/contracts/secondaries/secondary-trades/index.ts +0 -56
  715. /package/common/types/{investorAccountIdSchema.type.ts → investorAccountIdSchema.type.d.ts} +0 -0
@@ -0,0 +1,929 @@
1
+ import { z } from 'zod';
2
+ import { IBaseEntity } from './entity.types.js';
3
+ import { AccountZod, AicStatus, AMLStatus, BaseStatus, dateSchema, InvestorAccountType, IPaginationMeta, KYBStatus, KYCDocumentType, KYCStatus, numberFromStringOrNumber, RetirementAccountType, SetupStatusType, TradeType, TradeStatus, EmploymentStatus, dateSchemaWithNormalization, UserType, PaginationOptionsZod, SourceOfIncome, SortBy, SortOrder, AMLProvider, EmailSchema, } from './common.types.js';
4
+ import { accountIdSchema } from './account.types.js';
5
+ import { SaStatus, tradeIdSchema, TradeZod } from './trade.types.js';
6
+ import { legalEntityIdSchema, LegalEntityZod } from './legal-entity.types.js';
7
+ import { extendZodWithOpenApi } from '@anatine/zod-openapi';
8
+ import { offeringIdSchema } from './offering.types.js';
9
+ import { userIdSchema, UserZod } from './user.types.js';
10
+ import { IIndividualZod, individualIdSchema } from './individuals.types.js';
11
+ import { TypeID } from 'typeid-js';
12
+ import { ErrorResponseZod, TransactionStatus } from './common.types.js';
13
+ import { PhoneZodSchema } from './phone.type.js';
14
+ import { RequiredAddressSchema } from './address.types.js';
15
+ import { PaymentMethodType } from './payment-methods.types.js';
16
+ import { CanadaProvinceCode, StateCode } from './states.types.js';
17
+ import { refineAddressZip } from './zip.type.js';
18
+ import { CountryCode } from './countries.types.js';
19
+ extendZodWithOpenApi(z);
20
+ export const investorAccountIdSchema = z.string().refine((value) => {
21
+ try {
22
+ const tid = TypeID.fromString(value);
23
+ return tid.getType() === 'investor_account';
24
+ }
25
+ catch {
26
+ return false;
27
+ }
28
+ }, {
29
+ message: 'Invalid investor_account ID format. Must be a valid TypeID with "investor_account" prefix.',
30
+ });
31
+ export var AccreditationVerificationRequestStatus;
32
+ (function (AccreditationVerificationRequestStatus) {
33
+ AccreditationVerificationRequestStatus["PENDING"] = "PENDING";
34
+ AccreditationVerificationRequestStatus["APPROVED"] = "APPROVED";
35
+ AccreditationVerificationRequestStatus["DECLINED"] = "DECLINED";
36
+ })(AccreditationVerificationRequestStatus || (AccreditationVerificationRequestStatus = {}));
37
+ export const IInvestorAccount = IBaseEntity.extend({
38
+ tid: z.string().nullable(),
39
+ investorAccountType: z.nativeEnum(InvestorAccountType),
40
+ user: z.lazy(() => UserZod.nullish()),
41
+ userId: z.string().optional().nullable(),
42
+ email: z.string().email().optional().nullable(),
43
+ name: z.string().optional().nullable(),
44
+ regAQualified: z.boolean(),
45
+ regCfQualified: z.boolean(),
46
+ regDQualified: z.boolean(),
47
+ accountId: z.string(),
48
+ account: z.lazy(() => AccountZod).optional(),
49
+ trades: z.array(z.lazy(() => TradeZod)).optional(),
50
+ individuals: z.array(z.lazy(() => IIndividualZod)).optional(), // circular dependency requires lazy
51
+ legalEntities: z.array(z.lazy(() => LegalEntityZod)).optional(),
52
+ setupStatus: z.nativeEnum(SetupStatusType),
53
+ systemReviewLog: z.string().nullable(),
54
+ totalAmount: z.number().optional(),
55
+ statusCheck: z.lazy(() => InvestorStatusCheckZod).optional(),
56
+ });
57
+ export const IInvestorAccountSummary = z.object({
58
+ liquidNetWorth: z.number(),
59
+ householdNetWorth: z.number(),
60
+ currentAnnualIncome: z.number(),
61
+ currentHouseholdIncome: z.number(),
62
+ totalInvestments: z.number(),
63
+ totalPending: z.number(),
64
+ concentrationLiquidNetWorth: z.number(),
65
+ concentrationTotalNetWorth: z.number(),
66
+ postTradeConcentration: z.number().optional(),
67
+ });
68
+ export const InvestorUpdatePathParamsSchema = z.object({
69
+ id: z.lazy(() => investorAccountIdSchema),
70
+ });
71
+ export const PostInvestorAccountBodySchema = z.object({
72
+ investorAccountType: z.nativeEnum(InvestorAccountType),
73
+ name: z.string().optional(),
74
+ });
75
+ export const PostClientInvestorAccountBodySchema = z.object({
76
+ investorAccountType: z.nativeEnum(InvestorAccountType),
77
+ email: z.string().email().optional(),
78
+ name: z.string().min(1).max(100).optional(),
79
+ tid: z.string().optional(),
80
+ userId: z.lazy(() => {
81
+ return userIdSchema;
82
+ }),
83
+ });
84
+ export const UpdateInvestorAccountBodySchema = z.object({
85
+ name: z.string().optional(),
86
+ email: EmailSchema.optional(),
87
+ });
88
+ export const IPaginatedInvestorAccounts = z.object({
89
+ items: z.array(IInvestorAccount),
90
+ meta: IPaginationMeta,
91
+ });
92
+ const investorAccountsInclude = z.enum([
93
+ 'account',
94
+ 'trades',
95
+ 'individuals',
96
+ 'legalEntities',
97
+ 'trustedContacts',
98
+ ]);
99
+ export const InvestorAccountsFiltersZod = z.object({
100
+ investorAccountType: z.nativeEnum(InvestorAccountType).optional(),
101
+ kycStatus: z.nativeEnum(KYCStatus).optional(),
102
+ kybStatus: z.nativeEnum(KYBStatus).optional(),
103
+ amlStatus: z.nativeEnum(AMLStatus).optional(),
104
+ aicStatus: z.nativeEnum(AicStatus).optional(),
105
+ offeringId: z.lazy(() => offeringIdSchema).optional(),
106
+ regAQualified: z.preprocess((val) => val === 'true' || val === '1'
107
+ ? true
108
+ : val === 'false' || val === '0'
109
+ ? false
110
+ : val, z.boolean().optional()),
111
+ regCfQualified: z.preprocess((val) => val === 'true' || val === '1'
112
+ ? true
113
+ : val === 'false' || val === '0'
114
+ ? false
115
+ : val, z.boolean().optional()),
116
+ regDQualified: z.preprocess((val) => val === 'true' || val === '1'
117
+ ? true
118
+ : val === 'false' || val === '0'
119
+ ? false
120
+ : val, z.boolean().optional()),
121
+ email: z.string().optional(),
122
+ accountId: accountIdSchema.optional(),
123
+ userType: z.nativeEnum(UserType).optional(),
124
+ startDate: dateSchema.optional(),
125
+ endDate: dateSchema.optional(),
126
+ userId: z.string().optional(),
127
+ });
128
+ export const InvestorAccountsSortZod = z.object({
129
+ sort: z.enum([SortBy.NAME, SortBy.CREATED_AT, SortBy.UPDATED_AT]).optional(),
130
+ dir: z.nativeEnum(SortOrder).optional(),
131
+ });
132
+ /**
133
+ * @description Query parameters for including related entities
134
+ * @xample in contract us as -> query: z.object({}).merge(UsersIncludeQuery),
135
+ */
136
+ export const InvestorAccountsIncludeQuery = z.object({
137
+ include: z
138
+ .string()
139
+ .optional()
140
+ .transform((str) => (str ? str.split(',') : []))
141
+ .refine((includes) => includes.every((include) => investorAccountsInclude.options.includes(include)), {
142
+ message: `Invalid include option provided. Valid options are: ${investorAccountsInclude.options.join(',')}`,
143
+ })
144
+ .openapi({
145
+ example: `${investorAccountsInclude.options.join(',')}`,
146
+ }),
147
+ });
148
+ export const IssuerInvestorAccountsFiltersZod = z.object({
149
+ userType: z.nativeEnum(UserType).optional(),
150
+ investorAccountType: z.nativeEnum(InvestorAccountType).optional(),
151
+ kycStatus: z.nativeEnum(KYCStatus).optional(),
152
+ kybStatus: z.nativeEnum(KYBStatus).optional(),
153
+ amlStatus: z.nativeEnum(AMLStatus).optional(),
154
+ aicStatus: z.nativeEnum(AicStatus).optional(),
155
+ offeringId: z.lazy(() => offeringIdSchema).optional(),
156
+ regAQualified: z.preprocess((val) => val === 'true' || val === '1'
157
+ ? true
158
+ : val === 'false' || val === '0'
159
+ ? false
160
+ : val, z.boolean().optional()),
161
+ regCfQualified: z.preprocess((val) => val === 'true' || val === '1'
162
+ ? true
163
+ : val === 'false' || val === '0'
164
+ ? false
165
+ : val, z.boolean().optional()),
166
+ regDQualified: z.preprocess((val) => val === 'true' || val === '1'
167
+ ? true
168
+ : val === 'false' || val === '0'
169
+ ? false
170
+ : val, z.boolean().optional()),
171
+ email: z.string().optional(),
172
+ startDate: dateSchema.optional(),
173
+ endDate: dateSchema.optional(),
174
+ userId: z.string().optional(),
175
+ });
176
+ export const InvestorAccountsFilters = z.object({
177
+ investorAccountType: z.nativeEnum(InvestorAccountType).optional(),
178
+ regAQualified: z.preprocess((val) => val === 'true' || val === '1'
179
+ ? true
180
+ : val === 'false' || val === '0'
181
+ ? false
182
+ : val, z.boolean().optional()),
183
+ regCfQualified: z.preprocess((val) => val === 'true' || val === '1'
184
+ ? true
185
+ : val === 'false' || val === '0'
186
+ ? false
187
+ : val, z.boolean().optional()),
188
+ regDQualified: z.preprocess((val) => val === 'true' || val === '1'
189
+ ? true
190
+ : val === 'false' || val === '0'
191
+ ? false
192
+ : val, z.boolean().optional()),
193
+ withPortfolio: z.preprocess((val) => val === 'true' || val === '1'
194
+ ? true
195
+ : val === 'false' || val === '0'
196
+ ? false
197
+ : val, z.boolean().optional()),
198
+ });
199
+ export const InvestorAccountExportFilters = IssuerInvestorAccountsFiltersZod.extend({
200
+ startDate: dateSchema.optional().openapi({ example: 'MM/DD/YYYY' }),
201
+ endDate: dateSchema.optional().openapi({ example: 'MM/DD/YYYY' }),
202
+ });
203
+ export const ComplianceInvestorAccountExportFilters = InvestorAccountsFiltersZod.extend({
204
+ startDate: dateSchema.optional().openapi({ example: 'MM/DD/YYYY' }),
205
+ endDate: dateSchema.optional().openapi({ example: 'MM/DD/YYYY' }),
206
+ }).merge(InvestorAccountsSortZod);
207
+ export const AmlReviewDetailsZod = z.object({
208
+ firstName: z.string(),
209
+ lastName: z.string().nullable(),
210
+ tid: z.string().nullable(),
211
+ provider: z.nativeEnum(AMLProvider).nullable(),
212
+ dashboardLink: z.string().nullable(),
213
+ reportLink: z.string().nullable(),
214
+ reviewedBy: z.lazy(() => UserZod.nullable()),
215
+ reviewedStatus: z.nativeEnum(AMLStatus),
216
+ reviewedAt: z.date().nullable(),
217
+ });
218
+ export const KycReviewDetailsZod = z.object({
219
+ firstName: z.string().nullable(),
220
+ lastName: z.string().nullable(),
221
+ documentType: z.string(),
222
+ documentIssuer: z.string().nullable(),
223
+ documentNumber: z.string().nullable(),
224
+ issuedDate: z.string().nullable(),
225
+ expiredDate: z.string().nullable(),
226
+ reviewedBy: z.lazy(() => UserZod.nullable()),
227
+ reviewedStatus: z.nativeEnum(KYCStatus),
228
+ });
229
+ export const AicReviewDetailsZod = z.object({
230
+ accreditationType: z.string(),
231
+ expirationDate: z.date().nullable(),
232
+ });
233
+ export var InvestorAccountDetailsType;
234
+ (function (InvestorAccountDetailsType) {
235
+ InvestorAccountDetailsType["AML"] = "AML";
236
+ InvestorAccountDetailsType["KYC"] = "KYC";
237
+ InvestorAccountDetailsType["AIC"] = "AIC";
238
+ })(InvestorAccountDetailsType || (InvestorAccountDetailsType = {}));
239
+ export const GetInvestorAccountDetailsQuery = z.object({
240
+ type: z.nativeEnum(InvestorAccountDetailsType),
241
+ individualId: z.lazy(() => individualIdSchema),
242
+ });
243
+ export const RegisteredInvestorUserZod = z.object({
244
+ id: z.string(),
245
+ email: z.string().email(),
246
+ name: z.string(),
247
+ userType: z.nativeEnum(UserType).nullable(),
248
+ numberOfTrades: z.number().default(0),
249
+ invested: z.number().default(0),
250
+ createdAt: z.date(),
251
+ });
252
+ export const IPaginatedRegisteredInvestorUserZod = z.object({
253
+ items: z.array(RegisteredInvestorUserZod),
254
+ meta: IPaginationMeta,
255
+ });
256
+ /**
257
+ * Schema for raw query result from queryRegisteredInvestorUsers
258
+ * Matches the structure returned by getRawMany() with JSON aggregations.
259
+ * PostgreSQL/TypeORM automatically parses JSON fields, so they come as arrays.
260
+ */
261
+ const IndividualAggregationZod = z.object({
262
+ id: z.lazy(() => individualIdSchema),
263
+ phone: z.lazy(() => PhoneZodSchema),
264
+ firstName: z.string().nullable(),
265
+ lastName: z.string().nullable(),
266
+ });
267
+ const LegalEntityAggregationZod = z.object({
268
+ id: z.lazy(() => legalEntityIdSchema),
269
+ phone: z.lazy(() => PhoneZodSchema),
270
+ name: z.string().nullable(),
271
+ });
272
+ export const RegisteredInvestorUserRawZod = z.object({
273
+ id: z.lazy(() => userIdSchema),
274
+ name: z.string(),
275
+ email: z.string().email(),
276
+ investorAccountType: z.nativeEnum(InvestorAccountType).nullable(),
277
+ numberOfTrades: z.coerce.number().default(0),
278
+ invested: z.coerce.number().default(0),
279
+ createdAt: z.coerce.date(),
280
+ type: z.nativeEnum(UserType).nullable(),
281
+ investorAccountId: z.string().nullable(),
282
+ individuals: z.array(IndividualAggregationZod),
283
+ legalEntities: z.array(LegalEntityAggregationZod),
284
+ });
285
+ export const RegisteredInvestorUserFiltersZod = z.object({
286
+ search: z.string().optional().openapi({ example: 'John Doe' }),
287
+ startDate: dateSchema.optional().openapi({ example: 'MM/DD/YYYY' }),
288
+ endDate: dateSchema.optional().openapi({ example: 'MM/DD/YYYY' }),
289
+ userType: z
290
+ .nativeEnum(UserType)
291
+ .optional()
292
+ .openapi({ example: UserType.INVESTOR }),
293
+ });
294
+ export const ExportInvestorAccountsResponse = z.object({
295
+ message: z.string(),
296
+ });
297
+ export const IndividualsValidationResponseZod = z.object({
298
+ errors: ErrorResponseZod,
299
+ regDFieldStatus: z.boolean(),
300
+ });
301
+ export const BaseIndividualValidationSchemaZod = z
302
+ .object({
303
+ lastName: z.string({ message: 'Last Name is required' }),
304
+ firstName: z.string({ message: 'First Name is required' }),
305
+ dob: z.coerce.date({ required_error: 'Date of Birth is required' }),
306
+ phone: PhoneZodSchema,
307
+ email: z.string().email('Email is required'),
308
+ ownership: numberFromStringOrNumber('Ownership').pipe(z.number().min(0, { message: 'Ownership is required' })),
309
+ liquidNetWorth: numberFromStringOrNumber('Liquid Net Worth').pipe(z.number().min(0, { message: 'Liquid Net Worth is required' })),
310
+ currentAnnualIncome: numberFromStringOrNumber('Current Annual Income').pipe(z.number().min(0, { message: 'Current Annual Income is required' })),
311
+ employerName: z.string().nullable().optional(),
312
+ sourceOfIncome: z.nativeEnum(SourceOfIncome, {
313
+ message: 'Source of Income is required',
314
+ }),
315
+ kycDocumentType: z.nativeEnum(KYCDocumentType, {
316
+ required_error: 'KYC Document Type is required',
317
+ }),
318
+ kycDocumentIssuer: z.string({ message: 'KYC Document Issuer is required' }),
319
+ kycExpirationDate: z.coerce.date({
320
+ required_error: 'KYC Expiration Date is required',
321
+ }),
322
+ kycIssuerDate: z.coerce.date({
323
+ required_error: 'KYC Issuer Date is required',
324
+ }),
325
+ kycDocumentNumber: z.string({ message: 'KYC Document Number is required' }),
326
+ kycStatus: z.nativeEnum(KYCStatus, {
327
+ required_error: 'KYC Status is required',
328
+ }),
329
+ kycProvider: z.string({ message: 'KYC Provider is required' }),
330
+ kycTid: z.string({ message: 'KYC TID is required' }),
331
+ })
332
+ .and(RequiredAddressSchema)
333
+ .superRefine((data, ctx) => {
334
+ if (data.sourceOfIncome === SourceOfIncome.EMPLOYED) {
335
+ if (!data.employerName || (typeof data.employerName === 'string' && data.employerName.trim() === '')) {
336
+ ctx.addIssue({
337
+ code: z.ZodIssueCode.custom,
338
+ message: 'Employer Name is required when Source of Income is Employed',
339
+ path: ['employerName'],
340
+ });
341
+ }
342
+ }
343
+ });
344
+ // Schema for US citizens or green card holders
345
+ export const UsCitizenSchemaZod = z.object({
346
+ ssn: z
347
+ .string()
348
+ .min(1, 'SSN is required for US citizens or green card holders')
349
+ .regex(/^(\d{3}-\d{2}-\d{4}|\d{9})$/, 'SSN must be 9 digits'),
350
+ });
351
+ // Schema for custodian managed retirement accounts
352
+ export const CustodianManagedRetirementSchemaZod = z.object({
353
+ retirementAccountType: z.nativeEnum(RetirementAccountType, {
354
+ required_error: 'Retirement Account Type is required',
355
+ }),
356
+ custodianName: z.string().min(1, 'Custodian Name is required'),
357
+ custodianAccountNumber: z
358
+ .string()
359
+ .min(1, 'Custodian Account Number is required'),
360
+ custodianRepresentativeName: z
361
+ .string()
362
+ .min(1, 'Custodian Representative Name is required'),
363
+ custodianEmail: z.string().email('Custodian Email is required'),
364
+ });
365
+ export const SystemReviewLogZod = z.object({
366
+ regA: ErrorResponseZod,
367
+ regCf: ErrorResponseZod,
368
+ regD: ErrorResponseZod,
369
+ });
370
+ export var SeedType;
371
+ (function (SeedType) {
372
+ SeedType["SYSTEM"] = "SYSTEM";
373
+ SeedType["EXTERNAL"] = "EXTERNAL";
374
+ })(SeedType || (SeedType = {}));
375
+ export const SeedInvestorAccountsForDemoUsersZod = z.object({
376
+ accountId: z.lazy(() => accountIdSchema),
377
+ seedType: z.nativeEnum(SeedType),
378
+ });
379
+ export const SeedTradeCsvRowZod = z.object({
380
+ id: z.lazy(() => tradeIdSchema),
381
+ tradeType: z.nativeEnum(TradeType).openapi({ example: TradeType.PURCHASE }),
382
+ issuer: z.string(),
383
+ offering: z.string(),
384
+ asset: z.string(),
385
+ numberOfShares: numberFromStringOrNumber('Number of Shares').pipe(z.number().int().min(1, { message: 'Number of Shares is required' })),
386
+ pricePerShare: numberFromStringOrNumber('Price Per Share').pipe(z.number().min(0, { message: 'Price Per Share is required' })),
387
+ totalAmount: numberFromStringOrNumber('Total Amount').pipe(z.number().min(0, { message: 'Total Amount is required' })),
388
+ tradeStatus: z.nativeEnum(TradeStatus).openapi({ example: TradeStatus.CART }),
389
+ placedAt: z.coerce.date(),
390
+ ip: z.string().ip(),
391
+ subAgreementStatus: z.nativeEnum(SaStatus),
392
+ subAgreementFile: z.string().url(),
393
+ tradeLog: z.string().nullable().optional(),
394
+ });
395
+ export const SeedTransactionCsvRowZod = z.object({
396
+ txnId: z.string().nullable().optional(),
397
+ txnResponse: z.string().nullable().optional(),
398
+ txnPaymentMethod: z.nativeEnum(PaymentMethodType),
399
+ txnCurrencyCode: z.string().nullable().optional(),
400
+ txnChargedAmount: numberFromStringOrNumber('Transaction Charged Amount').pipe(z.number().min(0, { message: 'Transaction Charged Amount is required' })),
401
+ txnDate: z
402
+ .string()
403
+ .transform((val) => (val === '' ? null : val))
404
+ .pipe(z.coerce.date())
405
+ .nullable()
406
+ .optional(),
407
+ txnSettledDate: z
408
+ .string()
409
+ .transform((val) => (val === '' ? null : val))
410
+ .pipe(z.coerce.date())
411
+ .nullable()
412
+ .optional(),
413
+ txnStatus: z.nativeEnum(TransactionStatus),
414
+ txnLog: z.string().nullable().optional(),
415
+ });
416
+ export const AdministrativeFieldsCsvRowZod = z.object({
417
+ closedAt: z.coerce.date().nullable().optional(),
418
+ cancellationPeriod: z.string().nullable().optional(),
419
+ cancelledAt: z.coerce.date().nullable().optional(),
420
+ cancelledReason: z.string().nullable().optional(),
421
+ rejectionReason: z.string().nullable().optional(),
422
+ registeredRep: z.string().nullable().optional(),
423
+ });
424
+ export const InvestorAccountCsvRowZod = z.object({
425
+ investorAccountId: z.lazy(() => investorAccountIdSchema),
426
+ email: z.string().email(),
427
+ name: z.string(),
428
+ investorAccountType: z.nativeEnum(InvestorAccountType),
429
+ });
430
+ export const PrimaryIndividualCsvRowZod = z
431
+ .object({
432
+ primary_id: z.string(),
433
+ primary_kycFirstName: z.string(),
434
+ primary_kycLastName: z.string(),
435
+ primary_kycDocumentType: z.nativeEnum(KYCDocumentType),
436
+ primary_kycProviderId: z.string(),
437
+ primary_kycDocumentNumber: z.string(),
438
+ primary_kycDocumentIssuer: z.string(),
439
+ primary_kycIssuerDate: dateSchemaWithNormalization,
440
+ primary_kycExpirationDate: dateSchemaWithNormalization,
441
+ primary_kycCheckedAt: z.coerce.date(),
442
+ primary_kycStatus: z.nativeEnum(KYCStatus),
443
+ primary_kycLog: z.string(),
444
+ primary_kycProvider: z.string(),
445
+ primary_firstName: z.string(),
446
+ primary_lastName: z.string(),
447
+ primary_dob: dateSchemaWithNormalization,
448
+ primary_ssn: z.string().regex(/^\d{9}$/, 'SSN must be 9 digits'),
449
+ primary_address: z.string().min(2, 'Address must be at least 2 characters'),
450
+ primary_address2: z
451
+ .string()
452
+ .max(100, 'Address2 cannot exceed 100 characters')
453
+ .nullable()
454
+ .optional(),
455
+ primary_city: z
456
+ .string()
457
+ .min(2, 'City must be at least 2 characters')
458
+ .max(50, 'City cannot exceed 50 characters'),
459
+ primary_state: z.string().min(2, 'State must be at least 2 characters'),
460
+ primary_zip: z.string().min(5, 'Zip must be at least 5 characters'),
461
+ primary_country: z.string().min(2, 'Country must be at least 2 characters'),
462
+ primary_email: z.string().email(),
463
+ primary_phone: PhoneZodSchema,
464
+ primary_citizenship: z
465
+ .string()
466
+ .min(2, 'Citizenship must be at least 2 characters'),
467
+ primary_currentAnnualIncome: numberFromStringOrNumber('Primary Current Annual Income').pipe(z
468
+ .number()
469
+ .min(0, { message: 'Primary Current Annual Income is required' })),
470
+ primary_currentHouseholdIncome: numberFromStringOrNumber('Primary Current Household Income').pipe(z
471
+ .number()
472
+ .min(0, { message: 'Primary Current Household Income is required' })),
473
+ primary_householdNetWorth: numberFromStringOrNumber('Primary Household Net Worth').pipe(z.number().min(0, { message: 'Primary Household Net Worth is required' })),
474
+ primary_liquidNetWorth: numberFromStringOrNumber('Primary Liquid Net Worth').pipe(z.number().min(0, { message: 'Primary Liquid Net Worth is required' })),
475
+ primary_investedInCrowdfunding: numberFromStringOrNumber('Primary Invested In Crowdfunding').pipe(z
476
+ .number()
477
+ .min(0, { message: 'Primary Invested In Crowdfunding is required' })),
478
+ primary_occupation: z.string().nullable().optional(),
479
+ primary_employmentStatus: z.nativeEnum(EmploymentStatus),
480
+ primary_employerName: z.string(),
481
+ primary_sourceOfIncome: z.nativeEnum(SourceOfIncome),
482
+ primary_isUsCitizenOrGreenCardHolder: z.coerce.boolean(),
483
+ primary_accredited: z.coerce.boolean(),
484
+ })
485
+ .refine(({ primary_state, primary_country }) => {
486
+ if (primary_country === CountryCode['US']) {
487
+ return z.nativeEnum(StateCode).safeParse(primary_state).success;
488
+ }
489
+ if (primary_country === CountryCode['CA']) {
490
+ return z.nativeEnum(CanadaProvinceCode).safeParse(primary_state)
491
+ .success;
492
+ }
493
+ return z.string().min(2).max(35).safeParse(primary_state).success;
494
+ }, {
495
+ message: `state value is not valid. It should be 2 uppercase letters representing the valid state for the country.`,
496
+ })
497
+ .refine(({ primary_zip, primary_country }) => refineAddressZip(primary_country, primary_zip), {
498
+ message: 'zip value is not valid, it shall follow the US(12345 or 12345-6789), CANADA(A1A 1A1) format! it shall be a string for other states',
499
+ });
500
+ export const JointIndividualCsvRowZod = z
501
+ .object({
502
+ joint_id: z.string(),
503
+ joint_kycFirstName: z.string(),
504
+ joint_kycLastName: z.string(),
505
+ joint_kycDocumentType: z.nativeEnum(KYCDocumentType),
506
+ joint_kycDocumentIssuer: z.string(),
507
+ joint_kycDocumentNumber: z.string(),
508
+ joint_kycIssuerDate: dateSchemaWithNormalization,
509
+ joint_kycExpirationDate: dateSchemaWithNormalization,
510
+ joint_kycCheckedAt: z.string(),
511
+ joint_kycStatus: z.nativeEnum(KYCStatus),
512
+ joint_kycLog: z.string(),
513
+ joint_kycProviderId: z.string(),
514
+ joint_kycProvider: z.string(),
515
+ joint_firstName: z.string(),
516
+ joint_lastName: z.string(),
517
+ joint_dob: dateSchemaWithNormalization,
518
+ joint_ssn: z.string().regex(/^\d{9}$/, 'SSN must be 9 digits'),
519
+ joint_address: z.string().min(2, 'Address must be at least 2 characters'),
520
+ joint_address2: z
521
+ .string()
522
+ .max(100, 'Address2 cannot exceed 100 characters')
523
+ .nullable()
524
+ .optional(),
525
+ joint_city: z
526
+ .string()
527
+ .min(2, 'City must be at least 2 characters')
528
+ .max(50, 'City cannot exceed 50 characters'),
529
+ joint_state: z.string().min(2, 'State must be at least 2 characters'),
530
+ joint_zip: z.string().min(5, 'Zip must be at least 5 characters'),
531
+ joint_country: z.string().min(2, 'Country must be at least 2 characters'),
532
+ joint_email: z.string().email(),
533
+ joint_phone: PhoneZodSchema,
534
+ joint_citizenship: z
535
+ .string()
536
+ .min(2, 'Citizenship must be at least 2 characters'),
537
+ joint_currentAnnualIncome: numberFromStringOrNumber('Joint Current Annual Income').pipe(z.number().min(0, { message: 'Joint Current Annual Income is required' })),
538
+ joint_currentHouseholdIncome: numberFromStringOrNumber('Joint Current Household Income').pipe(z
539
+ .number()
540
+ .min(0, { message: 'Joint Current Household Income is required' })),
541
+ joint_householdNetWorth: numberFromStringOrNumber('Joint Household Net Worth').pipe(z.number().min(0, { message: 'Joint Household Net Worth is required' })),
542
+ joint_liquidNetWorth: numberFromStringOrNumber('Joint Liquid Net Worth').pipe(z.number().min(0, { message: 'Joint Liquid Net Worth is required' })),
543
+ joint_investedInCrowdfunding: numberFromStringOrNumber('Joint Invested In Crowdfunding').pipe(z
544
+ .number()
545
+ .min(0, { message: 'Joint Invested In Crowdfunding is required' })),
546
+ joint_occupation: z.string().nullable().optional(),
547
+ joint_employmentStatus: z.nativeEnum(EmploymentStatus),
548
+ joint_employerName: z.string(),
549
+ joint_sourceOfIncome: z.nativeEnum(SourceOfIncome),
550
+ joint_isUsCitizenOrGreenCardHolder: z.coerce.boolean(),
551
+ joint_accredited: z.coerce.boolean(),
552
+ })
553
+ .refine(({ joint_state, joint_country }) => {
554
+ if (joint_country === CountryCode['US']) {
555
+ return z.nativeEnum(StateCode).safeParse(joint_state).success;
556
+ }
557
+ if (joint_country === CountryCode['CA']) {
558
+ return z.nativeEnum(CanadaProvinceCode).safeParse(joint_state).success;
559
+ }
560
+ return z.string().min(2).max(35).safeParse(joint_state).success;
561
+ }, {
562
+ message: `state value is not valid. It should be 2 uppercase letters representing the valid state for the country.`,
563
+ })
564
+ .refine(({ joint_zip, joint_country }) => refineAddressZip(joint_country, joint_zip), {
565
+ message: 'zip value is not valid, it shall follow the US(12345 or 12345-6789), CANADA(A1A 1A1) format! it shall be a string for other states',
566
+ });
567
+ export const LegalEntityCsvRowZod = z
568
+ .object({
569
+ entity_id: z.string(),
570
+ entity_name: z.string(),
571
+ entity_ein: z.string(),
572
+ entity_entityType: z.string(),
573
+ entity_address: z.string().min(2, 'Address must be at least 2 characters'),
574
+ entity_address2: z
575
+ .string()
576
+ .max(100, 'Address2 cannot exceed 100 characters')
577
+ .nullable()
578
+ .optional(),
579
+ entity_city: z
580
+ .string()
581
+ .min(2, 'City must be at least 2 characters')
582
+ .max(50, 'City cannot exceed 50 characters'),
583
+ entity_state: z.string().min(2, 'State must be at least 2 characters'),
584
+ entity_zip: z.string().min(5, 'Zip must be at least 5 characters'),
585
+ entity_country: z.string().min(2, 'Country must be at least 2 characters'),
586
+ entity_dateOfIncorporation: dateSchemaWithNormalization,
587
+ entity_stateOfIncorporation: z
588
+ .string()
589
+ .min(2, 'State must be at least 2 characters'),
590
+ entity_phone: PhoneZodSchema,
591
+ })
592
+ .refine(({ entity_state, entity_country }) => {
593
+ if (entity_country === CountryCode['US']) {
594
+ return z.nativeEnum(StateCode).safeParse(entity_state).success;
595
+ }
596
+ if (entity_country === CountryCode['CA']) {
597
+ return z.nativeEnum(CanadaProvinceCode).safeParse(entity_state).success;
598
+ }
599
+ return z.string().min(2).max(35).safeParse(entity_state).success;
600
+ }, {
601
+ message: `state value is not valid. It should be 2 uppercase letters representing the valid state for the country.`,
602
+ })
603
+ .refine(({ entity_zip, entity_country }) => refineAddressZip(entity_country, entity_zip), {
604
+ message: 'zip value is not valid, it shall follow the US(12345 or 12345-6789), CANADA(A1A 1A1) format! it shall be a string for other states',
605
+ });
606
+ export const RetirementAccountTypeCsvRowZod = z.object({
607
+ retirement_accountType: z.nativeEnum(RetirementAccountType),
608
+ retirement_custodianName: z.string(),
609
+ retirement_custodianAccountNumber: z.string(),
610
+ retirement_custodianRepresentativeName: z.string(),
611
+ retirement_custodianEmail: z.string().email(),
612
+ });
613
+ export const IParsedSeedDataZod = z.object({
614
+ ...SeedTradeCsvRowZod.shape,
615
+ ...SeedTransactionCsvRowZod.shape,
616
+ ...AdministrativeFieldsCsvRowZod.shape,
617
+ ...InvestorAccountCsvRowZod.shape,
618
+ primary_id: z.string(),
619
+ primary_kycFirstName: z.string(),
620
+ primary_kycLastName: z.string(),
621
+ primary_kycDocumentType: z.nativeEnum(KYCDocumentType),
622
+ primary_kycProviderId: z.string(),
623
+ primary_kycDocumentNumber: z.string(),
624
+ primary_kycDocumentIssuer: z.string(),
625
+ primary_kycIssuerDate: z.string(),
626
+ primary_kycExpirationDate: z.string(),
627
+ primary_kycCheckedAt: z.coerce.date(),
628
+ primary_kycStatus: z.nativeEnum(KYCStatus),
629
+ primary_kycLog: z.string(),
630
+ primary_kycProvider: z.string(),
631
+ primary_firstName: z.string(),
632
+ primary_lastName: z.string(),
633
+ primary_dob: z.string(),
634
+ primary_ssn: z.string().regex(/^\d{9}$/, 'SSN must be 9 digits'),
635
+ primary_address: z.string().min(2, 'Address must be at least 2 characters'),
636
+ primary_address2: z
637
+ .string()
638
+ .max(100, 'Address2 cannot exceed 100 characters')
639
+ .nullable()
640
+ .optional(),
641
+ primary_city: z
642
+ .string()
643
+ .min(2, 'City must be at least 2 characters')
644
+ .max(50, 'City cannot exceed 50 characters'),
645
+ primary_state: z.string().min(2, 'State must be at least 2 characters'),
646
+ primary_zip: z.string().min(5, 'Zip must be at least 5 characters'),
647
+ primary_country: z.string().min(2, 'Country must be at least 2 characters'),
648
+ primary_email: z.string().email(),
649
+ primary_phone: PhoneZodSchema,
650
+ primary_citizenship: z
651
+ .string()
652
+ .min(2, 'Citizenship must be at least 2 characters'),
653
+ primary_currentAnnualIncome: numberFromStringOrNumber('Primary Current Annual Income').pipe(z.number().min(0, { message: 'Primary Current Annual Income is required' })),
654
+ primary_currentHouseholdIncome: numberFromStringOrNumber('Primary Current Household Income').pipe(z
655
+ .number()
656
+ .min(0, { message: 'Primary Current Household Income is required' })),
657
+ primary_householdNetWorth: numberFromStringOrNumber('Primary Household Net Worth').pipe(z.number().min(0, { message: 'Primary Household Net Worth is required' })),
658
+ primary_liquidNetWorth: numberFromStringOrNumber('Primary Liquid Net Worth').pipe(z.number().min(0, { message: 'Primary Liquid Net Worth is required' })),
659
+ primary_investedInCrowdfunding: numberFromStringOrNumber('Primary Invested In Crowdfunding').pipe(z
660
+ .number()
661
+ .min(0, { message: 'Primary Invested In Crowdfunding is required' })),
662
+ primary_occupation: z.string().nullable().optional(),
663
+ primary_employmentStatus: z.nativeEnum(EmploymentStatus),
664
+ primary_employerName: z.string(),
665
+ primary_sourceOfIncome: z.nativeEnum(SourceOfIncome),
666
+ primary_isUsCitizenOrGreenCardHolder: z.coerce.boolean(),
667
+ primary_accredited: z.coerce.boolean(),
668
+ joint_id: z.string().nullable().optional(),
669
+ joint_kycFirstName: z.string().nullable().optional(),
670
+ joint_kycLastName: z.string().nullable().optional(),
671
+ joint_kycDocumentType: z.nativeEnum(KYCDocumentType).nullable().optional(),
672
+ joint_kycDocumentIssuer: z.string().nullable().optional(),
673
+ joint_kycDocumentNumber: z.string().nullable().optional(),
674
+ joint_kycIssuerDate: dateSchemaWithNormalization.nullable().optional(),
675
+ joint_kycExpirationDate: dateSchemaWithNormalization.nullable().optional(),
676
+ joint_kycCheckedAt: z.string().nullable().optional(),
677
+ joint_kycStatus: z.nativeEnum(KYCStatus).nullable().optional(),
678
+ joint_kycLog: z.string().nullable().optional(),
679
+ joint_kycProviderId: z.string().nullable().optional(),
680
+ joint_kycProvider: z.string().nullable().optional(),
681
+ joint_firstName: z.string().nullable().optional(),
682
+ joint_lastName: z.string().nullable().optional(),
683
+ joint_dob: dateSchemaWithNormalization.nullable().optional(),
684
+ joint_ssn: z
685
+ .string()
686
+ .regex(/^\d{9}$/, 'SSN must be 9 digits')
687
+ .nullable()
688
+ .optional(),
689
+ joint_address: z
690
+ .string()
691
+ .min(2, 'Address must be at least 2 characters')
692
+ .nullable()
693
+ .optional(),
694
+ joint_address2: z
695
+ .string()
696
+ .max(100, 'Address2 cannot exceed 100 characters')
697
+ .nullable()
698
+ .optional(),
699
+ joint_city: z
700
+ .string()
701
+ .min(2, 'City must be at least 2 characters')
702
+ .max(50, 'City cannot exceed 50 characters')
703
+ .nullable()
704
+ .optional(),
705
+ joint_state: z
706
+ .string()
707
+ .min(2, 'State must be at least 2 characters')
708
+ .nullable()
709
+ .optional(),
710
+ joint_zip: z
711
+ .string()
712
+ .min(5, 'Zip must be at least 5 characters')
713
+ .nullable()
714
+ .optional(),
715
+ joint_country: z
716
+ .string()
717
+ .min(2, 'Country must be at least 2 characters')
718
+ .nullable()
719
+ .optional(),
720
+ joint_email: z.string().email().nullable().optional(),
721
+ joint_phone: PhoneZodSchema.nullable().optional(),
722
+ joint_citizenship: z
723
+ .string()
724
+ .min(2, 'Citizenship must be at least 2 characters')
725
+ .nullable()
726
+ .optional(),
727
+ joint_currentAnnualIncome: numberFromStringOrNumber('Joint Current Annual Income')
728
+ .pipe(z.number().min(0, { message: 'Joint Current Annual Income is required' }))
729
+ .nullable()
730
+ .optional(),
731
+ joint_currentHouseholdIncome: numberFromStringOrNumber('Joint Current Household Income')
732
+ .pipe(z
733
+ .number()
734
+ .min(0, { message: 'Joint Current Household Income is required' }))
735
+ .nullable()
736
+ .optional(),
737
+ joint_householdNetWorth: numberFromStringOrNumber('Joint Household Net Worth')
738
+ .pipe(z.number().min(0, { message: 'Joint Household Net Worth is required' }))
739
+ .nullable()
740
+ .optional(),
741
+ joint_liquidNetWorth: numberFromStringOrNumber('Joint Liquid Net Worth')
742
+ .pipe(z.number().min(0, { message: 'Joint Liquid Net Worth is required' }))
743
+ .nullable()
744
+ .optional(),
745
+ joint_investedInCrowdfunding: numberFromStringOrNumber('Joint Invested In Crowdfunding')
746
+ .pipe(z
747
+ .number()
748
+ .min(0, { message: 'Joint Invested In Crowdfunding is required' }))
749
+ .nullable()
750
+ .optional(),
751
+ joint_occupation: z.string().nullable().optional(),
752
+ joint_employmentStatus: z.nativeEnum(EmploymentStatus).nullable().optional(),
753
+ joint_employerName: z.string().nullable().optional(),
754
+ joint_sourceOfIncome: z.nativeEnum(SourceOfIncome).nullable().optional(),
755
+ joint_isUsCitizenOrGreenCardHolder: z.coerce.boolean().nullable().optional(),
756
+ joint_accredited: z.coerce.boolean().nullable().optional(),
757
+ entity_id: z.string().nullable().optional(),
758
+ entity_name: z.string().nullable().optional(),
759
+ entity_ein: z.string().nullable().optional(),
760
+ entity_entityType: z.string().nullable().optional(),
761
+ entity_address: z
762
+ .string()
763
+ .min(2, 'Address must be at least 2 characters')
764
+ .nullable()
765
+ .optional(),
766
+ entity_address2: z
767
+ .string()
768
+ .max(100, 'Address2 cannot exceed 100 characters')
769
+ .nullable()
770
+ .optional(),
771
+ entity_city: z
772
+ .string()
773
+ .min(2, 'City must be at least 2 characters')
774
+ .max(50, 'City cannot exceed 50 characters')
775
+ .nullable()
776
+ .optional(),
777
+ entity_state: z
778
+ .string()
779
+ .min(2, 'State must be at least 2 characters')
780
+ .nullable()
781
+ .optional(),
782
+ entity_zip: z
783
+ .string()
784
+ .min(5, 'Zip must be at least 5 characters')
785
+ .nullable()
786
+ .optional(),
787
+ entity_country: z
788
+ .string()
789
+ .min(2, 'Country must be at least 2 characters')
790
+ .nullable()
791
+ .optional(),
792
+ entity_dateOfIncorporation: dateSchemaWithNormalization.nullable().optional(),
793
+ entity_stateOfIncorporation: z
794
+ .string()
795
+ .min(2, 'State must be at least 2 characters')
796
+ .nullable()
797
+ .optional(),
798
+ entity_phone: PhoneZodSchema.nullable().optional(),
799
+ retirement_accountType: z
800
+ .nativeEnum(RetirementAccountType)
801
+ .nullable()
802
+ .optional(),
803
+ retirement_custodianName: z.string().nullable().optional(),
804
+ retirement_custodianAccountNumber: z.string().nullable().optional(),
805
+ retirement_custodianRepresentativeName: z.string().nullable().optional(),
806
+ retirement_custodianEmail: z.string().email().nullable().optional(),
807
+ });
808
+ export const GetInvestorAccountsFilters = PaginationOptionsZod.merge(InvestorAccountsIncludeQuery).merge(InvestorAccountsFilters);
809
+ export const InvestorStatusCheckZod = z.object({
810
+ entity: z
811
+ .object({
812
+ information: z.boolean().default(true),
813
+ address: z.boolean().default(true),
814
+ })
815
+ .optional(),
816
+ primary: z
817
+ .object({
818
+ account: z.boolean().default(true),
819
+ personal: z.boolean().default(true),
820
+ residential: z.boolean().default(true),
821
+ identity: z.boolean().default(true),
822
+ financial: z.boolean().default(true),
823
+ investorQuestionnaire: z.boolean().default(true),
824
+ accreditation: z.boolean().default(true),
825
+ trustedContact: z.boolean().default(true),
826
+ retirement: z.boolean().optional(),
827
+ })
828
+ .optional(),
829
+ secondary: z
830
+ .object({
831
+ personal: z.boolean().default(true),
832
+ residential: z.boolean().default(true),
833
+ identity: z.boolean().default(true),
834
+ financial: z.boolean().default(true),
835
+ })
836
+ .optional(),
837
+ });
838
+ export const INVESTOR_ACCOUNT_FIELDS_MAP = {
839
+ entity: {
840
+ information: [
841
+ 'companyType',
842
+ 'name',
843
+ 'ein',
844
+ 'dateOfIncorporation',
845
+ 'stateOfIncorporation',
846
+ ],
847
+ address: ['address', 'address2', 'city', 'zip', 'state', 'country'],
848
+ },
849
+ primary: {
850
+ account: ['investorAccountType', 'name', 'email'],
851
+ personal: [
852
+ 'firstName',
853
+ 'lastName',
854
+ 'email',
855
+ 'phoneNumber',
856
+ 'dob',
857
+ 'citizenship',
858
+ 'ssn',
859
+ ],
860
+ residential: [
861
+ 'address',
862
+ 'address2',
863
+ 'city',
864
+ 'postalCode',
865
+ 'state',
866
+ 'country',
867
+ ],
868
+ identity: [
869
+ 'kycDocumentType',
870
+ 'kycDocumentIssuer',
871
+ 'kycDocumentNumber',
872
+ 'kycIssuerDate',
873
+ 'kycExpirationDate',
874
+ 'kycStatus',
875
+ 'kycProvider',
876
+ 'kycTid',
877
+ ],
878
+ financial: [
879
+ 'liquidNetWorth',
880
+ 'currentAnnualIncome',
881
+ 'sourceOfIncome',
882
+ 'employerName',
883
+ ],
884
+ investorQuestionnaire: ['aicQuestionnaire'],
885
+ accreditation: ['accreditationFile'],
886
+ retirement: [
887
+ 'retirementAccountType',
888
+ 'retirementCustodianName',
889
+ 'retirementCustodianAccountNumber',
890
+ 'retirementCustodianRepresentativeName',
891
+ 'retirementCustodianEmail',
892
+ ],
893
+ },
894
+ secondary: {
895
+ personal: [
896
+ 'firstName',
897
+ 'lastName',
898
+ 'email',
899
+ 'phoneNumber',
900
+ 'dob',
901
+ 'citizenship',
902
+ 'ssn',
903
+ ],
904
+ residential: ['address', 'address2', 'city', 'zip', 'state', 'country'],
905
+ identity: [
906
+ 'kycDocumentType',
907
+ 'kycDocumentIssuer',
908
+ 'kycDocumentNumber',
909
+ 'kycIssuerDate',
910
+ 'kycExpirationDate',
911
+ 'kycStatus',
912
+ 'kycProvider',
913
+ 'kycTid',
914
+ ],
915
+ financial: [
916
+ 'liquidNetWorth',
917
+ 'currentAnnualIncome',
918
+ 'sourceOfIncome',
919
+ 'employerName',
920
+ ],
921
+ },
922
+ };
923
+ export const ExportRegisteredInvestorUsersFiltersZod = z.object({
924
+ search: z.string().optional(),
925
+ startDate: dateSchema.optional(),
926
+ endDate: dateSchema.optional(),
927
+ userType: z.nativeEnum(UserType).optional(),
928
+ });
929
+ //# sourceMappingURL=investor-account.types.js.map