@absolutejs/voice 0.0.22-beta.51 → 0.0.22-beta.510

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 (430) hide show
  1. package/README.md +4556 -603
  2. package/dist/agent.d.ts +79 -5
  3. package/dist/agentSquadContract.d.ts +98 -0
  4. package/dist/agentState.d.ts +12 -0
  5. package/dist/agentTools.d.ts +133 -0
  6. package/dist/aiVoiceModel.d.ts +15 -0
  7. package/dist/amdDetector.d.ts +25 -0
  8. package/dist/angular/index.d.ts +36 -5
  9. package/dist/angular/index.js +4004 -338
  10. package/dist/angular/voice-agent-squad-status.service.d.ts +12 -0
  11. package/dist/angular/voice-call-debugger.service.d.ts +12 -0
  12. package/dist/angular/voice-call-player.service.d.ts +19 -0
  13. package/dist/angular/voice-campaign-dialer-proof.service.d.ts +14 -0
  14. package/dist/angular/voice-controller.service.d.ts +3 -1
  15. package/dist/angular/voice-cost-dashboard.service.d.ts +15 -0
  16. package/dist/angular/voice-delivery-runtime.component.d.ts +17 -0
  17. package/dist/angular/voice-delivery-runtime.service.d.ts +16 -0
  18. package/dist/angular/voice-live-agent-console.service.d.ts +16 -0
  19. package/dist/angular/voice-live-call-viewer.service.d.ts +16 -0
  20. package/dist/angular/voice-live-ops.service.d.ts +11 -0
  21. package/dist/angular/voice-ops-action-center.service.d.ts +13 -0
  22. package/dist/angular/voice-ops-status.component.d.ts +15 -0
  23. package/dist/angular/voice-ops-status.service.d.ts +12 -0
  24. package/dist/angular/voice-platform-coverage.service.d.ts +12 -0
  25. package/dist/angular/voice-profile-comparison.service.d.ts +12 -0
  26. package/dist/angular/voice-proof-trends.service.d.ts +12 -0
  27. package/dist/angular/voice-provider-capabilities.service.d.ts +12 -0
  28. package/dist/angular/voice-provider-contracts.service.d.ts +12 -0
  29. package/dist/angular/voice-provider-status.service.d.ts +2 -2
  30. package/dist/angular/voice-readiness-failures.service.d.ts +13 -0
  31. package/dist/angular/voice-reconnect-profile-evidence.service.d.ts +12 -0
  32. package/dist/angular/voice-replay-timeline.service.d.ts +13 -0
  33. package/dist/angular/voice-routing-status.service.d.ts +11 -0
  34. package/dist/angular/voice-session-observability.service.d.ts +12 -0
  35. package/dist/angular/voice-session-snapshot.service.d.ts +13 -0
  36. package/dist/angular/voice-stream.service.d.ts +4 -1
  37. package/dist/angular/voice-trace-timeline.service.d.ts +12 -0
  38. package/dist/angular/voice-turn-latency.service.d.ts +13 -0
  39. package/dist/angular/voice-turn-quality.service.d.ts +12 -0
  40. package/dist/angular/voice-widget.service.d.ts +18 -0
  41. package/dist/angular/voice-workflow-status.service.d.ts +2 -2
  42. package/dist/assistant.d.ts +12 -13
  43. package/dist/assistantExperiment.d.ts +41 -0
  44. package/dist/assistantHealth.d.ts +6 -6
  45. package/dist/assistantMemory.d.ts +3 -3
  46. package/dist/assistantMode.d.ts +22 -0
  47. package/dist/audioConditioning.d.ts +1 -1
  48. package/dist/audit.d.ts +131 -0
  49. package/dist/auditDeliveryRoutes.d.ts +85 -0
  50. package/dist/auditExport.d.ts +34 -0
  51. package/dist/auditRoutes.d.ts +66 -0
  52. package/dist/auditSinks.d.ts +151 -0
  53. package/dist/backchannel.d.ts +18 -0
  54. package/dist/bargeInRoutes.d.ts +56 -0
  55. package/dist/browserCallProfiles.d.ts +120 -0
  56. package/dist/browserMediaRoutes.d.ts +62 -0
  57. package/dist/callDebugger.d.ts +66 -0
  58. package/dist/callDisposition.d.ts +38 -0
  59. package/dist/callQuota.d.ts +54 -0
  60. package/dist/callerMemory.d.ts +37 -0
  61. package/dist/callingWindow.d.ts +26 -0
  62. package/dist/campaign.d.ts +794 -0
  63. package/dist/campaignControls.d.ts +37 -0
  64. package/dist/campaignDialers.d.ts +111 -0
  65. package/dist/campaignTemplate.d.ts +16 -0
  66. package/dist/client/actions.d.ts +95 -1
  67. package/dist/client/agentSquadStatus.d.ts +37 -0
  68. package/dist/client/agentSquadStatusWidget.d.ts +24 -0
  69. package/dist/client/audioPlayer.d.ts +2 -2
  70. package/dist/client/bargeInMonitor.d.ts +7 -0
  71. package/dist/client/browserMedia.d.ts +8 -0
  72. package/dist/client/browserNoiseSuppression.d.ts +42 -0
  73. package/dist/client/browserVoiceSupport.d.ts +22 -0
  74. package/dist/client/callDebugger.d.ts +19 -0
  75. package/dist/client/callDebuggerWidget.d.ts +30 -0
  76. package/dist/client/callPlayer.d.ts +41 -0
  77. package/dist/client/campaignDialerProof.d.ts +23 -0
  78. package/dist/client/connection.d.ts +4 -3
  79. package/dist/client/controller.d.ts +1 -1
  80. package/dist/client/conversationAnalytics.d.ts +29 -0
  81. package/dist/client/costDashboard.d.ts +27 -0
  82. package/dist/client/createVoiceStream.d.ts +1 -1
  83. package/dist/client/deliveryRuntime.d.ts +34 -0
  84. package/dist/client/deliveryRuntimeWidget.d.ts +37 -0
  85. package/dist/client/duplex.d.ts +2 -2
  86. package/dist/client/htmx.d.ts +1 -1
  87. package/dist/client/htmxAttributes.d.ts +28 -0
  88. package/dist/client/htmxBootstrap.js +967 -14
  89. package/dist/client/htmxDashboardRenderers.d.ts +72 -0
  90. package/dist/client/index.d.ts +104 -13
  91. package/dist/client/index.js +10142 -26
  92. package/dist/client/liveAgentConsole.d.ts +28 -0
  93. package/dist/client/liveCallViewer.d.ts +42 -0
  94. package/dist/client/liveOps.d.ts +22 -0
  95. package/dist/client/liveOpsWidget.d.ts +23 -0
  96. package/dist/client/liveTurnLatency.d.ts +41 -0
  97. package/dist/client/microphone.d.ts +4 -4
  98. package/dist/client/opsActionCenter.d.ts +54 -0
  99. package/dist/client/opsActionCenterWidget.d.ts +29 -0
  100. package/dist/client/opsActionHistory.d.ts +19 -0
  101. package/dist/client/opsActionHistoryWidget.d.ts +11 -0
  102. package/dist/client/opsStatus.d.ts +19 -0
  103. package/dist/client/opsStatusWidget.d.ts +40 -0
  104. package/dist/client/platformCoverage.d.ts +19 -0
  105. package/dist/client/platformCoverageWidget.d.ts +37 -0
  106. package/dist/client/profileComparison.d.ts +19 -0
  107. package/dist/client/profileComparisonWidget.d.ts +41 -0
  108. package/dist/client/profileSwitchRecommendation.d.ts +19 -0
  109. package/dist/client/profileSwitchRecommendationWidget.d.ts +12 -0
  110. package/dist/client/proofTrends.d.ts +19 -0
  111. package/dist/client/proofTrendsWidget.d.ts +37 -0
  112. package/dist/client/providerCapabilities.d.ts +19 -0
  113. package/dist/client/providerCapabilitiesWidget.d.ts +32 -0
  114. package/dist/client/providerContracts.d.ts +19 -0
  115. package/dist/client/providerContractsWidget.d.ts +37 -0
  116. package/dist/client/providerSimulationControls.d.ts +33 -0
  117. package/dist/client/providerSimulationControlsWidget.d.ts +20 -0
  118. package/dist/client/providerStatus.d.ts +1 -1
  119. package/dist/client/providerStatusWidget.d.ts +32 -0
  120. package/dist/client/readinessFailures.d.ts +19 -0
  121. package/dist/client/readinessFailuresWidget.d.ts +42 -0
  122. package/dist/client/reconnectProfileEvidence.d.ts +19 -0
  123. package/dist/client/reconnectProfileEvidenceWidget.d.ts +39 -0
  124. package/dist/client/replayTimeline.d.ts +26 -0
  125. package/dist/client/routingStatus.d.ts +19 -0
  126. package/dist/client/routingStatusWidget.d.ts +32 -0
  127. package/dist/client/sessionObservability.d.ts +19 -0
  128. package/dist/client/sessionObservabilityWidget.d.ts +31 -0
  129. package/dist/client/sessionSnapshot.d.ts +21 -0
  130. package/dist/client/sessionSnapshotWidget.d.ts +33 -0
  131. package/dist/client/store.d.ts +1 -1
  132. package/dist/client/traceTimeline.d.ts +19 -0
  133. package/dist/client/traceTimelineWidget.d.ts +36 -0
  134. package/dist/client/turnLatency.d.ts +22 -0
  135. package/dist/client/turnLatencyWidget.d.ts +33 -0
  136. package/dist/client/turnQuality.d.ts +19 -0
  137. package/dist/client/turnQualityWidget.d.ts +32 -0
  138. package/dist/client/voiceWidgetView.d.ts +50 -0
  139. package/dist/client/workflowStatus.d.ts +1 -1
  140. package/dist/competitiveCoverage.d.ts +141 -0
  141. package/dist/correction.d.ts +2 -2
  142. package/dist/costAccounting.d.ts +76 -0
  143. package/dist/costPredictor.d.ts +74 -0
  144. package/dist/dataControl.d.ts +180 -0
  145. package/dist/defineVoiceAssistant.d.ts +68 -0
  146. package/dist/deliveryRuntime.d.ts +158 -0
  147. package/dist/deliverySinkRoutes.d.ts +117 -0
  148. package/dist/demoReadyRoutes.d.ts +98 -0
  149. package/dist/diagnosticsRoutes.d.ts +2 -2
  150. package/dist/dncRegistry.d.ts +38 -0
  151. package/dist/dtmfCollector.d.ts +37 -0
  152. package/dist/evalRoutes.d.ts +10 -4
  153. package/dist/fileStore.d.ts +21 -7
  154. package/dist/generated/htmxBootstrapBundle.d.ts +1 -0
  155. package/dist/guardrails.d.ts +128 -0
  156. package/dist/handoff.d.ts +6 -6
  157. package/dist/handoffHealth.d.ts +5 -5
  158. package/dist/holdAudio.d.ts +23 -0
  159. package/dist/htmx.d.ts +1 -1
  160. package/dist/htmxDashboardRoutes.d.ts +249 -0
  161. package/dist/iceServers.d.ts +34 -0
  162. package/dist/incidentBundle.d.ts +119 -0
  163. package/dist/incidentTimeline.d.ts +260 -0
  164. package/dist/index.d.ts +314 -74
  165. package/dist/index.js +43236 -7352
  166. package/dist/ivrPlan.d.ts +40 -0
  167. package/dist/latencySlo.d.ts +56 -0
  168. package/dist/liveLatency.d.ts +78 -0
  169. package/dist/liveOps.d.ts +190 -0
  170. package/dist/llmJudge.d.ts +45 -0
  171. package/dist/logger.d.ts +1 -1
  172. package/dist/mediaPipelineRoutes.d.ts +171 -0
  173. package/dist/mediaPipelineSurfaces.d.ts +48 -0
  174. package/dist/memoryStore.d.ts +1 -1
  175. package/dist/midCallSummary.d.ts +27 -0
  176. package/dist/modelAdapters.d.ts +59 -7
  177. package/dist/monitor.d.ts +148 -0
  178. package/dist/multilingualProof.d.ts +77 -0
  179. package/dist/oauth2TokenSource.d.ts +21 -0
  180. package/dist/observabilityExport.d.ts +501 -0
  181. package/dist/openaiTTS.d.ts +18 -0
  182. package/dist/operationalStatus.d.ts +87 -0
  183. package/dist/operationsRecord.d.ts +370 -0
  184. package/dist/ops.d.ts +12 -12
  185. package/dist/opsActionAuditRoutes.d.ts +99 -0
  186. package/dist/opsConsoleRoutes.d.ts +8 -5
  187. package/dist/opsPresets.d.ts +2 -2
  188. package/dist/opsRecovery.d.ts +137 -0
  189. package/dist/opsRuntime.d.ts +6 -6
  190. package/dist/opsSinks.d.ts +13 -13
  191. package/dist/opsStatus.d.ts +76 -0
  192. package/dist/opsStatusRoutes.d.ts +33 -0
  193. package/dist/opsWebhook.d.ts +6 -6
  194. package/dist/otelExporter.d.ts +83 -0
  195. package/dist/outcomeContract.d.ts +146 -0
  196. package/dist/outcomeRecipes.d.ts +4 -4
  197. package/dist/phoneAgent.d.ts +139 -0
  198. package/dist/phoneAgentProductionSmoke.d.ts +115 -0
  199. package/dist/phoneProvisioning.d.ts +29 -0
  200. package/dist/platformCoverage.d.ts +91 -0
  201. package/dist/plugin.d.ts +2 -2
  202. package/dist/postCallAnalysis.d.ts +98 -0
  203. package/dist/postCallSurvey.d.ts +41 -0
  204. package/dist/postgresStore.d.ts +17 -6
  205. package/dist/presets.d.ts +3 -3
  206. package/dist/productionReadiness.d.ts +756 -0
  207. package/dist/profileSwitchRecommendation.d.ts +350 -0
  208. package/dist/promptInjectionGuard.d.ts +30 -0
  209. package/dist/proofAssertions.d.ts +32 -0
  210. package/dist/proofPack.d.ts +211 -0
  211. package/dist/proofRunner.d.ts +79 -0
  212. package/dist/proofTrends.d.ts +966 -0
  213. package/dist/providerAdapters.d.ts +16 -5
  214. package/dist/providerCapabilities.d.ts +92 -0
  215. package/dist/providerDecisionTraces.d.ts +130 -0
  216. package/dist/providerHealth.d.ts +3 -3
  217. package/dist/providerOrchestration.d.ts +109 -0
  218. package/dist/providerRouterTraces.d.ts +35 -0
  219. package/dist/providerRoutingContract.d.ts +71 -0
  220. package/dist/providerSlo.d.ts +142 -0
  221. package/dist/providerStackRecommendations.d.ts +187 -0
  222. package/dist/qualityRoutes.d.ts +4 -4
  223. package/dist/queue.d.ts +23 -14
  224. package/dist/ragTool.d.ts +57 -0
  225. package/dist/react/VoiceAgentSquadStatus.d.ts +5 -0
  226. package/dist/react/VoiceCallDebuggerLaunch.d.ts +6 -0
  227. package/dist/react/VoiceCallPlayer.d.ts +11 -0
  228. package/dist/react/VoiceCostDashboard.d.ts +10 -0
  229. package/dist/react/VoiceDeliveryRuntime.d.ts +7 -0
  230. package/dist/react/VoiceLiveAgentConsole.d.ts +11 -0
  231. package/dist/react/VoiceLiveCallViewer.d.ts +9 -0
  232. package/dist/react/VoiceOpsActionCenter.d.ts +5 -0
  233. package/dist/react/VoiceOpsStatus.d.ts +6 -0
  234. package/dist/react/VoicePlatformCoverage.d.ts +6 -0
  235. package/dist/react/VoiceProfileComparison.d.ts +6 -0
  236. package/dist/react/VoiceProfileSwitchRecommendation.d.ts +6 -0
  237. package/dist/react/VoiceProofTrends.d.ts +6 -0
  238. package/dist/react/VoiceProviderCapabilities.d.ts +6 -0
  239. package/dist/react/VoiceProviderContracts.d.ts +6 -0
  240. package/dist/react/VoiceProviderSimulationControls.d.ts +5 -0
  241. package/dist/react/VoiceProviderStatus.d.ts +6 -0
  242. package/dist/react/VoiceReadinessFailures.d.ts +6 -0
  243. package/dist/react/VoiceReconnectProfileEvidence.d.ts +6 -0
  244. package/dist/react/VoiceReplayTimeline.d.ts +6 -0
  245. package/dist/react/VoiceRoutingStatus.d.ts +6 -0
  246. package/dist/react/VoiceSessionObservability.d.ts +6 -0
  247. package/dist/react/VoiceSessionSnapshot.d.ts +6 -0
  248. package/dist/react/VoiceTraceTimeline.d.ts +6 -0
  249. package/dist/react/VoiceTurnLatency.d.ts +6 -0
  250. package/dist/react/VoiceTurnQuality.d.ts +6 -0
  251. package/dist/react/VoiceWidget.d.ts +13 -0
  252. package/dist/react/index.d.ts +59 -5
  253. package/dist/react/index.js +12733 -168
  254. package/dist/react/useVoiceAgentSquadStatus.d.ts +8 -0
  255. package/dist/react/useVoiceCallDebugger.d.ts +8 -0
  256. package/dist/react/useVoiceCampaignDialerProof.d.ts +10 -0
  257. package/dist/react/useVoiceController.d.ts +4 -1
  258. package/dist/react/useVoiceDeliveryRuntime.d.ts +13 -0
  259. package/dist/react/useVoiceLiveOps.d.ts +9 -0
  260. package/dist/react/useVoiceOpsActionCenter.d.ts +11 -0
  261. package/dist/react/useVoiceOpsStatus.d.ts +8 -0
  262. package/dist/react/useVoicePlatformCoverage.d.ts +8 -0
  263. package/dist/react/useVoiceProfileComparison.d.ts +8 -0
  264. package/dist/react/useVoiceProfileSwitchRecommendation.d.ts +8 -0
  265. package/dist/react/useVoiceProofTrends.d.ts +8 -0
  266. package/dist/react/useVoiceProviderCapabilities.d.ts +8 -0
  267. package/dist/react/useVoiceProviderContracts.d.ts +8 -0
  268. package/dist/react/useVoiceProviderSimulationControls.d.ts +10 -0
  269. package/dist/react/useVoiceProviderStatus.d.ts +1 -1
  270. package/dist/react/useVoiceReadinessFailures.d.ts +8 -0
  271. package/dist/react/useVoiceReconnectProfileEvidence.d.ts +8 -0
  272. package/dist/react/useVoiceRoutingStatus.d.ts +8 -0
  273. package/dist/react/useVoiceSessionObservability.d.ts +8 -0
  274. package/dist/react/useVoiceSessionSnapshot.d.ts +9 -0
  275. package/dist/react/useVoiceStream.d.ts +4 -1
  276. package/dist/react/useVoiceTraceTimeline.d.ts +8 -0
  277. package/dist/react/useVoiceTurnLatency.d.ts +9 -0
  278. package/dist/react/useVoiceTurnQuality.d.ts +8 -0
  279. package/dist/react/useVoiceWorkflowStatus.d.ts +1 -1
  280. package/dist/readinessProfiles.d.ts +45 -0
  281. package/dist/realtimeChannel.d.ts +136 -0
  282. package/dist/realtimeProviderContracts.d.ts +133 -0
  283. package/dist/reconnectContract.d.ts +176 -0
  284. package/dist/recordingRedaction.d.ts +18 -0
  285. package/dist/recordingStore.d.ts +60 -0
  286. package/dist/redaction.d.ts +13 -0
  287. package/dist/resilienceRoutes.d.ts +45 -5
  288. package/dist/retention.d.ts +37 -0
  289. package/dist/retryPolicy.d.ts +38 -0
  290. package/dist/routeAuth.d.ts +58 -0
  291. package/dist/routing.d.ts +1 -1
  292. package/dist/runtimeOps.d.ts +3 -3
  293. package/dist/s3Store.d.ts +18 -3
  294. package/dist/semanticTurn.d.ts +27 -0
  295. package/dist/session.d.ts +1 -1
  296. package/dist/sessionObservability.d.ts +145 -0
  297. package/dist/sessionReplay.d.ts +19 -7
  298. package/dist/sessionSnapshot.d.ts +109 -0
  299. package/dist/simulationSuite.d.ts +143 -0
  300. package/dist/sloCalibration.d.ts +185 -0
  301. package/dist/sqliteStore.d.ts +17 -6
  302. package/dist/store.d.ts +1 -1
  303. package/dist/svelte/createVoiceAgentSquadStatus.d.ts +9 -0
  304. package/dist/svelte/createVoiceCallDebugger.d.ts +12 -0
  305. package/dist/svelte/createVoiceCallPlayer.d.ts +33 -0
  306. package/dist/svelte/createVoiceCampaignDialerProof.d.ts +9 -0
  307. package/dist/svelte/createVoiceCostDashboard.d.ts +13 -0
  308. package/dist/svelte/createVoiceDeliveryRuntime.d.ts +11 -0
  309. package/dist/svelte/createVoiceLiveAgentConsole.d.ts +23 -0
  310. package/dist/svelte/createVoiceLiveCallViewer.d.ts +26 -0
  311. package/dist/svelte/createVoiceLiveOps.d.ts +13 -0
  312. package/dist/svelte/createVoiceOpsActionCenter.d.ts +10 -0
  313. package/dist/svelte/createVoiceOpsStatus.d.ts +9 -0
  314. package/dist/svelte/createVoicePlatformCoverage.d.ts +7 -0
  315. package/dist/svelte/createVoiceProfileComparison.d.ts +7 -0
  316. package/dist/svelte/createVoiceProofTrends.d.ts +7 -0
  317. package/dist/svelte/createVoiceProviderCapabilities.d.ts +10 -0
  318. package/dist/svelte/createVoiceProviderContracts.d.ts +10 -0
  319. package/dist/svelte/createVoiceProviderSimulationControls.d.ts +11 -0
  320. package/dist/svelte/createVoiceProviderStatus.d.ts +4 -2
  321. package/dist/svelte/createVoiceReadinessFailures.d.ts +7 -0
  322. package/dist/svelte/createVoiceReconnectProfileEvidence.d.ts +7 -0
  323. package/dist/svelte/createVoiceReplayTimeline.d.ts +13 -0
  324. package/dist/svelte/createVoiceRoutingStatus.d.ts +10 -0
  325. package/dist/svelte/createVoiceSessionObservability.d.ts +10 -0
  326. package/dist/svelte/createVoiceSessionSnapshot.d.ts +13 -0
  327. package/dist/svelte/createVoiceStream.d.ts +1 -1
  328. package/dist/svelte/createVoiceTraceTimeline.d.ts +10 -0
  329. package/dist/svelte/createVoiceTurnLatency.d.ts +11 -0
  330. package/dist/svelte/createVoiceTurnQuality.d.ts +10 -0
  331. package/dist/svelte/createVoiceWidget.d.ts +19 -0
  332. package/dist/svelte/createVoiceWorkflowStatus.d.ts +1 -1
  333. package/dist/svelte/index.d.ts +37 -5
  334. package/dist/svelte/index.js +6931 -684
  335. package/dist/telephony/contract.d.ts +61 -0
  336. package/dist/telephony/matrix.d.ts +97 -0
  337. package/dist/telephony/plivo.d.ts +303 -0
  338. package/dist/telephony/response.d.ts +1 -1
  339. package/dist/telephony/security.d.ts +182 -0
  340. package/dist/telephony/telnyx.d.ts +291 -0
  341. package/dist/telephony/twilio.d.ts +147 -13
  342. package/dist/telephonyMediaRoutes.d.ts +72 -0
  343. package/dist/telephonyOutcome.d.ts +273 -0
  344. package/dist/testing/accuracy.d.ts +1 -1
  345. package/dist/testing/benchmark.d.ts +9 -9
  346. package/dist/testing/corrected.d.ts +5 -5
  347. package/dist/testing/duplex.d.ts +3 -3
  348. package/dist/testing/fixtures.d.ts +3 -3
  349. package/dist/testing/index.d.ts +13 -13
  350. package/dist/testing/index.js +5223 -159
  351. package/dist/testing/ioProviderSimulator.d.ts +5 -5
  352. package/dist/testing/providerSimulator.d.ts +5 -5
  353. package/dist/testing/review.d.ts +4 -4
  354. package/dist/testing/sessionBenchmark.d.ts +3 -3
  355. package/dist/testing/stt.d.ts +3 -3
  356. package/dist/testing/telephony.d.ts +25 -0
  357. package/dist/testing/tts.d.ts +1 -1
  358. package/dist/toolContract.d.ts +161 -0
  359. package/dist/toolRuntime.d.ts +50 -0
  360. package/dist/trace.d.ts +46 -7
  361. package/dist/traceDeliveryRoutes.d.ts +86 -0
  362. package/dist/traceTimeline.d.ts +97 -0
  363. package/dist/turnDetection.d.ts +1 -1
  364. package/dist/turnLatency.d.ts +95 -0
  365. package/dist/turnProfiles.d.ts +2 -2
  366. package/dist/turnQuality.d.ts +94 -0
  367. package/dist/types.d.ts +293 -80
  368. package/dist/vapiAdapter.d.ts +160 -0
  369. package/dist/voiceMonitoring.d.ts +444 -0
  370. package/dist/vue/VoiceCallDebuggerLaunch.d.ts +68 -0
  371. package/dist/vue/VoiceCallPlayer.d.ts +40 -0
  372. package/dist/vue/VoiceCostDashboard.d.ts +57 -0
  373. package/dist/vue/VoiceDeliveryRuntime.d.ts +30 -0
  374. package/dist/vue/VoiceLiveAgentConsole.d.ts +50 -0
  375. package/dist/vue/VoiceLiveCallViewer.d.ts +35 -0
  376. package/dist/vue/VoiceOpsActionCenter.d.ts +13 -0
  377. package/dist/vue/VoiceOpsStatus.d.ts +30 -0
  378. package/dist/vue/VoicePlatformCoverage.d.ts +23 -0
  379. package/dist/vue/VoiceProofTrends.d.ts +21 -0
  380. package/dist/vue/VoiceProviderCapabilities.d.ts +51 -0
  381. package/dist/vue/VoiceProviderContracts.d.ts +21 -0
  382. package/dist/vue/VoiceProviderSimulationControls.d.ts +88 -0
  383. package/dist/vue/VoiceProviderStatus.d.ts +51 -0
  384. package/dist/vue/VoiceReadinessFailures.d.ts +21 -0
  385. package/dist/vue/VoiceReconnectProfileEvidence.d.ts +21 -0
  386. package/dist/vue/VoiceReplayTimeline.d.ts +17 -0
  387. package/dist/vue/VoiceRoutingStatus.d.ts +51 -0
  388. package/dist/vue/VoiceSessionObservability.d.ts +23 -0
  389. package/dist/vue/VoiceSessionSnapshot.d.ts +68 -0
  390. package/dist/vue/VoiceTurnLatency.d.ts +69 -0
  391. package/dist/vue/VoiceTurnQuality.d.ts +51 -0
  392. package/dist/vue/VoiceWidget.d.ts +77 -0
  393. package/dist/vue/index.d.ts +49 -5
  394. package/dist/vue/index.js +11954 -226
  395. package/dist/vue/useVoiceAgentSquadStatus.d.ts +9 -0
  396. package/dist/vue/useVoiceCallDebugger.d.ts +10 -0
  397. package/dist/vue/useVoiceCampaignDialerProof.d.ts +11 -0
  398. package/dist/vue/useVoiceController.d.ts +4 -2
  399. package/dist/vue/useVoiceDeliveryRuntime.d.ts +13 -0
  400. package/dist/vue/useVoiceLiveOps.d.ts +9 -0
  401. package/dist/vue/useVoiceOpsActionCenter.d.ts +11 -0
  402. package/dist/vue/useVoiceOpsStatus.d.ts +9 -0
  403. package/dist/vue/useVoicePlatformCoverage.d.ts +9 -0
  404. package/dist/vue/useVoiceProfileComparison.d.ts +9 -0
  405. package/dist/vue/useVoiceProofTrends.d.ts +9 -0
  406. package/dist/vue/useVoiceProviderCapabilities.d.ts +9 -0
  407. package/dist/vue/useVoiceProviderContracts.d.ts +9 -0
  408. package/dist/vue/useVoiceProviderSimulationControls.d.ts +24 -0
  409. package/dist/vue/useVoiceProviderStatus.d.ts +3 -3
  410. package/dist/vue/useVoiceReadinessFailures.d.ts +959 -0
  411. package/dist/vue/useVoiceReconnectProfileEvidence.d.ts +9 -0
  412. package/dist/vue/useVoiceRoutingStatus.d.ts +8 -0
  413. package/dist/vue/useVoiceSessionObservability.d.ts +9 -0
  414. package/dist/vue/useVoiceSessionSnapshot.d.ts +10 -0
  415. package/dist/vue/useVoiceStream.d.ts +5 -2
  416. package/dist/vue/useVoiceTraceTimeline.d.ts +9 -0
  417. package/dist/vue/useVoiceTurnLatency.d.ts +10 -0
  418. package/dist/vue/useVoiceTurnQuality.d.ts +9 -0
  419. package/dist/vue/useVoiceWorkflowStatus.d.ts +3 -3
  420. package/dist/webhookFanout.d.ts +48 -0
  421. package/dist/webhookVerification.d.ts +27 -0
  422. package/dist/workflowContract.d.ts +8 -8
  423. package/fixtures/manifest.json +356 -197
  424. package/package.json +265 -256
  425. package/dist/angular/voice-app-kit-status.service.d.ts +0 -12
  426. package/dist/appKit.d.ts +0 -92
  427. package/dist/client/appKitStatus.d.ts +0 -19
  428. package/dist/react/useVoiceAppKitStatus.d.ts +0 -8
  429. package/dist/svelte/createVoiceAppKitStatus.d.ts +0 -8
  430. package/dist/vue/useVoiceAppKitStatus.d.ts +0 -9
@@ -0,0 +1,61 @@
1
+ export type VoiceTelephonyProvider = "generic" | "plivo" | "telnyx" | "twilio";
2
+ export type VoiceTelephonySetupStatus<TProvider extends VoiceTelephonyProvider = VoiceTelephonyProvider> = {
3
+ generatedAt: number;
4
+ missing: string[];
5
+ provider: TProvider;
6
+ ready: boolean;
7
+ signing: {
8
+ configured: boolean;
9
+ mode: "custom" | "none" | "provider-signature" | "twilio-signature";
10
+ verificationUrl?: string;
11
+ };
12
+ urls: {
13
+ stream: string;
14
+ twiml?: string;
15
+ webhook: string;
16
+ };
17
+ warnings: string[];
18
+ };
19
+ export type VoiceTelephonySmokeCheck = {
20
+ details?: Record<string, unknown>;
21
+ message?: string;
22
+ name: string;
23
+ status: "fail" | "pass" | "warn";
24
+ };
25
+ export type VoiceTelephonySmokeReport<TProvider extends VoiceTelephonyProvider = VoiceTelephonyProvider> = {
26
+ checks: VoiceTelephonySmokeCheck[];
27
+ generatedAt: number;
28
+ pass: boolean;
29
+ provider: TProvider;
30
+ setup: VoiceTelephonySetupStatus<TProvider>;
31
+ twiml?: {
32
+ status: number;
33
+ streamUrl?: string;
34
+ };
35
+ webhook?: {
36
+ body?: unknown;
37
+ status: number;
38
+ };
39
+ };
40
+ export type VoiceTelephonyContractRequirement = "signed-webhook" | "smoke-pass" | "stream-url" | "webhook-url" | "wss-stream";
41
+ export type VoiceTelephonyContractIssue = {
42
+ requirement: VoiceTelephonyContractRequirement;
43
+ severity: "error" | "warning";
44
+ message: string;
45
+ };
46
+ export type VoiceTelephonyContractReport<TProvider extends VoiceTelephonyProvider = VoiceTelephonyProvider> = {
47
+ issues: VoiceTelephonyContractIssue[];
48
+ pass: boolean;
49
+ provider: TProvider;
50
+ requirements: VoiceTelephonyContractRequirement[];
51
+ setup: VoiceTelephonySetupStatus<TProvider>;
52
+ smoke?: VoiceTelephonySmokeReport<TProvider>;
53
+ };
54
+ export type VoiceTelephonyContractOptions = {
55
+ requirements?: VoiceTelephonyContractRequirement[];
56
+ };
57
+ export declare const evaluateVoiceTelephonyContract: <TProvider extends VoiceTelephonyProvider>(input: {
58
+ options?: VoiceTelephonyContractOptions;
59
+ setup: VoiceTelephonySetupStatus<TProvider>;
60
+ smoke?: VoiceTelephonySmokeReport<TProvider>;
61
+ }) => VoiceTelephonyContractReport<TProvider>;
@@ -0,0 +1,97 @@
1
+ import { Elysia } from "elysia";
2
+ import { type VoiceTelephonyContractOptions, type VoiceTelephonyContractReport, type VoiceTelephonyProvider, type VoiceTelephonySetupStatus, type VoiceTelephonySmokeReport } from "./contract";
3
+ export type VoiceTelephonyCarrierMatrixStatus = "fail" | "pass" | "warn";
4
+ export type VoiceTelephonyCarrierMatrixInput<TProvider extends VoiceTelephonyProvider = VoiceTelephonyProvider> = {
5
+ contract?: VoiceTelephonyContractReport<TProvider>;
6
+ name?: string;
7
+ setup: VoiceTelephonySetupStatus<TProvider>;
8
+ smoke?: VoiceTelephonySmokeReport<TProvider>;
9
+ };
10
+ export type VoiceTelephonyCarrierMatrixEntry<TProvider extends VoiceTelephonyProvider = VoiceTelephonyProvider> = {
11
+ contract: VoiceTelephonyContractReport<TProvider>;
12
+ issues: VoiceTelephonyContractReport<TProvider>["issues"];
13
+ name: string;
14
+ provider: TProvider;
15
+ ready: boolean;
16
+ setup: VoiceTelephonySetupStatus<TProvider>;
17
+ smoke?: VoiceTelephonySmokeReport<TProvider>;
18
+ status: VoiceTelephonyCarrierMatrixStatus;
19
+ summary: {
20
+ errors: number;
21
+ failures: number;
22
+ missing: number;
23
+ warnings: number;
24
+ };
25
+ };
26
+ export type VoiceTelephonyCarrierMatrix = {
27
+ entries: VoiceTelephonyCarrierMatrixEntry[];
28
+ generatedAt: number;
29
+ pass: boolean;
30
+ summary: {
31
+ contractsPassing: number;
32
+ failing: number;
33
+ providers: number;
34
+ ready: number;
35
+ smokePassing: number;
36
+ warnings: number;
37
+ };
38
+ };
39
+ export type VoiceTelephonyCarrierMatrixOptions = {
40
+ contract?: VoiceTelephonyContractOptions;
41
+ generatedAt?: number;
42
+ providers: VoiceTelephonyCarrierMatrixInput[];
43
+ };
44
+ export type VoiceTelephonyCarrierMatrixRoutesOptions = {
45
+ load: (input: {
46
+ query: Record<string, unknown>;
47
+ request: Request;
48
+ }) => Promise<VoiceTelephonyCarrierMatrixInput[]> | VoiceTelephonyCarrierMatrixInput[];
49
+ name?: string;
50
+ path?: string;
51
+ title?: string;
52
+ contract?: VoiceTelephonyContractOptions;
53
+ };
54
+ export declare const createVoiceTelephonyCarrierMatrix: (options: VoiceTelephonyCarrierMatrixOptions) => VoiceTelephonyCarrierMatrix;
55
+ export declare const renderVoiceTelephonyCarrierMatrixHTML: (matrix: VoiceTelephonyCarrierMatrix, options?: {
56
+ title?: string;
57
+ }) => string;
58
+ export declare const createVoiceTelephonyCarrierMatrixRoutes: (options: VoiceTelephonyCarrierMatrixRoutesOptions) => Elysia<"", {
59
+ decorator: {};
60
+ store: {};
61
+ derive: {};
62
+ resolve: {};
63
+ }, {
64
+ typebox: {};
65
+ error: {};
66
+ }, {
67
+ schema: {};
68
+ standaloneSchema: {};
69
+ macro: {};
70
+ macroFn: {};
71
+ parser: {};
72
+ response: {};
73
+ }, {
74
+ [x: string]: {
75
+ get: {
76
+ body: unknown;
77
+ params: {};
78
+ query: unknown;
79
+ headers: unknown;
80
+ response: {
81
+ 200: Response | VoiceTelephonyCarrierMatrix;
82
+ };
83
+ };
84
+ };
85
+ }, {
86
+ derive: {};
87
+ resolve: {};
88
+ schema: {};
89
+ standaloneSchema: {};
90
+ response: {};
91
+ }, {
92
+ derive: {};
93
+ resolve: {};
94
+ schema: {};
95
+ standaloneSchema: {};
96
+ response: {};
97
+ }>;
@@ -0,0 +1,303 @@
1
+ import { Database } from "bun:sqlite";
2
+ import type { RedisClient } from "bun";
3
+ import { Elysia } from "elysia";
4
+ import { type VoiceTelephonyContractReport, type VoiceTelephonySetupStatus, type VoiceTelephonySmokeCheck, type VoiceTelephonySmokeReport } from "./contract";
5
+ import { type VoiceTelephonyOutcomePolicy, type VoiceTelephonyWebhookRoutesOptions, type VoiceTelephonyWebhookVerificationResult } from "../telephonyOutcome";
6
+ import type { VoiceServerMessage, VoiceSessionRecord } from "../types";
7
+ import type { VoicePostgresClient } from "../postgresStore";
8
+ import { type TwilioMediaStreamBridgeOptions } from "./twilio";
9
+ export type PlivoInboundMessage = {
10
+ event: "start";
11
+ sequenceNumber?: number;
12
+ start?: {
13
+ callId?: string;
14
+ callUuid?: string;
15
+ extra_headers?: string;
16
+ mediaFormat?: {
17
+ channels?: number;
18
+ encoding?: string;
19
+ sampleRate?: number;
20
+ };
21
+ streamId?: string;
22
+ };
23
+ streamId?: string;
24
+ } | {
25
+ event: "media";
26
+ media: {
27
+ payload: string;
28
+ timestamp?: string;
29
+ track?: "inbound" | "outbound";
30
+ };
31
+ sequenceNumber?: number;
32
+ streamId?: string;
33
+ } | {
34
+ event: "dtmf";
35
+ dtmf?: {
36
+ digit?: string;
37
+ timestamp?: string;
38
+ track?: string;
39
+ };
40
+ sequenceNumber?: number;
41
+ streamId?: string;
42
+ } | {
43
+ event: "playedStream";
44
+ name?: string;
45
+ sequenceNumber?: number;
46
+ streamId?: string;
47
+ } | {
48
+ event: "clearedAudio";
49
+ sequenceNumber?: number;
50
+ streamId?: string;
51
+ } | {
52
+ event: "stop";
53
+ sequenceNumber?: number;
54
+ stop?: {
55
+ callId?: string;
56
+ callUuid?: string;
57
+ };
58
+ streamId?: string;
59
+ };
60
+ export type PlivoOutboundPlayAudioMessage = {
61
+ event: "playAudio";
62
+ media: {
63
+ contentType: "audio/x-mulaw";
64
+ payload: string;
65
+ sampleRate: 8000;
66
+ };
67
+ };
68
+ export type PlivoOutboundClearAudioMessage = {
69
+ event: "clearAudio";
70
+ streamId?: string;
71
+ };
72
+ export type PlivoOutboundCheckpointMessage = {
73
+ event: "checkpoint";
74
+ name: string;
75
+ streamId?: string;
76
+ };
77
+ export type PlivoOutboundMessage = PlivoOutboundPlayAudioMessage | PlivoOutboundClearAudioMessage | PlivoOutboundCheckpointMessage;
78
+ export type PlivoMediaStreamSocket = {
79
+ close: (code?: number, reason?: string) => void | Promise<void>;
80
+ send: (data: string) => void | Promise<void>;
81
+ };
82
+ export type PlivoMediaStreamBridgeOptions<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = Omit<TwilioMediaStreamBridgeOptions<TContext, TSession, TResult>, "onVoiceMessage"> & {
83
+ onVoiceMessage?: (input: {
84
+ callId?: string;
85
+ message: VoiceServerMessage<TResult>;
86
+ sessionId: string;
87
+ streamId?: string;
88
+ }) => Promise<void> | void;
89
+ };
90
+ export type PlivoMediaStreamBridge = {
91
+ close: (reason?: string) => Promise<void>;
92
+ getSessionId: () => string | null;
93
+ getStreamId: () => string | null;
94
+ handleMessage: (raw: string | PlivoInboundMessage) => Promise<void>;
95
+ };
96
+ export type PlivoVoiceResponseOptions = {
97
+ audioTrack?: "both" | "inbound" | "outbound";
98
+ bidirectional?: boolean;
99
+ contentType?: "audio/x-l16;rate=8000" | "audio/x-l16;rate=16000" | "audio/x-mulaw;rate=8000";
100
+ extraHeaders?: Record<string, string | number | boolean | undefined> | string;
101
+ keepCallAlive?: boolean;
102
+ noiseCancellation?: boolean;
103
+ noiseCancellationLevel?: number;
104
+ statusCallbackMethod?: "GET" | "POST";
105
+ statusCallbackUrl?: string;
106
+ streamTimeout?: number;
107
+ streamUrl: string;
108
+ };
109
+ export type PlivoVoiceSetupStatus = VoiceTelephonySetupStatus<"plivo"> & {
110
+ urls: VoiceTelephonySetupStatus<"plivo">["urls"] & {
111
+ answer: string;
112
+ };
113
+ };
114
+ export type PlivoVoiceSetupOptions = {
115
+ path?: false | string;
116
+ requiredEnv?: Record<string, string | undefined>;
117
+ title?: string;
118
+ };
119
+ export type PlivoVoiceSmokeCheck = VoiceTelephonySmokeCheck;
120
+ export type PlivoVoiceSmokeReport = VoiceTelephonySmokeReport<"plivo"> & {
121
+ answer?: {
122
+ status: number;
123
+ streamUrl?: string;
124
+ };
125
+ contract: VoiceTelephonyContractReport<"plivo">;
126
+ setup: PlivoVoiceSetupStatus;
127
+ };
128
+ export type PlivoVoiceSmokeOptions = {
129
+ callUuid?: string;
130
+ eventType?: string;
131
+ path?: false | string;
132
+ sessionId?: string;
133
+ sipCode?: number;
134
+ status?: string;
135
+ title?: string;
136
+ };
137
+ export type VoicePlivoWebhookNonceStore = {
138
+ claim?: (nonce: string) => Promise<boolean> | boolean;
139
+ has: (nonce: string) => Promise<boolean> | boolean;
140
+ set: (nonce: string) => Promise<void> | void;
141
+ };
142
+ export type VoicePlivoWebhookNonceStoreOptions = {
143
+ ttlSeconds?: number;
144
+ };
145
+ export type VoiceSQLitePlivoWebhookNonceStoreOptions = VoicePlivoWebhookNonceStoreOptions & {
146
+ database?: Database;
147
+ path?: string;
148
+ tableName?: string;
149
+ tablePrefix?: string;
150
+ };
151
+ export type VoicePostgresPlivoWebhookNonceStoreOptions = VoicePlivoWebhookNonceStoreOptions & {
152
+ connectionString?: string;
153
+ schemaName?: string;
154
+ sql?: VoicePostgresClient;
155
+ tableName?: string;
156
+ tablePrefix?: string;
157
+ };
158
+ export type VoiceRedisPlivoWebhookNonceClient = Pick<RedisClient, "exists" | "set">;
159
+ export type VoiceRedisPlivoWebhookNonceStoreOptions = VoicePlivoWebhookNonceStoreOptions & {
160
+ client?: VoiceRedisPlivoWebhookNonceClient;
161
+ keyPrefix?: string;
162
+ url?: string;
163
+ };
164
+ export type VoicePlivoWebhookVerifierOptions = {
165
+ authToken?: string;
166
+ nonceStore?: VoicePlivoWebhookNonceStore;
167
+ verificationUrl?: string | ((input: {
168
+ query: Record<string, unknown>;
169
+ request: Request;
170
+ }) => string);
171
+ };
172
+ export type PlivoVoiceRoutesOptions<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
173
+ answer?: {
174
+ path?: string;
175
+ response?: Omit<PlivoVoiceResponseOptions, "streamUrl">;
176
+ streamUrl?: string | ((input: {
177
+ query: Record<string, unknown>;
178
+ request: Request;
179
+ streamPath: string;
180
+ }) => Promise<string> | string);
181
+ };
182
+ bridge?: PlivoMediaStreamBridgeOptions<TContext, TSession, TResult>;
183
+ context?: TContext;
184
+ name?: string;
185
+ outcomePolicy?: VoiceTelephonyOutcomePolicy;
186
+ setup?: PlivoVoiceSetupOptions;
187
+ smoke?: PlivoVoiceSmokeOptions;
188
+ streamPath?: string;
189
+ webhook?: Omit<VoiceTelephonyWebhookRoutesOptions<TContext, TSession, TResult>, "context" | "path" | "policy" | "provider"> & {
190
+ authToken?: string;
191
+ nonceStore?: VoicePlivoWebhookNonceStore;
192
+ path?: string;
193
+ policy?: VoiceTelephonyOutcomePolicy;
194
+ verificationUrl?: string | ((input: {
195
+ query: Record<string, unknown>;
196
+ request: Request;
197
+ }) => string);
198
+ };
199
+ };
200
+ export declare const createPlivoVoiceResponse: (options: PlivoVoiceResponseOptions) => string;
201
+ export declare const createPlivoMediaStreamBridge: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown>(socket: PlivoMediaStreamSocket, options: PlivoMediaStreamBridgeOptions<TContext, TSession, TResult>) => PlivoMediaStreamBridge;
202
+ export declare const signVoicePlivoWebhook: (input: {
203
+ authToken: string;
204
+ body?: unknown;
205
+ nonce: string;
206
+ url: string;
207
+ }) => Promise<string>;
208
+ export declare const verifyVoicePlivoWebhookSignature: (input: {
209
+ authToken?: string;
210
+ body?: unknown;
211
+ headers: Headers;
212
+ url: string;
213
+ }) => Promise<VoiceTelephonyWebhookVerificationResult>;
214
+ export declare const createMemoryVoicePlivoWebhookNonceStore: () => VoicePlivoWebhookNonceStore;
215
+ export declare const createVoiceSQLitePlivoWebhookNonceStore: (options: VoiceSQLitePlivoWebhookNonceStoreOptions) => VoicePlivoWebhookNonceStore;
216
+ export declare const createVoicePostgresPlivoWebhookNonceStore: (options?: VoicePostgresPlivoWebhookNonceStoreOptions) => VoicePlivoWebhookNonceStore;
217
+ export declare const createVoiceRedisPlivoWebhookNonceStore: (options?: VoiceRedisPlivoWebhookNonceStoreOptions) => VoicePlivoWebhookNonceStore;
218
+ export declare const createVoicePlivoWebhookVerifier: (options: VoicePlivoWebhookVerifierOptions) => (input: {
219
+ body: unknown;
220
+ headers: Headers;
221
+ query: Record<string, unknown>;
222
+ request: Request;
223
+ }) => Promise<VoiceTelephonyWebhookVerificationResult>;
224
+ export declare const createPlivoVoiceRoutes: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown>(options?: PlivoVoiceRoutesOptions<TContext, TSession, TResult>) => Elysia<"", {
225
+ decorator: {};
226
+ store: {};
227
+ derive: {};
228
+ resolve: {};
229
+ }, {
230
+ typebox: {};
231
+ error: {};
232
+ }, {
233
+ schema: {};
234
+ standaloneSchema: {};
235
+ macro: {};
236
+ macroFn: {};
237
+ parser: {};
238
+ response: {};
239
+ }, {
240
+ [x: string]: {
241
+ get: {
242
+ body: unknown;
243
+ params: {};
244
+ query: unknown;
245
+ headers: unknown;
246
+ response: {
247
+ 200: Response;
248
+ };
249
+ };
250
+ };
251
+ } & {
252
+ [x: string]: {
253
+ post: {
254
+ body: unknown;
255
+ params: {};
256
+ query: unknown;
257
+ headers: unknown;
258
+ response: {
259
+ 200: Response;
260
+ };
261
+ };
262
+ };
263
+ } & {
264
+ [x: string]: {
265
+ subscribe: {
266
+ body: unknown;
267
+ params: {};
268
+ query: unknown;
269
+ headers: unknown;
270
+ response: {};
271
+ };
272
+ };
273
+ } & {
274
+ [x: string]: {
275
+ post: {
276
+ body: unknown;
277
+ params: {};
278
+ query: unknown;
279
+ headers: unknown;
280
+ response: {
281
+ 200: Response | import("..").VoiceTelephonyWebhookDecision<TResult>;
282
+ };
283
+ };
284
+ };
285
+ }, {
286
+ derive: {};
287
+ resolve: {};
288
+ schema: {};
289
+ standaloneSchema: {};
290
+ response: {};
291
+ }, {
292
+ derive: {};
293
+ resolve: {};
294
+ schema: {};
295
+ standaloneSchema: {};
296
+ response: {};
297
+ } & {
298
+ derive: {};
299
+ resolve: {};
300
+ schema: {};
301
+ standaloneSchema: {};
302
+ response: {};
303
+ }>;
@@ -1,4 +1,4 @@
1
- export type TelephonyResponseShapeMode = 'full' | 'lead-clause';
1
+ export type TelephonyResponseShapeMode = "full" | "lead-clause";
2
2
  export type TelephonyResponseShapeOptions = {
3
3
  mode?: TelephonyResponseShapeMode;
4
4
  maxChars?: number;
@@ -0,0 +1,182 @@
1
+ import { type VoiceTelephonyWebhookIdempotencyStore, type VoiceTelephonyWebhookProvider, type VoiceTelephonyWebhookVerificationResult } from "../telephonyOutcome";
2
+ import { Elysia } from "elysia";
3
+ import { type VoicePostgresClient } from "../postgresStore";
4
+ import { type VoiceRedisTelephonyWebhookIdempotencyClient } from "../queue";
5
+ import { type VoicePlivoWebhookNonceStore, type VoiceRedisPlivoWebhookNonceClient } from "./plivo";
6
+ import { type VoiceRedisTelnyxWebhookEventClient, type VoiceTelnyxWebhookEventStore } from "./telnyx";
7
+ export type VoiceTelephonyWebhookSecurityStorePreset = {
8
+ kind?: "memory";
9
+ } | {
10
+ kind: "sqlite";
11
+ path: string;
12
+ tablePrefix?: string;
13
+ } | {
14
+ connectionString?: string;
15
+ kind: "postgres";
16
+ schemaName?: string;
17
+ sql?: VoicePostgresClient;
18
+ tablePrefix?: string;
19
+ } | {
20
+ idempotencyClient?: VoiceRedisTelephonyWebhookIdempotencyClient;
21
+ keyPrefix?: string;
22
+ kind: "redis";
23
+ plivoClient?: VoiceRedisPlivoWebhookNonceClient;
24
+ telnyxClient?: VoiceRedisTelnyxWebhookEventClient;
25
+ url?: string;
26
+ };
27
+ export type VoiceTelephonyWebhookSecurityOptions<TResult = unknown> = {
28
+ plivo?: {
29
+ authToken?: string;
30
+ nonceStore?: VoicePlivoWebhookNonceStore;
31
+ verificationUrl?: string | ((input: {
32
+ query: Record<string, unknown>;
33
+ request: Request;
34
+ }) => string);
35
+ };
36
+ store?: VoiceTelephonyWebhookSecurityStorePreset;
37
+ telnyx?: {
38
+ eventStore?: VoiceTelnyxWebhookEventStore;
39
+ publicKey?: string;
40
+ toleranceSeconds?: number;
41
+ };
42
+ ttlSeconds?: number;
43
+ twilio?: {
44
+ authToken?: string;
45
+ idempotencyStore?: VoiceTelephonyWebhookIdempotencyStore<TResult>;
46
+ verificationUrl?: string | ((input: {
47
+ query: Record<string, unknown>;
48
+ request: Request;
49
+ }) => string);
50
+ };
51
+ };
52
+ export type VoiceTelephonyWebhookSecurityPreset<TResult = unknown> = {
53
+ plivo: {
54
+ authToken?: string;
55
+ nonceStore: VoicePlivoWebhookNonceStore;
56
+ verify: (input: {
57
+ body: unknown;
58
+ headers: Headers;
59
+ query: Record<string, unknown>;
60
+ request: Request;
61
+ }) => Promise<VoiceTelephonyWebhookVerificationResult>;
62
+ };
63
+ telnyx: {
64
+ eventStore: VoiceTelnyxWebhookEventStore;
65
+ publicKey?: string;
66
+ toleranceSeconds?: number;
67
+ verify: (input: {
68
+ headers: Headers;
69
+ rawBody: string;
70
+ }) => Promise<VoiceTelephonyWebhookVerificationResult>;
71
+ };
72
+ twilio: {
73
+ idempotency: {
74
+ enabled: true;
75
+ store: VoiceTelephonyWebhookIdempotencyStore<TResult>;
76
+ };
77
+ requireVerification: true;
78
+ signingSecret?: string;
79
+ verificationUrl?: string | ((input: {
80
+ query: Record<string, unknown>;
81
+ request: Request;
82
+ }) => string);
83
+ verify: (input: {
84
+ body: unknown;
85
+ headers: Headers;
86
+ query: Record<string, unknown>;
87
+ request: Request;
88
+ }) => Promise<VoiceTelephonyWebhookVerificationResult>;
89
+ };
90
+ verify: {
91
+ plivo: VoiceTelephonyWebhookSecurityPreset<TResult>["plivo"]["verify"];
92
+ telnyx: VoiceTelephonyWebhookSecurityPreset<TResult>["telnyx"]["verify"];
93
+ twilio: VoiceTelephonyWebhookSecurityPreset<TResult>["twilio"]["verify"];
94
+ };
95
+ };
96
+ export type VoiceTelephonyWebhookSecurityProviderStatus = {
97
+ checks: {
98
+ idempotency?: boolean;
99
+ persistentStore: boolean;
100
+ replayProtection: boolean;
101
+ verification: boolean;
102
+ };
103
+ enabled: boolean;
104
+ issues: string[];
105
+ provider: VoiceTelephonyWebhookProvider;
106
+ status: "fail" | "pass" | "warn";
107
+ store: VoiceTelephonyWebhookSecurityStorePreset["kind"] | "memory";
108
+ };
109
+ export type VoiceTelephonyWebhookSecurityReport = {
110
+ generatedAt: number;
111
+ ok: boolean;
112
+ providers: VoiceTelephonyWebhookSecurityProviderStatus[];
113
+ status: "fail" | "pass" | "warn";
114
+ summary: {
115
+ enabled: number;
116
+ failed: number;
117
+ passed: number;
118
+ warned: number;
119
+ };
120
+ };
121
+ export type VoiceTelephonyWebhookSecurityAssertionInput = {
122
+ maxFailedProviders?: number;
123
+ minEnabledProviders?: number;
124
+ requirePersistentStores?: boolean;
125
+ requiredProviders?: VoiceTelephonyWebhookProvider[];
126
+ };
127
+ export type VoiceTelephonyWebhookSecurityAssertionReport = {
128
+ failedProviders: VoiceTelephonyWebhookProvider[];
129
+ issues: string[];
130
+ ok: boolean;
131
+ passingProviders: VoiceTelephonyWebhookProvider[];
132
+ status: VoiceTelephonyWebhookSecurityReport["status"];
133
+ };
134
+ export type VoiceTelephonyWebhookSecurityRoutesOptions<TResult = unknown> = {
135
+ name?: string;
136
+ options: VoiceTelephonyWebhookSecurityOptions<TResult>;
137
+ path?: string;
138
+ };
139
+ export declare const buildVoiceTelephonyWebhookSecurityReport: <TResult = unknown>(options?: VoiceTelephonyWebhookSecurityOptions<TResult>) => VoiceTelephonyWebhookSecurityReport;
140
+ export declare const evaluateVoiceTelephonyWebhookSecurityEvidence: (report: VoiceTelephonyWebhookSecurityReport, input?: VoiceTelephonyWebhookSecurityAssertionInput) => VoiceTelephonyWebhookSecurityAssertionReport;
141
+ export declare const assertVoiceTelephonyWebhookSecurityEvidence: (report: VoiceTelephonyWebhookSecurityReport, input?: VoiceTelephonyWebhookSecurityAssertionInput) => VoiceTelephonyWebhookSecurityAssertionReport;
142
+ export declare const createVoiceTelephonyWebhookSecurityRoutes: <TResult = unknown>(options: VoiceTelephonyWebhookSecurityRoutesOptions<TResult>) => Elysia<"", {
143
+ decorator: {};
144
+ store: {};
145
+ derive: {};
146
+ resolve: {};
147
+ }, {
148
+ typebox: {};
149
+ error: {};
150
+ }, {
151
+ schema: {};
152
+ standaloneSchema: {};
153
+ macro: {};
154
+ macroFn: {};
155
+ parser: {};
156
+ response: {};
157
+ }, {
158
+ [x: string]: {
159
+ get: {
160
+ body: unknown;
161
+ params: {};
162
+ query: unknown;
163
+ headers: unknown;
164
+ response: {
165
+ 200: VoiceTelephonyWebhookSecurityReport;
166
+ };
167
+ };
168
+ };
169
+ }, {
170
+ derive: {};
171
+ resolve: {};
172
+ schema: {};
173
+ standaloneSchema: {};
174
+ response: {};
175
+ }, {
176
+ derive: {};
177
+ resolve: {};
178
+ schema: {};
179
+ standaloneSchema: {};
180
+ response: {};
181
+ }>;
182
+ export declare const createVoiceTelephonyWebhookSecurityPreset: <TResult = unknown>(options?: VoiceTelephonyWebhookSecurityOptions<TResult>) => VoiceTelephonyWebhookSecurityPreset<TResult>;