@dalmore/api-contracts 0.0.0-dev.b728a8d → 0.0.0-dev.bcc2eb2

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