@dalmore/api-contracts 0.0.0-dev.3af7603 → 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 (707) 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} +6 -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-setting.types.ts +0 -31
  419. package/common/types/account.types.ts +0 -296
  420. package/common/types/activity.types.ts +0 -274
  421. package/common/types/address.types.ts +0 -41
  422. package/common/types/aic.types.ts +0 -246
  423. package/common/types/aml.types.ts +0 -18
  424. package/common/types/api-key-logs.types.ts +0 -66
  425. package/common/types/api-keys.types.ts +0 -69
  426. package/common/types/asset.types.ts +0 -338
  427. package/common/types/auth.types.ts +0 -370
  428. package/common/types/batch-jobs.types.ts +0 -151
  429. package/common/types/bonus-tier.types.ts +0 -180
  430. package/common/types/cart.types.ts +0 -21
  431. package/common/types/checklist-items.types.ts +0 -70
  432. package/common/types/checklist.types.ts +0 -97
  433. package/common/types/common.types.ts +0 -1530
  434. package/common/types/comply-advantage-api.types.ts +0 -316
  435. package/common/types/comply-advantage.types.ts +0 -25
  436. package/common/types/contact-us.types.ts +0 -107
  437. package/common/types/countries.types.ts +0 -375
  438. package/common/types/covered-person.types.ts +0 -274
  439. package/common/types/dashboard.types.ts +0 -792
  440. package/common/types/data-record.types.ts +0 -325
  441. package/common/types/data-room.types.ts +0 -242
  442. package/common/types/default-theme-config.types.ts +0 -87
  443. package/common/types/disbursement-adjustment.types.ts +0 -32
  444. package/common/types/disbursement-approval-user.types.ts +0 -100
  445. package/common/types/disbursement-review.types.ts +0 -110
  446. package/common/types/disbursement-transaction.types.ts +0 -72
  447. package/common/types/disbursements.types.ts +0 -426
  448. package/common/types/domain-filter.types.ts +0 -55
  449. package/common/types/email-theme.types.ts +0 -442
  450. package/common/types/entity.types.ts +0 -15
  451. package/common/types/error-responses.types.ts +0 -135
  452. package/common/types/escrow-account.types.ts +0 -104
  453. package/common/types/exchange-api-key.types.ts +0 -121
  454. package/common/types/exchange-import.types.ts +0 -36
  455. package/common/types/exchange-provider.types.ts +0 -329
  456. package/common/types/file.types.ts +0 -477
  457. package/common/types/health.types.ts +0 -29
  458. package/common/types/i-will-do-it-later.types.ts +0 -68
  459. package/common/types/individuals.types.ts +0 -541
  460. package/common/types/investor-account.types.ts +0 -1239
  461. package/common/types/investors-offering.types.ts +0 -65
  462. package/common/types/invite.types.ts +0 -133
  463. package/common/types/issuer-bank-account.types.ts +0 -107
  464. package/common/types/issuer-offering.types.ts +0 -389
  465. package/common/types/issuer-payment-method.types.ts +0 -382
  466. package/common/types/issuer.types.ts +0 -321
  467. package/common/types/job-item.types.ts +0 -119
  468. package/common/types/jobs.types.ts +0 -171
  469. package/common/types/kyb.types.ts +0 -53
  470. package/common/types/kyc.types.ts +0 -188
  471. package/common/types/legal-entity.types.ts +0 -185
  472. package/common/types/login-history.types.ts +0 -46
  473. package/common/types/mail-template.types.ts +0 -436
  474. package/common/types/north-cap-integration.types.ts +0 -190
  475. package/common/types/note.types.ts +0 -109
  476. package/common/types/notification.types.ts +0 -268
  477. package/common/types/notion-api.types.ts +0 -374
  478. package/common/types/notion-database.types.ts +0 -125
  479. package/common/types/notion-page.types.ts +0 -267
  480. package/common/types/offering-reports.types.ts +0 -153
  481. package/common/types/offering-submission.types.ts +0 -314
  482. package/common/types/offering.types.ts +0 -676
  483. package/common/types/page-revision.types.ts +0 -86
  484. package/common/types/page.types.ts +0 -436
  485. package/common/types/password.type.ts +0 -15
  486. package/common/types/payment-methods.types.ts +0 -298
  487. package/common/types/phone.type.ts +0 -27
  488. package/common/types/portfolio.types.ts +0 -50
  489. package/common/types/queue.types.ts +0 -112
  490. package/common/types/registered-reps.types.ts +0 -25
  491. package/common/types/rejection-reasons.types.ts +0 -56
  492. package/common/types/reminder-config.types.ts +0 -40
  493. package/common/types/review.types.ts +0 -133
  494. package/common/types/role.types.ts +0 -26
  495. package/common/types/secondary-customer.types.ts +0 -66
  496. package/common/types/secondary-issuer.types.ts +0 -50
  497. package/common/types/secondary-order.types.ts +0 -58
  498. package/common/types/secondary-security.types.ts +0 -60
  499. package/common/types/secondary-trade.entity.ts +0 -16
  500. package/common/types/secondary-trade.types.ts +0 -95
  501. package/common/types/secure-request.types.ts +0 -68
  502. package/common/types/signer.types.ts +0 -651
  503. package/common/types/site-link.types.ts +0 -166
  504. package/common/types/site-settings.types.ts +0 -726
  505. package/common/types/site.types.ts +0 -263
  506. package/common/types/sms.types.ts +0 -30
  507. package/common/types/state-machine.types.ts +0 -177
  508. package/common/types/states.types.ts +0 -163
  509. package/common/types/subdoc-preview.types.ts +0 -35
  510. package/common/types/task.types.ts +0 -258
  511. package/common/types/trade-adjustment.type.ts +0 -33
  512. package/common/types/trade-line-item.types.ts +0 -125
  513. package/common/types/trade.types.ts +0 -999
  514. package/common/types/transaction.types.ts +0 -209
  515. package/common/types/trusted-contact.types.ts +0 -122
  516. package/common/types/typography.types.ts +0 -75
  517. package/common/types/user-manual.types.ts +0 -290
  518. package/common/types/user-setting.types.ts +0 -133
  519. package/common/types/user.types.ts +0 -307
  520. package/common/types/webhook.types.ts +0 -588
  521. package/common/types/zip.type.ts +0 -36
  522. package/contracts/clients/accounts/index.ts +0 -61
  523. package/contracts/clients/aic/index.ts +0 -59
  524. package/contracts/clients/api-key-logs/index.ts +0 -53
  525. package/contracts/clients/api-keys/index.ts +0 -73
  526. package/contracts/clients/assets/index.ts +0 -102
  527. package/contracts/clients/auth/index.ts +0 -50
  528. package/contracts/clients/cart/index.ts +0 -80
  529. package/contracts/clients/files/index.ts +0 -166
  530. package/contracts/clients/files-public/index.ts +0 -166
  531. package/contracts/clients/index.ts +0 -54
  532. package/contracts/clients/individuals/index.ts +0 -93
  533. package/contracts/clients/investor-accounts/index.ts +0 -93
  534. package/contracts/clients/issuer-payment-methods/index.ts +0 -39
  535. package/contracts/clients/issuers/index.ts +0 -94
  536. package/contracts/clients/legal-entities/index.ts +0 -93
  537. package/contracts/clients/offerings/index.ts +0 -117
  538. package/contracts/clients/payment-methods/index.ts +0 -85
  539. package/contracts/clients/secure-requests/index.ts +0 -34
  540. package/contracts/clients/sites/index.ts +0 -56
  541. package/contracts/clients/trade-line-items/index.ts +0 -66
  542. package/contracts/clients/trades/index.ts +0 -186
  543. package/contracts/clients/transactions/index.ts +0 -37
  544. package/contracts/compliance/account-contacts/index.ts +0 -82
  545. package/contracts/compliance/account-managers/index.ts +0 -142
  546. package/contracts/compliance/accounts/index.ts +0 -187
  547. package/contracts/compliance/activities/index.ts +0 -55
  548. package/contracts/compliance/aic/index.ts +0 -60
  549. package/contracts/compliance/api-keys/index.ts +0 -91
  550. package/contracts/compliance/assets/index.ts +0 -122
  551. package/contracts/compliance/auth/index.ts +0 -134
  552. package/contracts/compliance/batch-jobs/index.ts +0 -62
  553. package/contracts/compliance/bonus-tiers/index.ts +0 -74
  554. package/contracts/compliance/checklist/index.ts +0 -87
  555. package/contracts/compliance/checklist-items/index.ts +0 -86
  556. package/contracts/compliance/covered-persons/index.ts +0 -97
  557. package/contracts/compliance/dashboard/index.ts +0 -111
  558. package/contracts/compliance/data-records/index.ts +0 -116
  559. package/contracts/compliance/data-rooms/index.ts +0 -113
  560. package/contracts/compliance/default-theme-configs/index.ts +0 -95
  561. package/contracts/compliance/disbursement/index.ts +0 -165
  562. package/contracts/compliance/disbursement-approval-users/index.ts +0 -84
  563. package/contracts/compliance/disbursement-transactions/index.ts +0 -37
  564. package/contracts/compliance/domain-filters/index.ts +0 -117
  565. package/contracts/compliance/email-themes/index.ts +0 -284
  566. package/contracts/compliance/escrow-accounts/index.ts +0 -85
  567. package/contracts/compliance/exchange-api-keys/index.ts +0 -129
  568. package/contracts/compliance/exchange-imports/index.ts +0 -137
  569. package/contracts/compliance/files/index.ts +0 -267
  570. package/contracts/compliance/files-public/index.ts +0 -188
  571. package/contracts/compliance/health/index.ts +0 -26
  572. package/contracts/compliance/index.ts +0 -147
  573. package/contracts/compliance/individuals/index.ts +0 -57
  574. package/contracts/compliance/investor-accounts/index.ts +0 -141
  575. package/contracts/compliance/invites/index.ts +0 -137
  576. package/contracts/compliance/issuer-bank-accounts/index.ts +0 -81
  577. package/contracts/compliance/issuer-payment-methods/index.ts +0 -81
  578. package/contracts/compliance/issuers/index.ts +0 -97
  579. package/contracts/compliance/job-items/index.ts +0 -58
  580. package/contracts/compliance/jobs/index.ts +0 -59
  581. package/contracts/compliance/kyb/index.ts +0 -54
  582. package/contracts/compliance/kyc/index.ts +0 -77
  583. package/contracts/compliance/legal-entities/index.ts +0 -57
  584. package/contracts/compliance/login-histories/index.ts +0 -37
  585. package/contracts/compliance/notes/index.ts +0 -69
  586. package/contracts/compliance/notion-databases/index.ts +0 -107
  587. package/contracts/compliance/notion-pages/index.ts +0 -105
  588. package/contracts/compliance/offering-reports/index.ts +0 -149
  589. package/contracts/compliance/offerings/index.ts +0 -233
  590. package/contracts/compliance/pages/index.ts +0 -178
  591. package/contracts/compliance/payment-methods/index.ts +0 -57
  592. package/contracts/compliance/rejection-reasons/index.ts +0 -32
  593. package/contracts/compliance/review/index.ts +0 -169
  594. package/contracts/compliance/roles/index.ts +0 -34
  595. package/contracts/compliance/secondary-customers/index.ts +0 -77
  596. package/contracts/compliance/secondary-orders/index.ts +0 -60
  597. package/contracts/compliance/secondary-trades/index.ts +0 -100
  598. package/contracts/compliance/secure-requests/index.ts +0 -54
  599. package/contracts/compliance/signer/index.ts +0 -369
  600. package/contracts/compliance/site-links/index.ts +0 -128
  601. package/contracts/compliance/site-settings/index.ts +0 -669
  602. package/contracts/compliance/sites/index.ts +0 -56
  603. package/contracts/compliance/state-machine/index.ts +0 -94
  604. package/contracts/compliance/tasks/index.ts +0 -91
  605. package/contracts/compliance/third-parties/index.ts +0 -52
  606. package/contracts/compliance/trade-line-items/index.ts +0 -59
  607. package/contracts/compliance/trades/index.ts +0 -230
  608. package/contracts/compliance/transactions/index.ts +0 -161
  609. package/contracts/compliance/user-manuals/index.ts +0 -271
  610. package/contracts/compliance/user-settings/index.ts +0 -189
  611. package/contracts/compliance/users/index.ts +0 -221
  612. package/contracts/compliance/webhooks/index.ts +0 -41
  613. package/contracts/compliance-apikey/accounts/index.ts +0 -58
  614. package/contracts/compliance-apikey/index.ts +0 -14
  615. package/contracts/index.ts +0 -6
  616. package/contracts/investors/account-contacts/index.ts +0 -58
  617. package/contracts/investors/aic/index.ts +0 -59
  618. package/contracts/investors/assets/index.ts +0 -61
  619. package/contracts/investors/auth/index.ts +0 -116
  620. package/contracts/investors/bonus-tiers/index.ts +0 -55
  621. package/contracts/investors/cart/index.ts +0 -75
  622. package/contracts/investors/contact-us/index.ts +0 -48
  623. package/contracts/investors/data-records/index.ts +0 -113
  624. package/contracts/investors/data-rooms/index.ts +0 -96
  625. package/contracts/investors/files/index.ts +0 -167
  626. package/contracts/investors/files-public/index.ts +0 -185
  627. package/contracts/investors/index.ts +0 -72
  628. package/contracts/investors/individuals/index.ts +0 -121
  629. package/contracts/investors/investor-accounts/index.ts +0 -110
  630. package/contracts/investors/issuer-payment-methods/index.ts +0 -36
  631. package/contracts/investors/issuers/index.ts +0 -30
  632. package/contracts/investors/legal-entities/index.ts +0 -93
  633. package/contracts/investors/notes/index.ts +0 -69
  634. package/contracts/investors/offerings/index.ts +0 -93
  635. package/contracts/investors/pages/index.ts +0 -88
  636. package/contracts/investors/payment-methods/index.ts +0 -149
  637. package/contracts/investors/portfolios/index.ts +0 -53
  638. package/contracts/investors/sites/index.ts +0 -96
  639. package/contracts/investors/tasks/index.ts +0 -111
  640. package/contracts/investors/trade-line-items/index.ts +0 -75
  641. package/contracts/investors/trades/index.ts +0 -114
  642. package/contracts/investors/transactions/index.ts +0 -37
  643. package/contracts/investors/trusted-contacts/index.ts +0 -93
  644. package/contracts/investors/user-manuals/index.ts +0 -62
  645. package/contracts/investors/user-settings/index.ts +0 -170
  646. package/contracts/investors/users/index.ts +0 -45
  647. package/contracts/investors/webhooks/index.ts +0 -30
  648. package/contracts/issuers/account-contacts/index.ts +0 -76
  649. package/contracts/issuers/account-integrations/index.ts +0 -97
  650. package/contracts/issuers/accounts/index.ts +0 -97
  651. package/contracts/issuers/activities/index.ts +0 -54
  652. package/contracts/issuers/aic/index.ts +0 -39
  653. package/contracts/issuers/api-key-logs/index.ts +0 -53
  654. package/contracts/issuers/api-keys/index.ts +0 -93
  655. package/contracts/issuers/assets/index.ts +0 -122
  656. package/contracts/issuers/auth/index.ts +0 -152
  657. package/contracts/issuers/bonus-tiers/index.ts +0 -73
  658. package/contracts/issuers/contact-us/index.ts +0 -48
  659. package/contracts/issuers/covered-persons/index.ts +0 -136
  660. package/contracts/issuers/dashboard/index.ts +0 -72
  661. package/contracts/issuers/data-records/index.ts +0 -257
  662. package/contracts/issuers/data-rooms/index.ts +0 -134
  663. package/contracts/issuers/disbursement-approval-users/index.ts +0 -82
  664. package/contracts/issuers/disbursement-transactions/index.ts +0 -53
  665. package/contracts/issuers/disbursements/index.ts +0 -189
  666. package/contracts/issuers/email-themes/index.ts +0 -242
  667. package/contracts/issuers/escrow-accounts/index.ts +0 -81
  668. package/contracts/issuers/exchange-api-keys/index.ts +0 -144
  669. package/contracts/issuers/files/index.ts +0 -166
  670. package/contracts/issuers/files-public/index.ts +0 -166
  671. package/contracts/issuers/health/index.ts +0 -24
  672. package/contracts/issuers/index.ts +0 -112
  673. package/contracts/issuers/investor-accounts/index.ts +0 -148
  674. package/contracts/issuers/invites/index.ts +0 -129
  675. package/contracts/issuers/issuer/index.ts +0 -94
  676. package/contracts/issuers/issuer-bank-accounts/index.ts +0 -81
  677. package/contracts/issuers/issuer-payment-methods/index.ts +0 -136
  678. package/contracts/issuers/kyc/index.ts +0 -38
  679. package/contracts/issuers/login-histories/index.ts +0 -51
  680. package/contracts/issuers/notes/index.ts +0 -69
  681. package/contracts/issuers/offerings/index.ts +0 -206
  682. package/contracts/issuers/pages/index.ts +0 -138
  683. package/contracts/issuers/payment-methods/index.ts +0 -61
  684. package/contracts/issuers/portfolios/index.ts +0 -36
  685. package/contracts/issuers/rejection-reasons/index.ts +0 -32
  686. package/contracts/issuers/review/index.ts +0 -63
  687. package/contracts/issuers/secondary-customers/index.ts +0 -55
  688. package/contracts/issuers/secondary-orders/index.ts +0 -57
  689. package/contracts/issuers/secondary-trades/index.ts +0 -57
  690. package/contracts/issuers/secure-requests/index.ts +0 -34
  691. package/contracts/issuers/site-links/index.ts +0 -116
  692. package/contracts/issuers/site-settings/index.ts +0 -585
  693. package/contracts/issuers/sites/index.ts +0 -32
  694. package/contracts/issuers/tasks/index.ts +0 -111
  695. package/contracts/issuers/trades/index.ts +0 -132
  696. package/contracts/issuers/transactions/index.ts +0 -158
  697. package/contracts/issuers/user-manuals/index.ts +0 -62
  698. package/contracts/issuers/user-settings/index.ts +0 -170
  699. package/contracts/issuers/users/index.ts +0 -126
  700. package/contracts/secondaries/accounts/index.ts +0 -58
  701. package/contracts/secondaries/index.ts +0 -23
  702. package/contracts/secondaries/secondary-customers/index.ts +0 -55
  703. package/contracts/secondaries/secondary-issuers/index.ts +0 -94
  704. package/contracts/secondaries/secondary-orders/index.ts +0 -56
  705. package/contracts/secondaries/secondary-securities/index.ts +0 -95
  706. package/contracts/secondaries/secondary-trades/index.ts +0 -56
  707. /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