@absolutejs/voice 0.0.22-beta.46 → 0.0.22-beta.461

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 (346) hide show
  1. package/README.md +4269 -603
  2. package/dist/agent.d.ts +67 -5
  3. package/dist/agentSquadContract.d.ts +98 -0
  4. package/dist/angular/index.d.ts +24 -3
  5. package/dist/angular/index.js +4908 -1143
  6. package/dist/angular/voice-agent-squad-status.service.d.ts +12 -0
  7. package/dist/angular/voice-call-debugger.service.d.ts +12 -0
  8. package/dist/angular/voice-campaign-dialer-proof.service.d.ts +14 -0
  9. package/dist/angular/voice-controller.service.d.ts +3 -1
  10. package/dist/angular/voice-delivery-runtime.component.d.ts +17 -0
  11. package/dist/angular/voice-delivery-runtime.service.d.ts +16 -0
  12. package/dist/angular/voice-live-ops.service.d.ts +11 -0
  13. package/dist/angular/voice-ops-action-center.service.d.ts +13 -0
  14. package/dist/angular/voice-ops-status.component.d.ts +15 -0
  15. package/dist/angular/voice-ops-status.service.d.ts +12 -0
  16. package/dist/angular/voice-platform-coverage.service.d.ts +12 -0
  17. package/dist/angular/voice-profile-comparison.service.d.ts +12 -0
  18. package/dist/angular/voice-proof-trends.service.d.ts +12 -0
  19. package/dist/angular/voice-provider-capabilities.service.d.ts +12 -0
  20. package/dist/angular/voice-provider-contracts.service.d.ts +12 -0
  21. package/dist/angular/voice-provider-status.service.d.ts +2 -2
  22. package/dist/angular/voice-readiness-failures.service.d.ts +13 -0
  23. package/dist/angular/voice-reconnect-profile-evidence.service.d.ts +12 -0
  24. package/dist/angular/voice-routing-status.service.d.ts +11 -0
  25. package/dist/angular/voice-session-observability.service.d.ts +12 -0
  26. package/dist/angular/voice-session-snapshot.service.d.ts +13 -0
  27. package/dist/angular/voice-stream.service.d.ts +4 -1
  28. package/dist/angular/voice-trace-timeline.service.d.ts +12 -0
  29. package/dist/angular/voice-turn-latency.service.d.ts +13 -0
  30. package/dist/angular/voice-turn-quality.service.d.ts +12 -0
  31. package/dist/angular/voice-workflow-status.service.d.ts +12 -0
  32. package/dist/assistant.d.ts +11 -11
  33. package/dist/assistantHealth.d.ts +6 -6
  34. package/dist/assistantMemory.d.ts +3 -3
  35. package/dist/audioConditioning.d.ts +1 -1
  36. package/dist/audit.d.ts +131 -0
  37. package/dist/auditDeliveryRoutes.d.ts +85 -0
  38. package/dist/auditExport.d.ts +34 -0
  39. package/dist/auditRoutes.d.ts +66 -0
  40. package/dist/auditSinks.d.ts +151 -0
  41. package/dist/bargeInRoutes.d.ts +56 -0
  42. package/dist/browserCallProfiles.d.ts +120 -0
  43. package/dist/browserMediaRoutes.d.ts +62 -0
  44. package/dist/callDebugger.d.ts +66 -0
  45. package/dist/campaign.d.ts +794 -0
  46. package/dist/campaignDialers.d.ts +111 -0
  47. package/dist/client/actions.d.ts +95 -1
  48. package/dist/client/agentSquadStatus.d.ts +37 -0
  49. package/dist/client/agentSquadStatusWidget.d.ts +24 -0
  50. package/dist/client/audioPlayer.d.ts +2 -2
  51. package/dist/client/bargeInMonitor.d.ts +7 -0
  52. package/dist/client/browserMedia.d.ts +8 -0
  53. package/dist/client/callDebugger.d.ts +19 -0
  54. package/dist/client/callDebuggerWidget.d.ts +30 -0
  55. package/dist/client/campaignDialerProof.d.ts +23 -0
  56. package/dist/client/connection.d.ts +4 -3
  57. package/dist/client/controller.d.ts +1 -1
  58. package/dist/client/createVoiceStream.d.ts +1 -1
  59. package/dist/client/deliveryRuntime.d.ts +34 -0
  60. package/dist/client/deliveryRuntimeWidget.d.ts +37 -0
  61. package/dist/client/duplex.d.ts +2 -2
  62. package/dist/client/htmx.d.ts +1 -1
  63. package/dist/client/htmxBootstrap.js +967 -14
  64. package/dist/client/index.d.ts +104 -9
  65. package/dist/client/index.js +10920 -44
  66. package/dist/client/liveOps.d.ts +22 -0
  67. package/dist/client/liveOpsWidget.d.ts +23 -0
  68. package/dist/client/liveTurnLatency.d.ts +41 -0
  69. package/dist/client/microphone.d.ts +4 -4
  70. package/dist/client/opsActionCenter.d.ts +54 -0
  71. package/dist/client/opsActionCenterWidget.d.ts +29 -0
  72. package/dist/client/opsActionHistory.d.ts +19 -0
  73. package/dist/client/opsActionHistoryWidget.d.ts +11 -0
  74. package/dist/client/opsStatus.d.ts +19 -0
  75. package/dist/client/opsStatusWidget.d.ts +40 -0
  76. package/dist/client/platformCoverage.d.ts +19 -0
  77. package/dist/client/platformCoverageWidget.d.ts +37 -0
  78. package/dist/client/profileComparison.d.ts +19 -0
  79. package/dist/client/profileComparisonWidget.d.ts +41 -0
  80. package/dist/client/profileSwitchRecommendation.d.ts +19 -0
  81. package/dist/client/profileSwitchRecommendationWidget.d.ts +12 -0
  82. package/dist/client/proofTrends.d.ts +19 -0
  83. package/dist/client/proofTrendsWidget.d.ts +37 -0
  84. package/dist/client/providerCapabilities.d.ts +19 -0
  85. package/dist/client/providerCapabilitiesWidget.d.ts +32 -0
  86. package/dist/client/providerContracts.d.ts +19 -0
  87. package/dist/client/providerContractsWidget.d.ts +37 -0
  88. package/dist/client/providerSimulationControls.d.ts +33 -0
  89. package/dist/client/providerSimulationControlsWidget.d.ts +20 -0
  90. package/dist/client/providerStatus.d.ts +1 -1
  91. package/dist/client/providerStatusWidget.d.ts +32 -0
  92. package/dist/client/readinessFailures.d.ts +19 -0
  93. package/dist/client/readinessFailuresWidget.d.ts +42 -0
  94. package/dist/client/reconnectProfileEvidence.d.ts +19 -0
  95. package/dist/client/reconnectProfileEvidenceWidget.d.ts +39 -0
  96. package/dist/client/routingStatus.d.ts +19 -0
  97. package/dist/client/routingStatusWidget.d.ts +32 -0
  98. package/dist/client/sessionObservability.d.ts +19 -0
  99. package/dist/client/sessionObservabilityWidget.d.ts +31 -0
  100. package/dist/client/sessionSnapshot.d.ts +21 -0
  101. package/dist/client/sessionSnapshotWidget.d.ts +33 -0
  102. package/dist/client/store.d.ts +1 -1
  103. package/dist/client/traceTimeline.d.ts +19 -0
  104. package/dist/client/traceTimelineWidget.d.ts +36 -0
  105. package/dist/client/turnLatency.d.ts +22 -0
  106. package/dist/client/turnLatencyWidget.d.ts +33 -0
  107. package/dist/client/turnQuality.d.ts +19 -0
  108. package/dist/client/turnQualityWidget.d.ts +32 -0
  109. package/dist/client/workflowStatus.d.ts +19 -0
  110. package/dist/competitiveCoverage.d.ts +141 -0
  111. package/dist/correction.d.ts +2 -2
  112. package/dist/dataControl.d.ts +180 -0
  113. package/dist/deliveryRuntime.d.ts +158 -0
  114. package/dist/deliverySinkRoutes.d.ts +117 -0
  115. package/dist/demoReadyRoutes.d.ts +98 -0
  116. package/dist/diagnosticsRoutes.d.ts +2 -2
  117. package/dist/evalRoutes.d.ts +10 -4
  118. package/dist/fileStore.d.ts +19 -7
  119. package/dist/generated/htmxBootstrapBundle.d.ts +1 -0
  120. package/dist/guardrails.d.ts +128 -0
  121. package/dist/handoff.d.ts +6 -6
  122. package/dist/handoffHealth.d.ts +5 -5
  123. package/dist/htmx.d.ts +1 -1
  124. package/dist/incidentBundle.d.ts +119 -0
  125. package/dist/incidentTimeline.d.ts +259 -0
  126. package/dist/index.d.ts +218 -72
  127. package/dist/index.js +36517 -6648
  128. package/dist/latencySlo.d.ts +56 -0
  129. package/dist/liveLatency.d.ts +78 -0
  130. package/dist/liveOps.d.ts +190 -0
  131. package/dist/logger.d.ts +1 -1
  132. package/dist/mediaPipelineRoutes.d.ts +117 -0
  133. package/dist/memoryStore.d.ts +1 -1
  134. package/dist/modelAdapters.d.ts +59 -7
  135. package/dist/observabilityExport.d.ts +501 -0
  136. package/dist/openaiTTS.d.ts +18 -0
  137. package/dist/operationalStatus.d.ts +87 -0
  138. package/dist/operationsRecord.d.ts +351 -0
  139. package/dist/ops.d.ts +12 -12
  140. package/dist/opsActionAuditRoutes.d.ts +99 -0
  141. package/dist/opsConsoleRoutes.d.ts +8 -5
  142. package/dist/opsPresets.d.ts +2 -2
  143. package/dist/opsRecovery.d.ts +137 -0
  144. package/dist/opsRuntime.d.ts +6 -6
  145. package/dist/opsSinks.d.ts +13 -13
  146. package/dist/opsStatus.d.ts +76 -0
  147. package/dist/opsStatusRoutes.d.ts +33 -0
  148. package/dist/opsWebhook.d.ts +6 -6
  149. package/dist/outcomeContract.d.ts +146 -0
  150. package/dist/outcomeRecipes.d.ts +4 -4
  151. package/dist/phoneAgent.d.ts +139 -0
  152. package/dist/phoneAgentProductionSmoke.d.ts +115 -0
  153. package/dist/platformCoverage.d.ts +91 -0
  154. package/dist/plugin.d.ts +2 -2
  155. package/dist/postCallAnalysis.d.ts +98 -0
  156. package/dist/postgresStore.d.ts +17 -6
  157. package/dist/presets.d.ts +3 -3
  158. package/dist/productionReadiness.d.ts +739 -0
  159. package/dist/profileSwitchRecommendation.d.ts +350 -0
  160. package/dist/proofAssertions.d.ts +32 -0
  161. package/dist/proofPack.d.ts +211 -0
  162. package/dist/proofRunner.d.ts +79 -0
  163. package/dist/proofTrends.d.ts +941 -0
  164. package/dist/providerAdapters.d.ts +16 -5
  165. package/dist/providerCapabilities.d.ts +92 -0
  166. package/dist/providerDecisionTraces.d.ts +130 -0
  167. package/dist/providerHealth.d.ts +3 -3
  168. package/dist/providerOrchestration.d.ts +109 -0
  169. package/dist/providerRouterTraces.d.ts +35 -0
  170. package/dist/providerRoutingContract.d.ts +71 -0
  171. package/dist/providerSlo.d.ts +142 -0
  172. package/dist/providerStackRecommendations.d.ts +187 -0
  173. package/dist/qualityRoutes.d.ts +4 -4
  174. package/dist/queue.d.ts +23 -14
  175. package/dist/react/VoiceAgentSquadStatus.d.ts +5 -0
  176. package/dist/react/VoiceCallDebuggerLaunch.d.ts +6 -0
  177. package/dist/react/VoiceDeliveryRuntime.d.ts +7 -0
  178. package/dist/react/VoiceOpsActionCenter.d.ts +5 -0
  179. package/dist/react/VoiceOpsStatus.d.ts +6 -0
  180. package/dist/react/VoicePlatformCoverage.d.ts +6 -0
  181. package/dist/react/VoiceProfileComparison.d.ts +6 -0
  182. package/dist/react/VoiceProfileSwitchRecommendation.d.ts +6 -0
  183. package/dist/react/VoiceProofTrends.d.ts +6 -0
  184. package/dist/react/VoiceProviderCapabilities.d.ts +6 -0
  185. package/dist/react/VoiceProviderContracts.d.ts +6 -0
  186. package/dist/react/VoiceProviderSimulationControls.d.ts +5 -0
  187. package/dist/react/VoiceProviderStatus.d.ts +6 -0
  188. package/dist/react/VoiceReadinessFailures.d.ts +6 -0
  189. package/dist/react/VoiceReconnectProfileEvidence.d.ts +6 -0
  190. package/dist/react/VoiceRoutingStatus.d.ts +6 -0
  191. package/dist/react/VoiceSessionObservability.d.ts +6 -0
  192. package/dist/react/VoiceSessionSnapshot.d.ts +6 -0
  193. package/dist/react/VoiceTraceTimeline.d.ts +6 -0
  194. package/dist/react/VoiceTurnLatency.d.ts +6 -0
  195. package/dist/react/VoiceTurnQuality.d.ts +6 -0
  196. package/dist/react/index.d.ts +47 -3
  197. package/dist/react/index.js +11845 -32
  198. package/dist/react/useVoiceAgentSquadStatus.d.ts +8 -0
  199. package/dist/react/useVoiceCallDebugger.d.ts +8 -0
  200. package/dist/react/useVoiceCampaignDialerProof.d.ts +10 -0
  201. package/dist/react/useVoiceController.d.ts +4 -1
  202. package/dist/react/useVoiceDeliveryRuntime.d.ts +13 -0
  203. package/dist/react/useVoiceLiveOps.d.ts +9 -0
  204. package/dist/react/useVoiceOpsActionCenter.d.ts +11 -0
  205. package/dist/react/useVoiceOpsStatus.d.ts +8 -0
  206. package/dist/react/useVoicePlatformCoverage.d.ts +8 -0
  207. package/dist/react/useVoiceProfileComparison.d.ts +8 -0
  208. package/dist/react/useVoiceProfileSwitchRecommendation.d.ts +8 -0
  209. package/dist/react/useVoiceProofTrends.d.ts +8 -0
  210. package/dist/react/useVoiceProviderCapabilities.d.ts +8 -0
  211. package/dist/react/useVoiceProviderContracts.d.ts +8 -0
  212. package/dist/react/useVoiceProviderSimulationControls.d.ts +10 -0
  213. package/dist/react/useVoiceProviderStatus.d.ts +1 -1
  214. package/dist/react/useVoiceReadinessFailures.d.ts +8 -0
  215. package/dist/react/useVoiceReconnectProfileEvidence.d.ts +8 -0
  216. package/dist/react/useVoiceRoutingStatus.d.ts +8 -0
  217. package/dist/react/useVoiceSessionObservability.d.ts +8 -0
  218. package/dist/react/useVoiceSessionSnapshot.d.ts +9 -0
  219. package/dist/react/useVoiceStream.d.ts +4 -1
  220. package/dist/react/useVoiceTraceTimeline.d.ts +8 -0
  221. package/dist/react/useVoiceTurnLatency.d.ts +9 -0
  222. package/dist/react/useVoiceTurnQuality.d.ts +8 -0
  223. package/dist/react/useVoiceWorkflowStatus.d.ts +8 -0
  224. package/dist/readinessProfiles.d.ts +45 -0
  225. package/dist/realtimeChannel.d.ts +136 -0
  226. package/dist/realtimeProviderContracts.d.ts +133 -0
  227. package/dist/reconnectContract.d.ts +176 -0
  228. package/dist/resilienceRoutes.d.ts +45 -5
  229. package/dist/routing.d.ts +1 -1
  230. package/dist/runtimeOps.d.ts +3 -3
  231. package/dist/s3Store.d.ts +3 -3
  232. package/dist/session.d.ts +1 -1
  233. package/dist/sessionObservability.d.ts +104 -0
  234. package/dist/sessionReplay.d.ts +19 -7
  235. package/dist/sessionSnapshot.d.ts +109 -0
  236. package/dist/simulationSuite.d.ts +143 -0
  237. package/dist/sloCalibration.d.ts +185 -0
  238. package/dist/sqliteStore.d.ts +17 -6
  239. package/dist/store.d.ts +1 -1
  240. package/dist/svelte/createVoiceAgentSquadStatus.d.ts +9 -0
  241. package/dist/svelte/createVoiceCallDebugger.d.ts +12 -0
  242. package/dist/svelte/createVoiceCampaignDialerProof.d.ts +9 -0
  243. package/dist/svelte/createVoiceDeliveryRuntime.d.ts +11 -0
  244. package/dist/svelte/createVoiceLiveOps.d.ts +13 -0
  245. package/dist/svelte/createVoiceOpsActionCenter.d.ts +10 -0
  246. package/dist/svelte/createVoiceOpsStatus.d.ts +9 -0
  247. package/dist/svelte/createVoicePlatformCoverage.d.ts +7 -0
  248. package/dist/svelte/createVoiceProfileComparison.d.ts +7 -0
  249. package/dist/svelte/createVoiceProofTrends.d.ts +7 -0
  250. package/dist/svelte/createVoiceProviderCapabilities.d.ts +10 -0
  251. package/dist/svelte/createVoiceProviderContracts.d.ts +10 -0
  252. package/dist/svelte/createVoiceProviderSimulationControls.d.ts +11 -0
  253. package/dist/svelte/createVoiceProviderStatus.d.ts +4 -2
  254. package/dist/svelte/createVoiceReadinessFailures.d.ts +7 -0
  255. package/dist/svelte/createVoiceReconnectProfileEvidence.d.ts +7 -0
  256. package/dist/svelte/createVoiceRoutingStatus.d.ts +10 -0
  257. package/dist/svelte/createVoiceSessionObservability.d.ts +10 -0
  258. package/dist/svelte/createVoiceSessionSnapshot.d.ts +13 -0
  259. package/dist/svelte/createVoiceStream.d.ts +1 -1
  260. package/dist/svelte/createVoiceTraceTimeline.d.ts +10 -0
  261. package/dist/svelte/createVoiceTurnLatency.d.ts +11 -0
  262. package/dist/svelte/createVoiceTurnQuality.d.ts +10 -0
  263. package/dist/svelte/createVoiceWorkflowStatus.d.ts +8 -0
  264. package/dist/svelte/index.d.ts +25 -3
  265. package/dist/svelte/index.js +6693 -460
  266. package/dist/telephony/contract.d.ts +61 -0
  267. package/dist/telephony/matrix.d.ts +97 -0
  268. package/dist/telephony/plivo.d.ts +303 -0
  269. package/dist/telephony/response.d.ts +1 -1
  270. package/dist/telephony/security.d.ts +182 -0
  271. package/dist/telephony/telnyx.d.ts +291 -0
  272. package/dist/telephony/twilio.d.ts +147 -13
  273. package/dist/telephonyMediaRoutes.d.ts +72 -0
  274. package/dist/telephonyOutcome.d.ts +273 -0
  275. package/dist/testing/accuracy.d.ts +1 -1
  276. package/dist/testing/benchmark.d.ts +9 -9
  277. package/dist/testing/corrected.d.ts +5 -5
  278. package/dist/testing/duplex.d.ts +3 -3
  279. package/dist/testing/fixtures.d.ts +3 -3
  280. package/dist/testing/index.d.ts +13 -13
  281. package/dist/testing/index.js +5425 -185
  282. package/dist/testing/ioProviderSimulator.d.ts +5 -5
  283. package/dist/testing/providerSimulator.d.ts +5 -5
  284. package/dist/testing/review.d.ts +4 -4
  285. package/dist/testing/sessionBenchmark.d.ts +3 -3
  286. package/dist/testing/stt.d.ts +3 -3
  287. package/dist/testing/telephony.d.ts +25 -0
  288. package/dist/testing/tts.d.ts +1 -1
  289. package/dist/toolContract.d.ts +161 -0
  290. package/dist/toolRuntime.d.ts +50 -0
  291. package/dist/trace.d.ts +46 -7
  292. package/dist/traceDeliveryRoutes.d.ts +86 -0
  293. package/dist/traceTimeline.d.ts +97 -0
  294. package/dist/turnDetection.d.ts +1 -1
  295. package/dist/turnLatency.d.ts +95 -0
  296. package/dist/turnProfiles.d.ts +2 -2
  297. package/dist/turnQuality.d.ts +94 -0
  298. package/dist/types.d.ts +236 -80
  299. package/dist/voiceMonitoring.d.ts +444 -0
  300. package/dist/vue/VoiceCallDebuggerLaunch.d.ts +68 -0
  301. package/dist/vue/VoiceDeliveryRuntime.d.ts +30 -0
  302. package/dist/vue/VoiceOpsActionCenter.d.ts +13 -0
  303. package/dist/vue/VoiceOpsStatus.d.ts +30 -0
  304. package/dist/vue/VoicePlatformCoverage.d.ts +23 -0
  305. package/dist/vue/VoiceProofTrends.d.ts +21 -0
  306. package/dist/vue/VoiceProviderCapabilities.d.ts +51 -0
  307. package/dist/vue/VoiceProviderContracts.d.ts +21 -0
  308. package/dist/vue/VoiceProviderSimulationControls.d.ts +88 -0
  309. package/dist/vue/VoiceProviderStatus.d.ts +51 -0
  310. package/dist/vue/VoiceReadinessFailures.d.ts +21 -0
  311. package/dist/vue/VoiceReconnectProfileEvidence.d.ts +21 -0
  312. package/dist/vue/VoiceRoutingStatus.d.ts +51 -0
  313. package/dist/vue/VoiceSessionObservability.d.ts +23 -0
  314. package/dist/vue/VoiceSessionSnapshot.d.ts +68 -0
  315. package/dist/vue/VoiceTurnLatency.d.ts +69 -0
  316. package/dist/vue/VoiceTurnQuality.d.ts +51 -0
  317. package/dist/vue/index.d.ts +42 -3
  318. package/dist/vue/index.js +11277 -56
  319. package/dist/vue/useVoiceAgentSquadStatus.d.ts +9 -0
  320. package/dist/vue/useVoiceCallDebugger.d.ts +10 -0
  321. package/dist/vue/useVoiceCampaignDialerProof.d.ts +11 -0
  322. package/dist/vue/useVoiceController.d.ts +4 -2
  323. package/dist/vue/useVoiceDeliveryRuntime.d.ts +13 -0
  324. package/dist/vue/useVoiceLiveOps.d.ts +9 -0
  325. package/dist/vue/useVoiceOpsActionCenter.d.ts +11 -0
  326. package/dist/vue/useVoiceOpsStatus.d.ts +9 -0
  327. package/dist/vue/useVoicePlatformCoverage.d.ts +9 -0
  328. package/dist/vue/useVoiceProfileComparison.d.ts +9 -0
  329. package/dist/vue/useVoiceProofTrends.d.ts +9 -0
  330. package/dist/vue/useVoiceProviderCapabilities.d.ts +9 -0
  331. package/dist/vue/useVoiceProviderContracts.d.ts +9 -0
  332. package/dist/vue/useVoiceProviderSimulationControls.d.ts +24 -0
  333. package/dist/vue/useVoiceProviderStatus.d.ts +3 -3
  334. package/dist/vue/useVoiceReadinessFailures.d.ts +943 -0
  335. package/dist/vue/useVoiceReconnectProfileEvidence.d.ts +9 -0
  336. package/dist/vue/useVoiceRoutingStatus.d.ts +8 -0
  337. package/dist/vue/useVoiceSessionObservability.d.ts +9 -0
  338. package/dist/vue/useVoiceSessionSnapshot.d.ts +10 -0
  339. package/dist/vue/useVoiceStream.d.ts +5 -2
  340. package/dist/vue/useVoiceTraceTimeline.d.ts +9 -0
  341. package/dist/vue/useVoiceTurnLatency.d.ts +10 -0
  342. package/dist/vue/useVoiceTurnQuality.d.ts +9 -0
  343. package/dist/vue/useVoiceWorkflowStatus.d.ts +9 -0
  344. package/dist/workflowContract.d.ts +12 -6
  345. package/fixtures/manifest.json +356 -197
  346. package/package.json +260 -256
@@ -0,0 +1,85 @@
1
+ import { Elysia } from "elysia";
2
+ import { type VoiceAuditSinkDeliveryQueueStatus, type VoiceAuditSinkDeliveryQueueSummary, type VoiceAuditSinkDeliveryRecord, type VoiceAuditSinkDeliveryStore, type VoiceAuditSinkDeliveryWorkerResult } from "./auditSinks";
3
+ export type VoiceAuditDeliveryReport = {
4
+ checkedAt: number;
5
+ deliveries: VoiceAuditSinkDeliveryRecord[];
6
+ filter: VoiceAuditDeliveryFilter;
7
+ summary: VoiceAuditSinkDeliveryQueueSummary;
8
+ };
9
+ export type VoiceAuditDeliveryDrainWorker = {
10
+ drain: () => Promise<VoiceAuditSinkDeliveryWorkerResult> | VoiceAuditSinkDeliveryWorkerResult;
11
+ };
12
+ export type VoiceAuditDeliveryDrainReport = VoiceAuditSinkDeliveryWorkerResult & {
13
+ drainedAt: number;
14
+ };
15
+ export type VoiceAuditDeliveryFilter = {
16
+ limit?: number;
17
+ q?: string;
18
+ status?: VoiceAuditSinkDeliveryQueueStatus | "all";
19
+ };
20
+ export type VoiceAuditDeliveryRoutesOptions = {
21
+ deadLetters?: VoiceAuditSinkDeliveryStore;
22
+ filter?: VoiceAuditDeliveryFilter;
23
+ headers?: HeadersInit;
24
+ htmlPath?: false | string;
25
+ limit?: number;
26
+ name?: string;
27
+ path?: string;
28
+ render?: (report: VoiceAuditDeliveryReport) => string | Promise<string>;
29
+ store: VoiceAuditSinkDeliveryStore;
30
+ title?: string;
31
+ worker?: VoiceAuditDeliveryDrainWorker;
32
+ workerPath?: false | string;
33
+ };
34
+ export declare const resolveVoiceAuditDeliveryFilter: (query?: Record<string, unknown>, base?: VoiceAuditDeliveryFilter) => VoiceAuditDeliveryFilter;
35
+ export declare const buildVoiceAuditDeliveryReport: (options: VoiceAuditDeliveryRoutesOptions, filter?: VoiceAuditDeliveryFilter) => Promise<VoiceAuditDeliveryReport>;
36
+ export declare const renderVoiceAuditDeliveryHTML: (report: VoiceAuditDeliveryReport, options?: {
37
+ title?: string;
38
+ workerPath?: false | string;
39
+ }) => string;
40
+ export declare const createVoiceAuditDeliveryJSONHandler: (options: VoiceAuditDeliveryRoutesOptions) => ({ query }: {
41
+ query?: Record<string, string | undefined>;
42
+ }) => Promise<VoiceAuditDeliveryReport>;
43
+ export declare const createVoiceAuditDeliveryHTMLHandler: (options: VoiceAuditDeliveryRoutesOptions) => ({ query }: {
44
+ query?: Record<string, string | undefined>;
45
+ }) => Promise<Response>;
46
+ export declare const createVoiceAuditDeliveryRoutes: (options: VoiceAuditDeliveryRoutesOptions) => Elysia<"", {
47
+ decorator: {};
48
+ store: {};
49
+ derive: {};
50
+ resolve: {};
51
+ }, {
52
+ typebox: {};
53
+ error: {};
54
+ }, {
55
+ schema: {};
56
+ standaloneSchema: {};
57
+ macro: {};
58
+ macroFn: {};
59
+ parser: {};
60
+ response: {};
61
+ }, {
62
+ [x: string]: {
63
+ get: {
64
+ body: unknown;
65
+ params: {};
66
+ query: unknown;
67
+ headers: unknown;
68
+ response: {
69
+ 200: VoiceAuditDeliveryReport;
70
+ };
71
+ };
72
+ };
73
+ }, {
74
+ derive: {};
75
+ resolve: {};
76
+ schema: {};
77
+ standaloneSchema: {};
78
+ response: {};
79
+ }, {
80
+ derive: {};
81
+ resolve: {};
82
+ schema: {};
83
+ standaloneSchema: {};
84
+ response: {};
85
+ }>;
@@ -0,0 +1,34 @@
1
+ import type { StoredVoiceAuditEvent, VoiceAuditEventFilter, VoiceAuditEventStore } from "./audit";
2
+ import { type VoiceTraceRedactionConfig } from "./trace";
3
+ import { type VoiceAuditTrailSummary } from "./auditRoutes";
4
+ export type VoiceAuditExport = {
5
+ events: StoredVoiceAuditEvent[];
6
+ exportedAt: number;
7
+ filter?: VoiceAuditEventFilter;
8
+ redacted: boolean;
9
+ summary: VoiceAuditTrailSummary;
10
+ };
11
+ export declare const redactVoiceAuditEvent: <TEvent extends StoredVoiceAuditEvent = StoredVoiceAuditEvent>(event: TEvent, options?: VoiceTraceRedactionConfig) => TEvent;
12
+ export declare const redactVoiceAuditEvents: <TEvent extends StoredVoiceAuditEvent = StoredVoiceAuditEvent>(events: TEvent[], options?: VoiceTraceRedactionConfig) => TEvent[];
13
+ export declare const exportVoiceAuditTrail: (input: {
14
+ filter?: VoiceAuditEventFilter;
15
+ redact?: VoiceTraceRedactionConfig;
16
+ store: VoiceAuditEventStore;
17
+ }) => Promise<VoiceAuditExport>;
18
+ export declare const renderVoiceAuditMarkdown: (events: StoredVoiceAuditEvent[], options?: {
19
+ redact?: VoiceTraceRedactionConfig;
20
+ title?: string;
21
+ }) => string;
22
+ export declare const renderVoiceAuditHTML: (events: StoredVoiceAuditEvent[], options?: {
23
+ redact?: VoiceTraceRedactionConfig;
24
+ title?: string;
25
+ }) => string;
26
+ export declare const buildVoiceAuditExport: (events: StoredVoiceAuditEvent[], options?: {
27
+ redact?: VoiceTraceRedactionConfig;
28
+ title?: string;
29
+ }) => {
30
+ events: StoredVoiceAuditEvent[];
31
+ html: string;
32
+ markdown: string;
33
+ summary: VoiceAuditTrailSummary;
34
+ };
@@ -0,0 +1,66 @@
1
+ import { Elysia } from "elysia";
2
+ import type { StoredVoiceAuditEvent, VoiceAuditEventFilter, VoiceAuditEventStore, VoiceAuditEventType } from "./audit";
3
+ export type VoiceAuditTrailSummary = {
4
+ byActor: Array<[string, number]>;
5
+ byOutcome: Array<[string, number]>;
6
+ byResourceType: Array<[string, number]>;
7
+ byType: Array<[VoiceAuditEventType, number]>;
8
+ errors: number;
9
+ latestAt?: number;
10
+ total: number;
11
+ };
12
+ export type VoiceAuditTrailReport = {
13
+ checkedAt: number;
14
+ events: StoredVoiceAuditEvent[];
15
+ filter: VoiceAuditEventFilter;
16
+ summary: VoiceAuditTrailSummary;
17
+ };
18
+ export type VoiceAuditTrailOptions = {
19
+ filter?: VoiceAuditEventFilter;
20
+ limit?: number;
21
+ store: VoiceAuditEventStore;
22
+ };
23
+ export type VoiceAuditTrailRoutesOptions = VoiceAuditTrailOptions & {
24
+ exportHtmlPath?: false | string;
25
+ exportPath?: false | string;
26
+ headers?: HeadersInit;
27
+ htmlPath?: false | string;
28
+ name?: string;
29
+ path?: string;
30
+ render?: (report: VoiceAuditTrailReport) => string | Promise<string>;
31
+ title?: string;
32
+ };
33
+ export declare const resolveVoiceAuditTrailFilter: (query?: Record<string, unknown>, base?: VoiceAuditEventFilter) => VoiceAuditEventFilter;
34
+ export declare const summarizeVoiceAuditTrail: (events: StoredVoiceAuditEvent[]) => VoiceAuditTrailSummary;
35
+ export declare const buildVoiceAuditTrailReport: (options: VoiceAuditTrailOptions) => Promise<VoiceAuditTrailReport>;
36
+ export declare const renderVoiceAuditTrailHTML: (report: VoiceAuditTrailReport, options?: {
37
+ title?: string;
38
+ }) => string;
39
+ export declare const createVoiceAuditTrailRoutes: (options: VoiceAuditTrailRoutesOptions) => Elysia<"", {
40
+ decorator: {};
41
+ store: {};
42
+ derive: {};
43
+ resolve: {};
44
+ }, {
45
+ typebox: {};
46
+ error: {};
47
+ }, {
48
+ schema: {};
49
+ standaloneSchema: {};
50
+ macro: {};
51
+ macroFn: {};
52
+ parser: {};
53
+ response: {};
54
+ }, {}, {
55
+ derive: {};
56
+ resolve: {};
57
+ schema: {};
58
+ standaloneSchema: {};
59
+ response: {};
60
+ }, {
61
+ derive: {};
62
+ resolve: {};
63
+ schema: {};
64
+ standaloneSchema: {};
65
+ response: {};
66
+ }>;
@@ -0,0 +1,151 @@
1
+ import type { S3Client, S3Options } from "bun";
2
+ import type { StoredVoiceAuditEvent, VoiceAuditEventStore, VoiceAuditEventType } from "./audit";
3
+ import type { VoiceIdempotencyStore, VoiceRedisTaskLeaseCoordinator } from "./queue";
4
+ import type { VoiceTraceRedactionConfig } from "./trace";
5
+ export type VoiceAuditSinkDeliveryStatus = "delivered" | "failed" | "skipped";
6
+ export type VoiceAuditSinkDeliveryQueueStatus = VoiceAuditSinkDeliveryStatus | "pending";
7
+ export type VoiceAuditSinkDeliveryResult = {
8
+ attempts: number;
9
+ deliveredAt?: number;
10
+ deliveredTo?: string;
11
+ error?: string;
12
+ eventCount: number;
13
+ responseBody?: unknown;
14
+ status: VoiceAuditSinkDeliveryStatus;
15
+ };
16
+ export type VoiceAuditSink = {
17
+ deliver: (input: {
18
+ events: StoredVoiceAuditEvent[];
19
+ }) => Promise<VoiceAuditSinkDeliveryResult> | VoiceAuditSinkDeliveryResult;
20
+ eventTypes?: VoiceAuditEventType[];
21
+ id: string;
22
+ kind?: string;
23
+ };
24
+ export type VoiceAuditSinkFanoutResult = {
25
+ deliveredAt: number;
26
+ eventCount: number;
27
+ sinkDeliveries: Record<string, VoiceAuditSinkDeliveryResult>;
28
+ status: VoiceAuditSinkDeliveryStatus;
29
+ };
30
+ export type VoiceAuditSinkDeliveryRecord = {
31
+ createdAt: number;
32
+ deliveredAt?: number;
33
+ deliveryAttempts?: number;
34
+ deliveryError?: string;
35
+ deliveryStatus: VoiceAuditSinkDeliveryQueueStatus;
36
+ events: StoredVoiceAuditEvent[];
37
+ id: string;
38
+ sinkDeliveries?: Record<string, VoiceAuditSinkDeliveryResult>;
39
+ updatedAt: number;
40
+ };
41
+ export type VoiceAuditSinkDeliveryStore<TDelivery extends VoiceAuditSinkDeliveryRecord = VoiceAuditSinkDeliveryRecord> = {
42
+ get: (id: string) => Promise<TDelivery | undefined> | TDelivery | undefined;
43
+ list: () => Promise<TDelivery[]> | TDelivery[];
44
+ remove: (id: string) => Promise<void> | void;
45
+ set: (id: string, delivery: TDelivery) => Promise<void> | void;
46
+ };
47
+ export type VoiceAuditHTTPSinkOptions<TBody extends Record<string, unknown> = Record<string, unknown>> = {
48
+ backoffMs?: number;
49
+ body?: (input: {
50
+ events: StoredVoiceAuditEvent[];
51
+ }) => Promise<TBody> | TBody;
52
+ eventTypes?: VoiceAuditEventType[];
53
+ fetch?: typeof fetch;
54
+ headers?: Record<string, string>;
55
+ id: string;
56
+ kind?: string;
57
+ method?: "POST" | "PUT" | "PATCH";
58
+ retries?: number;
59
+ signingSecret?: string;
60
+ timeoutMs?: number;
61
+ url: string;
62
+ };
63
+ export type VoiceS3AuditSinkFile = {
64
+ write: (data: string, options?: BlobPropertyBag) => Promise<number> | number;
65
+ };
66
+ export type VoiceS3AuditSinkClient = Pick<S3Client, "file">;
67
+ export type VoiceAuditS3SinkOptions<TBody extends Record<string, unknown> = Record<string, unknown>> = S3Options & {
68
+ body?: (input: {
69
+ events: StoredVoiceAuditEvent[];
70
+ key: string;
71
+ }) => Promise<TBody> | TBody;
72
+ client?: VoiceS3AuditSinkClient;
73
+ contentType?: string;
74
+ eventTypes?: VoiceAuditEventType[];
75
+ id: string;
76
+ keyPrefix?: string;
77
+ kind?: string;
78
+ };
79
+ export type VoiceAuditSinkStoreOptions<TEvent extends StoredVoiceAuditEvent = StoredVoiceAuditEvent> = {
80
+ awaitDelivery?: boolean;
81
+ deliveryQueue?: VoiceAuditSinkDeliveryStore;
82
+ onDelivery?: (result: VoiceAuditSinkFanoutResult) => Promise<void> | void;
83
+ onError?: (error: unknown) => Promise<void> | void;
84
+ redact?: VoiceTraceRedactionConfig;
85
+ sinks: VoiceAuditSink[];
86
+ store: VoiceAuditEventStore<TEvent>;
87
+ };
88
+ export type VoiceAuditSinkDeliveryWorkerOptions<TDelivery extends VoiceAuditSinkDeliveryRecord = VoiceAuditSinkDeliveryRecord> = {
89
+ deadLetters?: VoiceAuditSinkDeliveryStore<TDelivery>;
90
+ deliveries: VoiceAuditSinkDeliveryStore<TDelivery>;
91
+ idempotency?: VoiceIdempotencyStore;
92
+ idempotencyTtlSeconds?: number;
93
+ leaseMs?: number;
94
+ leases: VoiceRedisTaskLeaseCoordinator;
95
+ maxFailures?: number;
96
+ onDeadLetter?: (delivery: TDelivery) => Promise<void> | void;
97
+ redact?: VoiceTraceRedactionConfig;
98
+ sinks: VoiceAuditSink[];
99
+ statuses?: VoiceAuditSinkDeliveryQueueStatus[];
100
+ workerId: string;
101
+ };
102
+ export type VoiceAuditSinkDeliveryWorkerResult = {
103
+ alreadyProcessed: number;
104
+ attempted: number;
105
+ deadLettered: number;
106
+ delivered: number;
107
+ failed: number;
108
+ skipped: number;
109
+ };
110
+ export type VoiceAuditSinkDeliveryWorkerLoopOptions<TDelivery extends VoiceAuditSinkDeliveryRecord = VoiceAuditSinkDeliveryRecord> = {
111
+ onError?: (error: unknown) => Promise<void> | void;
112
+ pollIntervalMs?: number;
113
+ worker: ReturnType<typeof createVoiceAuditSinkDeliveryWorker<TDelivery>>;
114
+ };
115
+ export type VoiceAuditSinkDeliveryWorkerLoop = {
116
+ isRunning: () => boolean;
117
+ start: () => void;
118
+ stop: () => void;
119
+ tick: () => Promise<VoiceAuditSinkDeliveryWorkerResult>;
120
+ };
121
+ export type VoiceAuditSinkDeliveryQueueSummary = {
122
+ deadLettered: number;
123
+ delivered: number;
124
+ failed: number;
125
+ pending: number;
126
+ retryEligible: number;
127
+ skipped: number;
128
+ total: number;
129
+ };
130
+ export declare const createVoiceAuditSinkDeliveryId: (events: StoredVoiceAuditEvent[]) => string;
131
+ export declare const createVoiceAuditSinkDeliveryRecord: (input: {
132
+ createdAt?: number;
133
+ events: StoredVoiceAuditEvent[];
134
+ id?: string;
135
+ } & Partial<Omit<VoiceAuditSinkDeliveryRecord, "createdAt" | "events" | "id">>) => VoiceAuditSinkDeliveryRecord;
136
+ export declare const createVoiceAuditHTTPSink: <TBody extends Record<string, unknown> = Record<string, unknown>>(options: VoiceAuditHTTPSinkOptions<TBody>) => VoiceAuditSink;
137
+ export declare const createVoiceAuditS3Sink: <TBody extends Record<string, unknown> = Record<string, unknown>>(options: VoiceAuditS3SinkOptions<TBody>) => VoiceAuditSink;
138
+ export declare const deliverVoiceAuditEventsToSinks: (input: {
139
+ events: StoredVoiceAuditEvent[];
140
+ redact?: VoiceTraceRedactionConfig;
141
+ sinks: VoiceAuditSink[];
142
+ }) => Promise<VoiceAuditSinkFanoutResult>;
143
+ export declare const createVoiceAuditSinkStore: <TEvent extends StoredVoiceAuditEvent = StoredVoiceAuditEvent>(options: VoiceAuditSinkStoreOptions<TEvent>) => VoiceAuditEventStore<TEvent>;
144
+ export declare const createVoiceMemoryAuditSinkDeliveryStore: <TDelivery extends VoiceAuditSinkDeliveryRecord = VoiceAuditSinkDeliveryRecord>() => VoiceAuditSinkDeliveryStore<TDelivery>;
145
+ export declare const summarizeVoiceAuditSinkDeliveries: <TDelivery extends VoiceAuditSinkDeliveryRecord = VoiceAuditSinkDeliveryRecord>(deliveries: TDelivery[], input?: {
146
+ deadLetters?: VoiceAuditSinkDeliveryStore<TDelivery>;
147
+ }) => Promise<VoiceAuditSinkDeliveryQueueSummary> | VoiceAuditSinkDeliveryQueueSummary;
148
+ export declare const createVoiceAuditSinkDeliveryWorker: <TDelivery extends VoiceAuditSinkDeliveryRecord = VoiceAuditSinkDeliveryRecord>(options: VoiceAuditSinkDeliveryWorkerOptions<TDelivery>) => {
149
+ drain: () => Promise<VoiceAuditSinkDeliveryWorkerResult>;
150
+ };
151
+ export declare const createVoiceAuditSinkDeliveryWorkerLoop: <TDelivery extends VoiceAuditSinkDeliveryRecord = VoiceAuditSinkDeliveryRecord>(options: VoiceAuditSinkDeliveryWorkerLoopOptions<TDelivery>) => VoiceAuditSinkDeliveryWorkerLoop;
@@ -0,0 +1,56 @@
1
+ import { Elysia } from "elysia";
2
+ import type { StoredVoiceTraceEvent, VoiceTraceEventStore } from "./trace";
3
+ import type { VoiceBargeInMonitorSnapshot } from "./types";
4
+ export type VoiceBargeInRoutesOptions = {
5
+ headers?: HeadersInit;
6
+ htmlPath?: string;
7
+ name?: string;
8
+ path?: string;
9
+ store: VoiceTraceEventStore;
10
+ thresholdMs?: number;
11
+ title?: string;
12
+ };
13
+ export type VoiceBargeInReport = VoiceBargeInMonitorSnapshot & {
14
+ checkedAt: number;
15
+ sessions: Array<{
16
+ averageLatencyMs?: number;
17
+ failed: number;
18
+ passed: number;
19
+ sessionId: string;
20
+ total: number;
21
+ }>;
22
+ };
23
+ export declare const summarizeVoiceBargeIn: (events: StoredVoiceTraceEvent[], options?: {
24
+ thresholdMs?: number;
25
+ }) => VoiceBargeInReport;
26
+ export declare const renderVoiceBargeInHTML: (report: VoiceBargeInReport, options?: {
27
+ title?: string;
28
+ }) => string;
29
+ export declare const createVoiceBargeInRoutes: (options: VoiceBargeInRoutesOptions) => Elysia<"", {
30
+ decorator: {};
31
+ store: {};
32
+ derive: {};
33
+ resolve: {};
34
+ }, {
35
+ typebox: {};
36
+ error: {};
37
+ }, {
38
+ schema: {};
39
+ standaloneSchema: {};
40
+ macro: {};
41
+ macroFn: {};
42
+ parser: {};
43
+ response: {};
44
+ }, {}, {
45
+ derive: {};
46
+ resolve: {};
47
+ schema: {};
48
+ standaloneSchema: {};
49
+ response: {};
50
+ }, {
51
+ derive: {};
52
+ resolve: {};
53
+ schema: {};
54
+ standaloneSchema: {};
55
+ response: {};
56
+ }>;
@@ -0,0 +1,120 @@
1
+ import { Elysia } from "elysia";
2
+ export type VoiceBrowserCallProfileStatus = "empty" | "fail" | "pass" | "stale" | "warn";
3
+ export type VoiceBrowserCallProfileFrameworkSummary = {
4
+ messageCount?: number;
5
+ openSockets?: number;
6
+ receivedBytes?: number;
7
+ sentBytes?: number;
8
+ };
9
+ export type VoiceBrowserCallProfileFrameworkEvidence = {
10
+ error?: string;
11
+ framework: string;
12
+ ok?: boolean;
13
+ summary?: VoiceBrowserCallProfileFrameworkSummary;
14
+ url?: string;
15
+ };
16
+ export type VoiceBrowserCallProfileSummary = {
17
+ failedFrameworks: string[];
18
+ openSockets: number;
19
+ passedFrameworks: string[];
20
+ receivedBytes: number;
21
+ sentBytes: number;
22
+ totalFrameworks: number;
23
+ totalMessages: number;
24
+ };
25
+ export type VoiceBrowserCallProfileReportInput = {
26
+ ageMs?: number;
27
+ baseUrl?: string;
28
+ frameworks?: string[];
29
+ freshUntil?: string;
30
+ generatedAt?: string;
31
+ maxAgeMs?: number;
32
+ now?: Date | number | string;
33
+ ok?: boolean;
34
+ outputDir?: string;
35
+ profileId?: string;
36
+ results?: VoiceBrowserCallProfileFrameworkEvidence[];
37
+ runId?: string;
38
+ source?: string;
39
+ status?: VoiceBrowserCallProfileStatus;
40
+ summary?: Partial<VoiceBrowserCallProfileSummary> & VoiceBrowserCallProfileFrameworkSummary;
41
+ };
42
+ export type VoiceBrowserCallProfileReport = {
43
+ ageMs?: number;
44
+ baseUrl?: string;
45
+ frameworks: string[];
46
+ freshUntil?: string;
47
+ generatedAt: string;
48
+ maxAgeMs: number;
49
+ ok: boolean;
50
+ outputDir?: string;
51
+ profileId: string;
52
+ results: VoiceBrowserCallProfileFrameworkEvidence[];
53
+ runId?: string;
54
+ source: string;
55
+ status: VoiceBrowserCallProfileStatus;
56
+ summary: VoiceBrowserCallProfileSummary;
57
+ };
58
+ export type VoiceBrowserCallProfileAssertionInput = {
59
+ maxAgeMs?: number;
60
+ minMessageCountPerFramework?: number;
61
+ minOpenSocketsPerFramework?: number;
62
+ minSentBytesPerFramework?: number;
63
+ requireAllFrameworksPass?: boolean;
64
+ requiredFrameworks?: string[];
65
+ };
66
+ export type VoiceBrowserCallProfileAssertionReport = {
67
+ failedFrameworks: string[];
68
+ issues: string[];
69
+ ok: boolean;
70
+ passedFrameworks: string[];
71
+ status: VoiceBrowserCallProfileStatus;
72
+ summary: VoiceBrowserCallProfileSummary;
73
+ };
74
+ export type VoiceBrowserCallProfileRoutesOptions = {
75
+ headers?: HeadersInit;
76
+ htmlPath?: false | string;
77
+ jsonPath?: string;
78
+ markdownPath?: false | string;
79
+ maxAgeMs?: number;
80
+ name?: string;
81
+ source?: (() => Promise<VoiceBrowserCallProfileReport | VoiceBrowserCallProfileReportInput> | VoiceBrowserCallProfileReport | VoiceBrowserCallProfileReportInput) | VoiceBrowserCallProfileReport | VoiceBrowserCallProfileReportInput;
82
+ title?: string;
83
+ };
84
+ export declare const buildVoiceBrowserCallProfileReport: (input?: VoiceBrowserCallProfileReportInput) => VoiceBrowserCallProfileReport;
85
+ export declare const evaluateVoiceBrowserCallProfileEvidence: (report: VoiceBrowserCallProfileReport | VoiceBrowserCallProfileReportInput, input?: VoiceBrowserCallProfileAssertionInput) => VoiceBrowserCallProfileAssertionReport;
86
+ export declare const assertVoiceBrowserCallProfileEvidence: (report: VoiceBrowserCallProfileReport | VoiceBrowserCallProfileReportInput, input?: VoiceBrowserCallProfileAssertionInput) => VoiceBrowserCallProfileAssertionReport;
87
+ export declare const renderVoiceBrowserCallProfileMarkdown: (report: VoiceBrowserCallProfileReport | VoiceBrowserCallProfileReportInput, options?: {
88
+ title?: string;
89
+ }) => string;
90
+ export declare const renderVoiceBrowserCallProfileHTML: (report: VoiceBrowserCallProfileReport | VoiceBrowserCallProfileReportInput, options?: {
91
+ title?: string;
92
+ }) => string;
93
+ export declare const createVoiceBrowserCallProfileRoutes: (options?: VoiceBrowserCallProfileRoutesOptions) => Elysia<"", {
94
+ decorator: {};
95
+ store: {};
96
+ derive: {};
97
+ resolve: {};
98
+ }, {
99
+ typebox: {};
100
+ error: {};
101
+ }, {
102
+ schema: {};
103
+ standaloneSchema: {};
104
+ macro: {};
105
+ macroFn: {};
106
+ parser: {};
107
+ response: {};
108
+ }, {}, {
109
+ derive: {};
110
+ resolve: {};
111
+ schema: {};
112
+ standaloneSchema: {};
113
+ response: {};
114
+ }, {
115
+ derive: {};
116
+ resolve: {};
117
+ schema: {};
118
+ standaloneSchema: {};
119
+ response: {};
120
+ }>;
@@ -0,0 +1,62 @@
1
+ import { Elysia } from "elysia";
2
+ import type { MediaWebRTCStatsReport, MediaWebRTCStreamContinuityReport } from "@absolutejs/media";
3
+ import type { VoiceTraceEventStore } from "./trace";
4
+ export type VoiceBrowserMediaStatus = "empty" | "fail" | "pass" | "warn";
5
+ export type VoiceBrowserMediaSample = {
6
+ at: number;
7
+ continuity?: MediaWebRTCStreamContinuityReport;
8
+ report: MediaWebRTCStatsReport;
9
+ scenarioId?: string;
10
+ sessionId: string;
11
+ traceId?: string;
12
+ };
13
+ export type VoiceBrowserMediaReport = {
14
+ checkedAt: number;
15
+ latest?: VoiceBrowserMediaSample;
16
+ recent: VoiceBrowserMediaSample[];
17
+ status: VoiceBrowserMediaStatus;
18
+ stale: boolean;
19
+ total: number;
20
+ };
21
+ export type VoiceBrowserMediaRoutesOptions = {
22
+ headers?: HeadersInit;
23
+ htmlPath?: false | string;
24
+ maxAgeMs?: number;
25
+ name?: string;
26
+ path?: string;
27
+ store: VoiceTraceEventStore;
28
+ title?: string;
29
+ };
30
+ export declare const summarizeVoiceBrowserMedia: (options: Pick<VoiceBrowserMediaRoutesOptions, "maxAgeMs" | "store">) => Promise<VoiceBrowserMediaReport>;
31
+ export declare const getLatestVoiceBrowserMediaReport: (options: Pick<VoiceBrowserMediaRoutesOptions, "maxAgeMs" | "store">) => Promise<MediaWebRTCStatsReport | undefined>;
32
+ export declare const renderVoiceBrowserMediaHTML: (report: VoiceBrowserMediaReport, options?: {
33
+ title?: string;
34
+ }) => string;
35
+ export declare const createVoiceBrowserMediaRoutes: (options: VoiceBrowserMediaRoutesOptions) => Elysia<"", {
36
+ decorator: {};
37
+ store: {};
38
+ derive: {};
39
+ resolve: {};
40
+ }, {
41
+ typebox: {};
42
+ error: {};
43
+ }, {
44
+ schema: {};
45
+ standaloneSchema: {};
46
+ macro: {};
47
+ macroFn: {};
48
+ parser: {};
49
+ response: {};
50
+ }, {}, {
51
+ derive: {};
52
+ resolve: {};
53
+ schema: {};
54
+ standaloneSchema: {};
55
+ response: {};
56
+ }, {
57
+ derive: {};
58
+ resolve: {};
59
+ schema: {};
60
+ standaloneSchema: {};
61
+ response: {};
62
+ }>;
@@ -0,0 +1,66 @@
1
+ import { Elysia } from "elysia";
2
+ import { type VoiceFailureReplayReport, type VoiceOperationsRecord, type VoiceOperationsRecordOptions } from "./operationsRecord";
3
+ import { type StoredVoiceTraceEvent, type VoiceTraceEventStore } from "./trace";
4
+ import { type VoiceSessionSnapshot, type VoiceSessionSnapshotRouteSource } from "./sessionSnapshot";
5
+ export type VoiceCallDebuggerReport = {
6
+ checkedAt: number;
7
+ failureReplay: VoiceFailureReplayReport;
8
+ incidentMarkdown: string;
9
+ operationsRecord: VoiceOperationsRecord;
10
+ sessionId: string;
11
+ snapshot: VoiceSessionSnapshot;
12
+ status: "failed" | "healthy" | "warning";
13
+ };
14
+ export type VoiceCallDebuggerRoutesOptions = Omit<VoiceOperationsRecordOptions, "sessionId"> & {
15
+ headers?: HeadersInit;
16
+ htmlPath?: false | string;
17
+ incidentPath?: false | string;
18
+ name?: string;
19
+ operationsRecordHref?: string | ((input: {
20
+ sessionId: string;
21
+ }) => string | undefined);
22
+ path?: string;
23
+ render?: (report: VoiceCallDebuggerReport) => string | Promise<string>;
24
+ resolveSessionId?: (input: {
25
+ events: readonly StoredVoiceTraceEvent[];
26
+ request: Request;
27
+ requestedSessionId: string;
28
+ store?: VoiceTraceEventStore;
29
+ }) => Promise<string | undefined> | string | undefined;
30
+ snapshot?: VoiceSessionSnapshotRouteSource;
31
+ title?: string;
32
+ };
33
+ export declare const resolveLatestVoiceCallDebuggerSessionId: (events: readonly StoredVoiceTraceEvent[]) => string | undefined;
34
+ export declare const buildVoiceCallDebuggerReport: (options: VoiceCallDebuggerRoutesOptions, input: {
35
+ request: Request;
36
+ sessionId: string;
37
+ }) => Promise<VoiceCallDebuggerReport>;
38
+ export declare const renderVoiceCallDebuggerHTML: (report: VoiceCallDebuggerReport, options?: Pick<VoiceCallDebuggerRoutesOptions, "title">) => string;
39
+ export declare const createVoiceCallDebuggerRoutes: (options: VoiceCallDebuggerRoutesOptions) => Elysia<"", {
40
+ decorator: {};
41
+ store: {};
42
+ derive: {};
43
+ resolve: {};
44
+ }, {
45
+ typebox: {};
46
+ error: {};
47
+ }, {
48
+ schema: {};
49
+ standaloneSchema: {};
50
+ macro: {};
51
+ macroFn: {};
52
+ parser: {};
53
+ response: {};
54
+ }, {}, {
55
+ derive: {};
56
+ resolve: {};
57
+ schema: {};
58
+ standaloneSchema: {};
59
+ response: {};
60
+ }, {
61
+ derive: {};
62
+ resolve: {};
63
+ schema: {};
64
+ standaloneSchema: {};
65
+ response: {};
66
+ }>;