@dalmore/api-contracts 0.0.0-dev.5e42638 → 0.0.0-dev.651765a

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