@dotdo/do 0.1.0

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 (486) hide show
  1. package/README.md +400 -0
  2. package/dist/ai/embeddings.d.ts +129 -0
  3. package/dist/ai/embeddings.d.ts.map +1 -0
  4. package/dist/ai/embeddings.js +217 -0
  5. package/dist/ai/embeddings.js.map +1 -0
  6. package/dist/ai/gateway.d.ts +139 -0
  7. package/dist/ai/gateway.d.ts.map +1 -0
  8. package/dist/ai/gateway.js +179 -0
  9. package/dist/ai/gateway.js.map +1 -0
  10. package/dist/ai/image.d.ts +140 -0
  11. package/dist/ai/image.d.ts.map +1 -0
  12. package/dist/ai/image.js +199 -0
  13. package/dist/ai/image.js.map +1 -0
  14. package/dist/ai/index.d.ts +98 -0
  15. package/dist/ai/index.d.ts.map +1 -0
  16. package/dist/ai/index.js +223 -0
  17. package/dist/ai/index.js.map +1 -0
  18. package/dist/ai/models.d.ts +81 -0
  19. package/dist/ai/models.d.ts.map +1 -0
  20. package/dist/ai/models.js +537 -0
  21. package/dist/ai/models.js.map +1 -0
  22. package/dist/ai/text.d.ts +176 -0
  23. package/dist/ai/text.d.ts.map +1 -0
  24. package/dist/ai/text.js +253 -0
  25. package/dist/ai/text.js.map +1 -0
  26. package/dist/ai/voice/agents.d.ts +224 -0
  27. package/dist/ai/voice/agents.d.ts.map +1 -0
  28. package/dist/ai/voice/agents.js +375 -0
  29. package/dist/ai/voice/agents.js.map +1 -0
  30. package/dist/ai/voice/campaigns.d.ts +307 -0
  31. package/dist/ai/voice/campaigns.d.ts.map +1 -0
  32. package/dist/ai/voice/campaigns.js +739 -0
  33. package/dist/ai/voice/campaigns.js.map +1 -0
  34. package/dist/ai/voice/index.d.ts +21 -0
  35. package/dist/ai/voice/index.d.ts.map +1 -0
  36. package/dist/ai/voice/index.js +42 -0
  37. package/dist/ai/voice/index.js.map +1 -0
  38. package/dist/ai/voice/providers.d.ts +283 -0
  39. package/dist/ai/voice/providers.d.ts.map +1 -0
  40. package/dist/ai/voice/providers.js +286 -0
  41. package/dist/ai/voice/providers.js.map +1 -0
  42. package/dist/ai/voice/sessions.d.ts +294 -0
  43. package/dist/ai/voice/sessions.d.ts.map +1 -0
  44. package/dist/ai/voice/sessions.js +531 -0
  45. package/dist/ai/voice/sessions.js.map +1 -0
  46. package/dist/ai/voice/tools.d.ts +242 -0
  47. package/dist/ai/voice/tools.d.ts.map +1 -0
  48. package/dist/ai/voice/tools.js +370 -0
  49. package/dist/ai/voice/tools.js.map +1 -0
  50. package/dist/ai/voice/tts.d.ts +173 -0
  51. package/dist/ai/voice/tts.d.ts.map +1 -0
  52. package/dist/ai/voice/tts.js +252 -0
  53. package/dist/ai/voice/tts.js.map +1 -0
  54. package/dist/ai/voice/webrtc.d.ts +228 -0
  55. package/dist/ai/voice/webrtc.d.ts.map +1 -0
  56. package/dist/ai/voice/webrtc.js +372 -0
  57. package/dist/ai/voice/webrtc.js.map +1 -0
  58. package/dist/api/index.d.ts +103 -0
  59. package/dist/api/index.d.ts.map +1 -0
  60. package/dist/api/index.js +191 -0
  61. package/dist/api/index.js.map +1 -0
  62. package/dist/api/mcp/handlers.d.ts +25 -0
  63. package/dist/api/mcp/handlers.d.ts.map +1 -0
  64. package/dist/api/mcp/handlers.js +422 -0
  65. package/dist/api/mcp/handlers.js.map +1 -0
  66. package/dist/api/mcp/index.d.ts +113 -0
  67. package/dist/api/mcp/index.d.ts.map +1 -0
  68. package/dist/api/mcp/index.js +141 -0
  69. package/dist/api/mcp/index.js.map +1 -0
  70. package/dist/api/middleware/auth.d.ts +65 -0
  71. package/dist/api/middleware/auth.d.ts.map +1 -0
  72. package/dist/api/middleware/auth.js +271 -0
  73. package/dist/api/middleware/auth.js.map +1 -0
  74. package/dist/api/middleware/cors.d.ts +62 -0
  75. package/dist/api/middleware/cors.d.ts.map +1 -0
  76. package/dist/api/middleware/cors.js +225 -0
  77. package/dist/api/middleware/cors.js.map +1 -0
  78. package/dist/api/middleware/index.d.ts +60 -0
  79. package/dist/api/middleware/index.d.ts.map +1 -0
  80. package/dist/api/middleware/index.js +175 -0
  81. package/dist/api/middleware/index.js.map +1 -0
  82. package/dist/api/middleware/rateLimit.d.ts +84 -0
  83. package/dist/api/middleware/rateLimit.d.ts.map +1 -0
  84. package/dist/api/middleware/rateLimit.js +321 -0
  85. package/dist/api/middleware/rateLimit.js.map +1 -0
  86. package/dist/api/routes/ai.d.ts +17 -0
  87. package/dist/api/routes/ai.d.ts.map +1 -0
  88. package/dist/api/routes/ai.js +430 -0
  89. package/dist/api/routes/ai.js.map +1 -0
  90. package/dist/api/routes/do.d.ts +17 -0
  91. package/dist/api/routes/do.d.ts.map +1 -0
  92. package/dist/api/routes/do.js +458 -0
  93. package/dist/api/routes/do.js.map +1 -0
  94. package/dist/api/routes/functions.d.ts +111 -0
  95. package/dist/api/routes/functions.d.ts.map +1 -0
  96. package/dist/api/routes/functions.js +548 -0
  97. package/dist/api/routes/functions.js.map +1 -0
  98. package/dist/api/routes/health.d.ts +16 -0
  99. package/dist/api/routes/health.d.ts.map +1 -0
  100. package/dist/api/routes/health.js +163 -0
  101. package/dist/api/routes/health.js.map +1 -0
  102. package/dist/api/routes/index.d.ts +41 -0
  103. package/dist/api/routes/index.d.ts.map +1 -0
  104. package/dist/api/routes/index.js +275 -0
  105. package/dist/api/routes/index.js.map +1 -0
  106. package/dist/api/routes/nouns.d.ts +26 -0
  107. package/dist/api/routes/nouns.d.ts.map +1 -0
  108. package/dist/api/routes/nouns.js +456 -0
  109. package/dist/api/routes/nouns.js.map +1 -0
  110. package/dist/api/routes/orgs.d.ts +17 -0
  111. package/dist/api/routes/orgs.d.ts.map +1 -0
  112. package/dist/api/routes/orgs.js +560 -0
  113. package/dist/api/routes/orgs.js.map +1 -0
  114. package/dist/api/routes/relationships.d.ts +30 -0
  115. package/dist/api/routes/relationships.d.ts.map +1 -0
  116. package/dist/api/routes/relationships.js +360 -0
  117. package/dist/api/routes/relationships.js.map +1 -0
  118. package/dist/api/routes/roles.d.ts +17 -0
  119. package/dist/api/routes/roles.d.ts.map +1 -0
  120. package/dist/api/routes/roles.js +721 -0
  121. package/dist/api/routes/roles.js.map +1 -0
  122. package/dist/api/routes/things.d.ts +27 -0
  123. package/dist/api/routes/things.d.ts.map +1 -0
  124. package/dist/api/routes/things.js +568 -0
  125. package/dist/api/routes/things.js.map +1 -0
  126. package/dist/api/routes/users.d.ts +17 -0
  127. package/dist/api/routes/users.d.ts.map +1 -0
  128. package/dist/api/routes/users.js +401 -0
  129. package/dist/api/routes/users.js.map +1 -0
  130. package/dist/api/routes/verbs.d.ts +31 -0
  131. package/dist/api/routes/verbs.d.ts.map +1 -0
  132. package/dist/api/routes/verbs.js +505 -0
  133. package/dist/api/routes/verbs.js.map +1 -0
  134. package/dist/api/routes/workflows.d.ts +44 -0
  135. package/dist/api/routes/workflows.d.ts.map +1 -0
  136. package/dist/api/routes/workflows.js +521 -0
  137. package/dist/api/routes/workflows.js.map +1 -0
  138. package/dist/api/types.d.ts +370 -0
  139. package/dist/api/types.d.ts.map +1 -0
  140. package/dist/api/types.js +11 -0
  141. package/dist/api/types.js.map +1 -0
  142. package/dist/db/cdc/events.d.ts +201 -0
  143. package/dist/db/cdc/events.d.ts.map +1 -0
  144. package/dist/db/cdc/events.js +271 -0
  145. package/dist/db/cdc/events.js.map +1 -0
  146. package/dist/db/cdc/index.d.ts +13 -0
  147. package/dist/db/cdc/index.d.ts.map +1 -0
  148. package/dist/db/cdc/index.js +16 -0
  149. package/dist/db/cdc/index.js.map +1 -0
  150. package/dist/db/cdc/replay.d.ts +388 -0
  151. package/dist/db/cdc/replay.d.ts.map +1 -0
  152. package/dist/db/cdc/replay.js +469 -0
  153. package/dist/db/cdc/replay.js.map +1 -0
  154. package/dist/db/cdc/storage.d.ts +567 -0
  155. package/dist/db/cdc/storage.d.ts.map +1 -0
  156. package/dist/db/cdc/storage.js +856 -0
  157. package/dist/db/cdc/storage.js.map +1 -0
  158. package/dist/db/cdc/streaming.d.ts +459 -0
  159. package/dist/db/cdc/streaming.d.ts.map +1 -0
  160. package/dist/db/cdc/streaming.js +636 -0
  161. package/dist/db/cdc/streaming.js.map +1 -0
  162. package/dist/db/collections/actions.d.ts +440 -0
  163. package/dist/db/collections/actions.d.ts.map +1 -0
  164. package/dist/db/collections/actions.js +631 -0
  165. package/dist/db/collections/actions.js.map +1 -0
  166. package/dist/db/collections/base.d.ts +342 -0
  167. package/dist/db/collections/base.d.ts.map +1 -0
  168. package/dist/db/collections/base.js +510 -0
  169. package/dist/db/collections/base.js.map +1 -0
  170. package/dist/db/collections/index.d.ts +50 -0
  171. package/dist/db/collections/index.d.ts.map +1 -0
  172. package/dist/db/collections/index.js +48 -0
  173. package/dist/db/collections/index.js.map +1 -0
  174. package/dist/db/collections/nouns.d.ts +260 -0
  175. package/dist/db/collections/nouns.d.ts.map +1 -0
  176. package/dist/db/collections/nouns.js +273 -0
  177. package/dist/db/collections/nouns.js.map +1 -0
  178. package/dist/db/collections/relationships.d.ts +484 -0
  179. package/dist/db/collections/relationships.d.ts.map +1 -0
  180. package/dist/db/collections/relationships.js +815 -0
  181. package/dist/db/collections/relationships.js.map +1 -0
  182. package/dist/db/collections/things.d.ts +439 -0
  183. package/dist/db/collections/things.d.ts.map +1 -0
  184. package/dist/db/collections/things.js +603 -0
  185. package/dist/db/collections/things.js.map +1 -0
  186. package/dist/db/collections/verbs.d.ts +308 -0
  187. package/dist/db/collections/verbs.d.ts.map +1 -0
  188. package/dist/db/collections/verbs.js +480 -0
  189. package/dist/db/collections/verbs.js.map +1 -0
  190. package/dist/db/index.d.ts +14 -0
  191. package/dist/db/index.d.ts.map +1 -0
  192. package/dist/db/index.js +23 -0
  193. package/dist/db/index.js.map +1 -0
  194. package/dist/db/storage/cold.d.ts +313 -0
  195. package/dist/db/storage/cold.d.ts.map +1 -0
  196. package/dist/db/storage/cold.js +319 -0
  197. package/dist/db/storage/cold.js.map +1 -0
  198. package/dist/db/storage/hot.d.ts +340 -0
  199. package/dist/db/storage/hot.d.ts.map +1 -0
  200. package/dist/db/storage/hot.js +333 -0
  201. package/dist/db/storage/hot.js.map +1 -0
  202. package/dist/db/storage/index.d.ts +242 -0
  203. package/dist/db/storage/index.d.ts.map +1 -0
  204. package/dist/db/storage/index.js +109 -0
  205. package/dist/db/storage/index.js.map +1 -0
  206. package/dist/db/storage/snapshots.d.ts +342 -0
  207. package/dist/db/storage/snapshots.d.ts.map +1 -0
  208. package/dist/db/storage/snapshots.js +298 -0
  209. package/dist/db/storage/snapshots.js.map +1 -0
  210. package/dist/db/storage/vortex.d.ts +324 -0
  211. package/dist/db/storage/vortex.d.ts.map +1 -0
  212. package/dist/db/storage/vortex.js +365 -0
  213. package/dist/db/storage/vortex.js.map +1 -0
  214. package/dist/db/storage/warm.d.ts +306 -0
  215. package/dist/db/storage/warm.d.ts.map +1 -0
  216. package/dist/db/storage/warm.js +339 -0
  217. package/dist/db/storage/warm.js.map +1 -0
  218. package/dist/do/DigitalObject.d.ts +595 -0
  219. package/dist/do/DigitalObject.d.ts.map +1 -0
  220. package/dist/do/DigitalObject.js +971 -0
  221. package/dist/do/DigitalObject.js.map +1 -0
  222. package/dist/do/business/financial/accounting.d.ts +436 -0
  223. package/dist/do/business/financial/accounting.d.ts.map +1 -0
  224. package/dist/do/business/financial/accounting.js +476 -0
  225. package/dist/do/business/financial/accounting.js.map +1 -0
  226. package/dist/do/business/financial/index.d.ts +15 -0
  227. package/dist/do/business/financial/index.d.ts.map +1 -0
  228. package/dist/do/business/financial/index.js +20 -0
  229. package/dist/do/business/financial/index.js.map +1 -0
  230. package/dist/do/business/financial/metrics.d.ts +370 -0
  231. package/dist/do/business/financial/metrics.d.ts.map +1 -0
  232. package/dist/do/business/financial/metrics.js +376 -0
  233. package/dist/do/business/financial/metrics.js.map +1 -0
  234. package/dist/do/business/financial/payments.d.ts +397 -0
  235. package/dist/do/business/financial/payments.d.ts.map +1 -0
  236. package/dist/do/business/financial/payments.js +395 -0
  237. package/dist/do/business/financial/payments.js.map +1 -0
  238. package/dist/do/business/financial/reports.d.ts +284 -0
  239. package/dist/do/business/financial/reports.d.ts.map +1 -0
  240. package/dist/do/business/financial/reports.js +347 -0
  241. package/dist/do/business/financial/reports.js.map +1 -0
  242. package/dist/do/business/financial/stripe.d.ts +254 -0
  243. package/dist/do/business/financial/stripe.d.ts.map +1 -0
  244. package/dist/do/business/financial/stripe.js +261 -0
  245. package/dist/do/business/financial/stripe.js.map +1 -0
  246. package/dist/do/business/financial/subscriptions.d.ts +402 -0
  247. package/dist/do/business/financial/subscriptions.d.ts.map +1 -0
  248. package/dist/do/business/financial/subscriptions.js +349 -0
  249. package/dist/do/business/financial/subscriptions.js.map +1 -0
  250. package/dist/do/business/index.d.ts +9 -0
  251. package/dist/do/business/index.d.ts.map +1 -0
  252. package/dist/do/business/index.js +10 -0
  253. package/dist/do/business/index.js.map +1 -0
  254. package/dist/do/colo/followers.d.ts +194 -0
  255. package/dist/do/colo/followers.d.ts.map +1 -0
  256. package/dist/do/colo/followers.js +224 -0
  257. package/dist/do/colo/followers.js.map +1 -0
  258. package/dist/do/colo/fork.d.ts +103 -0
  259. package/dist/do/colo/fork.d.ts.map +1 -0
  260. package/dist/do/colo/fork.js +143 -0
  261. package/dist/do/colo/fork.js.map +1 -0
  262. package/dist/do/colo/index.d.ts +181 -0
  263. package/dist/do/colo/index.d.ts.map +1 -0
  264. package/dist/do/colo/index.js +145 -0
  265. package/dist/do/colo/index.js.map +1 -0
  266. package/dist/do/colo/info.d.ts +106 -0
  267. package/dist/do/colo/info.d.ts.map +1 -0
  268. package/dist/do/colo/info.js +196 -0
  269. package/dist/do/colo/info.js.map +1 -0
  270. package/dist/do/colo/migrate.d.ts +161 -0
  271. package/dist/do/colo/migrate.d.ts.map +1 -0
  272. package/dist/do/colo/migrate.js +190 -0
  273. package/dist/do/colo/migrate.js.map +1 -0
  274. package/dist/do/colo/routing.d.ts +182 -0
  275. package/dist/do/colo/routing.d.ts.map +1 -0
  276. package/dist/do/colo/routing.js +254 -0
  277. package/dist/do/colo/routing.js.map +1 -0
  278. package/dist/do/domains/dns.d.ts +269 -0
  279. package/dist/do/domains/dns.d.ts.map +1 -0
  280. package/dist/do/domains/dns.js +215 -0
  281. package/dist/do/domains/dns.js.map +1 -0
  282. package/dist/do/domains/index.d.ts +40 -0
  283. package/dist/do/domains/index.d.ts.map +1 -0
  284. package/dist/do/domains/index.js +61 -0
  285. package/dist/do/domains/index.js.map +1 -0
  286. package/dist/do/domains/routing.d.ts +263 -0
  287. package/dist/do/domains/routing.d.ts.map +1 -0
  288. package/dist/do/domains/routing.js +362 -0
  289. package/dist/do/domains/routing.js.map +1 -0
  290. package/dist/do/domains/ssl.d.ts +217 -0
  291. package/dist/do/domains/ssl.d.ts.map +1 -0
  292. package/dist/do/domains/ssl.js +231 -0
  293. package/dist/do/domains/ssl.js.map +1 -0
  294. package/dist/do/domains/subdomains.d.ts +207 -0
  295. package/dist/do/domains/subdomains.d.ts.map +1 -0
  296. package/dist/do/domains/subdomains.js +223 -0
  297. package/dist/do/domains/subdomains.js.map +1 -0
  298. package/dist/do/domains/tlds.d.ts +175 -0
  299. package/dist/do/domains/tlds.d.ts.map +1 -0
  300. package/dist/do/domains/tlds.js +188 -0
  301. package/dist/do/domains/tlds.js.map +1 -0
  302. package/dist/do/domains/validation.d.ts +164 -0
  303. package/dist/do/domains/validation.d.ts.map +1 -0
  304. package/dist/do/domains/validation.js +290 -0
  305. package/dist/do/domains/validation.js.map +1 -0
  306. package/dist/do/hibernation.d.ts +385 -0
  307. package/dist/do/hibernation.d.ts.map +1 -0
  308. package/dist/do/hibernation.js +518 -0
  309. package/dist/do/hibernation.js.map +1 -0
  310. package/dist/do/index.d.ts +19 -0
  311. package/dist/do/index.d.ts.map +1 -0
  312. package/dist/do/index.js +23 -0
  313. package/dist/do/index.js.map +1 -0
  314. package/dist/do/state.d.ts +336 -0
  315. package/dist/do/state.d.ts.map +1 -0
  316. package/dist/do/state.js +290 -0
  317. package/dist/do/state.js.map +1 -0
  318. package/dist/index.d.ts +44 -0
  319. package/dist/index.d.ts.map +1 -0
  320. package/dist/index.js +89 -0
  321. package/dist/index.js.map +1 -0
  322. package/dist/rpc/client.d.ts +426 -0
  323. package/dist/rpc/client.d.ts.map +1 -0
  324. package/dist/rpc/client.js +826 -0
  325. package/dist/rpc/client.js.map +1 -0
  326. package/dist/rpc/index.d.ts +19 -0
  327. package/dist/rpc/index.d.ts.map +1 -0
  328. package/dist/rpc/index.js +23 -0
  329. package/dist/rpc/index.js.map +1 -0
  330. package/dist/rpc/methods.d.ts +364 -0
  331. package/dist/rpc/methods.d.ts.map +1 -0
  332. package/dist/rpc/methods.js +557 -0
  333. package/dist/rpc/methods.js.map +1 -0
  334. package/dist/rpc/protocol.d.ts +310 -0
  335. package/dist/rpc/protocol.d.ts.map +1 -0
  336. package/dist/rpc/protocol.js +672 -0
  337. package/dist/rpc/protocol.js.map +1 -0
  338. package/dist/rpc/routes.d.ts +332 -0
  339. package/dist/rpc/routes.d.ts.map +1 -0
  340. package/dist/rpc/routes.js +633 -0
  341. package/dist/rpc/routes.js.map +1 -0
  342. package/dist/rpc/server.d.ts +380 -0
  343. package/dist/rpc/server.d.ts.map +1 -0
  344. package/dist/rpc/server.js +850 -0
  345. package/dist/rpc/server.js.map +1 -0
  346. package/dist/sdk/auth.d.ts +201 -0
  347. package/dist/sdk/auth.d.ts.map +1 -0
  348. package/dist/sdk/auth.js +343 -0
  349. package/dist/sdk/auth.js.map +1 -0
  350. package/dist/sdk/client.d.ts +123 -0
  351. package/dist/sdk/client.d.ts.map +1 -0
  352. package/dist/sdk/client.js +403 -0
  353. package/dist/sdk/client.js.map +1 -0
  354. package/dist/sdk/index.d.ts +123 -0
  355. package/dist/sdk/index.d.ts.map +1 -0
  356. package/dist/sdk/index.js +230 -0
  357. package/dist/sdk/index.js.map +1 -0
  358. package/dist/sdk/rpc.d.ts +275 -0
  359. package/dist/sdk/rpc.d.ts.map +1 -0
  360. package/dist/sdk/rpc.js +249 -0
  361. package/dist/sdk/rpc.js.map +1 -0
  362. package/dist/sdk/transport.d.ts +283 -0
  363. package/dist/sdk/transport.d.ts.map +1 -0
  364. package/dist/sdk/transport.js +661 -0
  365. package/dist/sdk/transport.js.map +1 -0
  366. package/dist/sdk/types.d.ts +265 -0
  367. package/dist/sdk/types.d.ts.map +1 -0
  368. package/dist/sdk/types.js +27 -0
  369. package/dist/sdk/types.js.map +1 -0
  370. package/dist/types/ai.d.ts +533 -0
  371. package/dist/types/ai.d.ts.map +1 -0
  372. package/dist/types/ai.js +18 -0
  373. package/dist/types/ai.js.map +1 -0
  374. package/dist/types/app.d.ts +371 -0
  375. package/dist/types/app.d.ts.map +1 -0
  376. package/dist/types/app.js +151 -0
  377. package/dist/types/app.js.map +1 -0
  378. package/dist/types/business.d.ts +482 -0
  379. package/dist/types/business.d.ts.map +1 -0
  380. package/dist/types/business.js +60 -0
  381. package/dist/types/business.js.map +1 -0
  382. package/dist/types/cascade.d.ts +323 -0
  383. package/dist/types/cascade.d.ts.map +1 -0
  384. package/dist/types/cascade.js +82 -0
  385. package/dist/types/cascade.js.map +1 -0
  386. package/dist/types/collections.d.ts +704 -0
  387. package/dist/types/collections.d.ts.map +1 -0
  388. package/dist/types/collections.js +23 -0
  389. package/dist/types/collections.js.map +1 -0
  390. package/dist/types/colo.d.ts +171 -0
  391. package/dist/types/colo.d.ts.map +1 -0
  392. package/dist/types/colo.js +63 -0
  393. package/dist/types/colo.js.map +1 -0
  394. package/dist/types/communication.d.ts +595 -0
  395. package/dist/types/communication.d.ts.map +1 -0
  396. package/dist/types/communication.js +16 -0
  397. package/dist/types/communication.js.map +1 -0
  398. package/dist/types/content.d.ts +286 -0
  399. package/dist/types/content.d.ts.map +1 -0
  400. package/dist/types/content.js +8 -0
  401. package/dist/types/content.js.map +1 -0
  402. package/dist/types/context.d.ts +407 -0
  403. package/dist/types/context.d.ts.map +1 -0
  404. package/dist/types/context.js +36 -0
  405. package/dist/types/context.js.map +1 -0
  406. package/dist/types/databases.d.ts +377 -0
  407. package/dist/types/databases.d.ts.map +1 -0
  408. package/dist/types/databases.js +14 -0
  409. package/dist/types/databases.js.map +1 -0
  410. package/dist/types/domains.d.ts +132 -0
  411. package/dist/types/domains.d.ts.map +1 -0
  412. package/dist/types/domains.js +107 -0
  413. package/dist/types/domains.js.map +1 -0
  414. package/dist/types/execution.d.ts +381 -0
  415. package/dist/types/execution.d.ts.map +1 -0
  416. package/dist/types/execution.js +40 -0
  417. package/dist/types/execution.js.map +1 -0
  418. package/dist/types/financial.d.ts +608 -0
  419. package/dist/types/financial.d.ts.map +1 -0
  420. package/dist/types/financial.js +12 -0
  421. package/dist/types/financial.js.map +1 -0
  422. package/dist/types/functions.d.ts +215 -0
  423. package/dist/types/functions.d.ts.map +1 -0
  424. package/dist/types/functions.js +15 -0
  425. package/dist/types/functions.js.map +1 -0
  426. package/dist/types/git.d.ts +299 -0
  427. package/dist/types/git.d.ts.map +1 -0
  428. package/dist/types/git.js +17 -0
  429. package/dist/types/git.js.map +1 -0
  430. package/dist/types/identity.d.ts +141 -0
  431. package/dist/types/identity.d.ts.map +1 -0
  432. package/dist/types/identity.js +54 -0
  433. package/dist/types/identity.js.map +1 -0
  434. package/dist/types/index.d.ts +40 -0
  435. package/dist/types/index.d.ts.map +1 -0
  436. package/dist/types/index.js +65 -0
  437. package/dist/types/index.js.map +1 -0
  438. package/dist/types/integrations.d.ts +356 -0
  439. package/dist/types/integrations.d.ts.map +1 -0
  440. package/dist/types/integrations.js +19 -0
  441. package/dist/types/integrations.js.map +1 -0
  442. package/dist/types/mdxui.d.ts +1955 -0
  443. package/dist/types/mdxui.d.ts.map +1 -0
  444. package/dist/types/mdxui.js +751 -0
  445. package/dist/types/mdxui.js.map +1 -0
  446. package/dist/types/observability.d.ts +315 -0
  447. package/dist/types/observability.d.ts.map +1 -0
  448. package/dist/types/observability.js +13 -0
  449. package/dist/types/observability.js.map +1 -0
  450. package/dist/types/rpc.d.ts +339 -0
  451. package/dist/types/rpc.d.ts.map +1 -0
  452. package/dist/types/rpc.js +24 -0
  453. package/dist/types/rpc.js.map +1 -0
  454. package/dist/types/saas.d.ts +678 -0
  455. package/dist/types/saas.d.ts.map +1 -0
  456. package/dist/types/saas.js +59 -0
  457. package/dist/types/saas.js.map +1 -0
  458. package/dist/types/service.d.ts +676 -0
  459. package/dist/types/service.d.ts.map +1 -0
  460. package/dist/types/service.js +69 -0
  461. package/dist/types/service.js.map +1 -0
  462. package/dist/types/site.d.ts +317 -0
  463. package/dist/types/site.d.ts.map +1 -0
  464. package/dist/types/site.js +203 -0
  465. package/dist/types/site.js.map +1 -0
  466. package/dist/types/startup.d.ts +576 -0
  467. package/dist/types/startup.d.ts.map +1 -0
  468. package/dist/types/startup.js +59 -0
  469. package/dist/types/startup.js.map +1 -0
  470. package/dist/types/storage.d.ts +276 -0
  471. package/dist/types/storage.d.ts.map +1 -0
  472. package/dist/types/storage.js +35 -0
  473. package/dist/types/storage.js.map +1 -0
  474. package/dist/types/telephony.d.ts +458 -0
  475. package/dist/types/telephony.d.ts.map +1 -0
  476. package/dist/types/telephony.js +19 -0
  477. package/dist/types/telephony.js.map +1 -0
  478. package/dist/types/tenant.d.ts +708 -0
  479. package/dist/types/tenant.d.ts.map +1 -0
  480. package/dist/types/tenant.js +103 -0
  481. package/dist/types/tenant.js.map +1 -0
  482. package/dist/types/voice-ai.d.ts +459 -0
  483. package/dist/types/voice-ai.d.ts.map +1 -0
  484. package/dist/types/voice-ai.js +32 -0
  485. package/dist/types/voice-ai.js.map +1 -0
  486. package/package.json +143 -0
@@ -0,0 +1,510 @@
1
+ /**
2
+ * Base Collection - Generic CRUD operations for DO collections
3
+ *
4
+ * @module collections/base
5
+ *
6
+ * @description
7
+ * Provides the foundational collection interface that all specialized collections
8
+ * extend. Uses Durable Object SQLite storage for persistence.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * class CustomerCollection extends BaseCollection<Customer> {
13
+ * constructor(ctx: DurableObjectState) {
14
+ * super(ctx, 'customers', 'cust')
15
+ * }
16
+ * }
17
+ *
18
+ * const customers = new CustomerCollection(ctx)
19
+ * const customer = await customers.create({ name: 'Acme' })
20
+ * ```
21
+ */
22
+ /**
23
+ * Base collection class providing generic CRUD operations
24
+ *
25
+ * @description
26
+ * All DO collections extend this class to inherit standard CRUD operations,
27
+ * filtering, pagination, and storage abstraction. The class is generic over
28
+ * the entity type T, which must have an 'id' field.
29
+ *
30
+ * @typeParam T - Entity type with required 'id' field
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * interface Product {
35
+ * id: string
36
+ * name: string
37
+ * price: number
38
+ * createdAt: number
39
+ * updatedAt: number
40
+ * }
41
+ *
42
+ * class ProductCollection extends BaseCollection<Product> {
43
+ * constructor(storage: DOStorage) {
44
+ * super(storage, { name: 'products', idPrefix: 'prod' })
45
+ * }
46
+ *
47
+ * // Add domain-specific methods
48
+ * async findByPriceRange(min: number, max: number): Promise<Product[]> {
49
+ * return this.find({
50
+ * and: [
51
+ * { field: 'price', op: 'gte', value: min },
52
+ * { field: 'price', op: 'lte', value: max }
53
+ * ]
54
+ * })
55
+ * }
56
+ * }
57
+ * ```
58
+ */
59
+ export class BaseCollection {
60
+ /**
61
+ * DO storage interface
62
+ */
63
+ storage;
64
+ /**
65
+ * Collection configuration
66
+ */
67
+ config;
68
+ /**
69
+ * Create a new BaseCollection instance
70
+ *
71
+ * @param storage - DO storage interface
72
+ * @param config - Collection configuration
73
+ */
74
+ constructor(storage, config) {
75
+ this.storage = storage;
76
+ this.config = {
77
+ defaultLimit: 50,
78
+ maxLimit: 1000,
79
+ ...config,
80
+ };
81
+ }
82
+ /**
83
+ * Generate a unique ID for a new entity
84
+ *
85
+ * @returns A unique ID in format '{prefix}_{nanoid}'
86
+ *
87
+ * @example
88
+ * ```typescript
89
+ * const id = this.generateId() // 'cust_V1StGXR8_Z5jdHi6B-myT'
90
+ * ```
91
+ */
92
+ generateId() {
93
+ // TODO: Implement nanoid generation
94
+ const random = Math.random().toString(36).substring(2, 15);
95
+ return `${this.config.idPrefix}_${random}`;
96
+ }
97
+ /**
98
+ * Get current timestamp in Unix milliseconds
99
+ *
100
+ * @returns Current time as Unix timestamp (ms)
101
+ */
102
+ now() {
103
+ return Date.now();
104
+ }
105
+ /**
106
+ * List entities with pagination and filtering
107
+ *
108
+ * @param options - List options including limit, offset, cursor, ordering, and filter
109
+ * @returns Paginated list result with items and metadata
110
+ *
111
+ * @example
112
+ * ```typescript
113
+ * // Simple pagination
114
+ * const page1 = await collection.list({ limit: 10 })
115
+ * const page2 = await collection.list({ limit: 10, cursor: page1.cursor })
116
+ *
117
+ * // With filtering
118
+ * const active = await collection.list({
119
+ * filter: { field: 'status', op: 'eq', value: 'active' },
120
+ * orderBy: 'createdAt',
121
+ * orderDir: 'desc'
122
+ * })
123
+ * ```
124
+ */
125
+ async list(options = {}) {
126
+ const limit = Math.min(options.limit ?? this.config.defaultLimit, this.config.maxLimit);
127
+ const offset = options.offset ?? 0;
128
+ // Get all items from storage
129
+ const prefix = `${this.config.name}:`;
130
+ const allItems = await this.storage.list({ prefix });
131
+ // Convert to array
132
+ let items = Array.from(allItems.values());
133
+ // Apply filtering
134
+ if (options.filter) {
135
+ items = items.filter(item => this.matchesFilter(item, options.filter));
136
+ }
137
+ const total = items.length;
138
+ // Apply ordering
139
+ if (options.orderBy) {
140
+ const dir = options.orderDir === 'desc' ? -1 : 1;
141
+ items.sort((a, b) => {
142
+ const aVal = a[options.orderBy];
143
+ const bVal = b[options.orderBy];
144
+ if (aVal === bVal)
145
+ return 0;
146
+ if (aVal === undefined || aVal === null)
147
+ return dir;
148
+ if (bVal === undefined || bVal === null)
149
+ return -dir;
150
+ if (typeof aVal === 'string' && typeof bVal === 'string') {
151
+ return aVal.localeCompare(bVal) * dir;
152
+ }
153
+ return aVal < bVal ? -dir : dir;
154
+ });
155
+ }
156
+ // Handle cursor-based pagination
157
+ let startIndex = offset;
158
+ if (options.cursor) {
159
+ const cursorIndex = items.findIndex(item => item.id === options.cursor);
160
+ if (cursorIndex >= 0) {
161
+ startIndex = cursorIndex + 1;
162
+ }
163
+ }
164
+ // Apply pagination
165
+ const paginatedItems = items.slice(startIndex, startIndex + limit);
166
+ const hasMore = startIndex + limit < items.length;
167
+ // Generate cursor for next page
168
+ const cursor = paginatedItems.length > 0 ? paginatedItems[paginatedItems.length - 1].id : undefined;
169
+ return {
170
+ items: paginatedItems,
171
+ total,
172
+ cursor,
173
+ hasMore,
174
+ };
175
+ }
176
+ /**
177
+ * Get a single entity by ID
178
+ *
179
+ * @param id - Entity ID
180
+ * @returns The entity or null if not found
181
+ *
182
+ * @example
183
+ * ```typescript
184
+ * const customer = await customers.get('cust_abc123')
185
+ * if (customer) {
186
+ * console.log(customer.name)
187
+ * }
188
+ * ```
189
+ */
190
+ async get(id) {
191
+ if (!id)
192
+ return null;
193
+ const key = `${this.config.name}:${id}`;
194
+ const entity = await this.storage.get(key);
195
+ return entity ?? null;
196
+ }
197
+ /**
198
+ * Create a new entity
199
+ *
200
+ * @param data - Entity data without ID (ID is auto-generated)
201
+ * @returns The created entity with generated ID and timestamps
202
+ *
203
+ * @throws {Error} If creation fails due to validation or storage error
204
+ *
205
+ * @example
206
+ * ```typescript
207
+ * const customer = await customers.create({
208
+ * name: 'Acme Corp',
209
+ * email: 'contact@acme.com'
210
+ * })
211
+ * console.log(customer.id) // 'cust_abc123'
212
+ * ```
213
+ */
214
+ async create(data) {
215
+ if (data === null || data === undefined) {
216
+ throw new ValidationError('Data cannot be null or undefined');
217
+ }
218
+ const id = this.generateId();
219
+ const timestamp = this.now();
220
+ const entity = {
221
+ ...data,
222
+ id,
223
+ createdAt: timestamp,
224
+ updatedAt: timestamp,
225
+ };
226
+ const key = `${this.config.name}:${id}`;
227
+ await this.storage.put(key, entity);
228
+ return entity;
229
+ }
230
+ /**
231
+ * Update an existing entity
232
+ *
233
+ * @param id - Entity ID
234
+ * @param data - Partial entity data to merge
235
+ * @returns The updated entity
236
+ *
237
+ * @throws {Error} If entity not found or update fails
238
+ *
239
+ * @example
240
+ * ```typescript
241
+ * const updated = await customers.update('cust_abc123', {
242
+ * email: 'new@acme.com'
243
+ * })
244
+ * ```
245
+ */
246
+ async update(id, data) {
247
+ const existing = await this.get(id);
248
+ if (!existing) {
249
+ throw new NotFoundError(this.config.name, id);
250
+ }
251
+ // Merge data but preserve id and update timestamp
252
+ const updated = {
253
+ ...existing,
254
+ ...data,
255
+ id: existing.id, // Preserve original ID
256
+ updatedAt: this.now(),
257
+ };
258
+ const key = `${this.config.name}:${id}`;
259
+ await this.storage.put(key, updated);
260
+ return updated;
261
+ }
262
+ /**
263
+ * Delete an entity by ID
264
+ *
265
+ * @param id - Entity ID
266
+ *
267
+ * @example
268
+ * ```typescript
269
+ * await customers.delete('cust_abc123')
270
+ * ```
271
+ */
272
+ async delete(id) {
273
+ const key = `${this.config.name}:${id}`;
274
+ await this.storage.delete(key);
275
+ }
276
+ /**
277
+ * Count entities matching a filter
278
+ *
279
+ * @param filter - Optional filter expression
280
+ * @returns Count of matching entities
281
+ *
282
+ * @example
283
+ * ```typescript
284
+ * const total = await customers.count()
285
+ * const active = await customers.count({
286
+ * field: 'status', op: 'eq', value: 'active'
287
+ * })
288
+ * ```
289
+ */
290
+ async count(filter) {
291
+ const prefix = `${this.config.name}:`;
292
+ const allItems = await this.storage.list({ prefix });
293
+ if (!filter) {
294
+ return allItems.size;
295
+ }
296
+ let count = 0;
297
+ for (const item of allItems.values()) {
298
+ if (this.matchesFilter(item, filter)) {
299
+ count++;
300
+ }
301
+ }
302
+ return count;
303
+ }
304
+ /**
305
+ * Find entities matching a filter
306
+ *
307
+ * @param filter - Filter expression
308
+ * @returns Array of matching entities
309
+ *
310
+ * @example
311
+ * ```typescript
312
+ * const highValue = await customers.find({
313
+ * and: [
314
+ * { field: 'totalSpent', op: 'gte', value: 10000 },
315
+ * { field: 'status', op: 'eq', value: 'active' }
316
+ * ]
317
+ * })
318
+ * ```
319
+ */
320
+ async find(filter) {
321
+ const prefix = `${this.config.name}:`;
322
+ const allItems = await this.storage.list({ prefix });
323
+ const results = [];
324
+ for (const item of allItems.values()) {
325
+ if (this.matchesFilter(item, filter)) {
326
+ results.push(item);
327
+ }
328
+ }
329
+ return results;
330
+ }
331
+ /**
332
+ * Check if an entity matches a filter expression
333
+ *
334
+ * @param entity - The entity to check
335
+ * @param filter - The filter expression
336
+ * @returns True if the entity matches the filter
337
+ *
338
+ * @internal
339
+ */
340
+ matchesFilter(entity, filter) {
341
+ // Handle AND conditions
342
+ if ('and' in filter) {
343
+ return filter.and.every(f => this.matchesFilter(entity, f));
344
+ }
345
+ // Handle OR conditions
346
+ if ('or' in filter) {
347
+ return filter.or.some(f => this.matchesFilter(entity, f));
348
+ }
349
+ // Handle NOT conditions
350
+ if ('not' in filter) {
351
+ return !this.matchesFilter(entity, filter.not);
352
+ }
353
+ // Handle field conditions
354
+ const { field, op, value } = filter;
355
+ const entityValue = entity[field];
356
+ switch (op) {
357
+ case 'eq':
358
+ return entityValue === value;
359
+ case 'ne':
360
+ return entityValue !== value;
361
+ case 'gt':
362
+ return entityValue > value;
363
+ case 'gte':
364
+ return entityValue >= value;
365
+ case 'lt':
366
+ return entityValue < value;
367
+ case 'lte':
368
+ return entityValue <= value;
369
+ case 'in':
370
+ return value.includes(entityValue);
371
+ case 'nin':
372
+ return !value.includes(entityValue);
373
+ case 'contains':
374
+ return typeof entityValue === 'string' && entityValue.includes(value);
375
+ case 'startsWith':
376
+ return typeof entityValue === 'string' && entityValue.startsWith(value);
377
+ case 'endsWith':
378
+ return typeof entityValue === 'string' && entityValue.endsWith(value);
379
+ default:
380
+ return false;
381
+ }
382
+ }
383
+ /**
384
+ * Build SQL WHERE clause from filter expression
385
+ *
386
+ * @param filter - Filter expression
387
+ * @returns Object with SQL clause and parameter values
388
+ *
389
+ * @internal
390
+ */
391
+ buildWhereClause(filter) {
392
+ // Handle AND conditions
393
+ if ('and' in filter) {
394
+ const clauses = filter.and.map(f => this.buildWhereClause(f));
395
+ return {
396
+ sql: `(${clauses.map(c => c.sql).join(' AND ')})`,
397
+ params: clauses.flatMap(c => c.params),
398
+ };
399
+ }
400
+ // Handle OR conditions
401
+ if ('or' in filter) {
402
+ const clauses = filter.or.map(f => this.buildWhereClause(f));
403
+ return {
404
+ sql: `(${clauses.map(c => c.sql).join(' OR ')})`,
405
+ params: clauses.flatMap(c => c.params),
406
+ };
407
+ }
408
+ // Handle NOT conditions
409
+ if ('not' in filter) {
410
+ const clause = this.buildWhereClause(filter.not);
411
+ return {
412
+ sql: `NOT (${clause.sql})`,
413
+ params: clause.params,
414
+ };
415
+ }
416
+ // Handle field conditions
417
+ const { field, op, value } = filter;
418
+ const sqlOp = this.operatorToSql(op);
419
+ switch (op) {
420
+ case 'in':
421
+ case 'nin': {
422
+ const values = value;
423
+ const placeholders = values.map(() => '?').join(', ');
424
+ return {
425
+ sql: `${field} ${sqlOp} (${placeholders})`,
426
+ params: values,
427
+ };
428
+ }
429
+ case 'contains':
430
+ return {
431
+ sql: `${field} ${sqlOp} ?`,
432
+ params: [`%${value}%`],
433
+ };
434
+ case 'startsWith':
435
+ return {
436
+ sql: `${field} ${sqlOp} ?`,
437
+ params: [`${value}%`],
438
+ };
439
+ case 'endsWith':
440
+ return {
441
+ sql: `${field} ${sqlOp} ?`,
442
+ params: [`%${value}`],
443
+ };
444
+ default:
445
+ return {
446
+ sql: `${field} ${sqlOp} ?`,
447
+ params: [value],
448
+ };
449
+ }
450
+ }
451
+ /**
452
+ * Convert filter operator to SQL operator
453
+ *
454
+ * @param op - Filter operator
455
+ * @returns SQL operator string
456
+ *
457
+ * @internal
458
+ */
459
+ operatorToSql(op) {
460
+ const opMap = {
461
+ eq: '=',
462
+ ne: '!=',
463
+ gt: '>',
464
+ gte: '>=',
465
+ lt: '<',
466
+ lte: '<=',
467
+ in: 'IN',
468
+ nin: 'NOT IN',
469
+ contains: 'LIKE',
470
+ startsWith: 'LIKE',
471
+ endsWith: 'LIKE',
472
+ };
473
+ return opMap[op];
474
+ }
475
+ }
476
+ /**
477
+ * Collection error types
478
+ */
479
+ export class CollectionError extends Error {
480
+ code;
481
+ entityId;
482
+ constructor(message, code, entityId) {
483
+ super(message);
484
+ this.code = code;
485
+ this.entityId = entityId;
486
+ this.name = 'CollectionError';
487
+ }
488
+ }
489
+ /**
490
+ * Entity not found error
491
+ */
492
+ export class NotFoundError extends CollectionError {
493
+ constructor(collection, id) {
494
+ super(`${collection} with id '${id}' not found`, 'NOT_FOUND', id);
495
+ this.name = 'NotFoundError';
496
+ }
497
+ }
498
+ /**
499
+ * Validation error
500
+ */
501
+ export class ValidationError extends CollectionError {
502
+ field;
503
+ constructor(message, field) {
504
+ super(message, 'VALIDATION');
505
+ this.field = field;
506
+ this.name = 'ValidationError';
507
+ }
508
+ }
509
+ export default BaseCollection;
510
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../db/collections/base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Collections Module - Core data structures for Digital Objects
3
+ *
4
+ * @module collections
5
+ *
6
+ * @description
7
+ * This module exports all collection types for managing data within Digital Objects.
8
+ * Collections provide the core data layer including:
9
+ *
10
+ * - **Nouns**: Entity type registry (Customer, Order, Product, etc.)
11
+ * - **Verbs**: Action type registry (create, update, delete, approve, etc.)
12
+ * - **Things**: Entity instances in ThingExpanded or ThingCompact formats
13
+ * - **Actions**: Durable action execution with full lifecycle tracking
14
+ * - **Relationships**: Graph-style entity linking with cascade operator support
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * import {
19
+ * NounCollection,
20
+ * VerbCollection,
21
+ * ThingCollection,
22
+ * ActionCollection,
23
+ * RelationshipCollection
24
+ * } from './collections'
25
+ *
26
+ * // Initialize collections with storage
27
+ * const nouns = new NounCollection(storage)
28
+ * const verbs = new VerbCollection(storage)
29
+ * const things = new ThingCollection(storage, nouns)
30
+ * const actions = new ActionCollection(storage, verbs)
31
+ * const relationships = new RelationshipCollection(storage)
32
+ * ```
33
+ */
34
+ export { BaseCollection, CollectionError, NotFoundError, ValidationError, } from './base';
35
+ export type { DOStorage, CollectionConfig, } from './base';
36
+ export { NounCollection, } from './nouns';
37
+ export type { CreateNounOptions, } from './nouns';
38
+ export { VerbCollection, CRUD_VERBS, WORKFLOW_VERBS, } from './verbs';
39
+ export type { CreateVerbOptions, } from './verbs';
40
+ export { ThingCollection, } from './things';
41
+ export type { CreateThingExpandedOptions, CreateThingCompactOptions, ThingQueryOptions, } from './things';
42
+ export { ActionCollection, DEFAULT_RETRY_POLICY, } from './actions';
43
+ export type { CreateActionOptions, FailActionOptions, ActionRetryPolicy, } from './actions';
44
+ export { RelationshipCollection, } from './relationships';
45
+ export type { CreateRelationshipOptions, RelationshipQueryOptions, TraversalResult, } from './relationships';
46
+ export type { Noun, Verb, Thing, ThingExpanded, ThingCompact, Action, ActionStatus, ActionError, ActionRequest, Actor, ActorType, Relationship, Function, FunctionType, FunctionDefinition, Workflow, WorkflowType, WorkflowExecutionState, WorkflowDefinition, WorkflowStep, WorkflowTrigger, StateMachineDefinition, StateNode, Transition, Event, Experiment, ExperimentStatus, Variant, Org, Role, Permission, User, Agent, AgentStatus, AgentModality, Integration, IntegrationStatus, IntegrationCredentials, Webhook, CollectionMethods, ListOptions, ListResult, FilterExpression, FilterOp, } from '../../types/collections';
47
+ export { isThingExpanded, isThingCompact } from '../../types/collections';
48
+ export type { RelationOperator, RelationDirection, RelationMethod, RelationFieldDefinition, StoredRelation, RelationManager, CascadeProcessor, CascadeResult, CascadeFieldResult, CascadeError, CascadeConfig, CascadeEvent, } from '../../types/cascade';
49
+ export { parseRelationOperator, parseRelationField, isRelationField, } from '../../types/cascade';
50
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../db/collections/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAGH,OAAO,EACL,cAAc,EACd,eAAe,EACf,aAAa,EACb,eAAe,GAChB,MAAM,QAAQ,CAAA;AAEf,YAAY,EACV,SAAS,EACT,gBAAgB,GACjB,MAAM,QAAQ,CAAA;AAGf,OAAO,EACL,cAAc,GACf,MAAM,SAAS,CAAA;AAEhB,YAAY,EACV,iBAAiB,GAClB,MAAM,SAAS,CAAA;AAGhB,OAAO,EACL,cAAc,EACd,UAAU,EACV,cAAc,GACf,MAAM,SAAS,CAAA;AAEhB,YAAY,EACV,iBAAiB,GAClB,MAAM,SAAS,CAAA;AAGhB,OAAO,EACL,eAAe,GAChB,MAAM,UAAU,CAAA;AAEjB,YAAY,EACV,0BAA0B,EAC1B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,UAAU,CAAA;AAGjB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,WAAW,CAAA;AAElB,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,WAAW,CAAA;AAGlB,OAAO,EACL,sBAAsB,GACvB,MAAM,iBAAiB,CAAA;AAExB,YAAY,EACV,yBAAyB,EACzB,wBAAwB,EACxB,eAAe,GAChB,MAAM,iBAAiB,CAAA;AAGxB,YAAY,EACV,IAAI,EACJ,IAAI,EACJ,KAAK,EACL,aAAa,EACb,YAAY,EACZ,MAAM,EACN,YAAY,EACZ,WAAW,EACX,aAAa,EACb,KAAK,EACL,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,kBAAkB,EAClB,QAAQ,EACR,YAAY,EACZ,sBAAsB,EACtB,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,SAAS,EACT,UAAU,EACV,KAAK,EACL,UAAU,EACV,gBAAgB,EAChB,OAAO,EACP,GAAG,EACH,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,KAAK,EACL,WAAW,EACX,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,OAAO,EACP,iBAAiB,EACjB,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,QAAQ,GACT,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAGzE,YAAY,EACV,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,YAAY,GACb,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,GAChB,MAAM,qBAAqB,CAAA"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Collections Module - Core data structures for Digital Objects
3
+ *
4
+ * @module collections
5
+ *
6
+ * @description
7
+ * This module exports all collection types for managing data within Digital Objects.
8
+ * Collections provide the core data layer including:
9
+ *
10
+ * - **Nouns**: Entity type registry (Customer, Order, Product, etc.)
11
+ * - **Verbs**: Action type registry (create, update, delete, approve, etc.)
12
+ * - **Things**: Entity instances in ThingExpanded or ThingCompact formats
13
+ * - **Actions**: Durable action execution with full lifecycle tracking
14
+ * - **Relationships**: Graph-style entity linking with cascade operator support
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * import {
19
+ * NounCollection,
20
+ * VerbCollection,
21
+ * ThingCollection,
22
+ * ActionCollection,
23
+ * RelationshipCollection
24
+ * } from './collections'
25
+ *
26
+ * // Initialize collections with storage
27
+ * const nouns = new NounCollection(storage)
28
+ * const verbs = new VerbCollection(storage)
29
+ * const things = new ThingCollection(storage, nouns)
30
+ * const actions = new ActionCollection(storage, verbs)
31
+ * const relationships = new RelationshipCollection(storage)
32
+ * ```
33
+ */
34
+ // Base collection
35
+ export { BaseCollection, CollectionError, NotFoundError, ValidationError, } from './base';
36
+ // Noun collection
37
+ export { NounCollection, } from './nouns';
38
+ // Verb collection
39
+ export { VerbCollection, CRUD_VERBS, WORKFLOW_VERBS, } from './verbs';
40
+ // Things collection
41
+ export { ThingCollection, } from './things';
42
+ // Actions collection
43
+ export { ActionCollection, DEFAULT_RETRY_POLICY, } from './actions';
44
+ // Relationships collection
45
+ export { RelationshipCollection, } from './relationships';
46
+ export { isThingExpanded, isThingCompact } from '../../types/collections';
47
+ export { parseRelationOperator, parseRelationField, isRelationField, } from '../../types/cascade';
48
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../db/collections/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,kBAAkB;AAClB,OAAO,EACL,cAAc,EACd,eAAe,EACf,aAAa,EACb,eAAe,GAChB,MAAM,QAAQ,CAAA;AAOf,kBAAkB;AAClB,OAAO,EACL,cAAc,GACf,MAAM,SAAS,CAAA;AAMhB,kBAAkB;AAClB,OAAO,EACL,cAAc,EACd,UAAU,EACV,cAAc,GACf,MAAM,SAAS,CAAA;AAMhB,oBAAoB;AACpB,OAAO,EACL,eAAe,GAChB,MAAM,UAAU,CAAA;AAQjB,qBAAqB;AACrB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,WAAW,CAAA;AAQlB,2BAA2B;AAC3B,OAAO,EACL,sBAAsB,GACvB,MAAM,iBAAiB,CAAA;AAwDxB,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAkBzE,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,GAChB,MAAM,qBAAqB,CAAA"}