@absolutejs/voice 0.0.22-beta.9 → 0.0.22-beta.91

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 (121) hide show
  1. package/README.md +205 -0
  2. package/dist/agent.d.ts +2 -0
  3. package/dist/angular/index.d.ts +7 -0
  4. package/dist/angular/index.js +957 -43
  5. package/dist/angular/voice-app-kit-status.service.d.ts +12 -0
  6. package/dist/angular/voice-ops-status.component.d.ts +15 -0
  7. package/dist/angular/voice-provider-capabilities.service.d.ts +12 -0
  8. package/dist/angular/voice-provider-status.service.d.ts +12 -0
  9. package/dist/angular/voice-routing-status.service.d.ts +11 -0
  10. package/dist/angular/voice-stream.service.d.ts +2 -0
  11. package/dist/angular/voice-trace-timeline.service.d.ts +12 -0
  12. package/dist/angular/voice-turn-quality.service.d.ts +12 -0
  13. package/dist/angular/voice-workflow-status.service.d.ts +12 -0
  14. package/dist/appKit.d.ts +98 -0
  15. package/dist/assistantHealth.d.ts +81 -0
  16. package/dist/client/actions.d.ts +22 -0
  17. package/dist/client/appKitStatus.d.ts +19 -0
  18. package/dist/client/connection.d.ts +3 -0
  19. package/dist/client/htmxBootstrap.js +44 -2
  20. package/dist/client/index.d.ts +30 -0
  21. package/dist/client/index.js +1463 -2
  22. package/dist/client/opsStatusWidget.d.ts +40 -0
  23. package/dist/client/providerCapabilities.d.ts +19 -0
  24. package/dist/client/providerCapabilitiesWidget.d.ts +32 -0
  25. package/dist/client/providerSimulationControls.d.ts +33 -0
  26. package/dist/client/providerSimulationControlsWidget.d.ts +20 -0
  27. package/dist/client/providerStatus.d.ts +19 -0
  28. package/dist/client/providerStatusWidget.d.ts +32 -0
  29. package/dist/client/routingStatus.d.ts +19 -0
  30. package/dist/client/routingStatusWidget.d.ts +28 -0
  31. package/dist/client/traceTimeline.d.ts +19 -0
  32. package/dist/client/traceTimelineWidget.d.ts +32 -0
  33. package/dist/client/turnQuality.d.ts +19 -0
  34. package/dist/client/turnQualityWidget.d.ts +32 -0
  35. package/dist/client/workflowStatus.d.ts +19 -0
  36. package/dist/diagnosticsRoutes.d.ts +44 -0
  37. package/dist/evalRoutes.d.ts +213 -0
  38. package/dist/handoff.d.ts +54 -0
  39. package/dist/handoffHealth.d.ts +94 -0
  40. package/dist/index.d.ts +62 -7
  41. package/dist/index.js +10382 -2574
  42. package/dist/modelAdapters.d.ts +75 -0
  43. package/dist/openaiTTS.d.ts +18 -0
  44. package/dist/opsConsoleRoutes.d.ts +77 -0
  45. package/dist/opsWebhook.d.ts +126 -0
  46. package/dist/outcomeContract.d.ts +112 -0
  47. package/dist/postgresStore.d.ts +2 -0
  48. package/dist/productionReadiness.d.ts +111 -0
  49. package/dist/providerAdapters.d.ts +48 -0
  50. package/dist/providerCapabilities.d.ts +92 -0
  51. package/dist/providerHealth.d.ts +79 -0
  52. package/dist/qualityRoutes.d.ts +76 -0
  53. package/dist/queue.d.ts +61 -0
  54. package/dist/react/VoiceOpsStatus.d.ts +6 -0
  55. package/dist/react/VoiceProviderCapabilities.d.ts +6 -0
  56. package/dist/react/VoiceProviderSimulationControls.d.ts +5 -0
  57. package/dist/react/VoiceProviderStatus.d.ts +6 -0
  58. package/dist/react/VoiceRoutingStatus.d.ts +6 -0
  59. package/dist/react/VoiceTraceTimeline.d.ts +6 -0
  60. package/dist/react/VoiceTurnQuality.d.ts +6 -0
  61. package/dist/react/index.d.ts +15 -0
  62. package/dist/react/index.js +2150 -11
  63. package/dist/react/useVoiceAppKitStatus.d.ts +8 -0
  64. package/dist/react/useVoiceController.d.ts +2 -0
  65. package/dist/react/useVoiceProviderCapabilities.d.ts +8 -0
  66. package/dist/react/useVoiceProviderSimulationControls.d.ts +10 -0
  67. package/dist/react/useVoiceProviderStatus.d.ts +8 -0
  68. package/dist/react/useVoiceRoutingStatus.d.ts +8 -0
  69. package/dist/react/useVoiceStream.d.ts +2 -0
  70. package/dist/react/useVoiceTraceTimeline.d.ts +8 -0
  71. package/dist/react/useVoiceTurnQuality.d.ts +8 -0
  72. package/dist/react/useVoiceWorkflowStatus.d.ts +8 -0
  73. package/dist/resilienceRoutes.d.ts +142 -0
  74. package/dist/sessionReplay.d.ts +175 -0
  75. package/dist/sqliteStore.d.ts +2 -0
  76. package/dist/svelte/createVoiceAppKitStatus.d.ts +8 -0
  77. package/dist/svelte/createVoiceOpsStatus.d.ts +9 -0
  78. package/dist/svelte/createVoiceProviderCapabilities.d.ts +10 -0
  79. package/dist/svelte/createVoiceProviderSimulationControls.d.ts +11 -0
  80. package/dist/svelte/createVoiceProviderStatus.d.ts +10 -0
  81. package/dist/svelte/createVoiceRoutingStatus.d.ts +10 -0
  82. package/dist/svelte/createVoiceTraceTimeline.d.ts +10 -0
  83. package/dist/svelte/createVoiceTurnQuality.d.ts +10 -0
  84. package/dist/svelte/createVoiceWorkflowStatus.d.ts +8 -0
  85. package/dist/svelte/index.d.ts +9 -0
  86. package/dist/svelte/index.js +1508 -3
  87. package/dist/telephony/contract.d.ts +61 -0
  88. package/dist/telephony/matrix.d.ts +97 -0
  89. package/dist/telephony/plivo.d.ts +254 -0
  90. package/dist/telephony/telnyx.d.ts +247 -0
  91. package/dist/telephony/twilio.d.ts +132 -0
  92. package/dist/telephonyOutcome.d.ts +201 -0
  93. package/dist/testing/index.d.ts +2 -0
  94. package/dist/testing/index.js +2543 -14
  95. package/dist/testing/ioProviderSimulator.d.ts +41 -0
  96. package/dist/testing/providerSimulator.d.ts +44 -0
  97. package/dist/toolContract.d.ts +130 -0
  98. package/dist/toolRuntime.d.ts +50 -0
  99. package/dist/trace.d.ts +1 -1
  100. package/dist/traceTimeline.d.ts +93 -0
  101. package/dist/turnQuality.d.ts +94 -0
  102. package/dist/types.d.ts +84 -2
  103. package/dist/vue/VoiceOpsStatus.d.ts +30 -0
  104. package/dist/vue/VoiceProviderCapabilities.d.ts +51 -0
  105. package/dist/vue/VoiceProviderSimulationControls.d.ts +88 -0
  106. package/dist/vue/VoiceProviderStatus.d.ts +51 -0
  107. package/dist/vue/VoiceRoutingStatus.d.ts +51 -0
  108. package/dist/vue/VoiceTurnQuality.d.ts +51 -0
  109. package/dist/vue/index.d.ts +14 -0
  110. package/dist/vue/index.js +2047 -25
  111. package/dist/vue/useVoiceAppKitStatus.d.ts +9 -0
  112. package/dist/vue/useVoiceProviderCapabilities.d.ts +9 -0
  113. package/dist/vue/useVoiceProviderSimulationControls.d.ts +24 -0
  114. package/dist/vue/useVoiceProviderStatus.d.ts +9 -0
  115. package/dist/vue/useVoiceRoutingStatus.d.ts +8 -0
  116. package/dist/vue/useVoiceStream.d.ts +2 -0
  117. package/dist/vue/useVoiceTraceTimeline.d.ts +9 -0
  118. package/dist/vue/useVoiceTurnQuality.d.ts +9 -0
  119. package/dist/vue/useVoiceWorkflowStatus.d.ts +9 -0
  120. package/dist/workflowContract.d.ts +91 -0
  121. package/package.json +1 -1
@@ -0,0 +1,92 @@
1
+ import { Elysia } from 'elysia';
2
+ import { type VoiceProviderHealthStatus, type VoiceProviderHealthSummary, type VoiceProviderHealthSummaryOptions } from './providerHealth';
3
+ export type VoiceProviderCapabilityKind = 'llm' | 'stt' | 'tts' | 'custom';
4
+ export type VoiceProviderCapabilityDefinition<TProvider extends string = string> = {
5
+ configured?: boolean;
6
+ description?: string;
7
+ features?: string[];
8
+ kind: VoiceProviderCapabilityKind;
9
+ label?: string;
10
+ model?: string;
11
+ provider: TProvider;
12
+ selected?: boolean;
13
+ };
14
+ export type VoiceProviderCapabilitySummary<TProvider extends string = string> = VoiceProviderCapabilityDefinition<TProvider> & {
15
+ configured: boolean;
16
+ health?: VoiceProviderHealthSummary<TProvider>;
17
+ status: VoiceProviderHealthStatus | 'selected' | 'unconfigured';
18
+ };
19
+ export type VoiceProviderCapabilityReport<TProvider extends string = string> = {
20
+ capabilities: VoiceProviderCapabilitySummary<TProvider>[];
21
+ checkedAt: number;
22
+ configured: number;
23
+ selected: number;
24
+ total: number;
25
+ unconfigured: number;
26
+ };
27
+ export type VoiceProviderCapabilityOptions<TProvider extends string = string> = VoiceProviderHealthSummaryOptions<TProvider> & {
28
+ features?: Partial<Record<TProvider, string[]>>;
29
+ llmProviders?: readonly TProvider[];
30
+ models?: Partial<Record<TProvider, string>>;
31
+ providers?: readonly VoiceProviderCapabilityDefinition<TProvider>[];
32
+ selected?: Partial<Record<VoiceProviderCapabilityKind, TProvider>>;
33
+ sttProviders?: readonly TProvider[];
34
+ ttsProviders?: readonly TProvider[];
35
+ };
36
+ export type VoiceProviderCapabilityHandlerOptions<TProvider extends string = string> = VoiceProviderCapabilityOptions<TProvider>;
37
+ export type VoiceProviderCapabilityHTMLHandlerOptions<TProvider extends string = string> = VoiceProviderCapabilityHandlerOptions<TProvider> & {
38
+ headers?: HeadersInit;
39
+ render?: (report: VoiceProviderCapabilityReport<TProvider>) => string | Promise<string>;
40
+ title?: string;
41
+ };
42
+ export type VoiceProviderCapabilityRoutesOptions<TProvider extends string = string> = VoiceProviderCapabilityHTMLHandlerOptions<TProvider> & {
43
+ htmlPath?: false | string;
44
+ name?: string;
45
+ path?: string;
46
+ };
47
+ export declare const summarizeVoiceProviderCapabilities: <TProvider extends string = string>(options: VoiceProviderCapabilityOptions<TProvider>) => Promise<VoiceProviderCapabilityReport<TProvider>>;
48
+ export declare const renderVoiceProviderCapabilityHTML: <TProvider extends string = string>(report: VoiceProviderCapabilityReport<TProvider>, options?: {
49
+ title?: string;
50
+ }) => string;
51
+ export declare const createVoiceProviderCapabilityJSONHandler: <TProvider extends string = string>(options: VoiceProviderCapabilityHandlerOptions<TProvider>) => () => Promise<VoiceProviderCapabilityReport<TProvider>>;
52
+ export declare const createVoiceProviderCapabilityHTMLHandler: <TProvider extends string = string>(options: VoiceProviderCapabilityHTMLHandlerOptions<TProvider>) => () => Promise<Response>;
53
+ export declare const createVoiceProviderCapabilityRoutes: <TProvider extends string = string>(options: VoiceProviderCapabilityRoutesOptions<TProvider>) => Elysia<"", {
54
+ decorator: {};
55
+ store: {};
56
+ derive: {};
57
+ resolve: {};
58
+ }, {
59
+ typebox: {};
60
+ error: {};
61
+ }, {
62
+ schema: {};
63
+ standaloneSchema: {};
64
+ macro: {};
65
+ macroFn: {};
66
+ parser: {};
67
+ response: {};
68
+ }, {
69
+ [x: string]: {
70
+ get: {
71
+ body: unknown;
72
+ params: {};
73
+ query: unknown;
74
+ headers: unknown;
75
+ response: {
76
+ 200: VoiceProviderCapabilityReport<TProvider>;
77
+ };
78
+ };
79
+ };
80
+ }, {
81
+ derive: {};
82
+ resolve: {};
83
+ schema: {};
84
+ standaloneSchema: {};
85
+ response: {};
86
+ }, {
87
+ derive: {};
88
+ resolve: {};
89
+ schema: {};
90
+ standaloneSchema: {};
91
+ response: {};
92
+ }>;
@@ -0,0 +1,79 @@
1
+ import { Elysia } from 'elysia';
2
+ import type { StoredVoiceTraceEvent, VoiceTraceEventStore } from './trace';
3
+ export type VoiceProviderHealthStatus = 'healthy' | 'idle' | 'rate-limited' | 'degraded' | 'recoverable' | 'suppressed';
4
+ export type VoiceProviderHealthSummary<TProvider extends string = string> = {
5
+ averageElapsedMs?: number;
6
+ errorCount: number;
7
+ fallbackCount: number;
8
+ lastError?: string;
9
+ lastErrorAt?: number;
10
+ lastSuccessAt?: number;
11
+ provider: TProvider;
12
+ rateLimited: boolean;
13
+ recommended: boolean;
14
+ runCount: number;
15
+ status: VoiceProviderHealthStatus;
16
+ suppressionRemainingMs?: number;
17
+ suppressedUntil?: number;
18
+ timeoutCount: number;
19
+ };
20
+ export type VoiceProviderHealthSummaryOptions<TProvider extends string = string> = {
21
+ events?: StoredVoiceTraceEvent[];
22
+ now?: number;
23
+ providers?: readonly TProvider[];
24
+ store?: VoiceTraceEventStore;
25
+ };
26
+ export type VoiceProviderHealthHandlerOptions<TProvider extends string = string> = VoiceProviderHealthSummaryOptions<TProvider>;
27
+ export type VoiceProviderHealthHTMLHandlerOptions<TProvider extends string = string> = VoiceProviderHealthHandlerOptions<TProvider> & {
28
+ headers?: HeadersInit;
29
+ render?: (providers: VoiceProviderHealthSummary<TProvider>[]) => string | Promise<string>;
30
+ };
31
+ export type VoiceProviderHealthRoutesOptions<TProvider extends string = string> = VoiceProviderHealthHTMLHandlerOptions<TProvider> & {
32
+ htmlPath?: false | string;
33
+ name?: string;
34
+ path?: string;
35
+ };
36
+ export declare const summarizeVoiceProviderHealth: <TProvider extends string = string>(input: StoredVoiceTraceEvent[] | VoiceProviderHealthSummaryOptions<TProvider>) => Promise<VoiceProviderHealthSummary<TProvider>[]>;
37
+ export declare const renderVoiceProviderHealthHTML: (providers: VoiceProviderHealthSummary[]) => string;
38
+ export declare const createVoiceProviderHealthJSONHandler: <TProvider extends string = string>(options: VoiceProviderHealthHandlerOptions<TProvider>) => () => Promise<VoiceProviderHealthSummary<TProvider>[]>;
39
+ export declare const createVoiceProviderHealthHTMLHandler: <TProvider extends string = string>(options: VoiceProviderHealthHTMLHandlerOptions<TProvider>) => () => Promise<Response>;
40
+ export declare const createVoiceProviderHealthRoutes: <TProvider extends string = string>(options: VoiceProviderHealthRoutesOptions<TProvider>) => Elysia<"", {
41
+ decorator: {};
42
+ store: {};
43
+ derive: {};
44
+ resolve: {};
45
+ }, {
46
+ typebox: {};
47
+ error: {};
48
+ }, {
49
+ schema: {};
50
+ standaloneSchema: {};
51
+ macro: {};
52
+ macroFn: {};
53
+ parser: {};
54
+ response: {};
55
+ }, {
56
+ [x: string]: {
57
+ get: {
58
+ body: unknown;
59
+ params: {};
60
+ query: unknown;
61
+ headers: unknown;
62
+ response: {
63
+ 200: VoiceProviderHealthSummary<TProvider>[];
64
+ };
65
+ };
66
+ };
67
+ }, {
68
+ derive: {};
69
+ resolve: {};
70
+ schema: {};
71
+ standaloneSchema: {};
72
+ response: {};
73
+ }, {
74
+ derive: {};
75
+ resolve: {};
76
+ schema: {};
77
+ standaloneSchema: {};
78
+ response: {};
79
+ }>;
@@ -0,0 +1,76 @@
1
+ import { Elysia } from 'elysia';
2
+ import { type StoredVoiceTraceEvent, type VoiceTraceEventStore } from './trace';
3
+ export type VoiceQualityStatus = 'pass' | 'fail';
4
+ export type VoiceQualityThresholds = {
5
+ maxDuplicateTurnRate?: number;
6
+ maxEmptyTurnRate?: number;
7
+ maxHandoffFailureRate?: number;
8
+ maxMissingAssistantReplyRate?: number;
9
+ maxProviderAverageLatencyMs?: number;
10
+ maxProviderErrorRate?: number;
11
+ maxProviderFallbackRate?: number;
12
+ maxProviderTimeoutRate?: number;
13
+ };
14
+ export type VoiceQualityMetric = {
15
+ actual: number;
16
+ label: string;
17
+ pass: boolean;
18
+ threshold: number;
19
+ unit: 'count' | 'ms' | 'rate';
20
+ };
21
+ export type VoiceQualityReport = {
22
+ checkedAt: number;
23
+ eventCount: number;
24
+ metrics: Record<string, VoiceQualityMetric>;
25
+ status: VoiceQualityStatus;
26
+ thresholds: Required<VoiceQualityThresholds>;
27
+ };
28
+ export type VoiceQualityLink = {
29
+ href: string;
30
+ label: string;
31
+ };
32
+ export type VoiceQualityRoutesOptions = {
33
+ events?: StoredVoiceTraceEvent[];
34
+ headers?: HeadersInit;
35
+ links?: VoiceQualityLink[];
36
+ name?: string;
37
+ path?: string;
38
+ store?: VoiceTraceEventStore;
39
+ thresholds?: VoiceQualityThresholds;
40
+ };
41
+ export declare const evaluateVoiceQuality: (input: {
42
+ events?: StoredVoiceTraceEvent[];
43
+ store?: VoiceTraceEventStore;
44
+ thresholds?: VoiceQualityThresholds;
45
+ }) => Promise<VoiceQualityReport>;
46
+ export declare const renderVoiceQualityHTML: (report: VoiceQualityReport, options?: {
47
+ links?: VoiceQualityLink[];
48
+ }) => string;
49
+ export declare const createVoiceQualityRoutes: (options: VoiceQualityRoutesOptions) => Elysia<"", {
50
+ decorator: {};
51
+ store: {};
52
+ derive: {};
53
+ resolve: {};
54
+ }, {
55
+ typebox: {};
56
+ error: {};
57
+ }, {
58
+ schema: {};
59
+ standaloneSchema: {};
60
+ macro: {};
61
+ macroFn: {};
62
+ parser: {};
63
+ response: {};
64
+ }, {}, {
65
+ derive: {};
66
+ resolve: {};
67
+ schema: {};
68
+ standaloneSchema: {};
69
+ response: {};
70
+ }, {
71
+ derive: {};
72
+ resolve: {};
73
+ schema: {};
74
+ standaloneSchema: {};
75
+ response: {};
76
+ }>;
package/dist/queue.d.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  import type { RedisClient } from 'bun';
2
2
  import type { VoiceIntegrationSink } from './opsSinks';
3
3
  import type { VoiceTraceRedactionConfig, VoiceTraceSink, VoiceTraceSinkDeliveryRecord, VoiceTraceSinkDeliveryStore, VoiceTraceSinkDeliveryQueueStatus } from './trace';
4
+ import type { VoiceTelephonyWebhookIdempotencyStore } from './telephonyOutcome';
5
+ import type { StoredVoiceHandoffDelivery, VoiceHandoffAdapter, VoiceHandoffDeliveryQueueStatus, VoiceHandoffDeliveryStore, VoiceSessionHandle, VoiceSessionRecord } from './types';
4
6
  import type { VoiceOpsTaskPriority, StoredVoiceOpsTask, StoredVoiceIntegrationEvent, VoiceIntegrationDeliveryStatus, VoiceIntegrationEventStore, VoiceIntegrationWebhookConfig, VoiceOpsTaskKind, VoiceOpsTaskStatus, VoiceOpsTaskStore } from './ops';
5
7
  export type VoiceOpsTaskLease = {
6
8
  expiresAt: number;
@@ -44,6 +46,13 @@ export type VoiceRedisIdempotencyStoreOptions = {
44
46
  ttlSeconds?: number;
45
47
  url?: string;
46
48
  };
49
+ export type VoiceRedisTelephonyWebhookIdempotencyClient = Pick<RedisClient, 'get' | 'set'>;
50
+ export type VoiceRedisTelephonyWebhookIdempotencyStoreOptions = {
51
+ client?: VoiceRedisTelephonyWebhookIdempotencyClient;
52
+ keyPrefix?: string;
53
+ ttlSeconds?: number;
54
+ url?: string;
55
+ };
47
56
  export type VoiceWebhookDeliveryWorkerOptions<TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent> = {
48
57
  deadLetters?: VoiceIntegrationEventStore<TEvent>;
49
58
  events: VoiceIntegrationEventStore<TEvent>;
@@ -159,6 +168,50 @@ export type VoiceTraceSinkDeliveryQueueSummary = {
159
168
  skipped: number;
160
169
  total: number;
161
170
  };
171
+ export type VoiceHandoffDeliveryWorkerOptions<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown, TDelivery extends StoredVoiceHandoffDelivery<TContext, TSession, TResult> = StoredVoiceHandoffDelivery<TContext, TSession, TResult>> = {
172
+ adapters: VoiceHandoffAdapter<TContext, TSession, TResult>[];
173
+ api: VoiceSessionHandle<TContext, TSession, TResult>;
174
+ deadLetters?: VoiceHandoffDeliveryStore<TDelivery>;
175
+ deliveries: VoiceHandoffDeliveryStore<TDelivery>;
176
+ failMode?: 'record' | 'throw';
177
+ idempotency?: VoiceIdempotencyStore;
178
+ idempotencyTtlSeconds?: number;
179
+ leaseMs?: number;
180
+ leases: VoiceRedisTaskLeaseCoordinator;
181
+ maxFailures?: number;
182
+ onDeadLetter?: (delivery: TDelivery) => Promise<void> | void;
183
+ statuses?: VoiceHandoffDeliveryQueueStatus[];
184
+ workerId: string;
185
+ };
186
+ export type VoiceHandoffDeliveryWorkerResult = {
187
+ alreadyProcessed: number;
188
+ attempted: number;
189
+ deadLettered: number;
190
+ delivered: number;
191
+ failed: number;
192
+ skipped: number;
193
+ };
194
+ export type VoiceHandoffDeliveryWorkerLoopOptions<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown, TDelivery extends StoredVoiceHandoffDelivery<TContext, TSession, TResult> = StoredVoiceHandoffDelivery<TContext, TSession, TResult>> = {
195
+ onError?: (error: unknown) => Promise<void> | void;
196
+ pollIntervalMs?: number;
197
+ worker: ReturnType<typeof createVoiceHandoffDeliveryWorker<TContext, TSession, TResult, TDelivery>>;
198
+ };
199
+ export type VoiceHandoffDeliveryWorkerLoop = {
200
+ isRunning: () => boolean;
201
+ start: () => void;
202
+ stop: () => void;
203
+ tick: () => Promise<VoiceHandoffDeliveryWorkerResult>;
204
+ };
205
+ export type VoiceHandoffDeliveryQueueSummary = {
206
+ byAction: Array<[StoredVoiceHandoffDelivery['action'], number]>;
207
+ deadLettered: number;
208
+ delivered: number;
209
+ failed: number;
210
+ pending: number;
211
+ retryEligible: number;
212
+ skipped: number;
213
+ total: number;
214
+ };
162
215
  export type VoiceOpsTaskWorkerOptions<TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask> = {
163
216
  leaseMs?: number;
164
217
  leases: VoiceRedisTaskLeaseCoordinator;
@@ -252,11 +305,15 @@ export declare const summarizeVoiceIntegrationEvents: <TEvent extends StoredVoic
252
305
  export declare const summarizeVoiceTraceSinkDeliveries: <TDelivery extends VoiceTraceSinkDeliveryRecord = VoiceTraceSinkDeliveryRecord>(deliveries: TDelivery[], input?: {
253
306
  deadLetters?: VoiceTraceSinkDeliveryStore<TDelivery>;
254
307
  }) => Promise<VoiceTraceSinkDeliveryQueueSummary> | VoiceTraceSinkDeliveryQueueSummary;
308
+ export declare const summarizeVoiceHandoffDeliveries: <TDelivery extends StoredVoiceHandoffDelivery = StoredVoiceHandoffDelivery>(deliveries: TDelivery[], input?: {
309
+ deadLetters?: VoiceHandoffDeliveryStore<TDelivery>;
310
+ }) => Promise<VoiceHandoffDeliveryQueueSummary> | VoiceHandoffDeliveryQueueSummary;
255
311
  export declare const summarizeVoiceOpsTaskQueue: <TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask>(tasks: TTask[], input?: {
256
312
  deadLetters?: VoiceOpsTaskStore<TTask>;
257
313
  }) => Promise<VoiceOpsTaskQueueSummary> | VoiceOpsTaskQueueSummary;
258
314
  export declare const createVoiceRedisTaskLeaseCoordinator: (options?: VoiceRedisTaskLeaseCoordinatorOptions) => VoiceRedisTaskLeaseCoordinator;
259
315
  export declare const createVoiceRedisIdempotencyStore: (options?: VoiceRedisIdempotencyStoreOptions) => VoiceIdempotencyStore;
316
+ export declare const createVoiceRedisTelephonyWebhookIdempotencyStore: <TResult = unknown>(options?: VoiceRedisTelephonyWebhookIdempotencyStoreOptions) => VoiceTelephonyWebhookIdempotencyStore<TResult>;
260
317
  export declare const createVoiceWebhookDeliveryWorker: <TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent>(options: VoiceWebhookDeliveryWorkerOptions<TEvent>) => {
261
318
  drain: () => Promise<VoiceWebhookDeliveryWorkerResult>;
262
319
  };
@@ -269,6 +326,10 @@ export declare const createVoiceTraceSinkDeliveryWorker: <TDelivery extends Voic
269
326
  drain: () => Promise<VoiceTraceSinkDeliveryWorkerResult>;
270
327
  };
271
328
  export declare const createVoiceTraceSinkDeliveryWorkerLoop: <TDelivery extends VoiceTraceSinkDeliveryRecord = VoiceTraceSinkDeliveryRecord>(options: VoiceTraceSinkDeliveryWorkerLoopOptions<TDelivery>) => VoiceTraceSinkDeliveryWorkerLoop;
329
+ export declare const createVoiceHandoffDeliveryWorker: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown, TDelivery extends StoredVoiceHandoffDelivery<TContext, TSession, TResult> = StoredVoiceHandoffDelivery<TContext, TSession, TResult>>(options: VoiceHandoffDeliveryWorkerOptions<TContext, TSession, TResult, TDelivery>) => {
330
+ drain: () => Promise<VoiceHandoffDeliveryWorkerResult>;
331
+ };
332
+ export declare const createVoiceHandoffDeliveryWorkerLoop: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown, TDelivery extends StoredVoiceHandoffDelivery<TContext, TSession, TResult> = StoredVoiceHandoffDelivery<TContext, TSession, TResult>>(options: VoiceHandoffDeliveryWorkerLoopOptions<TContext, TSession, TResult, TDelivery>) => VoiceHandoffDeliveryWorkerLoop;
272
333
  export declare const createVoiceOpsTaskWorker: <TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask>(options: VoiceOpsTaskWorkerOptions<TTask>) => VoiceOpsTaskWorker<TTask>;
273
334
  export declare const createVoiceOpsTaskProcessorWorker: <TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask>(options: VoiceOpsTaskProcessorWorkerOptions<TTask>) => {
274
335
  drain: () => Promise<VoiceOpsTaskProcessorWorkerResult>;
@@ -0,0 +1,6 @@
1
+ import { type VoiceOpsStatusWidgetOptions } from '../client/opsStatusWidget';
2
+ export type VoiceOpsStatusProps = VoiceOpsStatusWidgetOptions & {
3
+ className?: string;
4
+ path?: string;
5
+ };
6
+ export declare const VoiceOpsStatus: ({ className, path, ...options }: VoiceOpsStatusProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { type VoiceProviderCapabilitiesWidgetOptions } from '../client/providerCapabilitiesWidget';
2
+ export type VoiceProviderCapabilitiesProps = VoiceProviderCapabilitiesWidgetOptions & {
3
+ className?: string;
4
+ path?: string;
5
+ };
6
+ export declare const VoiceProviderCapabilities: ({ className, path, ...options }: VoiceProviderCapabilitiesProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import type { VoiceProviderSimulationControlsOptions } from '../client/providerSimulationControls';
2
+ export type VoiceProviderSimulationControlsProps<TProvider extends string = string> = VoiceProviderSimulationControlsOptions<TProvider> & {
3
+ className?: string;
4
+ };
5
+ export declare const VoiceProviderSimulationControls: <TProvider extends string = string>({ className, ...options }: VoiceProviderSimulationControlsProps<TProvider>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { type VoiceProviderStatusWidgetOptions } from '../client/providerStatusWidget';
2
+ export type VoiceProviderStatusProps = VoiceProviderStatusWidgetOptions & {
3
+ className?: string;
4
+ path?: string;
5
+ };
6
+ export declare const VoiceProviderStatus: ({ className, path, ...options }: VoiceProviderStatusProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { type VoiceRoutingStatusWidgetOptions } from '../client/routingStatusWidget';
2
+ export type VoiceRoutingStatusProps = VoiceRoutingStatusWidgetOptions & {
3
+ className?: string;
4
+ path?: string;
5
+ };
6
+ export declare const VoiceRoutingStatus: ({ className, path, ...options }: VoiceRoutingStatusProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { type VoiceTraceTimelineWidgetOptions } from '../client/traceTimelineWidget';
2
+ export type VoiceTraceTimelineProps = VoiceTraceTimelineWidgetOptions & {
3
+ className?: string;
4
+ path?: string;
5
+ };
6
+ export declare const VoiceTraceTimeline: ({ className, path, ...options }: VoiceTraceTimelineProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { type VoiceTurnQualityWidgetOptions } from '../client/turnQualityWidget';
2
+ export type VoiceTurnQualityProps = VoiceTurnQualityWidgetOptions & {
3
+ className?: string;
4
+ path?: string;
5
+ };
6
+ export declare const VoiceTurnQuality: ({ className, path, ...options }: VoiceTurnQualityProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,2 +1,17 @@
1
+ export { VoiceOpsStatus } from './VoiceOpsStatus';
2
+ export { VoiceProviderSimulationControls } from './VoiceProviderSimulationControls';
3
+ export { VoiceProviderCapabilities } from './VoiceProviderCapabilities';
4
+ export { VoiceProviderStatus } from './VoiceProviderStatus';
5
+ export { VoiceRoutingStatus } from './VoiceRoutingStatus';
6
+ export { VoiceTraceTimeline } from './VoiceTraceTimeline';
7
+ export { VoiceTurnQuality } from './VoiceTurnQuality';
8
+ export { useVoiceAppKitStatus } from './useVoiceAppKitStatus';
1
9
  export { useVoiceStream } from './useVoiceStream';
2
10
  export { useVoiceController } from './useVoiceController';
11
+ export { useVoiceProviderStatus } from './useVoiceProviderStatus';
12
+ export { useVoiceProviderCapabilities } from './useVoiceProviderCapabilities';
13
+ export { useVoiceProviderSimulationControls } from './useVoiceProviderSimulationControls';
14
+ export { useVoiceRoutingStatus } from './useVoiceRoutingStatus';
15
+ export { useVoiceTraceTimeline } from './useVoiceTraceTimeline';
16
+ export { useVoiceTurnQuality } from './useVoiceTurnQuality';
17
+ export { useVoiceWorkflowStatus } from './useVoiceWorkflowStatus';