@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,286 @@
1
+ /**
2
+ * Voice AI Provider Abstraction
3
+ *
4
+ * Unified interface across voice AI platforms:
5
+ * - Vapi - Voice AI agents
6
+ * - LiveKit - Real-time infrastructure
7
+ * - Retell - Voice agents
8
+ * - Bland - Phone AI
9
+ * - Daily - WebRTC platform
10
+ *
11
+ * @module ai/voice/providers
12
+ */
13
+ /**
14
+ * Provider factory for creating voice provider adapters
15
+ */
16
+ export class VoiceProviderFactory {
17
+ static adapters = new Map();
18
+ static configs = new Map();
19
+ /**
20
+ * Register a provider adapter
21
+ *
22
+ * @param adapter - Provider adapter instance
23
+ */
24
+ static register(adapter) {
25
+ this.adapters.set(adapter.provider, adapter);
26
+ }
27
+ /**
28
+ * Configure a provider with API credentials
29
+ *
30
+ * @param config - Provider configuration
31
+ */
32
+ static configure(config) {
33
+ this.configs.set(config.provider, config);
34
+ }
35
+ /**
36
+ * Get a provider adapter by name
37
+ *
38
+ * @param provider - Provider name
39
+ * @returns Provider adapter
40
+ * @throws Error if provider not registered or configured
41
+ */
42
+ static get(provider) {
43
+ const adapter = this.adapters.get(provider);
44
+ if (!adapter) {
45
+ throw new Error(`Voice provider not registered: ${provider}`);
46
+ }
47
+ return adapter;
48
+ }
49
+ /**
50
+ * Auto-select a provider based on use case
51
+ *
52
+ * @param useCase - Use case hint
53
+ * @returns Best provider for the use case
54
+ */
55
+ static for(useCase) {
56
+ const providerMap = {
57
+ 'outbound-campaign': 'bland',
58
+ 'inbound-support': 'vapi',
59
+ 'web-call': 'livekit',
60
+ 'voice-agent': 'retell',
61
+ 'real-time': 'livekit',
62
+ };
63
+ const provider = providerMap[useCase];
64
+ return this.get(provider);
65
+ }
66
+ /**
67
+ * Create a new provider adapter with configuration
68
+ *
69
+ * @param provider - Provider name
70
+ * @param config - Provider configuration
71
+ * @returns Configured provider adapter
72
+ */
73
+ static create(provider, config) {
74
+ // TODO: Implement provider-specific adapter creation
75
+ throw new Error(`Not implemented: create adapter for ${provider}`);
76
+ }
77
+ /**
78
+ * Check if a provider is available (registered and configured)
79
+ *
80
+ * @param provider - Provider name
81
+ * @returns True if provider is available
82
+ */
83
+ static isAvailable(provider) {
84
+ return this.adapters.has(provider) && this.configs.has(provider);
85
+ }
86
+ /**
87
+ * List all available providers
88
+ *
89
+ * @returns Array of available provider names
90
+ */
91
+ static listAvailable() {
92
+ return Array.from(this.adapters.keys()).filter((p) => this.configs.has(p));
93
+ }
94
+ }
95
+ // =============================================================================
96
+ // Provider Implementations (Stubs)
97
+ // =============================================================================
98
+ /**
99
+ * Vapi provider adapter
100
+ *
101
+ * @see https://docs.vapi.ai
102
+ */
103
+ export class VapiAdapter {
104
+ config;
105
+ provider = 'vapi';
106
+ constructor(config) {
107
+ this.config = config;
108
+ if (config.provider !== 'vapi') {
109
+ throw new Error('Invalid provider config for VapiAdapter');
110
+ }
111
+ }
112
+ async createAgent(config) {
113
+ // TODO: Implement Vapi agent creation
114
+ throw new Error('Not implemented: VapiAdapter.createAgent');
115
+ }
116
+ async updateAgent(providerAgentId, config) {
117
+ // TODO: Implement Vapi agent update
118
+ throw new Error('Not implemented: VapiAdapter.updateAgent');
119
+ }
120
+ async deleteAgent(providerAgentId) {
121
+ // TODO: Implement Vapi agent deletion
122
+ throw new Error('Not implemented: VapiAdapter.deleteAgent');
123
+ }
124
+ async startCall(providerAgentId, phone, context) {
125
+ // TODO: Implement Vapi call start
126
+ throw new Error('Not implemented: VapiAdapter.startCall');
127
+ }
128
+ async endCall(providerCallId) {
129
+ // TODO: Implement Vapi call end
130
+ throw new Error('Not implemented: VapiAdapter.endCall');
131
+ }
132
+ async getCall(providerCallId) {
133
+ // TODO: Implement Vapi call status
134
+ throw new Error('Not implemented: VapiAdapter.getCall');
135
+ }
136
+ async createRoom(providerAgentId, identity) {
137
+ // TODO: Implement Vapi WebRTC (if supported)
138
+ throw new Error('Not implemented: VapiAdapter.createRoom');
139
+ }
140
+ async handleWebhook(payload, headers) {
141
+ // TODO: Implement Vapi webhook handling
142
+ throw new Error('Not implemented: VapiAdapter.handleWebhook');
143
+ }
144
+ }
145
+ /**
146
+ * LiveKit provider adapter
147
+ *
148
+ * @see https://docs.livekit.io
149
+ */
150
+ export class LiveKitAdapter {
151
+ config;
152
+ provider = 'livekit';
153
+ constructor(config) {
154
+ this.config = config;
155
+ if (config.provider !== 'livekit') {
156
+ throw new Error('Invalid provider config for LiveKitAdapter');
157
+ }
158
+ }
159
+ async createAgent(config) {
160
+ // TODO: Implement LiveKit agent creation
161
+ throw new Error('Not implemented: LiveKitAdapter.createAgent');
162
+ }
163
+ async updateAgent(providerAgentId, config) {
164
+ // TODO: Implement LiveKit agent update
165
+ throw new Error('Not implemented: LiveKitAdapter.updateAgent');
166
+ }
167
+ async deleteAgent(providerAgentId) {
168
+ // TODO: Implement LiveKit agent deletion
169
+ throw new Error('Not implemented: LiveKitAdapter.deleteAgent');
170
+ }
171
+ async startCall(providerAgentId, phone, context) {
172
+ // TODO: Implement LiveKit call start (via SIP trunk)
173
+ throw new Error('Not implemented: LiveKitAdapter.startCall');
174
+ }
175
+ async endCall(providerCallId) {
176
+ // TODO: Implement LiveKit call end
177
+ throw new Error('Not implemented: LiveKitAdapter.endCall');
178
+ }
179
+ async getCall(providerCallId) {
180
+ // TODO: Implement LiveKit call status
181
+ throw new Error('Not implemented: LiveKitAdapter.getCall');
182
+ }
183
+ async createRoom(providerAgentId, identity) {
184
+ // TODO: Implement LiveKit room creation with access token
185
+ throw new Error('Not implemented: LiveKitAdapter.createRoom');
186
+ }
187
+ async handleWebhook(payload, headers) {
188
+ // TODO: Implement LiveKit webhook handling
189
+ throw new Error('Not implemented: LiveKitAdapter.handleWebhook');
190
+ }
191
+ }
192
+ /**
193
+ * Retell AI provider adapter
194
+ *
195
+ * @see https://docs.retellai.com
196
+ */
197
+ export class RetellAdapter {
198
+ config;
199
+ provider = 'retell';
200
+ constructor(config) {
201
+ this.config = config;
202
+ if (config.provider !== 'retell') {
203
+ throw new Error('Invalid provider config for RetellAdapter');
204
+ }
205
+ }
206
+ async createAgent(config) {
207
+ // TODO: Implement Retell agent creation
208
+ throw new Error('Not implemented: RetellAdapter.createAgent');
209
+ }
210
+ async updateAgent(providerAgentId, config) {
211
+ // TODO: Implement Retell agent update
212
+ throw new Error('Not implemented: RetellAdapter.updateAgent');
213
+ }
214
+ async deleteAgent(providerAgentId) {
215
+ // TODO: Implement Retell agent deletion
216
+ throw new Error('Not implemented: RetellAdapter.deleteAgent');
217
+ }
218
+ async startCall(providerAgentId, phone, context) {
219
+ // TODO: Implement Retell call start
220
+ throw new Error('Not implemented: RetellAdapter.startCall');
221
+ }
222
+ async endCall(providerCallId) {
223
+ // TODO: Implement Retell call end
224
+ throw new Error('Not implemented: RetellAdapter.endCall');
225
+ }
226
+ async getCall(providerCallId) {
227
+ // TODO: Implement Retell call status
228
+ throw new Error('Not implemented: RetellAdapter.getCall');
229
+ }
230
+ async createRoom(providerAgentId, identity) {
231
+ // TODO: Implement Retell WebRTC
232
+ throw new Error('Not implemented: RetellAdapter.createRoom');
233
+ }
234
+ async handleWebhook(payload, headers) {
235
+ // TODO: Implement Retell webhook handling
236
+ throw new Error('Not implemented: RetellAdapter.handleWebhook');
237
+ }
238
+ }
239
+ /**
240
+ * Bland AI provider adapter
241
+ *
242
+ * @see https://docs.bland.ai
243
+ */
244
+ export class BlandAdapter {
245
+ config;
246
+ provider = 'bland';
247
+ constructor(config) {
248
+ this.config = config;
249
+ if (config.provider !== 'bland') {
250
+ throw new Error('Invalid provider config for BlandAdapter');
251
+ }
252
+ }
253
+ async createAgent(config) {
254
+ // TODO: Implement Bland agent creation
255
+ throw new Error('Not implemented: BlandAdapter.createAgent');
256
+ }
257
+ async updateAgent(providerAgentId, config) {
258
+ // TODO: Implement Bland agent update
259
+ throw new Error('Not implemented: BlandAdapter.updateAgent');
260
+ }
261
+ async deleteAgent(providerAgentId) {
262
+ // TODO: Implement Bland agent deletion
263
+ throw new Error('Not implemented: BlandAdapter.deleteAgent');
264
+ }
265
+ async startCall(providerAgentId, phone, context) {
266
+ // TODO: Implement Bland call start
267
+ throw new Error('Not implemented: BlandAdapter.startCall');
268
+ }
269
+ async endCall(providerCallId) {
270
+ // TODO: Implement Bland call end
271
+ throw new Error('Not implemented: BlandAdapter.endCall');
272
+ }
273
+ async getCall(providerCallId) {
274
+ // TODO: Implement Bland call status
275
+ throw new Error('Not implemented: BlandAdapter.getCall');
276
+ }
277
+ async handleWebhook(payload, headers) {
278
+ // TODO: Implement Bland webhook handling
279
+ throw new Error('Not implemented: BlandAdapter.handleWebhook');
280
+ }
281
+ }
282
+ // =============================================================================
283
+ // Exports
284
+ // =============================================================================
285
+ export { VoiceProviderFactory as VoiceProvider };
286
+ //# sourceMappingURL=providers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../../ai/voice/providers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,294 @@
1
+ /**
2
+ * Voice Session Management
3
+ *
4
+ * Manages the lifecycle of voice calls including outbound calls,
5
+ * inbound calls, and WebRTC sessions.
6
+ *
7
+ * @module ai/voice/sessions
8
+ */
9
+ import type { VoiceSession, VoiceSessionStatus, TranscriptEntry, ToolCallRecord, CallOutcome, CallCost, SentimentAnalysis } from '../../types/voice-ai';
10
+ import { VoiceAgentManager } from './agents';
11
+ /**
12
+ * Options for starting an outbound call
13
+ */
14
+ export interface StartOutboundCallOptions {
15
+ /** Voice agent ID */
16
+ agentId: string;
17
+ /** Phone number to call */
18
+ phone: string;
19
+ /** Context to pass to the agent */
20
+ context?: Record<string, unknown>;
21
+ /** Metadata to attach to session */
22
+ metadata?: Record<string, unknown>;
23
+ }
24
+ /**
25
+ * Options for listing sessions
26
+ */
27
+ export interface ListSessionsOptions {
28
+ /** Filter by agent ID */
29
+ agentId?: string;
30
+ /** Filter by status */
31
+ status?: VoiceSessionStatus;
32
+ /** Filter by type */
33
+ type?: 'inbound' | 'outbound' | 'web';
34
+ /** Start time range (unix ms) */
35
+ startTimeFrom?: number;
36
+ /** Start time range (unix ms) */
37
+ startTimeTo?: number;
38
+ /** Limit results */
39
+ limit?: number;
40
+ /** Offset for pagination */
41
+ offset?: number;
42
+ /** Order by field */
43
+ orderBy?: 'startTime' | 'duration' | 'cost';
44
+ /** Order direction */
45
+ orderDir?: 'asc' | 'desc';
46
+ }
47
+ /**
48
+ * Result of listing sessions
49
+ */
50
+ export interface ListSessionsResult {
51
+ /** Sessions */
52
+ items: VoiceSession[];
53
+ /** Total count */
54
+ total: number;
55
+ /** Has more results */
56
+ hasMore: boolean;
57
+ }
58
+ /**
59
+ * Session event types
60
+ */
61
+ export type SessionEventType = 'started' | 'ringing' | 'answered' | 'transcript' | 'toolCall' | 'toolResult' | 'transferring' | 'ended' | 'error';
62
+ /**
63
+ * Session event handler
64
+ */
65
+ export type SessionEventHandler<T = unknown> = (data: T) => void | Promise<void>;
66
+ /**
67
+ * Session update from provider webhook
68
+ */
69
+ export interface SessionUpdate {
70
+ /** Update type */
71
+ type: SessionEventType;
72
+ /** Session ID */
73
+ sessionId: string;
74
+ /** Update data */
75
+ data: Record<string, unknown>;
76
+ }
77
+ /**
78
+ * Voice session manager
79
+ *
80
+ * Manages voice call sessions including lifecycle, transcripts,
81
+ * tool calls, and recordings.
82
+ *
83
+ * @example
84
+ * ```typescript
85
+ * const manager = new VoiceSessionManager(storage, agentManager)
86
+ *
87
+ * // Start an outbound call
88
+ * const session = await manager.startOutbound({
89
+ * agentId: 'vagent_123',
90
+ * phone: '+1-555-0123',
91
+ * context: { customerName: 'John' },
92
+ * })
93
+ *
94
+ * // Get session status
95
+ * const status = await manager.get(session.id)
96
+ *
97
+ * // List recent sessions
98
+ * const sessions = await manager.list({ agentId: 'vagent_123', limit: 10 })
99
+ * ```
100
+ */
101
+ export declare class VoiceSessionManager {
102
+ private storage;
103
+ private agentManager;
104
+ private eventHandlers;
105
+ /**
106
+ * Create a new session manager
107
+ *
108
+ * @param storage - DO storage interface
109
+ * @param agentManager - Voice agent manager
110
+ */
111
+ constructor(storage: DurableObjectStorage, agentManager: VoiceAgentManager);
112
+ /**
113
+ * Start an outbound call
114
+ *
115
+ * @param options - Call options
116
+ * @returns Created session
117
+ */
118
+ startOutbound(options: StartOutboundCallOptions): Promise<VoiceSession>;
119
+ /**
120
+ * Create a session for an inbound call (called from webhook)
121
+ *
122
+ * @param agentId - Voice agent ID
123
+ * @param providerCallId - Provider's call ID
124
+ * @param customerPhone - Customer's phone number
125
+ * @returns Created session
126
+ */
127
+ createInbound(agentId: string, providerCallId: string, customerPhone: string): Promise<VoiceSession>;
128
+ /**
129
+ * Get a session by ID
130
+ *
131
+ * @param id - Session ID
132
+ * @returns Session or null if not found
133
+ */
134
+ get(id: string): Promise<VoiceSession | null>;
135
+ /**
136
+ * Get a session by provider session ID
137
+ *
138
+ * @param providerSessionId - Provider's session ID
139
+ * @returns Session or null if not found
140
+ */
141
+ getByProviderSessionId(providerSessionId: string): Promise<VoiceSession | null>;
142
+ /**
143
+ * Update session status
144
+ *
145
+ * @param id - Session ID
146
+ * @param status - New status
147
+ * @param outcome - Call outcome (if completed/failed)
148
+ */
149
+ updateStatus(id: string, status: VoiceSessionStatus, outcome?: CallOutcome): Promise<VoiceSession>;
150
+ /**
151
+ * Append a transcript entry
152
+ *
153
+ * @param id - Session ID
154
+ * @param entry - Transcript entry
155
+ */
156
+ appendTranscript(id: string, entry: TranscriptEntry): Promise<void>;
157
+ /**
158
+ * Record a tool call
159
+ *
160
+ * @param id - Session ID
161
+ * @param toolCall - Tool call record
162
+ */
163
+ recordToolCall(id: string, toolCall: ToolCallRecord): Promise<void>;
164
+ /**
165
+ * Set recording URL
166
+ *
167
+ * @param id - Session ID
168
+ * @param recordingUrl - URL of the recording
169
+ */
170
+ setRecordingUrl(id: string, recordingUrl: string): Promise<void>;
171
+ /**
172
+ * Set call summary
173
+ *
174
+ * @param id - Session ID
175
+ * @param summary - AI-generated summary
176
+ */
177
+ setSummary(id: string, summary: string): Promise<void>;
178
+ /**
179
+ * Set sentiment analysis
180
+ *
181
+ * @param id - Session ID
182
+ * @param sentiment - Sentiment analysis
183
+ */
184
+ setSentiment(id: string, sentiment: SentimentAnalysis): Promise<void>;
185
+ /**
186
+ * Set call cost
187
+ *
188
+ * @param id - Session ID
189
+ * @param cost - Cost breakdown
190
+ */
191
+ setCost(id: string, cost: CallCost): Promise<void>;
192
+ /**
193
+ * End a session
194
+ *
195
+ * @param id - Session ID
196
+ * @returns True if ended, false if already ended or not found
197
+ */
198
+ end(id: string): Promise<boolean>;
199
+ /**
200
+ * List sessions
201
+ *
202
+ * @param options - Filter and pagination options
203
+ * @returns List of sessions
204
+ */
205
+ list(options?: ListSessionsOptions): Promise<ListSessionsResult>;
206
+ /**
207
+ * Get full transcript for a session
208
+ *
209
+ * @param id - Session ID
210
+ * @returns Transcript entries or null if session not found
211
+ */
212
+ getTranscript(id: string): Promise<TranscriptEntry[] | null>;
213
+ /**
214
+ * Get recording URL for a session
215
+ *
216
+ * @param id - Session ID
217
+ * @returns Recording URL or null if not available
218
+ */
219
+ getRecording(id: string): Promise<string | null>;
220
+ /**
221
+ * Subscribe to session events
222
+ *
223
+ * @param sessionId - Session ID
224
+ * @param event - Event type
225
+ * @param handler - Event handler
226
+ * @returns Unsubscribe function
227
+ */
228
+ on(sessionId: string, event: SessionEventType, handler: SessionEventHandler): () => void;
229
+ /**
230
+ * Map session status to event type
231
+ *
232
+ * @param status - Session status
233
+ * @returns Corresponding event type
234
+ */
235
+ private statusToEventType;
236
+ /**
237
+ * Emit a session event
238
+ *
239
+ * @param sessionId - Session ID
240
+ * @param event - Event type
241
+ * @param data - Event data
242
+ */
243
+ private emit;
244
+ /**
245
+ * Get session statistics
246
+ *
247
+ * @param agentId - Optional agent ID to filter
248
+ * @param startTime - Start of time range
249
+ * @param endTime - End of time range
250
+ * @returns Session statistics
251
+ */
252
+ getStats(agentId?: string, startTime?: number, endTime?: number): Promise<{
253
+ totalCalls: number;
254
+ completedCalls: number;
255
+ failedCalls: number;
256
+ avgDuration: number;
257
+ totalDuration: number;
258
+ totalCost: number;
259
+ }>;
260
+ }
261
+ /**
262
+ * Voice sessions singleton access
263
+ */
264
+ export declare const VoiceSessions: {
265
+ /**
266
+ * Initialize with storage and agent manager
267
+ */
268
+ init(storage: DurableObjectStorage, agentManager: VoiceAgentManager): void;
269
+ /**
270
+ * Start an outbound call
271
+ */
272
+ startOutbound(options: StartOutboundCallOptions): Promise<VoiceSession>;
273
+ /**
274
+ * Get a session
275
+ */
276
+ get(id: string): Promise<VoiceSession | null>;
277
+ /**
278
+ * List sessions
279
+ */
280
+ list(options?: ListSessionsOptions): Promise<ListSessionsResult>;
281
+ /**
282
+ * End a session
283
+ */
284
+ end(id: string): Promise<boolean>;
285
+ /**
286
+ * Get transcript
287
+ */
288
+ getTranscript(id: string): Promise<TranscriptEntry[] | null>;
289
+ /**
290
+ * Get recording
291
+ */
292
+ getRecording(id: string): Promise<string | null>;
293
+ };
294
+ //# sourceMappingURL=sessions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../ai/voice/sessions.ts"],"names":[],"mappings":"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"}