@dalmore/api-contracts 0.0.0-dev.e325dbb → 0.0.0-dev.eb75b4c

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 (562) hide show
  1. package/common/constants.d.ts +43 -0
  2. package/common/constants.js +77 -0
  3. package/common/constants.js.map +1 -0
  4. package/common/helpers/index.d.ts +77 -0
  5. package/common/helpers/index.js +179 -0
  6. package/common/helpers/index.js.map +1 -0
  7. package/common/types/account-contact.types.d.ts +485 -0
  8. package/common/types/account-contact.types.js +75 -0
  9. package/common/types/account-contact.types.js.map +1 -0
  10. package/common/types/account-detail.types.d.ts +304 -0
  11. package/common/types/account-detail.types.js +20 -0
  12. package/common/types/account-detail.types.js.map +1 -0
  13. package/common/types/account-integration.types.d.ts +242 -0
  14. package/common/types/account-integration.types.js +121 -0
  15. package/common/types/account-integration.types.js.map +1 -0
  16. package/common/types/account-manager.types.d.ts +917 -0
  17. package/common/types/account-manager.types.js +89 -0
  18. package/common/types/account-manager.types.js.map +1 -0
  19. package/common/types/account-setting.types.d.ts +140 -0
  20. package/common/types/account-setting.types.js +23 -0
  21. package/common/types/account-setting.types.js.map +1 -0
  22. package/common/types/account.types.d.ts +640 -0
  23. package/common/types/account.types.js +218 -0
  24. package/common/types/account.types.js.map +1 -0
  25. package/common/types/activity.types.d.ts +591 -0
  26. package/common/types/activity.types.js +259 -0
  27. package/common/types/activity.types.js.map +1 -0
  28. package/common/types/address.types.d.ts +89 -0
  29. package/common/types/address.types.js +36 -0
  30. package/common/types/address.types.js.map +1 -0
  31. package/common/types/aic.types.d.ts +434 -0
  32. package/common/types/aic.types.js +170 -0
  33. package/common/types/aic.types.js.map +1 -0
  34. package/common/types/aml.types.d.ts +41 -0
  35. package/common/types/aml.types.js +16 -0
  36. package/common/types/aml.types.js.map +1 -0
  37. package/common/types/api-key-logs.types.d.ts +204 -0
  38. package/common/types/api-key-logs.types.js +52 -0
  39. package/common/types/api-key-logs.types.js.map +1 -0
  40. package/common/types/api-keys.types.d.ts +192 -0
  41. package/common/types/api-keys.types.js +57 -0
  42. package/common/types/api-keys.types.js.map +1 -0
  43. package/common/types/asset.types.d.ts +1100 -0
  44. package/common/types/asset.types.js +353 -0
  45. package/common/types/asset.types.js.map +1 -0
  46. package/common/types/attribution.types.d.ts +582 -0
  47. package/common/types/attribution.types.js +126 -0
  48. package/common/types/attribution.types.js.map +1 -0
  49. package/common/types/auth.types.d.ts +523 -0
  50. package/common/types/auth.types.js +280 -0
  51. package/common/types/auth.types.js.map +1 -0
  52. package/common/types/batch-jobs.types.d.ts +321 -0
  53. package/common/types/batch-jobs.types.js +111 -0
  54. package/common/types/batch-jobs.types.js.map +1 -0
  55. package/common/types/bonus-tier.types.d.ts +991 -0
  56. package/common/types/bonus-tier.types.js +166 -0
  57. package/common/types/bonus-tier.types.js.map +1 -0
  58. package/common/types/cap-table.types.d.ts +1319 -0
  59. package/common/types/cap-table.types.js +458 -0
  60. package/common/types/cap-table.types.js.map +1 -0
  61. package/common/types/cart.types.d.ts +31 -0
  62. package/common/types/cart.types.js +20 -0
  63. package/common/types/cart.types.js.map +1 -0
  64. package/common/types/checklist-items.types.d.ts +195 -0
  65. package/common/types/checklist-items.types.js +54 -0
  66. package/common/types/checklist-items.types.js.map +1 -0
  67. package/common/types/checklist.types.d.ts +140 -0
  68. package/common/types/checklist.types.js +71 -0
  69. package/common/types/checklist.types.js.map +1 -0
  70. package/common/types/common.types.d.ts +1861 -0
  71. package/common/types/common.types.js +1511 -0
  72. package/common/types/common.types.js.map +1 -0
  73. package/common/types/comply-advantage-api.types.d.ts +3626 -0
  74. package/common/types/comply-advantage-api.types.js +291 -0
  75. package/common/types/comply-advantage-api.types.js.map +1 -0
  76. package/common/types/comply-advantage.types.d.ts +48 -0
  77. package/common/types/comply-advantage.types.js +21 -0
  78. package/common/types/comply-advantage.types.js.map +1 -0
  79. package/common/types/contact-us.types.d.ts +126 -0
  80. package/common/types/contact-us.types.js +91 -0
  81. package/common/types/contact-us.types.js.map +1 -0
  82. package/common/types/countries.types.d.ts +77 -0
  83. package/common/types/countries.types.js +349 -0
  84. package/common/types/countries.types.js.map +1 -0
  85. package/common/types/covered-person.types.d.ts +204 -0
  86. package/common/types/covered-person.types.js +234 -0
  87. package/common/types/covered-person.types.js.map +1 -0
  88. package/common/types/csv.types.d.ts +3612 -0
  89. package/common/types/csv.types.js +290 -0
  90. package/common/types/csv.types.js.map +1 -0
  91. package/common/types/dashboard.types.d.ts +2086 -0
  92. package/common/types/dashboard.types.js +690 -0
  93. package/common/types/dashboard.types.js.map +1 -0
  94. package/common/types/data-record.types.d.ts +347 -0
  95. package/common/types/data-record.types.js +261 -0
  96. package/common/types/data-record.types.js.map +1 -0
  97. package/common/types/data-room.types.d.ts +1277 -0
  98. package/common/types/data-room.types.js +167 -0
  99. package/common/types/data-room.types.js.map +1 -0
  100. package/common/types/default-theme-config.types.d.ts +445 -0
  101. package/common/types/default-theme-config.types.js +63 -0
  102. package/common/types/default-theme-config.types.js.map +1 -0
  103. package/common/types/disbursement-adjustment.types.d.ts +21 -0
  104. package/common/types/disbursement-adjustment.types.js +25 -0
  105. package/common/types/disbursement-adjustment.types.js.map +1 -0
  106. package/common/types/disbursement-approval-user.types.d.ts +935 -0
  107. package/common/types/disbursement-approval-user.types.js +68 -0
  108. package/common/types/disbursement-approval-user.types.js.map +1 -0
  109. package/common/types/disbursement-review.types.d.ts +923 -0
  110. package/common/types/disbursement-review.types.js +76 -0
  111. package/common/types/disbursement-review.types.js.map +1 -0
  112. package/common/types/disbursement-transaction.types.d.ts +621 -0
  113. package/common/types/disbursement-transaction.types.js +51 -0
  114. package/common/types/disbursement-transaction.types.js.map +1 -0
  115. package/common/types/disbursements.types.d.ts +3573 -0
  116. package/common/types/disbursements.types.js +447 -0
  117. package/common/types/disbursements.types.js.map +1 -0
  118. package/common/types/domain-filter.types.d.ts +135 -0
  119. package/common/types/domain-filter.types.js +40 -0
  120. package/common/types/domain-filter.types.js.map +1 -0
  121. package/common/types/email-theme.types.d.ts +1359 -0
  122. package/common/types/email-theme.types.js +318 -0
  123. package/common/types/email-theme.types.js.map +1 -0
  124. package/common/types/entity.types.d.ts +21 -0
  125. package/common/types/entity.types.js +14 -0
  126. package/common/types/entity.types.js.map +1 -0
  127. package/common/types/error-responses.types.d.ts +144 -0
  128. package/common/types/error-responses.types.js +125 -0
  129. package/common/types/error-responses.types.js.map +1 -0
  130. package/common/types/escrow-account.types.d.ts +415 -0
  131. package/common/types/escrow-account.types.js +78 -0
  132. package/common/types/escrow-account.types.js.map +1 -0
  133. package/common/types/exchange-api-key.types.d.ts +1010 -0
  134. package/common/types/exchange-api-key.types.js +90 -0
  135. package/common/types/exchange-api-key.types.js.map +1 -0
  136. package/common/types/exchange-import.types.d.ts +23 -0
  137. package/common/types/exchange-import.types.js +23 -0
  138. package/common/types/exchange-import.types.js.map +1 -0
  139. package/common/types/exchange-provider.types.d.ts +1308 -0
  140. package/common/types/exchange-provider.types.js +268 -0
  141. package/common/types/exchange-provider.types.js.map +1 -0
  142. package/common/types/file.types.d.ts +428 -0
  143. package/common/types/file.types.js +392 -0
  144. package/common/types/file.types.js.map +1 -0
  145. package/common/types/health.types.d.ts +112 -0
  146. package/common/types/health.types.js +22 -0
  147. package/common/types/health.types.js.map +1 -0
  148. package/common/types/i-will-do-it-later.types.d.ts +51 -0
  149. package/common/types/i-will-do-it-later.types.js +30 -0
  150. package/common/types/i-will-do-it-later.types.js.map +1 -0
  151. package/common/types/{index.ts → index.d.ts} +8 -5
  152. package/common/types/index.js +55 -0
  153. package/common/types/index.js.map +1 -0
  154. package/common/types/individuals.types.d.ts +2289 -0
  155. package/common/types/individuals.types.js +500 -0
  156. package/common/types/individuals.types.js.map +1 -0
  157. package/common/types/investor-account.types.d.ts +2996 -0
  158. package/common/types/investor-account.types.js +931 -0
  159. package/common/types/investor-account.types.js.map +1 -0
  160. package/common/types/investorAccountIdSchema.type.js +1 -0
  161. package/common/types/investorAccountIdSchema.type.js.map +1 -0
  162. package/common/types/investors-offering.types.d.ts +399 -0
  163. package/common/types/investors-offering.types.js +50 -0
  164. package/common/types/investors-offering.types.js.map +1 -0
  165. package/common/types/invite.types.d.ts +644 -0
  166. package/common/types/invite.types.js +114 -0
  167. package/common/types/invite.types.js.map +1 -0
  168. package/common/types/issuer-bank-account.types.d.ts +113 -0
  169. package/common/types/issuer-bank-account.types.js +81 -0
  170. package/common/types/issuer-bank-account.types.js.map +1 -0
  171. package/common/types/issuer-offering.types.d.ts +2236 -0
  172. package/common/types/issuer-offering.types.js +605 -0
  173. package/common/types/issuer-offering.types.js.map +1 -0
  174. package/common/types/issuer-payment-method.types.d.ts +1100 -0
  175. package/common/types/issuer-payment-method.types.js +311 -0
  176. package/common/types/issuer-payment-method.types.js.map +1 -0
  177. package/common/types/issuer.types.d.ts +539 -0
  178. package/common/types/issuer.types.js +275 -0
  179. package/common/types/issuer.types.js.map +1 -0
  180. package/common/types/job-item.types.d.ts +230 -0
  181. package/common/types/job-item.types.js +89 -0
  182. package/common/types/job-item.types.js.map +1 -0
  183. package/common/types/jobs.types.d.ts +296 -0
  184. package/common/types/jobs.types.js +150 -0
  185. package/common/types/jobs.types.js.map +1 -0
  186. package/common/types/kyb.types.d.ts +167 -0
  187. package/common/types/kyb.types.js +45 -0
  188. package/common/types/kyb.types.js.map +1 -0
  189. package/common/types/kyc.types.d.ts +2197 -0
  190. package/common/types/kyc.types.js +301 -0
  191. package/common/types/kyc.types.js.map +1 -0
  192. package/common/types/legal-entity.types.d.ts +676 -0
  193. package/common/types/legal-entity.types.js +151 -0
  194. package/common/types/legal-entity.types.js.map +1 -0
  195. package/common/types/login-history.types.d.ts +160 -0
  196. package/common/types/login-history.types.js +39 -0
  197. package/common/types/login-history.types.js.map +1 -0
  198. package/common/types/mail-template.types.d.ts +676 -0
  199. package/common/types/mail-template.types.js +531 -0
  200. package/common/types/mail-template.types.js.map +1 -0
  201. package/common/types/north-cap-integration.types.d.ts +1303 -0
  202. package/common/types/north-cap-integration.types.js +145 -0
  203. package/common/types/north-cap-integration.types.js.map +1 -0
  204. package/common/types/note.types.d.ts +216 -0
  205. package/common/types/note.types.js +82 -0
  206. package/common/types/note.types.js.map +1 -0
  207. package/common/types/notification.types.d.ts +2690 -0
  208. package/common/types/notification.types.js +411 -0
  209. package/common/types/notification.types.js.map +1 -0
  210. package/common/types/notion-api.types.d.ts +3626 -0
  211. package/common/types/notion-api.types.js +271 -0
  212. package/common/types/notion-api.types.js.map +1 -0
  213. package/common/types/notion-database.types.d.ts +191 -0
  214. package/common/types/notion-database.types.js +95 -0
  215. package/common/types/notion-database.types.js.map +1 -0
  216. package/common/types/notion-page.types.d.ts +3482 -0
  217. package/common/types/notion-page.types.js +208 -0
  218. package/common/types/notion-page.types.js.map +1 -0
  219. package/common/types/offering-reports.types.d.ts +525 -0
  220. package/common/types/offering-reports.types.js +111 -0
  221. package/common/types/offering-reports.types.js.map +1 -0
  222. package/common/types/offering-submission.types.d.ts +785 -0
  223. package/common/types/offering-submission.types.js +291 -0
  224. package/common/types/offering-submission.types.js.map +1 -0
  225. package/common/types/offering.types.d.ts +2859 -0
  226. package/common/types/offering.types.js +832 -0
  227. package/common/types/offering.types.js.map +1 -0
  228. package/common/types/page-revision.types.d.ts +74 -0
  229. package/common/types/page-revision.types.js +68 -0
  230. package/common/types/page-revision.types.js.map +1 -0
  231. package/common/types/page.types.d.ts +540 -0
  232. package/common/types/page.types.js +361 -0
  233. package/common/types/page.types.js.map +1 -0
  234. package/common/types/password.type.d.ts +2 -0
  235. package/common/types/password.type.js +14 -0
  236. package/common/types/password.type.js.map +1 -0
  237. package/common/types/payment-methods.types.d.ts +1165 -0
  238. package/common/types/payment-methods.types.js +381 -0
  239. package/common/types/payment-methods.types.js.map +1 -0
  240. package/common/types/phone.type.d.ts +12 -0
  241. package/common/types/phone.type.js +29 -0
  242. package/common/types/phone.type.js.map +1 -0
  243. package/common/types/portfolio.types.d.ts +185 -0
  244. package/common/types/portfolio.types.js +36 -0
  245. package/common/types/portfolio.types.js.map +1 -0
  246. package/common/types/privacy-policy-and-tos.types.d.ts +2 -0
  247. package/common/types/{privacy-policy-and-tos.types.ts → privacy-policy-and-tos.types.js} +1 -1
  248. package/common/types/privacy-policy-and-tos.types.js.map +1 -0
  249. package/common/types/queue.types.d.ts +22 -0
  250. package/common/types/queue.types.js +73 -0
  251. package/common/types/queue.types.js.map +1 -0
  252. package/common/types/registered-reps.types.d.ts +6 -0
  253. package/common/types/registered-reps.types.js +21 -0
  254. package/common/types/registered-reps.types.js.map +1 -0
  255. package/common/types/rejection-reasons.types.d.ts +35 -0
  256. package/common/types/rejection-reasons.types.js +49 -0
  257. package/common/types/rejection-reasons.types.js.map +1 -0
  258. package/common/types/reports.types.d.ts +345 -0
  259. package/common/types/reports.types.js +69 -0
  260. package/common/types/reports.types.js.map +1 -0
  261. package/common/types/review.types.d.ts +419 -0
  262. package/common/types/review.types.js +101 -0
  263. package/common/types/review.types.js.map +1 -0
  264. package/common/types/role.types.d.ts +30 -0
  265. package/common/types/role.types.js +21 -0
  266. package/common/types/role.types.js.map +1 -0
  267. package/common/types/secondary-customer.types.d.ts +586 -0
  268. package/common/types/secondary-customer.types.js +39 -0
  269. package/common/types/secondary-customer.types.js.map +1 -0
  270. package/common/types/secondary-issuer.types.d.ts +283 -0
  271. package/common/types/secondary-issuer.types.js +37 -0
  272. package/common/types/secondary-issuer.types.js.map +1 -0
  273. package/common/types/secondary-order.types.d.ts +508 -0
  274. package/common/types/secondary-order.types.js +40 -0
  275. package/common/types/secondary-order.types.js.map +1 -0
  276. package/common/types/secondary-security.types.d.ts +175 -0
  277. package/common/types/secondary-security.types.js +45 -0
  278. package/common/types/secondary-security.types.js.map +1 -0
  279. package/common/types/secondary-trade.entity.d.ts +16 -0
  280. package/common/types/secondary-trade.entity.js +12 -0
  281. package/common/types/secondary-trade.entity.js.map +1 -0
  282. package/common/types/secondary-trade.types.d.ts +465 -0
  283. package/common/types/secondary-trade.types.js +61 -0
  284. package/common/types/secondary-trade.types.js.map +1 -0
  285. package/common/types/secure-request.types.d.ts +171 -0
  286. package/common/types/secure-request.types.js +51 -0
  287. package/common/types/secure-request.types.js.map +1 -0
  288. package/common/types/signer.types.d.ts +3406 -0
  289. package/common/types/signer.types.js +532 -0
  290. package/common/types/signer.types.js.map +1 -0
  291. package/common/types/site-link.types.d.ts +875 -0
  292. package/common/types/site-link.types.js +126 -0
  293. package/common/types/site-link.types.js.map +1 -0
  294. package/common/types/site-settings.types.d.ts +1673 -0
  295. package/common/types/site-settings.types.js +500 -0
  296. package/common/types/site-settings.types.js.map +1 -0
  297. package/common/types/site.types.d.ts +1481 -0
  298. package/common/types/site.types.js +213 -0
  299. package/common/types/site.types.js.map +1 -0
  300. package/common/types/sms.types.d.ts +40 -0
  301. package/common/types/sms.types.js +27 -0
  302. package/common/types/sms.types.js.map +1 -0
  303. package/common/types/state-machine.types.d.ts +591 -0
  304. package/common/types/state-machine.types.js +144 -0
  305. package/common/types/state-machine.types.js.map +1 -0
  306. package/common/types/states.types.d.ts +77 -0
  307. package/common/types/states.types.js +137 -0
  308. package/common/types/states.types.js.map +1 -0
  309. package/common/types/subdoc-preview.types.d.ts +379 -0
  310. package/common/types/subdoc-preview.types.js +24 -0
  311. package/common/types/subdoc-preview.types.js.map +1 -0
  312. package/common/types/task.types.d.ts +545 -0
  313. package/common/types/task.types.js +214 -0
  314. package/common/types/task.types.js.map +1 -0
  315. package/common/types/trade-adjustment.type.d.ts +40 -0
  316. package/common/types/trade-adjustment.type.js +26 -0
  317. package/common/types/trade-adjustment.type.js.map +1 -0
  318. package/common/types/trade-line-item.types.d.ts +353 -0
  319. package/common/types/trade-line-item.types.js +103 -0
  320. package/common/types/trade-line-item.types.js.map +1 -0
  321. package/common/types/trade.types.d.ts +2012 -0
  322. package/common/types/trade.types.js +800 -0
  323. package/common/types/trade.types.js.map +1 -0
  324. package/common/types/transaction.types.d.ts +476 -0
  325. package/common/types/transaction.types.js +199 -0
  326. package/common/types/transaction.types.js.map +1 -0
  327. package/common/types/trusted-contact.types.d.ts +440 -0
  328. package/common/types/trusted-contact.types.js +95 -0
  329. package/common/types/trusted-contact.types.js.map +1 -0
  330. package/common/types/typography.types.d.ts +52 -0
  331. package/common/types/typography.types.js +67 -0
  332. package/common/types/typography.types.js.map +1 -0
  333. package/common/types/user-manual.types.d.ts +287 -0
  334. package/common/types/user-manual.types.js +192 -0
  335. package/common/types/user-manual.types.js.map +1 -0
  336. package/common/types/user-setting.types.d.ts +273 -0
  337. package/common/types/user-setting.types.js +85 -0
  338. package/common/types/user-setting.types.js.map +1 -0
  339. package/common/types/user.types.d.ts +1977 -0
  340. package/common/types/user.types.js +225 -0
  341. package/common/types/user.types.js.map +1 -0
  342. package/common/types/webhook.types.d.ts +10829 -0
  343. package/common/types/webhook.types.js +658 -0
  344. package/common/types/webhook.types.js.map +1 -0
  345. package/common/types/zapier.types.d.ts +126 -0
  346. package/common/types/zapier.types.js +247 -0
  347. package/common/types/zapier.types.js.map +1 -0
  348. package/common/types/zip.type.d.ts +35 -0
  349. package/common/types/zip.type.js +28 -0
  350. package/common/types/zip.type.js.map +1 -0
  351. package/contracts/clients/accounts/index.d.ts +308 -0
  352. package/contracts/clients/accounts/index.js +43 -0
  353. package/contracts/clients/accounts/index.js.map +1 -0
  354. package/contracts/clients/aic/index.d.ts +280 -0
  355. package/contracts/clients/aic/index.js +47 -0
  356. package/contracts/clients/aic/index.js.map +1 -0
  357. package/contracts/clients/api-key-logs/index.d.ts +287 -0
  358. package/contracts/clients/api-key-logs/index.js +37 -0
  359. package/contracts/clients/api-key-logs/index.js.map +1 -0
  360. package/contracts/clients/api-keys/index.d.ts +374 -0
  361. package/contracts/clients/api-keys/index.js +59 -0
  362. package/contracts/clients/api-keys/index.js.map +1 -0
  363. package/contracts/clients/assets/index.d.ts +1050 -0
  364. package/contracts/clients/assets/index.js +80 -0
  365. package/contracts/clients/assets/index.js.map +1 -0
  366. package/contracts/clients/auth/index.d.ts +236 -0
  367. package/contracts/clients/auth/index.js +38 -0
  368. package/contracts/clients/auth/index.js.map +1 -0
  369. package/contracts/clients/cart/index.d.ts +232 -0
  370. package/contracts/clients/cart/index.js +63 -0
  371. package/contracts/clients/cart/index.js.map +1 -0
  372. package/contracts/clients/csv/index.d.ts +1988 -0
  373. package/contracts/clients/csv/index.js +96 -0
  374. package/contracts/clients/csv/index.js.map +1 -0
  375. package/contracts/clients/files/index.d.ts +552 -0
  376. package/contracts/clients/files/index.js +142 -0
  377. package/contracts/clients/files/index.js.map +1 -0
  378. package/contracts/clients/files-public/index.d.ts +552 -0
  379. package/contracts/clients/files-public/index.js +142 -0
  380. package/contracts/clients/files-public/index.js.map +1 -0
  381. package/contracts/clients/index.d.ts +15681 -0
  382. package/contracts/clients/index.js +58 -0
  383. package/contracts/clients/index.js.map +1 -0
  384. package/contracts/clients/individuals/index.d.ts +3575 -0
  385. package/contracts/clients/individuals/index.js +74 -0
  386. package/contracts/clients/individuals/index.js.map +1 -0
  387. package/contracts/clients/investor-accounts/index.d.ts +339 -0
  388. package/contracts/clients/investor-accounts/index.js +73 -0
  389. package/contracts/clients/investor-accounts/index.js.map +1 -0
  390. package/contracts/clients/issuer-payment-methods/index.d.ts +276 -0
  391. package/contracts/clients/issuer-payment-methods/index.js +24 -0
  392. package/contracts/clients/issuer-payment-methods/index.js.map +1 -0
  393. package/contracts/clients/issuers/index.d.ts +449 -0
  394. package/contracts/clients/issuers/index.js +75 -0
  395. package/contracts/clients/issuers/index.js.map +1 -0
  396. package/contracts/clients/kyc/index.d.ts +345 -0
  397. package/contracts/clients/kyc/index.js +49 -0
  398. package/contracts/clients/kyc/index.js.map +1 -0
  399. package/contracts/clients/legal-entities/index.d.ts +887 -0
  400. package/contracts/clients/legal-entities/index.js +74 -0
  401. package/contracts/clients/legal-entities/index.js.map +1 -0
  402. package/contracts/clients/offerings/index.d.ts +1068 -0
  403. package/contracts/clients/offerings/index.js +95 -0
  404. package/contracts/clients/offerings/index.js.map +1 -0
  405. package/contracts/clients/payment-methods/index.d.ts +456 -0
  406. package/contracts/clients/payment-methods/index.js +68 -0
  407. package/contracts/clients/payment-methods/index.js.map +1 -0
  408. package/contracts/clients/review/index.d.ts +85 -0
  409. package/contracts/clients/review/index.js +27 -0
  410. package/contracts/clients/review/index.js.map +1 -0
  411. package/contracts/clients/secure-requests/index.d.ts +100 -0
  412. package/contracts/clients/secure-requests/index.js +22 -0
  413. package/contracts/clients/secure-requests/index.js.map +1 -0
  414. package/contracts/clients/sites/index.d.ts +657 -0
  415. package/contracts/clients/sites/index.js +40 -0
  416. package/contracts/clients/sites/index.js.map +1 -0
  417. package/contracts/clients/trade-line-items/index.d.ts +216 -0
  418. package/contracts/clients/trade-line-items/index.js +47 -0
  419. package/contracts/clients/trade-line-items/index.js.map +1 -0
  420. package/contracts/clients/trades/index.d.ts +871 -0
  421. package/contracts/clients/trades/index.js +156 -0
  422. package/contracts/clients/trades/index.js.map +1 -0
  423. package/contracts/clients/transactions/index.d.ts +88 -0
  424. package/contracts/clients/transactions/index.js +25 -0
  425. package/contracts/clients/transactions/index.js.map +1 -0
  426. package/contracts/clients/webhooks/index.d.ts +506 -0
  427. package/contracts/clients/webhooks/index.js +118 -0
  428. package/contracts/clients/webhooks/index.js.map +1 -0
  429. package/package.json +15 -15
  430. package/common/helpers/index.ts +0 -59
  431. package/common/types/account-contact.types.ts +0 -99
  432. package/common/types/account-detail.types.ts +0 -27
  433. package/common/types/account-integration.types.ts +0 -143
  434. package/common/types/account-manager.types.ts +0 -120
  435. package/common/types/account-setting.types.ts +0 -65
  436. package/common/types/account.types.ts +0 -297
  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 -359
  445. package/common/types/batch-jobs.types.ts +0 -151
  446. package/common/types/bonus-tier.types.ts +0 -180
  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 -1552
  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 -111
  454. package/common/types/countries.types.ts +0 -375
  455. package/common/types/covered-person.types.ts +0 -275
  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 -542
  477. package/common/types/investor-account.types.ts +0 -1240
  478. package/common/types/investors-offering.types.ts +0 -65
  479. package/common/types/invite.types.ts +0 -159
  480. package/common/types/issuer-bank-account.types.ts +0 -107
  481. package/common/types/issuer-offering.types.ts +0 -389
  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 -186
  489. package/common/types/login-history.types.ts +0 -46
  490. package/common/types/mail-template.types.ts +0 -470
  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 -544
  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 -727
  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 -1045
  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 -304
  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/index.ts +0 -10
  562. /package/common/types/{investorAccountIdSchema.type.ts → investorAccountIdSchema.type.d.ts} +0 -0
@@ -0,0 +1,1511 @@
1
+ import { extendZodWithOpenApi } from '@anatine/zod-openapi';
2
+ import { IBaseEntity } from './entity.types.js';
3
+ import { z } from 'zod';
4
+ import { TypeID } from 'typeid-js';
5
+ import { TwoFactorMethod } from './sms.types.js';
6
+ import { normalizeShortDate } from '../helpers/index.js';
7
+ import { HttpStatus } from '@nestjs/common';
8
+ extendZodWithOpenApi(z);
9
+ // All possible statuses for the system
10
+ export var BaseStatus;
11
+ (function (BaseStatus) {
12
+ BaseStatus["NEEDS_REVIEW"] = "NEEDS_REVIEW";
13
+ BaseStatus["PENDING"] = "PENDING";
14
+ BaseStatus["APPROVED"] = "APPROVED";
15
+ BaseStatus["REJECTED"] = "REJECTED";
16
+ BaseStatus["IN_REVIEW"] = "IN_REVIEW";
17
+ BaseStatus["ADDITIONAL_INFO"] = "ADDITIONAL_INFO";
18
+ BaseStatus["SUBMITTED"] = "SUBMITTED";
19
+ BaseStatus["IN_PROGRESS"] = "IN_PROGRESS";
20
+ BaseStatus["CANCELLED"] = "CANCELLED";
21
+ BaseStatus["SETTLED"] = "SETTLED";
22
+ BaseStatus["REFUNDED"] = "REFUNDED";
23
+ BaseStatus["RESUBMIT"] = "RESUBMIT";
24
+ BaseStatus["FUNDED"] = "FUNDED";
25
+ BaseStatus["COMPLETED"] = "COMPLETED";
26
+ BaseStatus["SIGNED"] = "SIGNED";
27
+ BaseStatus["DECLINED"] = "DECLINED";
28
+ BaseStatus["CART"] = "CART";
29
+ BaseStatus["PLACED"] = "PLACED";
30
+ BaseStatus["NEEDS_INFO"] = "NEEDS_INFO";
31
+ BaseStatus["NEEDS_PAYMENT_INFO"] = "NEEDS_PAYMENT_INFO";
32
+ BaseStatus["FUNDING"] = "FUNDING";
33
+ BaseStatus["CHARGED"] = "CHARGED";
34
+ BaseStatus["NEW"] = "NEW";
35
+ BaseStatus["IMPORT_ERROR"] = "IMPORT_ERROR";
36
+ BaseStatus["ERROR"] = "ERROR";
37
+ BaseStatus["UPDATE_PAYMENT_METHOD"] = "UPDATE_PAYMENT_METHOD";
38
+ BaseStatus["RE_SIGN"] = "RE_SIGN";
39
+ BaseStatus["RESET_2FA"] = "RESET_2FA";
40
+ BaseStatus["FORGOT_PASSWORD"] = "FORGOT_PASSWORD";
41
+ BaseStatus["RESET_PASSWORD"] = "RESET_PASSWORD";
42
+ BaseStatus["TWO_FACTOR_LOGIN"] = "TWO_FACTOR_LOGIN";
43
+ BaseStatus["LOGIN"] = "LOGIN";
44
+ BaseStatus["FAILED"] = "FAILED";
45
+ BaseStatus["AUTHORIZING"] = "AUTHORIZING";
46
+ BaseStatus["VALID"] = "VALID";
47
+ BaseStatus["DELETED"] = "DELETED";
48
+ BaseStatus["REVOKED"] = "REVOKED";
49
+ BaseStatus["WARNING"] = "WARNING";
50
+ BaseStatus["READY_TO_APPROVE"] = "READY_TO_APPROVE";
51
+ BaseStatus["INCOMPLETE"] = "INCOMPLETE";
52
+ BaseStatus["RE_PROCESS"] = "RE_PROCESS";
53
+ BaseStatus["INVALID"] = "INVALID";
54
+ BaseStatus["NOT_PROCESSED"] = "NOT_PROCESSED";
55
+ BaseStatus["PROCESSING"] = "PROCESSING";
56
+ BaseStatus["PROCESSING_ERROR"] = "PROCESSING_ERROR";
57
+ BaseStatus["REVIEW_ERROR"] = "REVIEW_ERROR";
58
+ BaseStatus["PROCESSED"] = "PROCESSED";
59
+ BaseStatus["SAVE"] = "SAVE";
60
+ BaseStatus["ACCEPTED"] = "ACCEPTED";
61
+ BaseStatus["ONBOARDING"] = "ONBOARDING";
62
+ BaseStatus["LIVE"] = "LIVE";
63
+ BaseStatus["OVERDUE"] = "OVERDUE";
64
+ BaseStatus["SUSPENDED"] = "SUSPENDED";
65
+ BaseStatus["INACTIVE"] = "INACTIVE";
66
+ BaseStatus["PARTIALLY_REFUNDED"] = "PARTIALLY_REFUNDED";
67
+ BaseStatus["VOIDED"] = "VOIDED";
68
+ BaseStatus["REFUND_INITIATED"] = "REFUND_INITIATED";
69
+ BaseStatus["REFUND_COMPLETED"] = "REFUND_COMPLETED";
70
+ BaseStatus["REFUND_FAILED"] = "REFUND_FAILED";
71
+ BaseStatus["VOID_INITIATED"] = "VOID_INITIATED";
72
+ BaseStatus["VOID_COMPLETED"] = "VOID_COMPLETED";
73
+ BaseStatus["VOID_FAILED"] = "VOID_FAILED";
74
+ BaseStatus["RESTORE"] = "RESTORE";
75
+ BaseStatus["JOIN"] = "JOIN";
76
+ BaseStatus["ACTIVE"] = "ACTIVE";
77
+ BaseStatus["LOCKED"] = "LOCKED";
78
+ BaseStatus["ENABLED"] = "ENABLED";
79
+ BaseStatus["DISABLED"] = "DISABLED";
80
+ BaseStatus["PROCESSING_VOID"] = "PROCESSING_VOID";
81
+ BaseStatus["PROCESSING_REFUND"] = "PROCESSING_REFUND";
82
+ BaseStatus["PAUSED"] = "PAUSED";
83
+ BaseStatus["CLOSED"] = "CLOSED";
84
+ })(BaseStatus || (BaseStatus = {}));
85
+ export const UserWithoutPasswordAccountZod = IBaseEntity.extend({
86
+ firstName: z.string().openapi({ example: 'Daniel' }),
87
+ lastName: z.string().openapi({ example: 'Ice' }),
88
+ email: z.string().email().openapi({ example: 'test@test.com' }),
89
+ provider: z.string().openapi({ example: 'email' }),
90
+ active: z.boolean().openapi({ example: true }),
91
+ lastLoginAt: z.date().nullable().openapi({ example: new Date() }),
92
+ loginCount: z.number().openapi({ example: 1 }),
93
+ inviteId: z
94
+ .string()
95
+ .nullable()
96
+ .openapi({ example: 'invite_01j1xgme5mfrasd02hmfwsy13a' }),
97
+ accountId: z
98
+ .string()
99
+ .nullable()
100
+ .openapi({ example: 'account_01j1xgme5mfrasd02hmfwsy13a' }),
101
+ });
102
+ export var ManagedByType;
103
+ (function (ManagedByType) {
104
+ ManagedByType["DALMORE"] = "DALMORE";
105
+ ManagedByType["ISSUER"] = "ISSUER";
106
+ })(ManagedByType || (ManagedByType = {}));
107
+ /**
108
+ * Unified platform enum used across accounts and trades
109
+ * Values: DALMORE, IMPORT
110
+ */
111
+ export var Platform;
112
+ (function (Platform) {
113
+ Platform["DALMORE"] = "DALMORE";
114
+ Platform["IMPORT"] = "IMPORT";
115
+ })(Platform || (Platform = {}));
116
+ export var HttpMethod;
117
+ (function (HttpMethod) {
118
+ HttpMethod["GET"] = "GET";
119
+ HttpMethod["POST"] = "POST";
120
+ HttpMethod["PUT"] = "PUT";
121
+ HttpMethod["PATCH"] = "PATCH";
122
+ HttpMethod["DELETE"] = "DELETE";
123
+ HttpMethod["HEAD"] = "HEAD";
124
+ HttpMethod["OPTIONS"] = "OPTIONS";
125
+ })(HttpMethod || (HttpMethod = {}));
126
+ export var UserStatus;
127
+ (function (UserStatus) {
128
+ UserStatus["ACTIVE"] = "ACTIVE";
129
+ UserStatus["LOCKED"] = "LOCKED";
130
+ })(UserStatus || (UserStatus = {}));
131
+ export const SENSITIVE_PATTERNS = [
132
+ /password/i,
133
+ /credit.*card/i,
134
+ /ssn/i,
135
+ /social.*security/i,
136
+ /token/i,
137
+ /access.*token/i,
138
+ /code/i,
139
+ /apiKey/i,
140
+ /key/i,
141
+ /stripeSecretKey/i,
142
+ /usAccountNumber/i,
143
+ /recoveryCodes/i,
144
+ /totpSecret/i,
145
+ /totpTemporarySecret/i,
146
+ /smsVerificationCode/i,
147
+ ];
148
+ export var AccountStatus;
149
+ (function (AccountStatus) {
150
+ AccountStatus["ONBOARDING"] = "ONBOARDING";
151
+ AccountStatus["LIVE"] = "LIVE";
152
+ AccountStatus["OVERDUE"] = "OVERDUE";
153
+ AccountStatus["SUSPENDED"] = "SUSPENDED";
154
+ AccountStatus["INACTIVE"] = "INACTIVE";
155
+ })(AccountStatus || (AccountStatus = {}));
156
+ // CHANGES TO THIS WILL REQUIRE:
157
+ // - Migrations to update the database
158
+ // - Update to createDefaultIssuerPaymentMethods
159
+ // - Update to existing issuers payment methods, see UpdateIssuerPaymentMethod1755035846643
160
+ // - Updates to TradeFundingTransitionWorker
161
+ export var PaymentMethodType;
162
+ (function (PaymentMethodType) {
163
+ PaymentMethodType["CREDIT_CARD"] = "CREDIT_CARD";
164
+ PaymentMethodType["WIRE"] = "WIRE";
165
+ PaymentMethodType["ACH"] = "ACH";
166
+ PaymentMethodType["BANK_ACCOUNT"] = "BANK_ACCOUNT";
167
+ PaymentMethodType["CHECK"] = "CHECK";
168
+ PaymentMethodType["RETIREMENT"] = "RETIREMENT";
169
+ })(PaymentMethodType || (PaymentMethodType = {}));
170
+ export const accountSettingIdSchema = z.string().refine((value) => {
171
+ try {
172
+ const tid = TypeID.fromString(value);
173
+ return tid.getType() === 'account_setting';
174
+ }
175
+ catch {
176
+ return false;
177
+ }
178
+ }, {
179
+ message: 'Invalid account setting ID format. Must be a valid TypeID with "account_setting" prefix.',
180
+ });
181
+ export const IAccountSettingZod = IBaseEntity.extend({
182
+ id: accountSettingIdSchema.openapi({
183
+ example: 'account_setting_01j5y5ghx8fvc83dmx3pznq7hv',
184
+ }),
185
+ accountId: z.string().openapi({
186
+ example: 'account_01j5y5ghx8fvc83dmx3pznq7hv',
187
+ }),
188
+ offeringSetup: z.boolean().openapi({ example: false }),
189
+ investorPortalSetup: z.boolean().openapi({ example: false }),
190
+ paymentMethodSetup: z.boolean().openapi({ example: false }),
191
+ accountContactsSetup: z.boolean().openapi({ example: false }),
192
+ productPrimaries: z.boolean().openapi({ example: true }),
193
+ productSecondaries: z.boolean().openapi({ example: false }),
194
+ featureDisbursements: z.boolean().openapi({ example: true }),
195
+ apiPortal: z.boolean().openapi({ example: false }),
196
+ investorSiteEnabled: z.boolean().openapi({ example: true }),
197
+ });
198
+ export const AccountZod = IBaseEntity.extend({
199
+ name: z.string().openapi({ example: 'Dalmore' }),
200
+ status: z.nativeEnum(AccountStatus).openapi({ example: AccountStatus.LIVE }),
201
+ managedBy: z
202
+ .nativeEnum(ManagedByType)
203
+ .nullable()
204
+ .openapi({ example: ManagedByType.DALMORE }),
205
+ platform: z.nativeEnum(Platform).openapi({ example: Platform.IMPORT }),
206
+ onboardingReviewerId: z
207
+ .string()
208
+ .nullable()
209
+ .openapi({ example: 'user_01j1xgme5mfrasd02hmfwsy13a' }),
210
+ onboardingReviewAt: z.date().nullable(),
211
+ allowPendingComplianceReview: z.boolean().openapi({ example: false }),
212
+ });
213
+ export const AccountWithoutUsersZod = IBaseEntity.extend({
214
+ name: z.string().openapi({ example: 'Dalmore' }),
215
+ status: z.nativeEnum(AccountStatus).openapi({ example: AccountStatus.LIVE }),
216
+ managedBy: z
217
+ .nativeEnum(ManagedByType)
218
+ .nullable()
219
+ .openapi({ example: ManagedByType.DALMORE }),
220
+ platform: z.nativeEnum(Platform).openapi({ example: Platform.IMPORT }),
221
+ onboardingReviewerId: z
222
+ .string()
223
+ .nullable()
224
+ .openapi({ example: 'user_01j1xgme5mfrasd02hmfwsy13a' }),
225
+ onboardingReviewAt: z.date().nullable(),
226
+ allowPendingComplianceReview: z.boolean().openapi({ example: false }),
227
+ });
228
+ export var PortalType;
229
+ (function (PortalType) {
230
+ PortalType["COMPLIANCE"] = "COMPLIANCE";
231
+ PortalType["ISSUER"] = "ISSUER";
232
+ PortalType["INVESTOR"] = "INVESTOR";
233
+ PortalType["CLIENT"] = "CLIENT";
234
+ PortalType["SECONDARIES"] = "SECONDARIES";
235
+ PortalType["COMPLIANCE_APIKEY"] = "COMPLIANCE_APIKEY";
236
+ })(PortalType || (PortalType = {}));
237
+ export var UserType;
238
+ (function (UserType) {
239
+ UserType["USER"] = "USER";
240
+ UserType["LEAD"] = "LEAD";
241
+ UserType["INVESTOR"] = "INVESTOR";
242
+ UserType["DEMO"] = "DEMO";
243
+ })(UserType || (UserType = {}));
244
+ export var UserRole;
245
+ (function (UserRole) {
246
+ UserRole["API_KEY"] = "API_KEY";
247
+ UserRole["IMPORT"] = "IMPORT";
248
+ UserRole["VIEWER"] = "VIEWER";
249
+ UserRole["SUPPORT"] = "SUPPORT";
250
+ UserRole["COMPLIANCE"] = "COMPLIANCE";
251
+ UserRole["ADMIN"] = "ADMIN";
252
+ UserRole["MARKETER"] = "MARKETER";
253
+ UserRole["OWNER"] = "OWNER";
254
+ UserRole["LEGAL"] = "LEGAL";
255
+ UserRole["COMMUNITY_MANAGER"] = "COMMUNITY_MANAGER";
256
+ UserRole["ESCROW_AGENT"] = "ESCROW_AGENT";
257
+ UserRole["AGENT"] = "AGENT";
258
+ UserRole["ONBOARDING"] = "ONBOARDING";
259
+ })(UserRole || (UserRole = {}));
260
+ export var IssuerRole;
261
+ (function (IssuerRole) {
262
+ IssuerRole["VIEWER"] = "VIEWER";
263
+ IssuerRole["OWNER"] = "OWNER";
264
+ IssuerRole["MARKETER"] = "MARKETER";
265
+ IssuerRole["LEGAL"] = "LEGAL";
266
+ IssuerRole["COMMUNITY_MANAGER"] = "COMMUNITY_MANAGER";
267
+ IssuerRole["COMPLIANCE"] = "COMPLIANCE";
268
+ IssuerRole["ADMIN"] = "ADMIN";
269
+ IssuerRole["SUPPORT"] = "SUPPORT";
270
+ })(IssuerRole || (IssuerRole = {}));
271
+ export var FileContainerType;
272
+ (function (FileContainerType) {
273
+ FileContainerType["SITE"] = "SITE";
274
+ FileContainerType["PRIVATE"] = "PRIVATE";
275
+ FileContainerType["PUBLIC"] = "PUBLIC";
276
+ FileContainerType["ASSET"] = "ASSET";
277
+ })(FileContainerType || (FileContainerType = {}));
278
+ export var UserDataType;
279
+ (function (UserDataType) {
280
+ UserDataType["LIVE"] = "LIVE";
281
+ UserDataType["TEST"] = "TEST";
282
+ })(UserDataType || (UserDataType = {}));
283
+ export var AccountContactType;
284
+ (function (AccountContactType) {
285
+ AccountContactType["GENERAL"] = "GENERAL";
286
+ AccountContactType["INVESTOR"] = "INVESTOR";
287
+ AccountContactType["ISSUER"] = "ISSUER";
288
+ })(AccountContactType || (AccountContactType = {}));
289
+ // Configuration for portals and their roles - in order of hierarchy
290
+ export const PortalConfig = {
291
+ // JWT AUTH
292
+ [PortalType.COMPLIANCE]: {
293
+ type: PortalType.COMPLIANCE,
294
+ roles: [
295
+ UserRole.IMPORT,
296
+ UserRole.VIEWER,
297
+ UserRole.SUPPORT,
298
+ UserRole.COMPLIANCE,
299
+ UserRole.ADMIN,
300
+ ],
301
+ },
302
+ [PortalType.ISSUER]: {
303
+ type: PortalType.ISSUER,
304
+ roles: [UserRole.MARKETER, UserRole.OWNER],
305
+ },
306
+ [PortalType.INVESTOR]: {
307
+ type: PortalType.INVESTOR,
308
+ roles: [UserRole.VIEWER, UserRole.OWNER],
309
+ },
310
+ // API KEY AUTH
311
+ [PortalType.CLIENT]: {
312
+ type: PortalType.CLIENT,
313
+ roles: [UserRole.API_KEY],
314
+ },
315
+ [PortalType.SECONDARIES]: {
316
+ type: PortalType.SECONDARIES,
317
+ roles: [UserRole.API_KEY],
318
+ },
319
+ [PortalType.COMPLIANCE_APIKEY]: {
320
+ type: PortalType.COMPLIANCE_APIKEY,
321
+ roles: [UserRole.API_KEY],
322
+ },
323
+ };
324
+ export const BaseAuthReq = z.object({
325
+ id: z.string(),
326
+ accountId: z.string(),
327
+ isInactiveAccount: z.boolean(),
328
+ active: z.boolean(),
329
+ role: z.nativeEnum(UserRole),
330
+ type: z.nativeEnum(PortalType),
331
+ roleId: z.string(),
332
+ accountSettings: z.lazy(() => IAccountSettingZod).optional(),
333
+ });
334
+ // Regular user type extending base
335
+ export const AuthUserReq = BaseAuthReq.extend({
336
+ userLoginId: z.string(),
337
+ firstName: z.string(),
338
+ lastName: z.string(),
339
+ email: z.string().email(),
340
+ provider: z.string(),
341
+ locked: z.boolean(),
342
+ lastLoginAt: z.date().nullable(),
343
+ loginCount: z.number(),
344
+ requiresTwoFactorSetup: z.boolean().optional(),
345
+ twoFactorEnabled: z.boolean().optional(),
346
+ twoFactorMethod: z.nativeEnum(TwoFactorMethod).optional(),
347
+ managedBy: z.nativeEnum(ManagedByType).optional(),
348
+ userType: z.nativeEnum(UserType).optional(),
349
+ accountStatus: z.lazy(() => z.nativeEnum(AccountStatus)),
350
+ });
351
+ // API key type extending base
352
+ export const AuthApiKeyReq = BaseAuthReq.extend({
353
+ name: z.string(),
354
+ description: z.string().nullable(),
355
+ lastUsedAt: z.date().nullable(),
356
+ });
357
+ export const UserWithoutPasswordZod = IBaseEntity.extend({
358
+ firstName: z.string().openapi({ example: 'Daniel' }),
359
+ lastName: z.string().openapi({ example: 'Ice' }),
360
+ email: z.string().email().openapi({ example: 'test@test.com' }),
361
+ provider: z.string().openapi({ example: 'email' }),
362
+ active: z.boolean().openapi({ example: true }),
363
+ lastLoginAt: z.date().nullable().openapi({ example: new Date() }),
364
+ loginCount: z.number().openapi({ example: 1 }),
365
+ inviteId: z
366
+ .string()
367
+ .nullable()
368
+ .openapi({ example: 'invite_01j1xgme5mfrasd02hmfwsy13a' }),
369
+ accountId: z
370
+ .string()
371
+ .nullable()
372
+ .openapi({ example: 'account_01j1xgme5mfrasd02hmfwsy13a' }),
373
+ account: AccountWithoutUsersZod.optional(),
374
+ });
375
+ export const IPaginationMeta = z.object({
376
+ itemCount: z.number().openapi({ example: 1 }),
377
+ totalItems: z.number().optional().openapi({ example: 10 }),
378
+ itemsPerPage: z.number().openapi({ example: 1 }),
379
+ totalPages: z.number().optional().openapi({ example: 10 }),
380
+ currentPage: z.number().openapi({ example: 1 }),
381
+ });
382
+ export const PaginationOptionsZod = z.object({
383
+ page: z.coerce
384
+ .number()
385
+ .transform((val) => (val === 0 ? 1 : val))
386
+ .optional()
387
+ .default(1),
388
+ limit: z.coerce
389
+ .number()
390
+ .transform((val) => (val === 0 ? 10 : val))
391
+ .optional()
392
+ .default(10),
393
+ });
394
+ // The base action types for the system
395
+ export var BaseAction;
396
+ (function (BaseAction) {
397
+ BaseAction["CREATE"] = "CREATE";
398
+ BaseAction["READ"] = "READ";
399
+ BaseAction["UPDATE"] = "UPDATE";
400
+ BaseAction["DELETE"] = "DELETE";
401
+ BaseAction["IMPORT"] = "IMPORT";
402
+ })(BaseAction || (BaseAction = {}));
403
+ export var KYCStatus;
404
+ (function (KYCStatus) {
405
+ KYCStatus["NEEDS_REVIEW"] = "NEEDS_REVIEW";
406
+ KYCStatus["PENDING"] = "PENDING";
407
+ KYCStatus["APPROVED"] = "APPROVED";
408
+ KYCStatus["REJECTED"] = "REJECTED";
409
+ KYCStatus["CANCELLED"] = "CANCELLED";
410
+ KYCStatus["RESUBMIT"] = "RESUBMIT";
411
+ KYCStatus["ERROR"] = "ERROR";
412
+ })(KYCStatus || (KYCStatus = {}));
413
+ export var AMLStatus;
414
+ (function (AMLStatus) {
415
+ AMLStatus["NEEDS_REVIEW"] = "NEEDS_REVIEW";
416
+ AMLStatus["PENDING"] = "PENDING";
417
+ AMLStatus["APPROVED"] = "APPROVED";
418
+ AMLStatus["REJECTED"] = "REJECTED";
419
+ AMLStatus["ERROR"] = "ERROR";
420
+ })(AMLStatus || (AMLStatus = {}));
421
+ export var AicStatus;
422
+ (function (AicStatus) {
423
+ AicStatus["NEEDS_REVIEW"] = "NEEDS_REVIEW";
424
+ AicStatus["PENDING"] = "PENDING";
425
+ AicStatus["APPROVED"] = "APPROVED";
426
+ AicStatus["REJECTED"] = "REJECTED";
427
+ AicStatus["PROCESSED"] = "PROCESSED";
428
+ })(AicStatus || (AicStatus = {}));
429
+ export var IssuerStatus;
430
+ (function (IssuerStatus) {
431
+ IssuerStatus["REJECTED"] = "REJECTED";
432
+ IssuerStatus["IN_REVIEW"] = "IN_REVIEW";
433
+ IssuerStatus["ADDITIONAL_INFO"] = "ADDITIONAL_INFO";
434
+ IssuerStatus["SUBMITTED"] = "SUBMITTED";
435
+ IssuerStatus["IN_PROGRESS"] = "IN_PROGRESS";
436
+ IssuerStatus["APPROVED"] = "APPROVED";
437
+ })(IssuerStatus || (IssuerStatus = {}));
438
+ export var KYBStatus;
439
+ (function (KYBStatus) {
440
+ KYBStatus["NEEDS_REVIEW"] = "NEEDS_REVIEW";
441
+ KYBStatus["PENDING"] = "PENDING";
442
+ KYBStatus["APPROVED"] = "APPROVED";
443
+ KYBStatus["REJECTED"] = "REJECTED";
444
+ })(KYBStatus || (KYBStatus = {}));
445
+ export var SanctionsStatus;
446
+ (function (SanctionsStatus) {
447
+ SanctionsStatus["NEEDS_REVIEW"] = "NEEDS_REVIEW";
448
+ SanctionsStatus["PENDING"] = "PENDING";
449
+ SanctionsStatus["APPROVED"] = "APPROVED";
450
+ SanctionsStatus["REJECTED"] = "REJECTED";
451
+ })(SanctionsStatus || (SanctionsStatus = {}));
452
+ export var FundingStatus;
453
+ (function (FundingStatus) {
454
+ FundingStatus["PENDING"] = "PENDING";
455
+ FundingStatus["CANCELLED"] = "CANCELLED";
456
+ FundingStatus["SETTLED"] = "SETTLED";
457
+ FundingStatus["REFUNDED"] = "REFUNDED";
458
+ FundingStatus["DECLINED"] = "DECLINED";
459
+ FundingStatus["FUNDING"] = "FUNDING";
460
+ FundingStatus["AUTHORIZING"] = "AUTHORIZING";
461
+ FundingStatus["FAILED"] = "FAILED";
462
+ })(FundingStatus || (FundingStatus = {}));
463
+ export var TxnCheck;
464
+ (function (TxnCheck) {
465
+ TxnCheck["PENDING"] = "PENDING";
466
+ TxnCheck["NEEDS_REVIEW"] = "NEEDS_REVIEW";
467
+ TxnCheck["APPROVED"] = "APPROVED";
468
+ TxnCheck["REJECTED"] = "REJECTED";
469
+ })(TxnCheck || (TxnCheck = {}));
470
+ export var ApprovalStatus;
471
+ (function (ApprovalStatus) {
472
+ ApprovalStatus["PENDING"] = "PENDING";
473
+ ApprovalStatus["FUNDED"] = "FUNDED";
474
+ ApprovalStatus["APPROVED"] = "APPROVED";
475
+ ApprovalStatus["REJECTED"] = "REJECTED";
476
+ ApprovalStatus["REFUNDED"] = "REFUNDED";
477
+ })(ApprovalStatus || (ApprovalStatus = {}));
478
+ export var IraCheck;
479
+ (function (IraCheck) {
480
+ IraCheck["PENDING"] = "PENDING";
481
+ IraCheck["APPROVED"] = "APPROVED";
482
+ IraCheck["NEEDS_REVIEW"] = "NEEDS_REVIEW";
483
+ IraCheck["REJECTED"] = "REJECTED";
484
+ })(IraCheck || (IraCheck = {}));
485
+ export var CoveredPersonsStatus;
486
+ (function (CoveredPersonsStatus) {
487
+ CoveredPersonsStatus["REJECTED"] = "REJECTED";
488
+ CoveredPersonsStatus["IN_REVIEW"] = "IN_REVIEW";
489
+ CoveredPersonsStatus["IN_PROGRESS"] = "IN_PROGRESS";
490
+ CoveredPersonsStatus["COMPLETED"] = "COMPLETED";
491
+ })(CoveredPersonsStatus || (CoveredPersonsStatus = {}));
492
+ export var ComplianceReview;
493
+ (function (ComplianceReview) {
494
+ ComplianceReview["PENDING"] = "PENDING";
495
+ ComplianceReview["APPROVED"] = "APPROVED";
496
+ ComplianceReview["REJECTED"] = "REJECTED";
497
+ ComplianceReview["NEEDS_REVIEW"] = "NEEDS_REVIEW";
498
+ ComplianceReview["CANCELLED"] = "CANCELLED";
499
+ ComplianceReview["READY_TO_APPROVE"] = "READY_TO_APPROVE";
500
+ })(ComplianceReview || (ComplianceReview = {}));
501
+ export var KYCDocumentType;
502
+ (function (KYCDocumentType) {
503
+ KYCDocumentType["PASSPORT"] = "PASSPORT";
504
+ KYCDocumentType["DRIVER_LICENSE"] = "DRIVER_LICENSE";
505
+ KYCDocumentType["STATE_ID"] = "STATE_ID";
506
+ })(KYCDocumentType || (KYCDocumentType = {}));
507
+ export var InvestmentType;
508
+ (function (InvestmentType) {
509
+ InvestmentType["INDIVIDUAL"] = "INDIVIDUAL";
510
+ InvestmentType["JOINT"] = "JOINT";
511
+ InvestmentType["ENTITY"] = "ENTITY";
512
+ })(InvestmentType || (InvestmentType = {}));
513
+ export var AicAccreditationType;
514
+ (function (AicAccreditationType) {
515
+ AicAccreditationType["PENDING"] = "PENDING";
516
+ AicAccreditationType["INCOME"] = "INCOME";
517
+ AicAccreditationType["NET_WORTH"] = "NET_WORTH";
518
+ AicAccreditationType["PROFESSIONAL_CERTIFICATION"] = "PROFESSIONAL_CERTIFICATION";
519
+ AicAccreditationType["KNOWLEDGEABLE_EMPLOYEE"] = "KNOWLEDGEABLE_EMPLOYEE";
520
+ })(AicAccreditationType || (AicAccreditationType = {}));
521
+ export var InvestorAccountType;
522
+ (function (InvestorAccountType) {
523
+ InvestorAccountType["INDIVIDUAL"] = "INDIVIDUAL";
524
+ InvestorAccountType["JOINT"] = "JOINT";
525
+ InvestorAccountType["RETIREMENT"] = "RETIREMENT";
526
+ InvestorAccountType["LEGAL_ENTITY"] = "LEGAL_ENTITY";
527
+ })(InvestorAccountType || (InvestorAccountType = {}));
528
+ export var SetupStatusType;
529
+ (function (SetupStatusType) {
530
+ SetupStatusType["IN_PROGRESS"] = "IN_PROGRESS";
531
+ SetupStatusType["COMPLETE"] = "COMPLETE";
532
+ })(SetupStatusType || (SetupStatusType = {}));
533
+ export var SetupStepType;
534
+ (function (SetupStepType) {
535
+ SetupStepType["NEW"] = "NEW";
536
+ SetupStepType["PERSONAL_INFO"] = "PERSONAL_INFO";
537
+ SetupStepType["ADDRESS"] = "ADDRESS";
538
+ SetupStepType["KYC"] = "KYC";
539
+ SetupStepType["INCOME"] = "INCOME";
540
+ SetupStepType["AIC_QUESTIONS"] = "AIC_QUESTIONS";
541
+ SetupStepType["AIC_FILES"] = "AIC_FILES";
542
+ })(SetupStepType || (SetupStepType = {}));
543
+ export var OfferingType;
544
+ (function (OfferingType) {
545
+ OfferingType["REG_A"] = "REG_A";
546
+ OfferingType["REG_CF"] = "REG_CF";
547
+ OfferingType["REG_D"] = "REG_D";
548
+ OfferingType["S1"] = "S1";
549
+ OfferingType["EXCHANGE_NOTE"] = "EXCHANGE_NOTE";
550
+ })(OfferingType || (OfferingType = {}));
551
+ export var AssetType;
552
+ (function (AssetType) {
553
+ AssetType["BOND"] = "BOND";
554
+ AssetType["STOCK"] = "STOCK";
555
+ AssetType["PROMISSORY_NOTE"] = "PROMISSORY_NOTE";
556
+ })(AssetType || (AssetType = {}));
557
+ export var AdjustmentType;
558
+ (function (AdjustmentType) {
559
+ AdjustmentType["CREDIT_CARD_FEES"] = "CREDIT_CARD_FEES";
560
+ AdjustmentType["SERVICE_CHARGES"] = "SERVICE_CHARGES";
561
+ AdjustmentType["SUBSCRIPTION_DISCOUNT"] = "SUBSCRIPTION_DISCOUNT";
562
+ })(AdjustmentType || (AdjustmentType = {}));
563
+ export var SignatureStatus;
564
+ (function (SignatureStatus) {
565
+ SignatureStatus["PENDING"] = "PENDING";
566
+ SignatureStatus["SIGNED"] = "SIGNED";
567
+ SignatureStatus["DECLINED"] = "DECLINED";
568
+ SignatureStatus["NEEDS_REVIEW"] = "NEEDS_REVIEW";
569
+ SignatureStatus["RE_SIGN"] = "RE_SIGN";
570
+ })(SignatureStatus || (SignatureStatus = {}));
571
+ export var TemplateType;
572
+ (function (TemplateType) {
573
+ TemplateType["INDIVIDUAL"] = "INDIVIDUAL";
574
+ TemplateType["JOINT"] = "JOINT";
575
+ TemplateType["ENTITY"] = "ENTITY";
576
+ TemplateType["RETIREMENT"] = "RETIREMENT";
577
+ TemplateType["GENERAL"] = "GENERAL";
578
+ })(TemplateType || (TemplateType = {}));
579
+ export var TemplateStatus;
580
+ (function (TemplateStatus) {
581
+ TemplateStatus["PENDING"] = "PENDING";
582
+ TemplateStatus["VALID"] = "VALID";
583
+ TemplateStatus["ERROR"] = "ERROR";
584
+ })(TemplateStatus || (TemplateStatus = {}));
585
+ export var SenderIdentityStatus;
586
+ (function (SenderIdentityStatus) {
587
+ SenderIdentityStatus["PENDING"] = "PENDING";
588
+ SenderIdentityStatus["APPROVED"] = "APPROVED";
589
+ SenderIdentityStatus["REJECTED"] = "DECLINED";
590
+ SenderIdentityStatus["DELETED"] = "DELETED";
591
+ SenderIdentityStatus["REVOKED"] = "REVOKED";
592
+ })(SenderIdentityStatus || (SenderIdentityStatus = {}));
593
+ export var DurationType;
594
+ (function (DurationType) {
595
+ DurationType["DAY"] = "DAYS";
596
+ DurationType["WEEK"] = "WEEKS";
597
+ DurationType["MONTH"] = "MONTHS";
598
+ DurationType["YEAR"] = "YEARS";
599
+ })(DurationType || (DurationType = {}));
600
+ export var CoveredPersonsRoleType;
601
+ (function (CoveredPersonsRoleType) {
602
+ CoveredPersonsRoleType["ENTITY"] = "ENTITY";
603
+ CoveredPersonsRoleType["BOARD_MEMBER"] = "BOARD_MEMBER";
604
+ CoveredPersonsRoleType["ADVISOR"] = "ADVISOR";
605
+ CoveredPersonsRoleType["CEO"] = "CEO";
606
+ CoveredPersonsRoleType["CFO"] = "CFO";
607
+ CoveredPersonsRoleType["ACCOUNTING"] = "ACCOUNTING";
608
+ CoveredPersonsRoleType["CPA"] = "CPA";
609
+ CoveredPersonsRoleType["LEGAL"] = "LEGAL";
610
+ CoveredPersonsRoleType["EXECUTIVE"] = "EXECUTIVE";
611
+ CoveredPersonsRoleType["EMPLOYEE"] = "EMPLOYEE";
612
+ CoveredPersonsRoleType["INVESTOR"] = "INVESTOR";
613
+ CoveredPersonsRoleType["PROMOTER"] = "PROMOTER";
614
+ CoveredPersonsRoleType["OWNER"] = "OWNER";
615
+ CoveredPersonsRoleType["AFFILIATED"] = "AFFILIATED";
616
+ })(CoveredPersonsRoleType || (CoveredPersonsRoleType = {}));
617
+ export var IDType;
618
+ (function (IDType) {
619
+ IDType["PASSPORT"] = "PASSPORT";
620
+ IDType["DRIVERS_LICENSE"] = "DRIVERS_LICENSE";
621
+ })(IDType || (IDType = {}));
622
+ export var CoveredPersonType;
623
+ (function (CoveredPersonType) {
624
+ CoveredPersonType["CHILD"] = "CHILD";
625
+ CoveredPersonType["PARENT"] = "PARENT";
626
+ })(CoveredPersonType || (CoveredPersonType = {}));
627
+ export var CoveredPersonFileLabels;
628
+ (function (CoveredPersonFileLabels) {
629
+ CoveredPersonFileLabels["IDENTITY_FRONT"] = "IDENTITY_FRONT";
630
+ CoveredPersonFileLabels["IDENTITY_BACK"] = "IDENTITY_BACK";
631
+ CoveredPersonFileLabels["BAD_ACTOR_REPORT_FILE"] = "BAD_ACTOR_REPORT_FILE";
632
+ })(CoveredPersonFileLabels || (CoveredPersonFileLabels = {}));
633
+ export var IdentityFileLabels;
634
+ (function (IdentityFileLabels) {
635
+ IdentityFileLabels["IDENTITY_FRONT"] = "IDENTITY_FRONT";
636
+ IdentityFileLabels["IDENTITY_BACK"] = "IDENTITY_BACK";
637
+ IdentityFileLabels["PASSPORT"] = "PASSPORT";
638
+ })(IdentityFileLabels || (IdentityFileLabels = {}));
639
+ export var IssuerFileLabels;
640
+ (function (IssuerFileLabels) {
641
+ IssuerFileLabels["SS4_LETTER"] = "SS4_LETTER";
642
+ IssuerFileLabels["FORMATION_DOCUMENT"] = "FORMATION_DOCUMENT";
643
+ IssuerFileLabels["COVER_ART"] = "COVER_ART";
644
+ })(IssuerFileLabels || (IssuerFileLabels = {}));
645
+ export var OfferingFileLabels;
646
+ (function (OfferingFileLabels) {
647
+ OfferingFileLabels["MEMORANDUM"] = "MEMORANDUM";
648
+ OfferingFileLabels["SUBSCRIPTION_AGREEMENT"] = "SUBSCRIPTION_AGREEMENT";
649
+ OfferingFileLabels["COVER_ART"] = "COVER_ART";
650
+ OfferingFileLabels["ESCROW_AGREEMENT"] = "ESCROW_AGREEMENT";
651
+ })(OfferingFileLabels || (OfferingFileLabels = {}));
652
+ export var SiteBrandingFileLabels;
653
+ (function (SiteBrandingFileLabels) {
654
+ SiteBrandingFileLabels["LOGO"] = "LOGO";
655
+ SiteBrandingFileLabels["FAVICON"] = "FAVICON";
656
+ SiteBrandingFileLabels["BACKGROUND_IMAGE"] = "BACKGROUND_IMAGE";
657
+ })(SiteBrandingFileLabels || (SiteBrandingFileLabels = {}));
658
+ export var TradeFileLables;
659
+ (function (TradeFileLables) {
660
+ TradeFileLables["TRADE_DOCUMENT"] = "TRADE_DOCUMENT";
661
+ })(TradeFileLables || (TradeFileLables = {}));
662
+ export var RetirementFileLabels;
663
+ (function (RetirementFileLabels) {
664
+ RetirementFileLabels["CUSTODIAN_INSTRUCTION_DOCUMENT"] = "CUSTODIAN_INSTRUCTION_DOCUMENT";
665
+ })(RetirementFileLabels || (RetirementFileLabels = {}));
666
+ export var AccreditationFileLabels;
667
+ (function (AccreditationFileLabels) {
668
+ AccreditationFileLabels["PROOF_OF_INCOME"] = "PROOF_OF_INCOME";
669
+ AccreditationFileLabels["PROOF_OF_NET_WORTH"] = "PROOF_OF_NET_WORTH";
670
+ AccreditationFileLabels["EMPLOYEE"] = "EMPLOYEE";
671
+ AccreditationFileLabels["TAX_RETURNS"] = "TAX_RETURNS";
672
+ AccreditationFileLabels["ACCOUNT_STATEMENT"] = "ACCOUNT_STATEMENT";
673
+ AccreditationFileLabels["ACCREDITATION_LETTER"] = "ACCREDITATION_LETTER";
674
+ AccreditationFileLabels["LICENSE"] = "LICENSE";
675
+ })(AccreditationFileLabels || (AccreditationFileLabels = {}));
676
+ export var OtherFileLabels;
677
+ (function (OtherFileLabels) {
678
+ OtherFileLabels["OTHER"] = "OTHER";
679
+ OtherFileLabels["COMPLIANCE_REQUEST"] = "COMPLIANCE_REQUEST";
680
+ OtherFileLabels["SUB_DOC"] = "SUB_DOC";
681
+ OtherFileLabels["CONTENT_FILE"] = "CONTENT_FILE";
682
+ OtherFileLabels["CSV_EXPORT_FILE"] = "CSV_EXPORT_FILE";
683
+ })(OtherFileLabels || (OtherFileLabels = {}));
684
+ export const FileLabels = {
685
+ ...AccreditationFileLabels,
686
+ ...CoveredPersonFileLabels,
687
+ ...OtherFileLabels,
688
+ ...RetirementFileLabels,
689
+ ...SiteBrandingFileLabels,
690
+ ...OfferingFileLabels,
691
+ ...IssuerFileLabels,
692
+ ...IdentityFileLabels,
693
+ ...TradeFileLables,
694
+ };
695
+ export const FileLabelsEnum = z.enum(Object.values(FileLabels));
696
+ export var TradeType;
697
+ (function (TradeType) {
698
+ TradeType["PURCHASE"] = "PURCHASE";
699
+ TradeType["CONVERSION"] = "CONVERSION";
700
+ TradeType["TRANSFER"] = "TRANSFER";
701
+ })(TradeType || (TradeType = {}));
702
+ export var TradeStatus;
703
+ (function (TradeStatus) {
704
+ TradeStatus["CART"] = "CART";
705
+ TradeStatus["PLACED"] = "PLACED";
706
+ TradeStatus["IN_REVIEW"] = "IN_REVIEW";
707
+ TradeStatus["NEEDS_INFO"] = "NEEDS_INFO";
708
+ TradeStatus["NEEDS_PAYMENT_INFO"] = "NEEDS_PAYMENT_INFO";
709
+ TradeStatus["FUNDING"] = "FUNDING";
710
+ TradeStatus["CANCELLED"] = "CANCELLED";
711
+ TradeStatus["SETTLED"] = "SETTLED";
712
+ TradeStatus["IMPORT_ERROR"] = "IMPORT_ERROR";
713
+ TradeStatus["ERROR"] = "ERROR";
714
+ TradeStatus["UPDATE_PAYMENT_METHOD"] = "UPDATE_PAYMENT_METHOD";
715
+ })(TradeStatus || (TradeStatus = {}));
716
+ export var SavedQuery;
717
+ (function (SavedQuery) {
718
+ SavedQuery["ERROR_REPORT"] = "ERROR_REPORT";
719
+ SavedQuery["STUCK_TRADES"] = "STUCK_TRADES";
720
+ })(SavedQuery || (SavedQuery = {}));
721
+ export var SystemReviewLogTrigger;
722
+ (function (SystemReviewLogTrigger) {
723
+ SystemReviewLogTrigger["AML_STATUS_UPDATE"] = "AML_STATUS_UPDATE";
724
+ SystemReviewLogTrigger["AIC_STATUS_UPDATE"] = "AIC_STATUS_UPDATE";
725
+ SystemReviewLogTrigger["INDIVIDUAL_UPDATE"] = "INDIVIDUAL_UPDATE";
726
+ SystemReviewLogTrigger["TRADE_STATUS_UPDATE"] = "TRADE_STATUS_UPDATE";
727
+ SystemReviewLogTrigger["KYC_STATUS_UPDATE"] = "KYC_STATUS_UPDATE";
728
+ SystemReviewLogTrigger["SUBDOC_STATUS_UPDATE"] = "SUBDOC_STATUS_UPDATE";
729
+ SystemReviewLogTrigger["VALIDATE_PLACED_TRADES_WORKER"] = "VALIDATE_PLACED_TRADES_WORKER";
730
+ })(SystemReviewLogTrigger || (SystemReviewLogTrigger = {}));
731
+ export var OfferingOnboardingStatus;
732
+ (function (OfferingOnboardingStatus) {
733
+ OfferingOnboardingStatus["IN_REVIEW"] = "IN_REVIEW";
734
+ OfferingOnboardingStatus["COMPLETE"] = "COMPLETED";
735
+ })(OfferingOnboardingStatus || (OfferingOnboardingStatus = {}));
736
+ export var ExchangeProvider;
737
+ (function (ExchangeProvider) {
738
+ ExchangeProvider["PPEX"] = "PPEX";
739
+ ExchangeProvider["PHOENIX"] = "PHOENIX";
740
+ ExchangeProvider["NORTHCAP"] = "NORTHCAP";
741
+ })(ExchangeProvider || (ExchangeProvider = {}));
742
+ export var RunnerType;
743
+ (function (RunnerType) {
744
+ RunnerType["WORKER"] = "WORKER";
745
+ RunnerType["PIPELINE"] = "PIPELINE";
746
+ })(RunnerType || (RunnerType = {}));
747
+ export var PublicDataType;
748
+ (function (PublicDataType) {
749
+ PublicDataType["DATA_ROOM"] = "DATA_ROOM";
750
+ PublicDataType["PAGE"] = "PAGE";
751
+ PublicDataType["OFFERING"] = "OFFERING";
752
+ })(PublicDataType || (PublicDataType = {}));
753
+ export var TrustedContactRelationship;
754
+ (function (TrustedContactRelationship) {
755
+ TrustedContactRelationship["SIBLING"] = "SIBLING";
756
+ TrustedContactRelationship["GUARDIAN"] = "GUARDIAN";
757
+ TrustedContactRelationship["CHILD"] = "CHILD";
758
+ TrustedContactRelationship["FRIEND"] = "FRIEND";
759
+ TrustedContactRelationship["OTHER"] = "OTHER";
760
+ })(TrustedContactRelationship || (TrustedContactRelationship = {}));
761
+ export var FileStatus;
762
+ (function (FileStatus) {
763
+ FileStatus["PENDING"] = "PENDING";
764
+ FileStatus["ERROR"] = "ERROR";
765
+ FileStatus["VALID"] = "VALID";
766
+ FileStatus["INVALID"] = "INVALID";
767
+ FileStatus["NOT_PROCESSED"] = "NOT_PROCESSED";
768
+ FileStatus["PROCESSING"] = "PROCESSING";
769
+ FileStatus["PROCESSING_ERROR"] = "PROCESSING_ERROR";
770
+ FileStatus["REVIEW_ERROR"] = "REVIEW_ERROR";
771
+ FileStatus["PROCESSED"] = "PROCESSED";
772
+ })(FileStatus || (FileStatus = {}));
773
+ export var SystemReviewStatus;
774
+ (function (SystemReviewStatus) {
775
+ SystemReviewStatus["PENDING"] = "PENDING";
776
+ SystemReviewStatus["NEEDS_INFO"] = "NEEDS_INFO";
777
+ SystemReviewStatus["READY_TO_APPROVE"] = "READY_TO_APPROVE";
778
+ SystemReviewStatus["NEEDS_REVIEW"] = "NEEDS_REVIEW";
779
+ SystemReviewStatus["APPROVED"] = "APPROVED";
780
+ SystemReviewStatus["REJECTED"] = "REJECTED";
781
+ })(SystemReviewStatus || (SystemReviewStatus = {}));
782
+ export var FilingStatus;
783
+ (function (FilingStatus) {
784
+ FilingStatus["SINGLE"] = "SINGLE";
785
+ FilingStatus["JOINT"] = "JOINT";
786
+ })(FilingStatus || (FilingStatus = {}));
787
+ export var AccountType;
788
+ (function (AccountType) {
789
+ AccountType["CHECKING"] = "CHECKING";
790
+ AccountType["SAVINGS"] = "SAVINGS";
791
+ AccountType["BROKERAGE"] = "BROKERAGE";
792
+ AccountType["REAL_ESTATE"] = "REAL_ESTATE";
793
+ AccountType["OTHER"] = "OTHER";
794
+ })(AccountType || (AccountType = {}));
795
+ export var SourceOfIncome;
796
+ (function (SourceOfIncome) {
797
+ SourceOfIncome["EMPLOYED"] = "EMPLOYED";
798
+ SourceOfIncome["SELF_EMPLOYED"] = "SELF_EMPLOYED";
799
+ SourceOfIncome["UNEMPLOYED"] = "UNEMPLOYED";
800
+ SourceOfIncome["RETIREMENT"] = "RETIREMENT";
801
+ SourceOfIncome["STUDENT"] = "STUDENT";
802
+ })(SourceOfIncome || (SourceOfIncome = {}));
803
+ export var DateField;
804
+ (function (DateField) {
805
+ DateField["RAW_ORDER_CREATED_DATE"] = "rawOrder.createdDate";
806
+ DateField["RAW_TRADE_CREATED_DATE"] = "rawTrade.createdDate";
807
+ DateField["CREATED_AT"] = "createdAt";
808
+ })(DateField || (DateField = {}));
809
+ export const DateFieldMap = {
810
+ [DateField.RAW_ORDER_CREATED_DATE]: "raw_order_data->>'createdDate'",
811
+ [DateField.RAW_TRADE_CREATED_DATE]: "raw_trade_data->>'createdDate'",
812
+ [DateField.CREATED_AT]: 'entity.createdAt',
813
+ };
814
+ /**
815
+ * Event fields represent database entity columns that can be changed using status.changed events.
816
+ * These enum values correspond to actual column names in various database entities
817
+ * and are used to track field-level changes in the system's activity logging.
818
+ */
819
+ export var EventField;
820
+ (function (EventField) {
821
+ EventField["STATUS"] = "status";
822
+ EventField["TRADE_STATUS"] = "tradeStatus";
823
+ EventField["FUNDING_STATUS"] = "fundingStatus";
824
+ EventField["COMPLIANCE_REVIEW"] = "complianceReview";
825
+ EventField["SYSTEM_REVIEW_CHECK"] = "systemReviewCheck";
826
+ EventField["SYSTEM_REVIEW"] = "systemReview";
827
+ EventField["KYC_STATUS"] = "kycStatus";
828
+ EventField["AML_STATUS"] = "amlStatus";
829
+ EventField["AIC_STATUS"] = "aicStatus";
830
+ EventField["SA_STATUS"] = "saStatus";
831
+ EventField["ONBOARDING_STATUS"] = "onboardingStatus";
832
+ EventField["TRANSACTION_STATUS"] = "transactionStatus";
833
+ EventField["ACTIVE"] = "active";
834
+ EventField["LOCKED"] = "locked";
835
+ EventField["SOLD_OUT"] = "soldOut";
836
+ })(EventField || (EventField = {}));
837
+ export var EventName;
838
+ (function (EventName) {
839
+ EventName["STATUS_CHANGED"] = "status.changed";
840
+ EventName["UPDATE_FIELD"] = "update.field";
841
+ EventName["ACTION_PERFORMED"] = "action.performed";
842
+ EventName["PENDING_OVERDUE_TRADES_ALERT"] = "pending_overdue.trades.alert";
843
+ EventName["IN_REVIEW_TRADES_ALERT"] = "trade.inreview.alert";
844
+ EventName["INDIVIDUAL_AML_STATUS_CHANGED"] = "individual.aml_status.changed";
845
+ EventName["ISSUER_CREATED"] = "issuer.created";
846
+ EventName["TRADE_SETTLED"] = "trade.settled";
847
+ })(EventName || (EventName = {}));
848
+ // pending charged settled refunded cancelled
849
+ export var TransactionStatus;
850
+ (function (TransactionStatus) {
851
+ TransactionStatus["PENDING"] = "PENDING";
852
+ TransactionStatus["CHARGED"] = "CHARGED";
853
+ TransactionStatus["APPROVED"] = "APPROVED";
854
+ TransactionStatus["SETTLED"] = "SETTLED";
855
+ TransactionStatus["REFUNDED"] = "REFUNDED";
856
+ TransactionStatus["CANCELLED"] = "CANCELLED";
857
+ TransactionStatus["DECLINED"] = "DECLINED";
858
+ TransactionStatus["FAILED"] = "FAILED";
859
+ TransactionStatus["AUTHORIZING"] = "AUTHORIZING";
860
+ TransactionStatus["FUNDING"] = "FUNDING";
861
+ TransactionStatus["PARTIALLY_REFUNDED"] = "PARTIALLY_REFUNDED";
862
+ TransactionStatus["VOIDED"] = "VOIDED";
863
+ TransactionStatus["PROCESSING_VOID"] = "PROCESSING_VOID";
864
+ TransactionStatus["PROCESSING_REFUND"] = "PROCESSING_REFUND";
865
+ })(TransactionStatus || (TransactionStatus = {}));
866
+ //charge, refund, adjustment
867
+ export var TransactionType;
868
+ (function (TransactionType) {
869
+ TransactionType["CHARGE"] = "CHARGE";
870
+ TransactionType["REFUND"] = "REFUND";
871
+ TransactionType["ADJUSTMENT"] = "ADJUSTMENT";
872
+ })(TransactionType || (TransactionType = {}));
873
+ const parseDate = (str) => {
874
+ if (!str)
875
+ return null;
876
+ const [monthStr, dayStr, yearStr] = str.split('/');
877
+ const month = Number(monthStr);
878
+ const day = Number(dayStr);
879
+ const year = Number(yearStr);
880
+ if (isNaN(month) || isNaN(day) || isNaN(year)) {
881
+ return null;
882
+ }
883
+ return new Date(year, month - 1, day);
884
+ };
885
+ export const dateSchema = z
886
+ .string()
887
+ .nullable()
888
+ .refine((val) => {
889
+ if (!val)
890
+ return true;
891
+ const regex = /^(0[1-9]|1[0-2])\/(0[1-9]|[12][0-9]|3[01])\/\d{4}$/;
892
+ return regex.test(val);
893
+ }, { message: 'Date must be in MM/DD/YYYY format' })
894
+ .transform((val) => (val ? parseDate(val) : null));
895
+ /**
896
+ * Creates a Zod schema for parsing and transforming date strings in MM/DD/YYYY format.
897
+ * The schema accepts a parameter to determine if the date should be formatted as the start or end of the day.
898
+ * - If param is 'START', the time is set to 00:00:00.000 (local, no timezone effect).
899
+ * - If param is 'END', the time is set to 23:59:59.999 (local, no timezone effect).
900
+ * - Otherwise, the time is set to 00:00:00.000.
901
+ * The returned value is a Date object or null.
902
+ */
903
+ export const createDateSchema = (param) => z
904
+ .string()
905
+ .nullable()
906
+ .refine((val) => {
907
+ if (!val)
908
+ return true;
909
+ const regex = /^(0[1-9]|1[0-2])\/(0[1-9]|[12][0-9]|3[01])\/\d{4}$/;
910
+ return regex.test(val);
911
+ }, { message: 'Date must be in MM/DD/YYYY format' })
912
+ .transform((val) => {
913
+ if (!val)
914
+ return null;
915
+ const [monthStr, dayStr, yearStr] = val.split('/');
916
+ const month = Number(monthStr);
917
+ const day = Number(dayStr);
918
+ const year = Number(yearStr);
919
+ if (isNaN(month) || isNaN(day) || isNaN(year)) {
920
+ return null;
921
+ }
922
+ let date;
923
+ if (param === 'END') {
924
+ // Set to 23:59:59.999 local, then force to end of day in UTC
925
+ date = new Date(Date.UTC(year, month - 1, day, 23, 59, 59, 999));
926
+ }
927
+ else {
928
+ // Default to START or normal, set to 00:00:00.000 UTC
929
+ date = new Date(Date.UTC(year, month - 1, day, 0, 0, 0, 0));
930
+ }
931
+ return date;
932
+ });
933
+ /**
934
+ * Default dateSchema (no param) for backward compatibility.
935
+ */
936
+ export const dateSchemaWithParam = createDateSchema();
937
+ export var IssuerOnboardingSetupType;
938
+ (function (IssuerOnboardingSetupType) {
939
+ IssuerOnboardingSetupType["OFFERING"] = "OFFERING";
940
+ IssuerOnboardingSetupType["INVESTOR_PORTAL"] = "INVESTOR_PORTAL";
941
+ IssuerOnboardingSetupType["PAYMENT_METHOD"] = "PAYMENT_METHOD";
942
+ IssuerOnboardingSetupType["ACCOUNT_CONTACTS"] = "ACCOUNT_CONTACTS";
943
+ })(IssuerOnboardingSetupType || (IssuerOnboardingSetupType = {}));
944
+ export var ThemeScope;
945
+ (function (ThemeScope) {
946
+ ThemeScope["ACCOUNT"] = "ACCOUNT";
947
+ ThemeScope["SYSTEM"] = "SYSTEM";
948
+ })(ThemeScope || (ThemeScope = {}));
949
+ /**
950
+ * The configuration for the target tables. Used in Notes, Files, and Activities
951
+ * All tables that need to be targeted should be added here.
952
+ * to determine the target table from the target ID.
953
+ * TODO: UPDATE WITH MORE TABLES
954
+ * CHANGES HERE WILL REQUIRE A MIGRATION
955
+ */
956
+ export const TargetTableConfig = {
957
+ KYCS: { table: 'kycs', idPrefix: 'kyc' },
958
+ AMLS: { table: 'amls', idPrefix: 'aml' },
959
+ AICS: { table: 'aics', idPrefix: 'aic' },
960
+ KYBS: { table: 'kybs', idPrefix: 'kyb' },
961
+ INDIVIDUALS: { table: 'individuals', idPrefix: 'individual' },
962
+ LEGAL_ENTITIES: { table: 'legal_entities', idPrefix: 'legal_entity' },
963
+ INVESTOR_ACCOUNTS: {
964
+ table: 'investor_accounts',
965
+ idPrefix: 'investor_account',
966
+ },
967
+ TRADES: { table: 'trades', idPrefix: 'trade' },
968
+ OFFERINGS: { table: 'offerings', idPrefix: 'offering' },
969
+ ISSUERS: { table: 'issuers', idPrefix: 'issuer' },
970
+ COVERED_PERSONS: { table: 'covered_persons', idPrefix: 'covered_person' },
971
+ PAYMENT_METHODS: { table: 'payment_methods', idPrefix: 'payment_method' },
972
+ NOTES: { table: 'notes', idPrefix: 'note' },
973
+ USERS: { table: 'users', idPrefix: 'user' },
974
+ ACCOUNTS: { table: 'accounts', idPrefix: 'account' },
975
+ PAGES: { table: 'pages', idPrefix: 'page' },
976
+ TASKS: { table: 'tasks', idPrefix: 'task' },
977
+ FILES: { table: 'files', idPrefix: 'file' },
978
+ DATA_RECORD_FILES: {
979
+ table: 'data_record_files',
980
+ idPrefix: 'data_record_file',
981
+ },
982
+ ASSETS: { table: 'assets', idPrefix: 'asset' },
983
+ SITES: { table: 'sites', idPrefix: 'site' },
984
+ PAGE_REVISIONS: { table: 'page_revisions', idPrefix: 'page_revision' },
985
+ TRADE_LINE_ITEMS: { table: 'trade_line_items', idPrefix: 'trade_line_item' },
986
+ TRANSACTIONS: { table: 'transactions', idPrefix: 'transaction' },
987
+ DISBURSEMENTS: { table: 'disbursements', idPrefix: 'disbursement' },
988
+ DISBURSEMENT_REVIEWS: {
989
+ table: 'disbursement_reviews',
990
+ idPrefix: 'disbursement_review',
991
+ },
992
+ ISSUER_PAYMENT_METHODS: {
993
+ table: 'issuer_payment_methods',
994
+ idPrefix: 'issuer_payment_method',
995
+ },
996
+ SIGNER_BRANDS: { table: 'signer_brands', idPrefix: 'signer_brand' },
997
+ THEMES: { table: 'themes', idPrefix: 'theme' },
998
+ THEME_SETTINGS: { table: 'theme_settings', idPrefix: 'theme_setting' },
999
+ CAP_TABLES: { table: 'cap_tables', idPrefix: 'cap_table' },
1000
+ CAP_TABLE_SHARE_CLASSES: {
1001
+ table: 'cap_table_share_classes',
1002
+ idPrefix: 'cap_table_share_class',
1003
+ },
1004
+ CAP_TABLE_ENTRIES: {
1005
+ table: 'cap_table_entries',
1006
+ idPrefix: 'cap_table_entry',
1007
+ },
1008
+ EMAIL_THEMES: { table: 'email_themes', idPrefix: 'email_theme' },
1009
+ EMAIL_THEME_SETTINGS: {
1010
+ table: 'email_theme_settings',
1011
+ idPrefix: 'email_theme_setting',
1012
+ },
1013
+ };
1014
+ export const TargetTableEnum = Object.keys(TargetTableConfig);
1015
+ /**
1016
+ * Get the target table name from a target ID.
1017
+ * @param targetId - The target ID to get the table name for.
1018
+ * @returns The target table name or null if the target ID is invalid.
1019
+ */
1020
+ export function getTargetTableFromId(targetId) {
1021
+ try {
1022
+ const tid = TypeID.fromString(targetId);
1023
+ const prefix = tid.getType();
1024
+ for (const config of Object.values(TargetTableConfig)) {
1025
+ if (config.idPrefix === prefix) {
1026
+ return config.table;
1027
+ }
1028
+ }
1029
+ }
1030
+ catch {
1031
+ return null;
1032
+ }
1033
+ return null;
1034
+ }
1035
+ export var UrlClassification;
1036
+ (function (UrlClassification) {
1037
+ UrlClassification["BASE64"] = "BASE64";
1038
+ UrlClassification["REGULAR"] = "REGULAR";
1039
+ UrlClassification["INVALID"] = "INVALID";
1040
+ })(UrlClassification || (UrlClassification = {}));
1041
+ export var OfferingVersioningType;
1042
+ (function (OfferingVersioningType) {
1043
+ OfferingVersioningType["PUBLISHED"] = "PUBLISHED";
1044
+ OfferingVersioningType["DRAFT"] = "DRAFT";
1045
+ })(OfferingVersioningType || (OfferingVersioningType = {}));
1046
+ /**
1047
+ * Get the target table type from a target ID.
1048
+ * @param targetId - The target ID to get the table type for.
1049
+ * @returns The target table type or null if the target ID is invalid.
1050
+ */
1051
+ export function getTargetTableTypeFromId(targetId) {
1052
+ try {
1053
+ const tid = TypeID.fromString(targetId);
1054
+ const prefix = tid.getType();
1055
+ for (const [tableType, config] of Object.entries(TargetTableConfig)) {
1056
+ if (config.idPrefix === prefix) {
1057
+ return tableType;
1058
+ }
1059
+ }
1060
+ }
1061
+ catch {
1062
+ return null;
1063
+ }
1064
+ return null;
1065
+ }
1066
+ export const REDACTED = '[REDACTED]';
1067
+ /**
1068
+ * Zod schema for validating and normalizing URLs.
1069
+ *
1070
+ * This schema ensures that the URL is valid and normalizes it by removing the protocol (http/https)
1071
+ * and any path after the main domain.
1072
+ *
1073
+ * @example
1074
+ * UrlSchema.parse('https://www.example.com'); // Valid URL, normalized to 'www.example.com'
1075
+ * UrlSchema.parse('abc.example.org'); // Valid URL, normalized to 'abc.example.org'
1076
+ * UrlSchema.parse('https://subdomain.example.co.uk/path'); // Valid URL, normalized to 'subdomain.example.co.uk'
1077
+ * UrlSchema.parse('ftp://example.com'); // Throws validation error
1078
+ * UrlSchema.parse('invalid-url'); // Throws validation error
1079
+ */
1080
+ export const createUrlSchema = (options) => {
1081
+ return z
1082
+ .string()
1083
+ .refine((value) => {
1084
+ try {
1085
+ // If strict mode is enabled, require abc.def.com format (at least one subdomain)
1086
+ const urlPattern = options?.strict
1087
+ ? /^(https?:\/\/)?([a-zA-Z0-9-]+\.[a-zA-Z0-9-]+\.[a-zA-Z]{2,})(\/.*)?$/
1088
+ : /^(https?:\/\/)?(www\.)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}(\/.*)?$/;
1089
+ return urlPattern.test(value);
1090
+ }
1091
+ catch {
1092
+ return false;
1093
+ }
1094
+ }, {
1095
+ message: options?.strict
1096
+ ? 'Invalid URL. Must be in format abc.def.com'
1097
+ : 'Invalid URL',
1098
+ })
1099
+ .transform((value) => {
1100
+ try {
1101
+ const url = new URL(value.startsWith('http') || value.startsWith('https')
1102
+ ? value
1103
+ : `http://${value}`);
1104
+ return url.hostname.toLowerCase();
1105
+ }
1106
+ catch {
1107
+ return value.toLowerCase();
1108
+ }
1109
+ })
1110
+ .openapi({
1111
+ example: options?.strict ? 'subdomain.example.com' : 'www.example.com',
1112
+ });
1113
+ };
1114
+ export const UrlSchema = createUrlSchema();
1115
+ /**
1116
+ * Zod schema for validating subdomains.
1117
+ *
1118
+ * This schema ensures that the subdomain contains only alphanumeric characters and hyphens,
1119
+ * does not start or end with a hyphen, and follows standard subdomain naming conventions.
1120
+ *
1121
+ * @example
1122
+ * SubdomainSchema.parse('my-site'); // Valid subdomain
1123
+ * SubdomainSchema.parse('123test'); // Valid subdomain
1124
+ * SubdomainSchema.parse('my_site'); // Throws validation error (underscore not allowed)
1125
+ * SubdomainSchema.parse('-mysite'); // Throws validation error (cannot start with hyphen)
1126
+ * SubdomainSchema.parse('mysite-'); // Throws validation error (cannot end with hyphen)
1127
+ */
1128
+ export const SubdomainSchema = z
1129
+ .string()
1130
+ .min(1, { message: 'Subdomain cannot be empty' })
1131
+ .max(63, { message: 'Subdomain cannot exceed 63 characters' })
1132
+ .refine((value) => {
1133
+ // Subdomain can only contain alphanumeric characters and hyphens
1134
+ // Cannot start or end with a hyphen
1135
+ const subdomainPattern = /^[a-zA-Z0-9]([a-zA-Z0-9-]*[a-zA-Z0-9])?$/;
1136
+ return subdomainPattern.test(value);
1137
+ }, {
1138
+ message: 'Subdomain can only contain letters, numbers, and hyphens, and cannot start or end with a hyphen',
1139
+ })
1140
+ .transform((value) => value.toLowerCase())
1141
+ .openapi({ example: 'my-site' });
1142
+ /**
1143
+ * Zod schema for validating domain names without subdomains.
1144
+ *
1145
+ * This schema ensures the domain is in a valid format (example.com) without subdomains.
1146
+ *
1147
+ * @example
1148
+ * DomainSchema.parse('example.com'); // Valid domain
1149
+ * DomainSchema.parse('subdomain.example.com'); // Throws validation error
1150
+ */
1151
+ export const DomainSchema = z
1152
+ .string()
1153
+ .refine((value) => {
1154
+ // Only allow a single dot to prevent subdomains
1155
+ const parts = value.split('.');
1156
+ if (parts.length !== 2)
1157
+ return false;
1158
+ // Basic domain format validation
1159
+ const domainPattern = /^[a-zA-Z0-9-]+\.[a-zA-Z]{2,}$/;
1160
+ return domainPattern.test(value);
1161
+ }, {
1162
+ message: 'Invalid domain format. Must be a domain without subdomains (e.g., example.com)',
1163
+ })
1164
+ .openapi({ example: 'example.com' });
1165
+ /**
1166
+ * Zod schema for validating hex color codes (with optional alpha/transparency).
1167
+ *
1168
+ * This schema allows hex codes with or without a leading '#', and accepts 3, 4, 6, 7, or 8 hex digits (e.g., #RRGGBB, #RRGGBBA, #RRGGBBAA, #RGB, #RGBA, #XXXXXXX).
1169
+ * The 7-digit form (e.g., #RRGGBBA) is supported to allow for transparency/alpha values at the end.
1170
+ * It also trims whitespace and lowercases the value.
1171
+ *
1172
+ * @example
1173
+ * HexCodeColorSchema.parse('#FF0000'); // Valid hex code
1174
+ * HexCodeColorSchema.parse('FF0000'); // Valid hex code
1175
+ * HexCodeColorSchema.parse('#F00'); // Valid hex code
1176
+ * HexCodeColorSchema.parse('F00'); // Valid hex code
1177
+ * HexCodeColorSchema.parse('#FF000080'); // Valid hex code (with alpha)
1178
+ * HexCodeColorSchema.parse('#D9D9D14'); // Valid hex code (7 digits, with transparency)
1179
+ * HexCodeColorSchema.parse(' #abc '); // Valid hex code, returns '#abc'
1180
+ * HexCodeColorSchema.parse('#XYZ'); // Throws validation error
1181
+ */
1182
+ export const HexCodeColorSchema = z
1183
+ .string()
1184
+ .trim()
1185
+ .transform((val) => (val.startsWith('#') ? val : `#${val}`))
1186
+ .refine((val) => /^#[A-Fa-f0-9]{3}$/.test(val) || // #RGB
1187
+ /^#[A-Fa-f0-9]{4}$/.test(val) || // #RGBA
1188
+ /^#[A-Fa-f0-9]{6}$/.test(val) || // #RRGGBB
1189
+ /^#[A-Fa-f0-9]{7}$/.test(val) || // #RRGGBBA (7 digits, e.g., with transparency)
1190
+ /^#[A-Fa-f0-9]{8}$/.test(val), // #RRGGBBAA
1191
+ {
1192
+ message: 'Invalid color hex code. It should be 3, 4, 6, 7, or 8 hex digits, with or without a leading "#".',
1193
+ })
1194
+ .openapi({ example: '#FFA500' });
1195
+ export const WithCoverArtUrl = z.object({
1196
+ coverArtUrl: z.string().nullable().optional(),
1197
+ });
1198
+ export const UNKNOWN = 'unknown';
1199
+ export var UserManualType;
1200
+ (function (UserManualType) {
1201
+ UserManualType["FAQ"] = "FAQ";
1202
+ UserManualType["USER_MANUAL"] = "USER_MANUAL";
1203
+ })(UserManualType || (UserManualType = {}));
1204
+ export var BulkExportType;
1205
+ (function (BulkExportType) {
1206
+ BulkExportType["INVESTOR_ACCOUNTS"] = "INVESTOR_ACCOUNTS";
1207
+ BulkExportType["TRADES"] = "TRADES";
1208
+ BulkExportType["COMPLIANCE_TRADES"] = "COMPLIANCE_TRADES";
1209
+ BulkExportType["SECONDARY_CUSTOMERS"] = "SECONDARY_CUSTOMERS";
1210
+ BulkExportType["SECONDARY_TRADES"] = "SECONDARY_TRADES";
1211
+ })(BulkExportType || (BulkExportType = {}));
1212
+ export const SubmitIssuerOfferingError = z.object({
1213
+ field: z.string(),
1214
+ message: z.string(),
1215
+ id: z.string().optional(),
1216
+ });
1217
+ export const ErrorResponseZod = z.object({
1218
+ valid: z.boolean(),
1219
+ errors: z.array(SubmitIssuerOfferingError),
1220
+ });
1221
+ /**
1222
+ * A Zod schema that preprocesses a value to convert it to a number if it is a string.
1223
+ * If the value is a string, it attempts to parse it as a float. If parsing fails, it returns `undefined`.
1224
+ * If the value is already a number, it is returned as is.
1225
+ *
1226
+ * @example
1227
+ * numberFromStringOrNumber.parse("123.45"); // returns 123.45
1228
+ * numberFromStringOrNumber.parse(123.45); // returns 123.45
1229
+ * numberFromStringOrNumber.parse("abc"); // throws a ZodError
1230
+ *
1231
+ * @type {ZodSchema<number>}
1232
+ */
1233
+ export const numberFromStringOrNumber = (fieldName) => z.preprocess((val) => {
1234
+ if (typeof val === 'string') {
1235
+ const parsed = parseFloat(val);
1236
+ return isNaN(parsed) ? undefined : parsed;
1237
+ }
1238
+ return val;
1239
+ }, z.number({
1240
+ required_error: `${fieldName} field is required.`,
1241
+ invalid_type_error: `${fieldName} field is required.`,
1242
+ }));
1243
+ /**
1244
+ * Creates a Zod schema for transforming number values to a specified decimal precision.
1245
+ * Transforms the number to exactly the specified decimal places without validation.
1246
+ * Accepts a base number schema with constraints (e.g., .positive(), .max()) and applies precision transformation.
1247
+ *
1248
+ * @param precision - The number of decimal places to enforce. Defaults to 2.
1249
+ * @param baseSchema - Optional base number schema with constraints. Defaults to z.number().
1250
+ * @returns A Zod schema that transforms numbers to the specified decimal precision.
1251
+ *
1252
+ * @example
1253
+ * numberPrecisionSchema(2).parse(123.456); // returns 123.46 (transformed)
1254
+ * numberPrecisionSchema(2).parse(123.45); // returns 123.45
1255
+ * numberPrecisionSchema(2).parse(123.4); // returns 123.40 (transformed)
1256
+ * numberPrecisionSchema(3, z.number().positive().max(1000)).parse(500.9999); // returns 501.000 (transformed)
1257
+ * numberPrecisionSchema(2, z.number().positive().max(1000)).parse(500.99); // returns 500.99
1258
+ */
1259
+ export const numberPrecisionSchema = (precision = 2, baseSchema = z.number()) => baseSchema.transform((value) => {
1260
+ if (!isFinite(value)) {
1261
+ return value; // Return Infinity or -Infinity as-is
1262
+ }
1263
+ if (precision === 0) {
1264
+ return Math.round(value);
1265
+ }
1266
+ // Round in two steps to reduce floating-point drift:
1267
+ // 1) trim the value with extra precision
1268
+ // 2) round the trimmed value at the target precision
1269
+ const factor = Math.pow(10, precision);
1270
+ // Trim with extra precision (precision + 5) to keep enough significant digits
1271
+ const trimmed = parseFloat(value.toFixed(Math.min(precision + 5, 20)));
1272
+ // Round at target precision
1273
+ const rounded = Math.round(trimmed * factor) / factor;
1274
+ // Ensure the returned number has exact decimal places
1275
+ return parseFloat(rounded.toFixed(precision));
1276
+ });
1277
+ /**
1278
+ * Convenience function for 2 decimal precision (backward compatibility).
1279
+ * @deprecated Use numberPrecisionSchema(2) instead.
1280
+ */
1281
+ export const amountPrecision2Schema = (baseSchema = z.number()) => numberPrecisionSchema(2, baseSchema);
1282
+ export var RetirementAccountType;
1283
+ (function (RetirementAccountType) {
1284
+ RetirementAccountType["SELF_DIRECTED"] = "SELF_DIRECTED";
1285
+ RetirementAccountType["CUSTODIAN_MANAGED"] = "CUSTODIAN_MANAGED";
1286
+ })(RetirementAccountType || (RetirementAccountType = {}));
1287
+ export var EmploymentStatus;
1288
+ (function (EmploymentStatus) {
1289
+ EmploymentStatus["EMPLOYED"] = "EMPLOYED";
1290
+ EmploymentStatus["UNEMPLOYED"] = "UNEMPLOYED";
1291
+ EmploymentStatus["SELF_EMPLOYED"] = "SELF_EMPLOYED";
1292
+ EmploymentStatus["RETIRED"] = "RETIRED";
1293
+ EmploymentStatus["STUDENT"] = "STUDENT";
1294
+ EmploymentStatus["OTHER"] = "OTHER";
1295
+ })(EmploymentStatus || (EmploymentStatus = {}));
1296
+ export const dateSchemaWithNormalization = z
1297
+ .string()
1298
+ .nullable()
1299
+ .transform((val) => (val ? normalizeShortDate(val) : null))
1300
+ .refine((val) => {
1301
+ if (!val)
1302
+ return true;
1303
+ const regex = /^(0[1-9]|1[0-2])\/(0[1-9]|[12][0-9]|3[01])\/\d{4}$/;
1304
+ return regex.test(val);
1305
+ }, { message: 'Date must be in MM/DD/YYYY format' })
1306
+ .transform((val) => (val ? parseDate(val) : null));
1307
+ export const DateRangeFiltersZod = z.object({
1308
+ from: dateSchema.optional().openapi({ example: 'MM/DD/YYYY' }),
1309
+ to: dateSchema.optional().openapi({ example: 'MM/DD/YYYY' }),
1310
+ });
1311
+ export const metadataSchema = z
1312
+ .string()
1313
+ .min(2)
1314
+ .max(600000)
1315
+ .refine((data) => {
1316
+ try {
1317
+ if (!data)
1318
+ return true;
1319
+ const parsedData = JSON.parse(data);
1320
+ if (typeof parsedData !== 'object' || parsedData === null)
1321
+ return false;
1322
+ return true;
1323
+ }
1324
+ catch (error) {
1325
+ return false;
1326
+ }
1327
+ }, {
1328
+ message: 'must be a valid JSON object.',
1329
+ path: [],
1330
+ })
1331
+ .transform((data) => data
1332
+ ? { user_defined_data: JSON.parse(data), expected: JSON.parse(data) }
1333
+ : null);
1334
+ export const LogContextZod = z.object({
1335
+ queueName: z.string(),
1336
+ jobId: z.string(),
1337
+ jobName: z.string(),
1338
+ shouldAlert: z.boolean().optional(),
1339
+ });
1340
+ /**
1341
+ * Maps all documented Cloudflare Turnstile error codes to their corresponding HTTP status and user-friendly message.
1342
+ *
1343
+ * @see {@link https://developers.cloudflare.com/turnstile/get-started/server-side-validation/ Cloudflare Turnstile Server-side Validation}
1344
+ */
1345
+ export const errorMap = {
1346
+ 'missing-input-secret': {
1347
+ status: HttpStatus.INTERNAL_SERVER_ERROR,
1348
+ message: 'Captcha server configuration is missing the secret key. Please ensure the secret key is included.',
1349
+ },
1350
+ 'invalid-input-secret': {
1351
+ status: HttpStatus.INTERNAL_SERVER_ERROR,
1352
+ message: 'Captcha server secret key is invalid or expired. Please check your secret key in the Cloudflare dashboard.',
1353
+ },
1354
+ 'missing-input-response': {
1355
+ status: HttpStatus.BAD_REQUEST,
1356
+ message: 'Captcha response is missing. Please ensure the token is included and try again.',
1357
+ },
1358
+ 'invalid-input-response': {
1359
+ status: HttpStatus.BAD_REQUEST,
1360
+ message: 'Captcha response is invalid, malformed, or expired. Please retry the challenge.',
1361
+ },
1362
+ 'bad-request': {
1363
+ status: HttpStatus.BAD_REQUEST,
1364
+ message: 'The captcha verification request was malformed. Please check the request format and parameters.',
1365
+ },
1366
+ 'timeout-or-duplicate': {
1367
+ status: HttpStatus.CONFLICT,
1368
+ message: 'Captcha token has already been validated or expired. Each token can only be used once. Please refresh and try again.',
1369
+ },
1370
+ 'internal-error': {
1371
+ status: HttpStatus.INTERNAL_SERVER_ERROR,
1372
+ message: 'An internal error occurred during captcha verification. Please retry the request.',
1373
+ },
1374
+ };
1375
+ export var BaseContactUsOptions;
1376
+ (function (BaseContactUsOptions) {
1377
+ BaseContactUsOptions["ISSUER"] = "ISSUER";
1378
+ BaseContactUsOptions["TECHNICAL_SUPPORT"] = "TECHNICAL_SUPPORT";
1379
+ BaseContactUsOptions["SALES"] = "SALES";
1380
+ BaseContactUsOptions["ACCOUNT_MANAGER"] = "ACCOUNT_MANAGER";
1381
+ })(BaseContactUsOptions || (BaseContactUsOptions = {}));
1382
+ export var SortOrder;
1383
+ (function (SortOrder) {
1384
+ SortOrder["ASC"] = "ASC";
1385
+ SortOrder["DESC"] = "DESC";
1386
+ })(SortOrder || (SortOrder = {}));
1387
+ export var SortBy;
1388
+ (function (SortBy) {
1389
+ SortBy["CREATED_AT"] = "created_at";
1390
+ SortBy["UPDATED_AT"] = "updated_at";
1391
+ SortBy["PLACEDAT"] = "placedAt";
1392
+ SortBy["NAME"] = "name";
1393
+ SortBy["TITLE"] = "title";
1394
+ SortBy["LEGAL_NAME"] = "legal_name";
1395
+ })(SortBy || (SortBy = {}));
1396
+ export var PersonaStatus;
1397
+ (function (PersonaStatus) {
1398
+ PersonaStatus["APPROVED"] = "approved";
1399
+ PersonaStatus["ACTIVE"] = "active";
1400
+ PersonaStatus["CREATED"] = "created";
1401
+ PersonaStatus["COMPLETED"] = "completed";
1402
+ PersonaStatus["DRAFT"] = "draft";
1403
+ PersonaStatus["DECLINED"] = "declined";
1404
+ PersonaStatus["EXPIRED"] = "expired";
1405
+ PersonaStatus["FAILED"] = "failed";
1406
+ PersonaStatus["NEEDS_REVIEW"] = "needs_review";
1407
+ PersonaStatus["PUBLISHED"] = "published";
1408
+ PersonaStatus["PENDING"] = "pending";
1409
+ PersonaStatus["REDACTED"] = "redacted";
1410
+ })(PersonaStatus || (PersonaStatus = {}));
1411
+ export var AMLProvider;
1412
+ (function (AMLProvider) {
1413
+ AMLProvider["COMPLY_ADVANTAGE"] = "ComplyAdvantage";
1414
+ })(AMLProvider || (AMLProvider = {}));
1415
+ export var ThemeFileType;
1416
+ (function (ThemeFileType) {
1417
+ ThemeFileType["LIGHT"] = "light";
1418
+ ThemeFileType["DARK"] = "dark";
1419
+ })(ThemeFileType || (ThemeFileType = {}));
1420
+ /**
1421
+ * Common timezone identifiers using IANA timezone database format.
1422
+ * These are the most commonly used timezones in business applications.
1423
+ */
1424
+ export var TimeZone;
1425
+ (function (TimeZone) {
1426
+ // UTC
1427
+ TimeZone["UTC"] = "UTC";
1428
+ // North America
1429
+ TimeZone["PACIFIC"] = "America/Los_Angeles";
1430
+ TimeZone["MOUNTAIN"] = "America/Denver";
1431
+ TimeZone["CENTRAL"] = "America/Chicago";
1432
+ TimeZone["EASTERN"] = "America/New_York";
1433
+ // Europe
1434
+ TimeZone["LONDON"] = "Europe/London";
1435
+ TimeZone["PARIS"] = "Europe/Paris";
1436
+ TimeZone["BERLIN"] = "Europe/Berlin";
1437
+ TimeZone["ROME"] = "Europe/Rome";
1438
+ TimeZone["MADRID"] = "Europe/Madrid";
1439
+ TimeZone["AMSTERDAM"] = "Europe/Amsterdam";
1440
+ TimeZone["ZURICH"] = "Europe/Zurich";
1441
+ // Asia
1442
+ TimeZone["TOKYO"] = "Asia/Tokyo";
1443
+ TimeZone["SHANGHAI"] = "Asia/Shanghai";
1444
+ TimeZone["HONG_KONG"] = "Asia/Hong_Kong";
1445
+ TimeZone["SINGAPORE"] = "Asia/Singapore";
1446
+ TimeZone["MUMBAI"] = "Asia/Kolkata";
1447
+ TimeZone["DUBAI"] = "Asia/Dubai";
1448
+ // Australia
1449
+ TimeZone["SYDNEY"] = "Australia/Sydney";
1450
+ TimeZone["MELBOURNE"] = "Australia/Melbourne";
1451
+ // Other major business centers
1452
+ TimeZone["SAO_PAULO"] = "America/Sao_Paulo";
1453
+ TimeZone["TORONTO"] = "America/Toronto";
1454
+ TimeZone["VANCOUVER"] = "America/Vancouver";
1455
+ })(TimeZone || (TimeZone = {}));
1456
+ export const SenderDataZod = z.object({
1457
+ senderName: z.string().nullable(),
1458
+ senderEmail: z.string().nullable(),
1459
+ });
1460
+ export var JobState;
1461
+ (function (JobState) {
1462
+ JobState["COMPLETED"] = "completed";
1463
+ JobState["FAILED"] = "failed";
1464
+ JobState["WAITING"] = "waiting";
1465
+ JobState["ACTIVE"] = "active";
1466
+ JobState["DELAYED"] = "delayed";
1467
+ JobState["PRIORITIZED"] = "prioritized";
1468
+ JobState["WAITING_CHILDREN"] = "waiting-children";
1469
+ })(JobState || (JobState = {}));
1470
+ export const SUBJECT_TYPE_MAP = {
1471
+ [BulkExportType.INVESTOR_ACCOUNTS]: 'Investor Accounts',
1472
+ [BulkExportType.TRADES]: 'Trades',
1473
+ [BulkExportType.COMPLIANCE_TRADES]: 'Compliance Trades',
1474
+ [BulkExportType.SECONDARY_CUSTOMERS]: 'Secondary Customers',
1475
+ [BulkExportType.SECONDARY_TRADES]: 'Secondary Trades',
1476
+ };
1477
+ export const StringToBooleanSchema = z.preprocess((val) => val === 'true' || val === '1'
1478
+ ? true
1479
+ : val === 'false' || val === '0'
1480
+ ? false
1481
+ : val, z.boolean());
1482
+ /**
1483
+ * Reusable email schema that validates email format, transforms to lowercase,
1484
+ * and includes OpenAPI metadata.
1485
+ *
1486
+ * @example
1487
+ * EmailSchema.parse('John.Doe@EXAMPLE.COM'); // returns 'john.doe@example.com'
1488
+ * EmailSchema.optional().parse(undefined); // returns undefined
1489
+ */
1490
+ export const EmailSchema = z
1491
+ .string()
1492
+ .email()
1493
+ .transform((val) => val.toLowerCase())
1494
+ .openapi({
1495
+ example: 'neil@dalmoregroup.com',
1496
+ });
1497
+ export var WarrantSharesCalculationMethod;
1498
+ (function (WarrantSharesCalculationMethod) {
1499
+ WarrantSharesCalculationMethod["NONE"] = "NONE";
1500
+ WarrantSharesCalculationMethod["PRORATA"] = "PRORATA";
1501
+ WarrantSharesCalculationMethod["INCREMENT"] = "INCREMENT";
1502
+ })(WarrantSharesCalculationMethod || (WarrantSharesCalculationMethod = {}));
1503
+ export var OfferingStatus;
1504
+ (function (OfferingStatus) {
1505
+ OfferingStatus["ONBOARDING"] = "ONBOARDING";
1506
+ OfferingStatus["IN_REVIEW"] = "IN_REVIEW";
1507
+ OfferingStatus["ACTIVE"] = "ACTIVE";
1508
+ OfferingStatus["PAUSED"] = "PAUSED";
1509
+ OfferingStatus["CLOSED"] = "CLOSED";
1510
+ })(OfferingStatus || (OfferingStatus = {}));
1511
+ //# sourceMappingURL=common.types.js.map