@dalmore/api-contracts 0.0.0-dev.2dc8e92 → 0.0.0-dev.4545259

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 (700) hide show
  1. package/README.md +23 -19
  2. package/common/helpers/index.d.ts +50 -0
  3. package/common/helpers/index.js +136 -0
  4. package/common/helpers/index.js.map +1 -0
  5. package/common/types/account-contact.types.d.ts +485 -0
  6. package/common/types/account-contact.types.js +75 -0
  7. package/common/types/account-contact.types.js.map +1 -0
  8. package/common/types/account-detail.types.d.ts +304 -0
  9. package/common/types/account-detail.types.js +20 -0
  10. package/common/types/account-detail.types.js.map +1 -0
  11. package/common/types/account-integration.types.d.ts +242 -0
  12. package/common/types/account-integration.types.js +121 -0
  13. package/common/types/account-integration.types.js.map +1 -0
  14. package/common/types/account-manager.types.d.ts +917 -0
  15. package/common/types/account-manager.types.js +89 -0
  16. package/common/types/account-manager.types.js.map +1 -0
  17. package/common/types/account-setting.types.d.ts +140 -0
  18. package/common/types/account-setting.types.js +23 -0
  19. package/common/types/account-setting.types.js.map +1 -0
  20. package/common/types/account.types.d.ts +640 -0
  21. package/common/types/account.types.js +218 -0
  22. package/common/types/account.types.js.map +1 -0
  23. package/common/types/activity.types.d.ts +590 -0
  24. package/common/types/activity.types.js +258 -0
  25. package/common/types/activity.types.js.map +1 -0
  26. package/common/types/address.types.d.ts +89 -0
  27. package/common/types/address.types.js +36 -0
  28. package/common/types/address.types.js.map +1 -0
  29. package/common/types/aic.types.d.ts +434 -0
  30. package/common/types/aic.types.js +170 -0
  31. package/common/types/aic.types.js.map +1 -0
  32. package/common/types/aml.types.d.ts +41 -0
  33. package/common/types/aml.types.js +16 -0
  34. package/common/types/aml.types.js.map +1 -0
  35. package/common/types/api-key-logs.types.d.ts +204 -0
  36. package/common/types/api-key-logs.types.js +52 -0
  37. package/common/types/api-key-logs.types.js.map +1 -0
  38. package/common/types/api-keys.types.d.ts +192 -0
  39. package/common/types/api-keys.types.js +57 -0
  40. package/common/types/api-keys.types.js.map +1 -0
  41. package/common/types/asset.types.d.ts +1100 -0
  42. package/common/types/asset.types.js +353 -0
  43. package/common/types/asset.types.js.map +1 -0
  44. package/common/types/auth.types.d.ts +487 -0
  45. package/common/types/auth.types.js +279 -0
  46. package/common/types/auth.types.js.map +1 -0
  47. package/common/types/batch-jobs.types.d.ts +321 -0
  48. package/common/types/batch-jobs.types.js +111 -0
  49. package/common/types/batch-jobs.types.js.map +1 -0
  50. package/common/types/bonus-tier.types.d.ts +991 -0
  51. package/common/types/bonus-tier.types.js +166 -0
  52. package/common/types/bonus-tier.types.js.map +1 -0
  53. package/common/types/cap-table.types.d.ts +1139 -0
  54. package/common/types/cap-table.types.js +423 -0
  55. package/common/types/cap-table.types.js.map +1 -0
  56. package/common/types/cart.types.d.ts +28 -0
  57. package/common/types/cart.types.js +19 -0
  58. package/common/types/cart.types.js.map +1 -0
  59. package/common/types/checklist-items.types.d.ts +195 -0
  60. package/common/types/checklist-items.types.js +54 -0
  61. package/common/types/checklist-items.types.js.map +1 -0
  62. package/common/types/checklist.types.d.ts +140 -0
  63. package/common/types/checklist.types.js +71 -0
  64. package/common/types/checklist.types.js.map +1 -0
  65. package/common/types/common.types.d.ts +1851 -0
  66. package/common/types/common.types.js +1501 -0
  67. package/common/types/common.types.js.map +1 -0
  68. package/common/types/comply-advantage-api.types.d.ts +3626 -0
  69. package/common/types/comply-advantage-api.types.js +291 -0
  70. package/common/types/comply-advantage-api.types.js.map +1 -0
  71. package/common/types/comply-advantage.types.d.ts +48 -0
  72. package/common/types/comply-advantage.types.js +21 -0
  73. package/common/types/comply-advantage.types.js.map +1 -0
  74. package/common/types/contact-us.types.d.ts +126 -0
  75. package/common/types/contact-us.types.js +91 -0
  76. package/common/types/contact-us.types.js.map +1 -0
  77. package/common/types/countries.types.d.ts +77 -0
  78. package/common/types/countries.types.js +349 -0
  79. package/common/types/countries.types.js.map +1 -0
  80. package/common/types/covered-person.types.d.ts +204 -0
  81. package/common/types/covered-person.types.js +234 -0
  82. package/common/types/covered-person.types.js.map +1 -0
  83. package/common/types/dashboard.types.d.ts +2086 -0
  84. package/common/types/dashboard.types.js +690 -0
  85. package/common/types/dashboard.types.js.map +1 -0
  86. package/common/types/data-record.types.d.ts +347 -0
  87. package/common/types/data-record.types.js +261 -0
  88. package/common/types/data-record.types.js.map +1 -0
  89. package/common/types/data-room.types.d.ts +1277 -0
  90. package/common/types/data-room.types.js +167 -0
  91. package/common/types/data-room.types.js.map +1 -0
  92. package/common/types/default-theme-config.types.d.ts +445 -0
  93. package/common/types/default-theme-config.types.js +63 -0
  94. package/common/types/default-theme-config.types.js.map +1 -0
  95. package/common/types/disbursement-adjustment.types.d.ts +21 -0
  96. package/common/types/disbursement-adjustment.types.js +25 -0
  97. package/common/types/disbursement-adjustment.types.js.map +1 -0
  98. package/common/types/disbursement-approval-user.types.d.ts +935 -0
  99. package/common/types/disbursement-approval-user.types.js +68 -0
  100. package/common/types/disbursement-approval-user.types.js.map +1 -0
  101. package/common/types/disbursement-review.types.d.ts +923 -0
  102. package/common/types/disbursement-review.types.js +76 -0
  103. package/common/types/disbursement-review.types.js.map +1 -0
  104. package/common/types/disbursement-transaction.types.d.ts +621 -0
  105. package/common/types/disbursement-transaction.types.js +51 -0
  106. package/common/types/disbursement-transaction.types.js.map +1 -0
  107. package/common/types/disbursements.types.d.ts +3381 -0
  108. package/common/types/disbursements.types.js +408 -0
  109. package/common/types/disbursements.types.js.map +1 -0
  110. package/common/types/domain-filter.types.d.ts +135 -0
  111. package/common/types/domain-filter.types.js +40 -0
  112. package/common/types/domain-filter.types.js.map +1 -0
  113. package/common/types/email-theme.types.d.ts +1359 -0
  114. package/common/types/email-theme.types.js +318 -0
  115. package/common/types/email-theme.types.js.map +1 -0
  116. package/common/types/entity.types.d.ts +21 -0
  117. package/common/types/entity.types.js +14 -0
  118. package/common/types/entity.types.js.map +1 -0
  119. package/common/types/error-responses.types.d.ts +144 -0
  120. package/common/types/error-responses.types.js +125 -0
  121. package/common/types/error-responses.types.js.map +1 -0
  122. package/common/types/escrow-account.types.d.ts +415 -0
  123. package/common/types/escrow-account.types.js +78 -0
  124. package/common/types/escrow-account.types.js.map +1 -0
  125. package/common/types/exchange-api-key.types.d.ts +1010 -0
  126. package/common/types/exchange-api-key.types.js +90 -0
  127. package/common/types/exchange-api-key.types.js.map +1 -0
  128. package/common/types/exchange-import.types.d.ts +23 -0
  129. package/common/types/exchange-import.types.js +23 -0
  130. package/common/types/exchange-import.types.js.map +1 -0
  131. package/common/types/exchange-provider.types.d.ts +1308 -0
  132. package/common/types/exchange-provider.types.js +268 -0
  133. package/common/types/exchange-provider.types.js.map +1 -0
  134. package/common/types/file.types.d.ts +425 -0
  135. package/common/types/file.types.js +389 -0
  136. package/common/types/file.types.js.map +1 -0
  137. package/common/types/health.types.d.ts +112 -0
  138. package/common/types/health.types.js +22 -0
  139. package/common/types/health.types.js.map +1 -0
  140. package/common/types/i-will-do-it-later.types.d.ts +51 -0
  141. package/common/types/i-will-do-it-later.types.js +30 -0
  142. package/common/types/i-will-do-it-later.types.js.map +1 -0
  143. package/common/types/{index.ts → index.d.ts} +8 -3
  144. package/common/types/index.js +55 -0
  145. package/common/types/index.js.map +1 -0
  146. package/common/types/individuals.types.d.ts +1899 -0
  147. package/common/types/individuals.types.js +503 -0
  148. package/common/types/individuals.types.js.map +1 -0
  149. package/common/types/investor-account.types.d.ts +2996 -0
  150. package/common/types/investor-account.types.js +929 -0
  151. package/common/types/investor-account.types.js.map +1 -0
  152. package/common/types/investorAccountIdSchema.type.js +1 -0
  153. package/common/types/investorAccountIdSchema.type.js.map +1 -0
  154. package/common/types/investors-offering.types.d.ts +391 -0
  155. package/common/types/investors-offering.types.js +49 -0
  156. package/common/types/investors-offering.types.js.map +1 -0
  157. package/common/types/invite.types.d.ts +641 -0
  158. package/common/types/invite.types.js +113 -0
  159. package/common/types/invite.types.js.map +1 -0
  160. package/common/types/issuer-bank-account.types.d.ts +113 -0
  161. package/common/types/issuer-bank-account.types.js +81 -0
  162. package/common/types/issuer-bank-account.types.js.map +1 -0
  163. package/common/types/issuer-offering.types.d.ts +2065 -0
  164. package/common/types/issuer-offering.types.js +616 -0
  165. package/common/types/issuer-offering.types.js.map +1 -0
  166. package/common/types/issuer-payment-method.types.d.ts +1100 -0
  167. package/common/types/issuer-payment-method.types.js +311 -0
  168. package/common/types/issuer-payment-method.types.js.map +1 -0
  169. package/common/types/issuer.types.d.ts +539 -0
  170. package/common/types/issuer.types.js +275 -0
  171. package/common/types/issuer.types.js.map +1 -0
  172. package/common/types/job-item.types.d.ts +230 -0
  173. package/common/types/job-item.types.js +89 -0
  174. package/common/types/job-item.types.js.map +1 -0
  175. package/common/types/jobs.types.d.ts +296 -0
  176. package/common/types/jobs.types.js +150 -0
  177. package/common/types/jobs.types.js.map +1 -0
  178. package/common/types/kyb.types.d.ts +167 -0
  179. package/common/types/kyb.types.js +45 -0
  180. package/common/types/kyb.types.js.map +1 -0
  181. package/common/types/kyc.types.d.ts +2197 -0
  182. package/common/types/kyc.types.js +301 -0
  183. package/common/types/kyc.types.js.map +1 -0
  184. package/common/types/legal-entity.types.d.ts +638 -0
  185. package/common/types/legal-entity.types.js +148 -0
  186. package/common/types/legal-entity.types.js.map +1 -0
  187. package/common/types/login-history.types.d.ts +160 -0
  188. package/common/types/login-history.types.js +39 -0
  189. package/common/types/login-history.types.js.map +1 -0
  190. package/common/types/mail-template.types.d.ts +595 -0
  191. package/common/types/mail-template.types.js +401 -0
  192. package/common/types/mail-template.types.js.map +1 -0
  193. package/common/types/north-cap-integration.types.d.ts +1303 -0
  194. package/common/types/north-cap-integration.types.js +145 -0
  195. package/common/types/north-cap-integration.types.js.map +1 -0
  196. package/common/types/note.types.d.ts +216 -0
  197. package/common/types/note.types.js +82 -0
  198. package/common/types/note.types.js.map +1 -0
  199. package/common/types/notification.types.d.ts +2689 -0
  200. package/common/types/notification.types.js +408 -0
  201. package/common/types/notification.types.js.map +1 -0
  202. package/common/types/notion-api.types.d.ts +3626 -0
  203. package/common/types/notion-api.types.js +271 -0
  204. package/common/types/notion-api.types.js.map +1 -0
  205. package/common/types/notion-database.types.d.ts +191 -0
  206. package/common/types/notion-database.types.js +95 -0
  207. package/common/types/notion-database.types.js.map +1 -0
  208. package/common/types/notion-page.types.d.ts +3482 -0
  209. package/common/types/notion-page.types.js +208 -0
  210. package/common/types/notion-page.types.js.map +1 -0
  211. package/common/types/offering-reports.types.d.ts +525 -0
  212. package/common/types/offering-reports.types.js +111 -0
  213. package/common/types/offering-reports.types.js.map +1 -0
  214. package/common/types/offering-submission.types.d.ts +785 -0
  215. package/common/types/offering-submission.types.js +291 -0
  216. package/common/types/offering-submission.types.js.map +1 -0
  217. package/common/types/offering.types.d.ts +2849 -0
  218. package/common/types/offering.types.js +803 -0
  219. package/common/types/offering.types.js.map +1 -0
  220. package/common/types/page-revision.types.d.ts +74 -0
  221. package/common/types/page-revision.types.js +68 -0
  222. package/common/types/page-revision.types.js.map +1 -0
  223. package/common/types/page.types.d.ts +540 -0
  224. package/common/types/page.types.js +361 -0
  225. package/common/types/page.types.js.map +1 -0
  226. package/common/types/password.type.d.ts +2 -0
  227. package/common/types/password.type.js +14 -0
  228. package/common/types/password.type.js.map +1 -0
  229. package/common/types/payment-methods.types.d.ts +800 -0
  230. package/common/types/payment-methods.types.js +260 -0
  231. package/common/types/payment-methods.types.js.map +1 -0
  232. package/common/types/phone.type.d.ts +12 -0
  233. package/common/types/phone.type.js +29 -0
  234. package/common/types/phone.type.js.map +1 -0
  235. package/common/types/portfolio.types.d.ts +185 -0
  236. package/common/types/portfolio.types.js +36 -0
  237. package/common/types/portfolio.types.js.map +1 -0
  238. package/common/types/privacy-policy-and-tos.types.d.ts +2 -0
  239. package/common/types/{privacy-policy-and-tos.types.ts → privacy-policy-and-tos.types.js} +1 -1
  240. package/common/types/privacy-policy-and-tos.types.js.map +1 -0
  241. package/common/types/queue.types.d.ts +22 -0
  242. package/common/types/queue.types.js +73 -0
  243. package/common/types/queue.types.js.map +1 -0
  244. package/common/types/registered-reps.types.d.ts +6 -0
  245. package/common/types/registered-reps.types.js +21 -0
  246. package/common/types/registered-reps.types.js.map +1 -0
  247. package/common/types/rejection-reasons.types.d.ts +35 -0
  248. package/common/types/rejection-reasons.types.js +49 -0
  249. package/common/types/rejection-reasons.types.js.map +1 -0
  250. package/common/types/reports.types.d.ts +345 -0
  251. package/common/types/reports.types.js +69 -0
  252. package/common/types/reports.types.js.map +1 -0
  253. package/common/types/review.types.d.ts +419 -0
  254. package/common/types/review.types.js +101 -0
  255. package/common/types/review.types.js.map +1 -0
  256. package/common/types/role.types.d.ts +30 -0
  257. package/common/types/role.types.js +21 -0
  258. package/common/types/role.types.js.map +1 -0
  259. package/common/types/secondary-customer.types.d.ts +586 -0
  260. package/common/types/secondary-customer.types.js +39 -0
  261. package/common/types/secondary-customer.types.js.map +1 -0
  262. package/common/types/secondary-issuer.types.d.ts +283 -0
  263. package/common/types/secondary-issuer.types.js +37 -0
  264. package/common/types/secondary-issuer.types.js.map +1 -0
  265. package/common/types/secondary-order.types.d.ts +508 -0
  266. package/common/types/secondary-order.types.js +40 -0
  267. package/common/types/secondary-order.types.js.map +1 -0
  268. package/common/types/secondary-security.types.d.ts +175 -0
  269. package/common/types/secondary-security.types.js +45 -0
  270. package/common/types/secondary-security.types.js.map +1 -0
  271. package/common/types/secondary-trade.entity.d.ts +16 -0
  272. package/common/types/secondary-trade.entity.js +12 -0
  273. package/common/types/secondary-trade.entity.js.map +1 -0
  274. package/common/types/secondary-trade.types.d.ts +465 -0
  275. package/common/types/secondary-trade.types.js +61 -0
  276. package/common/types/secondary-trade.types.js.map +1 -0
  277. package/common/types/secure-request.types.d.ts +171 -0
  278. package/common/types/secure-request.types.js +51 -0
  279. package/common/types/secure-request.types.js.map +1 -0
  280. package/common/types/signer.types.d.ts +3406 -0
  281. package/common/types/signer.types.js +532 -0
  282. package/common/types/signer.types.js.map +1 -0
  283. package/common/types/site-link.types.d.ts +875 -0
  284. package/common/types/site-link.types.js +126 -0
  285. package/common/types/site-link.types.js.map +1 -0
  286. package/common/types/site-settings.types.d.ts +1673 -0
  287. package/common/types/site-settings.types.js +500 -0
  288. package/common/types/site-settings.types.js.map +1 -0
  289. package/common/types/site.types.d.ts +1481 -0
  290. package/common/types/site.types.js +213 -0
  291. package/common/types/site.types.js.map +1 -0
  292. package/common/types/sms.types.d.ts +40 -0
  293. package/common/types/sms.types.js +27 -0
  294. package/common/types/sms.types.js.map +1 -0
  295. package/common/types/state-machine.types.d.ts +591 -0
  296. package/common/types/state-machine.types.js +144 -0
  297. package/common/types/state-machine.types.js.map +1 -0
  298. package/common/types/states.types.d.ts +77 -0
  299. package/common/types/states.types.js +137 -0
  300. package/common/types/states.types.js.map +1 -0
  301. package/common/types/subdoc-preview.types.d.ts +379 -0
  302. package/common/types/subdoc-preview.types.js +24 -0
  303. package/common/types/subdoc-preview.types.js.map +1 -0
  304. package/common/types/task.types.d.ts +537 -0
  305. package/common/types/task.types.js +211 -0
  306. package/common/types/task.types.js.map +1 -0
  307. package/common/types/trade-adjustment.type.d.ts +40 -0
  308. package/common/types/trade-adjustment.type.js +26 -0
  309. package/common/types/trade-adjustment.type.js.map +1 -0
  310. package/common/types/trade-line-item.types.d.ts +329 -0
  311. package/common/types/trade-line-item.types.js +100 -0
  312. package/common/types/trade-line-item.types.js.map +1 -0
  313. package/common/types/trade.types.d.ts +2015 -0
  314. package/common/types/trade.types.js +791 -0
  315. package/common/types/trade.types.js.map +1 -0
  316. package/common/types/transaction.types.d.ts +453 -0
  317. package/common/types/transaction.types.js +173 -0
  318. package/common/types/transaction.types.js.map +1 -0
  319. package/common/types/trusted-contact.types.d.ts +440 -0
  320. package/common/types/trusted-contact.types.js +95 -0
  321. package/common/types/trusted-contact.types.js.map +1 -0
  322. package/common/types/typography.types.d.ts +52 -0
  323. package/common/types/typography.types.js +67 -0
  324. package/common/types/typography.types.js.map +1 -0
  325. package/common/types/user-manual.types.d.ts +287 -0
  326. package/common/types/user-manual.types.js +192 -0
  327. package/common/types/user-manual.types.js.map +1 -0
  328. package/common/types/user-setting.types.d.ts +273 -0
  329. package/common/types/user-setting.types.js +85 -0
  330. package/common/types/user-setting.types.js.map +1 -0
  331. package/common/types/user.types.d.ts +2083 -0
  332. package/common/types/user.types.js +246 -0
  333. package/common/types/user.types.js.map +1 -0
  334. package/common/types/webhook.types.d.ts +10829 -0
  335. package/common/types/webhook.types.js +658 -0
  336. package/common/types/webhook.types.js.map +1 -0
  337. package/common/types/zip.type.d.ts +35 -0
  338. package/common/types/zip.type.js +28 -0
  339. package/common/types/zip.type.js.map +1 -0
  340. package/contracts/clients/accounts/index.d.ts +308 -0
  341. package/contracts/clients/accounts/index.js +43 -0
  342. package/contracts/clients/accounts/index.js.map +1 -0
  343. package/contracts/clients/aic/index.d.ts +280 -0
  344. package/contracts/clients/aic/index.js +47 -0
  345. package/contracts/clients/aic/index.js.map +1 -0
  346. package/contracts/clients/api-key-logs/index.d.ts +287 -0
  347. package/contracts/clients/api-key-logs/index.js +37 -0
  348. package/contracts/clients/api-key-logs/index.js.map +1 -0
  349. package/contracts/clients/api-keys/index.d.ts +374 -0
  350. package/contracts/clients/api-keys/index.js +59 -0
  351. package/contracts/clients/api-keys/index.js.map +1 -0
  352. package/contracts/clients/assets/index.d.ts +1050 -0
  353. package/contracts/clients/assets/index.js +80 -0
  354. package/contracts/clients/assets/index.js.map +1 -0
  355. package/contracts/clients/auth/index.d.ts +236 -0
  356. package/contracts/clients/auth/index.js +38 -0
  357. package/contracts/clients/auth/index.js.map +1 -0
  358. package/contracts/clients/cart/index.d.ts +229 -0
  359. package/contracts/clients/cart/index.js +63 -0
  360. package/contracts/clients/cart/index.js.map +1 -0
  361. package/contracts/clients/files/index.d.ts +552 -0
  362. package/contracts/clients/files/index.js +142 -0
  363. package/contracts/clients/files/index.js.map +1 -0
  364. package/contracts/clients/files-public/index.d.ts +552 -0
  365. package/contracts/clients/files-public/index.js +142 -0
  366. package/contracts/clients/files-public/index.js.map +1 -0
  367. package/contracts/clients/index.d.ts +12882 -0
  368. package/contracts/clients/index.js +54 -0
  369. package/contracts/clients/index.js.map +1 -0
  370. package/contracts/clients/individuals/index.d.ts +3199 -0
  371. package/contracts/clients/individuals/index.js +74 -0
  372. package/contracts/clients/individuals/index.js.map +1 -0
  373. package/contracts/clients/investor-accounts/index.d.ts +339 -0
  374. package/contracts/clients/investor-accounts/index.js +73 -0
  375. package/contracts/clients/investor-accounts/index.js.map +1 -0
  376. package/contracts/clients/issuer-payment-methods/index.d.ts +276 -0
  377. package/contracts/clients/issuer-payment-methods/index.js +24 -0
  378. package/contracts/clients/issuer-payment-methods/index.js.map +1 -0
  379. package/contracts/clients/issuers/index.d.ts +449 -0
  380. package/contracts/clients/issuers/index.js +75 -0
  381. package/contracts/clients/issuers/index.js.map +1 -0
  382. package/contracts/clients/kyc/index.d.ts +345 -0
  383. package/contracts/clients/kyc/index.js +49 -0
  384. package/contracts/clients/kyc/index.js.map +1 -0
  385. package/contracts/clients/legal-entities/index.d.ts +887 -0
  386. package/contracts/clients/legal-entities/index.js +74 -0
  387. package/contracts/clients/legal-entities/index.js.map +1 -0
  388. package/contracts/clients/offerings/index.d.ts +1068 -0
  389. package/contracts/clients/offerings/index.js +95 -0
  390. package/contracts/clients/offerings/index.js.map +1 -0
  391. package/contracts/clients/payment-methods/index.d.ts +456 -0
  392. package/contracts/clients/payment-methods/index.js +68 -0
  393. package/contracts/clients/payment-methods/index.js.map +1 -0
  394. package/contracts/clients/review/index.d.ts +77 -0
  395. package/contracts/clients/review/index.js +23 -0
  396. package/contracts/clients/review/index.js.map +1 -0
  397. package/contracts/clients/secure-requests/index.d.ts +100 -0
  398. package/contracts/clients/secure-requests/index.js +22 -0
  399. package/contracts/clients/secure-requests/index.js.map +1 -0
  400. package/contracts/clients/sites/index.d.ts +657 -0
  401. package/contracts/clients/sites/index.js +40 -0
  402. package/contracts/clients/sites/index.js.map +1 -0
  403. package/contracts/clients/trade-line-items/index.d.ts +216 -0
  404. package/contracts/clients/trade-line-items/index.js +47 -0
  405. package/contracts/clients/trade-line-items/index.js.map +1 -0
  406. package/contracts/clients/trades/index.d.ts +871 -0
  407. package/contracts/clients/trades/index.js +156 -0
  408. package/contracts/clients/trades/index.js.map +1 -0
  409. package/contracts/clients/transactions/index.d.ts +88 -0
  410. package/contracts/clients/transactions/index.js +25 -0
  411. package/contracts/clients/transactions/index.js.map +1 -0
  412. package/package.json +27 -36
  413. package/common/helpers/index.ts +0 -59
  414. package/common/types/account-contact.types.ts +0 -98
  415. package/common/types/account-detail.types.ts +0 -27
  416. package/common/types/account-integration.types.ts +0 -143
  417. package/common/types/account-manager.types.ts +0 -124
  418. package/common/types/account.types.ts +0 -296
  419. package/common/types/activity.types.ts +0 -274
  420. package/common/types/address.types.ts +0 -41
  421. package/common/types/aic.types.ts +0 -246
  422. package/common/types/aml.types.ts +0 -18
  423. package/common/types/api-key-logs.types.ts +0 -66
  424. package/common/types/api-keys.types.ts +0 -69
  425. package/common/types/asset.types.ts +0 -338
  426. package/common/types/auth.types.ts +0 -370
  427. package/common/types/batch-jobs.types.ts +0 -151
  428. package/common/types/bonus-tier.types.ts +0 -147
  429. package/common/types/cart.types.ts +0 -18
  430. package/common/types/checklist-items.types.ts +0 -70
  431. package/common/types/checklist.types.ts +0 -97
  432. package/common/types/common.types.ts +0 -1520
  433. package/common/types/comply-advantage-api.types.ts +0 -316
  434. package/common/types/comply-advantage.types.ts +0 -25
  435. package/common/types/contact-us.types.ts +0 -107
  436. package/common/types/countries.types.ts +0 -375
  437. package/common/types/covered-person.types.ts +0 -274
  438. package/common/types/dashboard.types.ts +0 -799
  439. package/common/types/data-record.types.ts +0 -325
  440. package/common/types/data-room.types.ts +0 -242
  441. package/common/types/default-theme-config.types.ts +0 -87
  442. package/common/types/disbursement-adjustment.types.ts +0 -32
  443. package/common/types/disbursement-approval-user.types.ts +0 -100
  444. package/common/types/disbursement-review.types.ts +0 -110
  445. package/common/types/disbursement-transaction.types.ts +0 -72
  446. package/common/types/disbursements.types.ts +0 -310
  447. package/common/types/domain-filter.types.ts +0 -55
  448. package/common/types/email-theme.types.ts +0 -442
  449. package/common/types/entity.types.ts +0 -15
  450. package/common/types/error-responses.types.ts +0 -135
  451. package/common/types/escrow-account.types.ts +0 -104
  452. package/common/types/exchange-api-key.types.ts +0 -121
  453. package/common/types/exchange-import.types.ts +0 -36
  454. package/common/types/exchange-provider.types.ts +0 -329
  455. package/common/types/file.types.ts +0 -461
  456. package/common/types/health.types.ts +0 -29
  457. package/common/types/individuals.types.ts +0 -554
  458. package/common/types/investor-account.types.ts +0 -1239
  459. package/common/types/investors-offering.types.ts +0 -65
  460. package/common/types/invite.types.ts +0 -133
  461. package/common/types/issuer-bank-account.types.ts +0 -107
  462. package/common/types/issuer-offering.types.ts +0 -306
  463. package/common/types/issuer-payment-method.types.ts +0 -341
  464. package/common/types/issuer.types.ts +0 -312
  465. package/common/types/job-item.types.ts +0 -119
  466. package/common/types/jobs.types.ts +0 -171
  467. package/common/types/kyb.types.ts +0 -53
  468. package/common/types/kyc.types.ts +0 -188
  469. package/common/types/legal-entity.types.ts +0 -185
  470. package/common/types/login-history.types.ts +0 -46
  471. package/common/types/mail-template.types.ts +0 -436
  472. package/common/types/north-cap-integration.types.ts +0 -190
  473. package/common/types/note.types.ts +0 -109
  474. package/common/types/notification.types.ts +0 -58
  475. package/common/types/notion-api.types.ts +0 -374
  476. package/common/types/notion-database.types.ts +0 -125
  477. package/common/types/notion-page.types.ts +0 -267
  478. package/common/types/offering-reports.types.ts +0 -153
  479. package/common/types/offering-submission.types.ts +0 -314
  480. package/common/types/offering.types.ts +0 -590
  481. package/common/types/page-revision.types.ts +0 -86
  482. package/common/types/page.types.ts +0 -436
  483. package/common/types/password.type.ts +0 -15
  484. package/common/types/payment-methods.types.ts +0 -298
  485. package/common/types/phone.type.ts +0 -27
  486. package/common/types/portfolio.types.ts +0 -50
  487. package/common/types/queue.types.ts +0 -112
  488. package/common/types/registered-reps.types.ts +0 -25
  489. package/common/types/rejection-reasons.types.ts +0 -56
  490. package/common/types/reminder-config.types.ts +0 -40
  491. package/common/types/review.types.ts +0 -133
  492. package/common/types/role.types.ts +0 -26
  493. package/common/types/secondary-customer.types.ts +0 -66
  494. package/common/types/secondary-issuer.types.ts +0 -50
  495. package/common/types/secondary-order.types.ts +0 -58
  496. package/common/types/secondary-security.types.ts +0 -60
  497. package/common/types/secondary-trade.entity.ts +0 -16
  498. package/common/types/secondary-trade.types.ts +0 -95
  499. package/common/types/secure-request.types.ts +0 -68
  500. package/common/types/signer.types.ts +0 -651
  501. package/common/types/site-link.types.ts +0 -166
  502. package/common/types/site-settings.types.ts +0 -726
  503. package/common/types/site.types.ts +0 -270
  504. package/common/types/sms.types.ts +0 -30
  505. package/common/types/state-machine.types.ts +0 -177
  506. package/common/types/states.types.ts +0 -163
  507. package/common/types/subdoc-preview.types.ts +0 -35
  508. package/common/types/task.types.ts +0 -258
  509. package/common/types/trade-adjustment.type.ts +0 -33
  510. package/common/types/trade-line-item.type.ts +0 -132
  511. package/common/types/trade.types.ts +0 -929
  512. package/common/types/transaction.types.ts +0 -198
  513. package/common/types/trusted-contact.types.ts +0 -122
  514. package/common/types/typography.types.ts +0 -75
  515. package/common/types/user-manual.types.ts +0 -290
  516. package/common/types/user-setting.types.ts +0 -133
  517. package/common/types/user.types.ts +0 -320
  518. package/common/types/webhook.types.ts +0 -588
  519. package/common/types/zip.type.ts +0 -36
  520. package/contracts/clients/accounts/index.ts +0 -61
  521. package/contracts/clients/aic/index.ts +0 -59
  522. package/contracts/clients/api-key-logs/index.ts +0 -53
  523. package/contracts/clients/api-keys/index.ts +0 -73
  524. package/contracts/clients/assets/index.ts +0 -102
  525. package/contracts/clients/auth/index.ts +0 -50
  526. package/contracts/clients/files/index.ts +0 -166
  527. package/contracts/clients/files-public/index.ts +0 -166
  528. package/contracts/clients/index.ts +0 -44
  529. package/contracts/clients/individuals/index.ts +0 -93
  530. package/contracts/clients/investor-accounts/index.ts +0 -93
  531. package/contracts/clients/issuers/index.ts +0 -94
  532. package/contracts/clients/legal-entities/index.ts +0 -93
  533. package/contracts/clients/offerings/index.ts +0 -117
  534. package/contracts/clients/secure-requests/index.ts +0 -34
  535. package/contracts/clients/sites/index.ts +0 -56
  536. package/contracts/clients/trades/index.ts +0 -122
  537. package/contracts/compliance/account-contacts/index.ts +0 -82
  538. package/contracts/compliance/account-managers/index.ts +0 -142
  539. package/contracts/compliance/accounts/index.ts +0 -187
  540. package/contracts/compliance/activities/index.ts +0 -55
  541. package/contracts/compliance/aic/index.ts +0 -60
  542. package/contracts/compliance/api-keys/index.ts +0 -91
  543. package/contracts/compliance/assets/index.ts +0 -122
  544. package/contracts/compliance/auth/index.ts +0 -134
  545. package/contracts/compliance/batch-jobs/index.ts +0 -62
  546. package/contracts/compliance/bonus-tiers/index.ts +0 -55
  547. package/contracts/compliance/checklist/index.ts +0 -87
  548. package/contracts/compliance/checklist-items/index.ts +0 -86
  549. package/contracts/compliance/covered-persons/index.ts +0 -97
  550. package/contracts/compliance/dashboard/index.ts +0 -111
  551. package/contracts/compliance/data-records/index.ts +0 -116
  552. package/contracts/compliance/data-rooms/index.ts +0 -113
  553. package/contracts/compliance/default-theme-configs/index.ts +0 -95
  554. package/contracts/compliance/disbursement/index.ts +0 -165
  555. package/contracts/compliance/disbursement-approval-users/index.ts +0 -84
  556. package/contracts/compliance/disbursement-transactions/index.ts +0 -37
  557. package/contracts/compliance/domain-filters/index.ts +0 -117
  558. package/contracts/compliance/email-themes/index.ts +0 -284
  559. package/contracts/compliance/escrow-accounts/index.ts +0 -85
  560. package/contracts/compliance/exchange-api-keys/index.ts +0 -129
  561. package/contracts/compliance/exchange-imports/index.ts +0 -137
  562. package/contracts/compliance/files/index.ts +0 -267
  563. package/contracts/compliance/files-public/index.ts +0 -188
  564. package/contracts/compliance/health/index.ts +0 -26
  565. package/contracts/compliance/index.ts +0 -147
  566. package/contracts/compliance/individuals/index.ts +0 -57
  567. package/contracts/compliance/investor-accounts/index.ts +0 -141
  568. package/contracts/compliance/invites/index.ts +0 -137
  569. package/contracts/compliance/issuer-bank-accounts/index.ts +0 -81
  570. package/contracts/compliance/issuer-payment-methods/index.ts +0 -81
  571. package/contracts/compliance/issuers/index.ts +0 -97
  572. package/contracts/compliance/job-items/index.ts +0 -58
  573. package/contracts/compliance/jobs/index.ts +0 -59
  574. package/contracts/compliance/kyb/index.ts +0 -54
  575. package/contracts/compliance/kyc/index.ts +0 -77
  576. package/contracts/compliance/legal-entities/index.ts +0 -57
  577. package/contracts/compliance/login-histories/index.ts +0 -37
  578. package/contracts/compliance/notes/index.ts +0 -69
  579. package/contracts/compliance/notion-databases/index.ts +0 -107
  580. package/contracts/compliance/notion-pages/index.ts +0 -105
  581. package/contracts/compliance/offering-reports/index.ts +0 -149
  582. package/contracts/compliance/offerings/index.ts +0 -233
  583. package/contracts/compliance/pages/index.ts +0 -178
  584. package/contracts/compliance/payment-methods/index.ts +0 -57
  585. package/contracts/compliance/rejection-reasons/index.ts +0 -32
  586. package/contracts/compliance/review/index.ts +0 -169
  587. package/contracts/compliance/roles/index.ts +0 -34
  588. package/contracts/compliance/secondary-customers/index.ts +0 -77
  589. package/contracts/compliance/secondary-orders/index.ts +0 -60
  590. package/contracts/compliance/secondary-trades/index.ts +0 -100
  591. package/contracts/compliance/secure-requests/index.ts +0 -54
  592. package/contracts/compliance/signer/index.ts +0 -369
  593. package/contracts/compliance/site-links/index.ts +0 -128
  594. package/contracts/compliance/site-settings/index.ts +0 -669
  595. package/contracts/compliance/sites/index.ts +0 -56
  596. package/contracts/compliance/state-machine/index.ts +0 -94
  597. package/contracts/compliance/tasks/index.ts +0 -91
  598. package/contracts/compliance/third-parties/index.ts +0 -52
  599. package/contracts/compliance/trade-line-items/index.ts +0 -59
  600. package/contracts/compliance/trades/index.ts +0 -230
  601. package/contracts/compliance/transactions/index.ts +0 -161
  602. package/contracts/compliance/user-manuals/index.ts +0 -271
  603. package/contracts/compliance/user-settings/index.ts +0 -189
  604. package/contracts/compliance/users/index.ts +0 -200
  605. package/contracts/compliance/webhooks/index.ts +0 -41
  606. package/contracts/compliance-apikey/accounts/index.ts +0 -58
  607. package/contracts/compliance-apikey/index.ts +0 -14
  608. package/contracts/index.ts +0 -6
  609. package/contracts/investors/account-contacts/index.ts +0 -58
  610. package/contracts/investors/aic/index.ts +0 -59
  611. package/contracts/investors/assets/index.ts +0 -61
  612. package/contracts/investors/auth/index.ts +0 -116
  613. package/contracts/investors/bonus-tiers/index.ts +0 -37
  614. package/contracts/investors/cart/index.ts +0 -75
  615. package/contracts/investors/contact-us/index.ts +0 -48
  616. package/contracts/investors/data-records/index.ts +0 -113
  617. package/contracts/investors/data-rooms/index.ts +0 -96
  618. package/contracts/investors/files/index.ts +0 -167
  619. package/contracts/investors/files-public/index.ts +0 -185
  620. package/contracts/investors/index.ts +0 -72
  621. package/contracts/investors/individuals/index.ts +0 -99
  622. package/contracts/investors/investor-accounts/index.ts +0 -110
  623. package/contracts/investors/issuer-payment-methods/index.ts +0 -36
  624. package/contracts/investors/issuers/index.ts +0 -30
  625. package/contracts/investors/legal-entities/index.ts +0 -93
  626. package/contracts/investors/notes/index.ts +0 -69
  627. package/contracts/investors/offerings/index.ts +0 -93
  628. package/contracts/investors/pages/index.ts +0 -88
  629. package/contracts/investors/payment-methods/index.ts +0 -149
  630. package/contracts/investors/portfolios/index.ts +0 -53
  631. package/contracts/investors/sites/index.ts +0 -96
  632. package/contracts/investors/tasks/index.ts +0 -111
  633. package/contracts/investors/trade-line-items/index.ts +0 -75
  634. package/contracts/investors/trades/index.ts +0 -114
  635. package/contracts/investors/transactions/index.ts +0 -37
  636. package/contracts/investors/trusted-contacts/index.ts +0 -93
  637. package/contracts/investors/user-manuals/index.ts +0 -62
  638. package/contracts/investors/user-settings/index.ts +0 -170
  639. package/contracts/investors/users/index.ts +0 -45
  640. package/contracts/investors/webhooks/index.ts +0 -30
  641. package/contracts/issuers/account-contacts/index.ts +0 -76
  642. package/contracts/issuers/account-integrations/index.ts +0 -97
  643. package/contracts/issuers/accounts/index.ts +0 -97
  644. package/contracts/issuers/activities/index.ts +0 -54
  645. package/contracts/issuers/aic/index.ts +0 -39
  646. package/contracts/issuers/api-key-logs/index.ts +0 -53
  647. package/contracts/issuers/api-keys/index.ts +0 -93
  648. package/contracts/issuers/assets/index.ts +0 -122
  649. package/contracts/issuers/auth/index.ts +0 -152
  650. package/contracts/issuers/bonus-tiers/index.ts +0 -55
  651. package/contracts/issuers/contact-us/index.ts +0 -48
  652. package/contracts/issuers/covered-persons/index.ts +0 -136
  653. package/contracts/issuers/dashboard/index.ts +0 -72
  654. package/contracts/issuers/data-records/index.ts +0 -257
  655. package/contracts/issuers/data-rooms/index.ts +0 -134
  656. package/contracts/issuers/disbursement-approval-users/index.ts +0 -82
  657. package/contracts/issuers/disbursement-transactions/index.ts +0 -53
  658. package/contracts/issuers/disbursements/index.ts +0 -153
  659. package/contracts/issuers/email-themes/index.ts +0 -242
  660. package/contracts/issuers/escrow-accounts/index.ts +0 -81
  661. package/contracts/issuers/exchange-api-keys/index.ts +0 -144
  662. package/contracts/issuers/files/index.ts +0 -166
  663. package/contracts/issuers/files-public/index.ts +0 -166
  664. package/contracts/issuers/health/index.ts +0 -24
  665. package/contracts/issuers/index.ts +0 -112
  666. package/contracts/issuers/investor-accounts/index.ts +0 -148
  667. package/contracts/issuers/invites/index.ts +0 -129
  668. package/contracts/issuers/issuer/index.ts +0 -94
  669. package/contracts/issuers/issuer-bank-accounts/index.ts +0 -81
  670. package/contracts/issuers/issuer-payment-methods/index.ts +0 -136
  671. package/contracts/issuers/kyc/index.ts +0 -38
  672. package/contracts/issuers/login-histories/index.ts +0 -51
  673. package/contracts/issuers/notes/index.ts +0 -69
  674. package/contracts/issuers/offerings/index.ts +0 -206
  675. package/contracts/issuers/pages/index.ts +0 -138
  676. package/contracts/issuers/payment-methods/index.ts +0 -61
  677. package/contracts/issuers/portfolios/index.ts +0 -36
  678. package/contracts/issuers/rejection-reasons/index.ts +0 -32
  679. package/contracts/issuers/review/index.ts +0 -63
  680. package/contracts/issuers/secondary-customers/index.ts +0 -55
  681. package/contracts/issuers/secondary-orders/index.ts +0 -57
  682. package/contracts/issuers/secondary-trades/index.ts +0 -57
  683. package/contracts/issuers/secure-requests/index.ts +0 -34
  684. package/contracts/issuers/site-links/index.ts +0 -116
  685. package/contracts/issuers/site-settings/index.ts +0 -585
  686. package/contracts/issuers/sites/index.ts +0 -32
  687. package/contracts/issuers/tasks/index.ts +0 -111
  688. package/contracts/issuers/trades/index.ts +0 -132
  689. package/contracts/issuers/transactions/index.ts +0 -158
  690. package/contracts/issuers/user-manuals/index.ts +0 -62
  691. package/contracts/issuers/user-settings/index.ts +0 -170
  692. package/contracts/issuers/users/index.ts +0 -126
  693. package/contracts/secondaries/accounts/index.ts +0 -58
  694. package/contracts/secondaries/index.ts +0 -23
  695. package/contracts/secondaries/secondary-customers/index.ts +0 -55
  696. package/contracts/secondaries/secondary-issuers/index.ts +0 -94
  697. package/contracts/secondaries/secondary-orders/index.ts +0 -56
  698. package/contracts/secondaries/secondary-securities/index.ts +0 -95
  699. package/contracts/secondaries/secondary-trades/index.ts +0 -56
  700. /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