@absolutejs/voice 0.0.22-beta.0 → 0.0.22-beta.2

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.
@@ -0,0 +1,113 @@
1
+ import type { VoiceOnTurnObjectHandler, VoiceRouteResult, VoiceSessionHandle, VoiceSessionRecord, VoiceTurnRecord } from './types';
2
+ import type { VoiceTraceEventStore } from './trace';
3
+ export type VoiceAgentMessageRole = 'assistant' | 'system' | 'tool' | 'user';
4
+ export type VoiceAgentMessage = {
5
+ content: string;
6
+ metadata?: Record<string, unknown>;
7
+ name?: string;
8
+ role: VoiceAgentMessageRole;
9
+ toolCallId?: string;
10
+ };
11
+ export type VoiceAgentToolCall<TArgs = Record<string, unknown>> = {
12
+ args: TArgs;
13
+ id?: string;
14
+ name: string;
15
+ };
16
+ export type VoiceAgentToolResult<TResult = unknown> = {
17
+ content?: string;
18
+ error?: string;
19
+ metadata?: Record<string, unknown>;
20
+ result?: TResult;
21
+ status: 'error' | 'ok';
22
+ toolCallId?: string;
23
+ toolName: string;
24
+ };
25
+ export type VoiceAgentTool<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TArgs = Record<string, unknown>, TToolResult = unknown, TRouteResult = unknown> = {
26
+ description?: string;
27
+ execute: (input: {
28
+ api: VoiceSessionHandle<TContext, TSession, TRouteResult>;
29
+ args: TArgs;
30
+ context: TContext;
31
+ session: TSession;
32
+ turn: VoiceTurnRecord;
33
+ }) => Promise<TToolResult> | TToolResult;
34
+ name: string;
35
+ parameters?: Record<string, unknown>;
36
+ resultToMessage?: (result: TToolResult) => string;
37
+ };
38
+ export type VoiceAgentModelInput<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord> = {
39
+ agentId: string;
40
+ context: TContext;
41
+ messages: VoiceAgentMessage[];
42
+ session: TSession;
43
+ system?: string;
44
+ tools: Array<{
45
+ description?: string;
46
+ name: string;
47
+ parameters?: Record<string, unknown>;
48
+ }>;
49
+ turn: VoiceTurnRecord;
50
+ };
51
+ export type VoiceAgentModelOutput<TResult = unknown> = VoiceRouteResult<TResult> & {
52
+ handoff?: {
53
+ metadata?: Record<string, unknown>;
54
+ reason?: string;
55
+ targetAgentId: string;
56
+ };
57
+ toolCalls?: VoiceAgentToolCall[];
58
+ };
59
+ export type VoiceAgentModel<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
60
+ generate: (input: VoiceAgentModelInput<TContext, TSession>) => Promise<VoiceAgentModelOutput<TResult>> | VoiceAgentModelOutput<TResult>;
61
+ };
62
+ export type VoiceAgentRunResult<TResult = unknown> = VoiceRouteResult<TResult> & {
63
+ agentId: string;
64
+ handoff?: VoiceAgentModelOutput<TResult>['handoff'];
65
+ messages: VoiceAgentMessage[];
66
+ toolResults: VoiceAgentToolResult[];
67
+ };
68
+ export type VoiceAgent<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
69
+ id: string;
70
+ onTurn: VoiceOnTurnObjectHandler<TContext, TSession, TResult>;
71
+ run: (input: {
72
+ api: VoiceSessionHandle<TContext, TSession, TResult>;
73
+ context: TContext;
74
+ messages?: VoiceAgentMessage[];
75
+ session: TSession;
76
+ turn: VoiceTurnRecord;
77
+ }) => Promise<VoiceAgentRunResult<TResult>>;
78
+ };
79
+ export type VoiceAgentOptions<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
80
+ id: string;
81
+ maxToolRounds?: number;
82
+ model: VoiceAgentModel<TContext, TSession, TResult>;
83
+ system?: string | ((input: {
84
+ context: TContext;
85
+ session: TSession;
86
+ turn: VoiceTurnRecord;
87
+ }) => Promise<string | undefined> | string | undefined);
88
+ trace?: VoiceTraceEventStore;
89
+ tools?: Array<VoiceAgentTool<TContext, TSession, Record<string, unknown>, unknown, TResult>>;
90
+ };
91
+ export type VoiceAgentSquadOptions<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
92
+ agents: Array<VoiceAgent<TContext, TSession, TResult>>;
93
+ defaultAgentId: string;
94
+ id: string;
95
+ maxHandoffsPerTurn?: number;
96
+ onHandoff?: (input: {
97
+ context: TContext;
98
+ fromAgentId: string;
99
+ reason?: string;
100
+ session: TSession;
101
+ targetAgentId: string;
102
+ turn: VoiceTurnRecord;
103
+ }) => Promise<void> | void;
104
+ trace?: VoiceTraceEventStore;
105
+ selectAgent?: (input: {
106
+ context: TContext;
107
+ session: TSession;
108
+ turn: VoiceTurnRecord;
109
+ }) => Promise<string | undefined> | string | undefined;
110
+ };
111
+ export declare const createVoiceAgentTool: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TArgs = Record<string, unknown>, TToolResult = unknown, TRouteResult = unknown>(tool: VoiceAgentTool<TContext, TSession, TArgs, TToolResult, TRouteResult>) => VoiceAgentTool<TContext, TSession, TArgs, TToolResult, TRouteResult>;
112
+ export declare const createVoiceAgent: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown>(options: VoiceAgentOptions<TContext, TSession, TResult>) => VoiceAgent<TContext, TSession, TResult>;
113
+ export declare const createVoiceAgentSquad: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown>(options: VoiceAgentSquadOptions<TContext, TSession, TResult>) => VoiceAgent<TContext, TSession, TResult>;
@@ -0,0 +1,99 @@
1
+ import { type VoiceAgent, type VoiceAgentModel, type VoiceAgentOptions, type VoiceAgentSquadOptions, type VoiceAgentTool } from './agent';
2
+ import { type VoiceOutcomeRecipeName, type VoiceOutcomeRecipeOptions } from './outcomeRecipes';
3
+ import type { VoiceNormalizedRouteConfig, VoiceOnTurnObjectHandler, VoiceRouteConfig, VoiceRouteResult, VoiceRuntimeOpsConfig, VoiceSessionRecord } from './types';
4
+ export type VoiceAssistantPreset = VoiceOutcomeRecipeName;
5
+ export type VoiceAssistantArtifactPlan<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
6
+ ops?: VoiceRuntimeOpsConfig<TContext, TSession, TResult>;
7
+ preset?: VoiceAssistantPreset | {
8
+ name: VoiceAssistantPreset;
9
+ options?: VoiceOutcomeRecipeOptions;
10
+ };
11
+ };
12
+ export type VoiceAssistantGuardrailInput<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = Parameters<VoiceOnTurnObjectHandler<TContext, TSession, TResult>>[0] & {
13
+ assistantId: string;
14
+ };
15
+ export type VoiceAssistantOutputGuardrailInput<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = VoiceAssistantGuardrailInput<TContext, TSession, TResult> & {
16
+ result: VoiceRouteResult<TResult>;
17
+ };
18
+ export type VoiceAssistantGuardrails<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
19
+ beforeTurn?: (input: VoiceAssistantGuardrailInput<TContext, TSession, TResult>) => Promise<VoiceRouteResult<TResult> | void> | VoiceRouteResult<TResult> | void;
20
+ afterTurn?: (input: VoiceAssistantOutputGuardrailInput<TContext, TSession, TResult>) => Promise<VoiceRouteResult<TResult> | void> | VoiceRouteResult<TResult> | void;
21
+ };
22
+ export type VoiceAssistantVariant<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
23
+ id: string;
24
+ maxToolRounds?: number;
25
+ metadata?: Record<string, unknown>;
26
+ model?: VoiceAgentModel<TContext, TSession, TResult>;
27
+ system?: VoiceAgentOptions<TContext, TSession, TResult>['system'];
28
+ tools?: Array<VoiceAgentTool<TContext, TSession, Record<string, unknown>, unknown, TResult>>;
29
+ weight?: number;
30
+ };
31
+ export type VoiceAssistantExperimentResolverInput<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord> = {
32
+ assistantId: string;
33
+ context: TContext;
34
+ session: TSession;
35
+ turnId?: string;
36
+ };
37
+ export type VoiceAssistantExperiment<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
38
+ id: string;
39
+ resolve: (input: VoiceAssistantExperimentResolverInput<TContext, TSession>) => VoiceAssistantVariant<TContext, TSession, TResult>;
40
+ variants: Array<VoiceAssistantVariant<TContext, TSession, TResult>>;
41
+ };
42
+ export type VoiceAssistantExperimentOptions<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
43
+ id: string;
44
+ selectVariant?: (input: VoiceAssistantExperimentResolverInput<TContext, TSession> & {
45
+ variants: Array<VoiceAssistantVariant<TContext, TSession, TResult>>;
46
+ }) => VoiceAssistantVariant<TContext, TSession, TResult> | string | void;
47
+ variants: Array<VoiceAssistantVariant<TContext, TSession, TResult>>;
48
+ };
49
+ type VoiceAssistantAgentSource<TContext, TSession extends VoiceSessionRecord, TResult> = {
50
+ agent: VoiceAgent<TContext, TSession, TResult>;
51
+ agents?: never;
52
+ defaultAgentId?: never;
53
+ maxHandoffsPerTurn?: never;
54
+ maxToolRounds?: never;
55
+ model?: never;
56
+ selectAgent?: never;
57
+ system?: never;
58
+ tools?: never;
59
+ } | {
60
+ agent?: never;
61
+ agents: Array<VoiceAgent<TContext, TSession, TResult>>;
62
+ defaultAgentId: string;
63
+ maxHandoffsPerTurn?: number;
64
+ maxToolRounds?: never;
65
+ model?: never;
66
+ selectAgent?: VoiceAgentSquadOptions<TContext, TSession, TResult>['selectAgent'];
67
+ system?: never;
68
+ tools?: never;
69
+ } | {
70
+ agent?: never;
71
+ agents?: never;
72
+ defaultAgentId?: never;
73
+ maxHandoffsPerTurn?: never;
74
+ maxToolRounds?: number;
75
+ model: VoiceAgentModel<TContext, TSession, TResult>;
76
+ selectAgent?: never;
77
+ system?: VoiceAgentOptions<TContext, TSession, TResult>['system'];
78
+ tools?: Array<VoiceAgentTool<TContext, TSession, Record<string, unknown>, unknown, TResult>>;
79
+ };
80
+ export type VoiceAssistantOptions<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = VoiceAssistantAgentSource<TContext, TSession, TResult> & {
81
+ artifactPlan?: VoiceAssistantArtifactPlan<TContext, TSession, TResult>;
82
+ experiment?: VoiceAssistantExperiment<TContext, TSession, TResult>;
83
+ guardrails?: VoiceAssistantGuardrails<TContext, TSession, TResult>;
84
+ id: string;
85
+ ops?: VoiceRuntimeOpsConfig<TContext, TSession, TResult>;
86
+ trace?: VoiceAgentOptions<TContext, TSession, TResult>['trace'];
87
+ };
88
+ export type VoiceAssistant<TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown> = {
89
+ agent: VoiceAgent<TContext, TSession, TResult>;
90
+ id: string;
91
+ onTurn: VoiceOnTurnObjectHandler<TContext, TSession, TResult>;
92
+ ops?: VoiceRuntimeOpsConfig<TContext, TSession, TResult>;
93
+ route: (overrides: Omit<VoiceRouteConfig<TContext, TSession, TResult>, 'onComplete' | 'onTurn'> & {
94
+ onComplete?: VoiceRouteConfig<TContext, TSession, TResult>['onComplete'];
95
+ }) => VoiceNormalizedRouteConfig<TContext, TSession, TResult>;
96
+ };
97
+ export declare const createVoiceExperiment: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown>(options: VoiceAssistantExperimentOptions<TContext, TSession, TResult>) => VoiceAssistantExperiment<TContext, TSession, TResult>;
98
+ export declare const createVoiceAssistant: <TContext = unknown, TSession extends VoiceSessionRecord = VoiceSessionRecord, TResult = unknown>(options: VoiceAssistantOptions<TContext, TSession, TResult>) => VoiceAssistant<TContext, TSession, TResult>;
99
+ export {};
@@ -1,21 +1,28 @@
1
- import type { StoredVoiceIntegrationEvent, StoredVoiceOpsTask, VoiceIntegrationEvent, VoiceIntegrationEventStore, VoiceOpsTask, VoiceOpsTaskStore } from './ops';
1
+ import { type StoredVoiceTraceEvent, type VoiceTraceSinkDeliveryRecord, type VoiceTraceSinkDeliveryStore, type VoiceTraceEventStore } from './trace';
2
+ import type { StoredVoiceIntegrationEvent, StoredVoiceExternalObjectMap, StoredVoiceOpsTask, VoiceExternalObjectMap, VoiceExternalObjectMapStore, VoiceIntegrationEvent, VoiceIntegrationEventStore, VoiceOpsTask, VoiceOpsTaskStore } from './ops';
2
3
  import type { StoredVoiceCallReviewArtifact, VoiceCallReviewArtifact, VoiceCallReviewStore } from './testing/review';
3
4
  import type { VoiceSessionRecord, VoiceSessionStore } from './types';
4
5
  export type VoiceFileStoreOptions = {
5
6
  directory: string;
6
7
  pretty?: boolean;
7
8
  };
8
- export type VoiceFileRuntimeStorage<TSession extends VoiceSessionRecord = VoiceSessionRecord, TReview extends StoredVoiceCallReviewArtifact = StoredVoiceCallReviewArtifact, TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask, TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent> = {
9
+ export type VoiceFileRuntimeStorage<TSession extends VoiceSessionRecord = VoiceSessionRecord, TReview extends StoredVoiceCallReviewArtifact = StoredVoiceCallReviewArtifact, TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask, TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent, TMapping extends StoredVoiceExternalObjectMap = StoredVoiceExternalObjectMap, TTrace extends StoredVoiceTraceEvent = StoredVoiceTraceEvent, TTraceDelivery extends VoiceTraceSinkDeliveryRecord = VoiceTraceSinkDeliveryRecord> = {
9
10
  events: VoiceIntegrationEventStore<TEvent>;
11
+ externalObjects: VoiceExternalObjectMapStore<TMapping>;
10
12
  reviews: VoiceCallReviewStore<TReview>;
11
13
  session: VoiceSessionStore<TSession>;
12
14
  tasks: VoiceOpsTaskStore<TTask>;
15
+ traceDeliveries: VoiceTraceSinkDeliveryStore<TTraceDelivery>;
16
+ traces: VoiceTraceEventStore<TTrace>;
13
17
  };
14
18
  export declare const createVoiceFileSessionStore: <TSession extends VoiceSessionRecord = VoiceSessionRecord>(options: VoiceFileStoreOptions) => VoiceSessionStore<TSession>;
15
19
  export declare const createVoiceFileReviewStore: <TArtifact extends StoredVoiceCallReviewArtifact = StoredVoiceCallReviewArtifact>(options: VoiceFileStoreOptions) => VoiceCallReviewStore<TArtifact>;
16
20
  export declare const createVoiceFileTaskStore: <TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask>(options: VoiceFileStoreOptions) => VoiceOpsTaskStore<TTask>;
17
21
  export declare const createVoiceFileIntegrationEventStore: <TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent>(options: VoiceFileStoreOptions) => VoiceIntegrationEventStore<TEvent>;
18
- export declare const createVoiceFileRuntimeStorage: <TSession extends VoiceSessionRecord = VoiceSessionRecord, TReview extends StoredVoiceCallReviewArtifact = StoredVoiceCallReviewArtifact, TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask, TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent>(options: VoiceFileStoreOptions) => VoiceFileRuntimeStorage<TSession, TReview, TTask, TEvent>;
22
+ export declare const createVoiceFileExternalObjectMapStore: <TMapping extends StoredVoiceExternalObjectMap = StoredVoiceExternalObjectMap>(options: VoiceFileStoreOptions) => VoiceExternalObjectMapStore<TMapping>;
23
+ export declare const createVoiceFileTraceEventStore: <TEvent extends StoredVoiceTraceEvent = StoredVoiceTraceEvent>(options: VoiceFileStoreOptions) => VoiceTraceEventStore<TEvent>;
24
+ export declare const createVoiceFileTraceSinkDeliveryStore: <TDelivery extends VoiceTraceSinkDeliveryRecord = VoiceTraceSinkDeliveryRecord>(options: VoiceFileStoreOptions) => VoiceTraceSinkDeliveryStore<TDelivery>;
25
+ export declare const createVoiceFileRuntimeStorage: <TSession extends VoiceSessionRecord = VoiceSessionRecord, TReview extends StoredVoiceCallReviewArtifact = StoredVoiceCallReviewArtifact, TTask extends StoredVoiceOpsTask = StoredVoiceOpsTask, TEvent extends StoredVoiceIntegrationEvent = StoredVoiceIntegrationEvent, TMapping extends StoredVoiceExternalObjectMap = StoredVoiceExternalObjectMap, TTrace extends StoredVoiceTraceEvent = StoredVoiceTraceEvent, TTraceDelivery extends VoiceTraceSinkDeliveryRecord = VoiceTraceSinkDeliveryRecord>(options: VoiceFileStoreOptions) => VoiceFileRuntimeStorage<TSession, TReview, TTask, TEvent, TMapping, TTrace, TTraceDelivery>;
19
26
  export declare const createStoredVoiceCallReviewArtifact: <TArtifact extends VoiceCallReviewArtifact = VoiceCallReviewArtifact>(id: string, artifact: TArtifact) => TArtifact & {
20
27
  id: string;
21
28
  };
@@ -25,3 +32,6 @@ export declare const createStoredVoiceOpsTask: <TTask extends Omit<VoiceOpsTask,
25
32
  export declare const createStoredVoiceIntegrationEvent: <TEvent extends Omit<VoiceIntegrationEvent, "id"> = Omit<VoiceIntegrationEvent, "id">>(id: string, event: TEvent) => TEvent & {
26
33
  id: string;
27
34
  };
35
+ export declare const createStoredVoiceExternalObjectMap: <TMapping extends Omit<VoiceExternalObjectMap, "id" | "createdAt" | "updatedAt"> = Omit<VoiceExternalObjectMap, "id" | "createdAt" | "updatedAt">>(mapping: TMapping & {
36
+ at?: number;
37
+ }) => VoiceExternalObjectMap;
package/dist/index.d.ts CHANGED
@@ -1,9 +1,20 @@
1
1
  export { voice } from './plugin';
2
- export { createStoredVoiceCallReviewArtifact, createStoredVoiceIntegrationEvent, createStoredVoiceOpsTask, createVoiceFileIntegrationEventStore, createVoiceFileReviewStore, createVoiceFileRuntimeStorage, createVoiceFileSessionStore, createVoiceFileTaskStore } from './fileStore';
2
+ export { createVoiceAssistant, createVoiceExperiment } from './assistant';
3
+ export { createVoiceAgent, createVoiceAgentSquad, createVoiceAgentTool } from './agent';
4
+ export { createStoredVoiceCallReviewArtifact, createStoredVoiceExternalObjectMap, createStoredVoiceIntegrationEvent, createStoredVoiceOpsTask, createVoiceFileExternalObjectMapStore, createVoiceFileIntegrationEventStore, createVoiceFileReviewStore, createVoiceFileRuntimeStorage, createVoiceFileSessionStore, createVoiceFileTaskStore, createVoiceFileTraceSinkDeliveryStore, createVoiceFileTraceEventStore } from './fileStore';
5
+ export { buildVoiceTraceReplay, createVoiceMemoryTraceSinkDeliveryStore, createVoiceTraceHTTPSink, createVoiceMemoryTraceEventStore, createVoiceTraceSinkDeliveryId, createVoiceTraceSinkDeliveryRecord, createVoiceTraceSinkStore, createVoiceTraceEvent, createVoiceTraceEventId, deliverVoiceTraceEventsToSinks, evaluateVoiceTrace, exportVoiceTrace, filterVoiceTraceEvents, pruneVoiceTraceEvents, redactVoiceTraceEvent, redactVoiceTraceEvents, redactVoiceTraceText, renderVoiceTraceHTML, renderVoiceTraceMarkdown, resolveVoiceTraceRedactionOptions, selectVoiceTraceEventsForPrune, summarizeVoiceTrace } from './trace';
6
+ export { createVoiceSQLiteExternalObjectMapStore, createVoiceSQLiteIntegrationEventStore, createVoiceSQLiteReviewStore, createVoiceSQLiteRuntimeStorage, createVoiceSQLiteSessionStore, createVoiceSQLiteTaskStore, createVoiceSQLiteTraceSinkDeliveryStore, createVoiceSQLiteTraceEventStore } from './sqliteStore';
7
+ export { createVoicePostgresExternalObjectMapStore, createVoicePostgresIntegrationEventStore, createVoicePostgresReviewStore, createVoicePostgresRuntimeStorage, createVoicePostgresSessionStore, createVoicePostgresTaskStore, createVoicePostgresTraceSinkDeliveryStore, createVoicePostgresTraceEventStore } from './postgresStore';
8
+ export { createVoiceS3ReviewStore } from './s3Store';
3
9
  export { createVoiceMemoryStore } from './memoryStore';
4
- export { assignVoiceOpsTask, buildVoiceOpsTaskFromReview, completeVoiceOpsTask, createVoiceCallCompletedEvent, createVoiceIntegrationEvent, createVoiceReviewSavedEvent, createVoiceTaskCreatedEvent, createVoiceTaskUpdatedEvent, listVoiceOpsTasks, reopenVoiceOpsTask, startVoiceOpsTask, summarizeVoiceOpsTasks, withVoiceIntegrationEventId, withVoiceOpsTaskId } from './ops';
10
+ export { createVoiceCRMActivitySink, createVoiceHelpdeskTicketSink, createVoiceIntegrationHTTPSink, createVoiceHubSpotTaskSink, createVoiceHubSpotTaskSyncSinks, createVoiceHubSpotTaskUpdateSink, createVoiceLinearIssueSink, createVoiceLinearIssueSyncSinks, createVoiceLinearIssueUpdateSink, createVoiceZendeskTicketSink, createVoiceZendeskTicketSyncSinks, createVoiceZendeskTicketUpdateSink, deliverVoiceIntegrationEventToSinks } from './opsSinks';
11
+ export { createVoiceIntegrationSinkWorker, createVoiceIntegrationSinkWorkerLoop, createVoiceOpsTaskWorker, createVoiceOpsTaskProcessorWorker, createVoiceOpsTaskProcessorWorkerLoop, createVoiceRedisIdempotencyStore, createVoiceRedisTaskLeaseCoordinator, createVoiceTraceSinkDeliveryWorker, createVoiceTraceSinkDeliveryWorkerLoop, createVoiceWebhookDeliveryWorker, createVoiceWebhookDeliveryWorkerLoop, summarizeVoiceTraceSinkDeliveries, summarizeVoiceOpsTaskQueue, summarizeVoiceIntegrationEvents } from './queue';
12
+ export { assignVoiceOpsTask, applyVoiceOpsTaskAssignmentRule, applyVoiceOpsTaskPolicy, buildVoiceOpsTaskFromReview, buildVoiceOpsTaskFromSLABreach, claimVoiceOpsTask, completeVoiceOpsTask, createVoiceExternalObjectMap, createVoiceExternalObjectMapId, createVoiceCallCompletedEvent, createVoiceTaskSLABreachedEvent, deadLetterVoiceOpsTask, deliverVoiceIntegrationEvent, failVoiceOpsTask, hasVoiceOpsTaskSLABreach, heartbeatVoiceOpsTask, isVoiceOpsTaskOverdue, markVoiceOpsTaskSLABreached, matchesVoiceOpsTaskAssignmentRule, resolveVoiceOpsTaskAgeBucket, createVoiceIntegrationEvent, createVoiceReviewSavedEvent, resolveVoiceOpsTaskAssignment, resolveVoiceOpsTaskPolicy, requeueVoiceOpsTask, createVoiceTaskCreatedEvent, createVoiceTaskUpdatedEvent, listVoiceOpsTasks, reopenVoiceOpsTask, startVoiceOpsTask, summarizeVoiceOpsTaskAnalytics, summarizeVoiceOpsTasks, withVoiceIntegrationEventId, withVoiceOpsTaskId } from './ops';
5
13
  export { createVoiceSession } from './session';
6
14
  export { createVoiceCallReviewFromSession, recordVoiceRuntimeOps } from './runtimeOps';
15
+ export { createVoiceOpsRuntime } from './opsRuntime';
16
+ export { resolveVoiceOpsPreset } from './opsPresets';
17
+ export { resolveVoiceOutcomeRecipe } from './outcomeRecipes';
7
18
  export { createId, createVoiceSessionRecord } from './store';
8
19
  export { createVoiceSTTRoutingCorrectionHandler, resolveVoiceSTTRoutingStrategy } from './routing';
9
20
  export { applyRiskTieredPhraseHintCorrections, applyPhraseHintCorrections, createDomainLexicon, createDomainPhraseHints, createPhraseHintCorrectionHandler, createRiskyTurnCorrectionHandler } from './correction';
@@ -11,9 +22,20 @@ export { conditionAudioChunk, resolveAudioConditioningConfig } from './audioCond
11
22
  export { resolveVoiceRuntimePreset } from './presets';
12
23
  export { resolveTurnDetectionConfig, TURN_PROFILE_DEFAULTS } from './turnProfiles';
13
24
  export { createVoiceCallReviewFromLiveTelephonyReport, createVoiceCallReviewRecorder, renderVoiceCallReviewHTML, renderVoiceCallReviewMarkdown } from './testing/review';
25
+ export type { VoiceAssistant, VoiceAssistantArtifactPlan, VoiceAssistantExperiment, VoiceAssistantExperimentOptions, VoiceAssistantGuardrailInput, VoiceAssistantGuardrails, VoiceAssistantOptions, VoiceAssistantOutputGuardrailInput, VoiceAssistantPreset, VoiceAssistantVariant } from './assistant';
26
+ export type { VoiceAgent, VoiceAgentMessage, VoiceAgentMessageRole, VoiceAgentModel, VoiceAgentModelInput, VoiceAgentModelOutput, VoiceAgentOptions, VoiceAgentRunResult, VoiceAgentSquadOptions, VoiceAgentTool, VoiceAgentToolCall, VoiceAgentToolResult } from './agent';
27
+ export type { VoiceOpsRuntime, VoiceOpsRuntimeConfig, VoiceOpsRuntimeSummary, VoiceOpsRuntimeSinkWorkerConfig, VoiceOpsRuntimeTaskWorkerConfig, VoiceOpsRuntimeTickResult, VoiceOpsRuntimeWebhookWorkerConfig } from './opsRuntime';
28
+ export type { VoiceOpsPresetName, VoiceOpsPresetOverrides, VoiceResolvedOpsPreset } from './opsPresets';
29
+ export type { VoiceOutcomeRecipe, VoiceOutcomeRecipeName, VoiceOutcomeRecipeOptions } from './outcomeRecipes';
30
+ export type { VoiceCRMActivitySinkOptions, VoiceHubSpotTaskSinkOptions, VoiceHubSpotTaskUpdateSinkOptions, VoiceHelpdeskTicketSinkOptions, VoiceIntegrationHTTPSinkOptions, VoiceIntegrationSink, VoiceIntegrationSinkDeliveryResult, VoiceLinearIssueSinkOptions, VoiceLinearIssueUpdateSinkOptions, VoiceZendeskTicketSinkOptions, VoiceZendeskTicketUpdateSinkOptions } from './opsSinks';
14
31
  export type { StoredVoiceCallReviewArtifact, VoiceCallReviewArtifact, VoiceCallReviewConfig, VoiceCallReviewPostCallSummary, VoiceCallReviewRecorder, VoiceCallReviewRecorderOptions, VoiceCallReviewStore, VoiceCallReviewSummary, VoiceCallReviewTimelineEvent } from './testing/review';
15
32
  export type { VoiceFileRuntimeStorage, VoiceFileStoreOptions } from './fileStore';
16
- export type { StoredVoiceIntegrationEvent, StoredVoiceOpsTask, VoiceIntegrationEvent, VoiceIntegrationEventStore, VoiceIntegrationEventType, VoiceOpsTask, VoiceOpsTaskHistoryEntry, VoiceOpsTaskKind, VoiceOpsTaskStatus, VoiceOpsTaskStore, VoiceOpsTaskSummary } from './ops';
33
+ export type { StoredVoiceTraceEvent, VoiceTraceEvaluation, VoiceTraceEvaluationOptions, VoiceTraceEvent, VoiceTraceEventFilter, VoiceTraceEventStore, VoiceTraceEventType, VoiceTraceIssue, VoiceTraceIssueSeverity, VoiceTraceHTTPSinkOptions, VoiceTracePruneFilter, VoiceTracePruneOptions, VoiceTracePruneResult, VoiceTraceRedactionConfig, VoiceTraceRedactionOptions, VoiceTraceRedactionReplacement, VoiceResolvedTraceRedactionOptions, VoiceTraceSink, VoiceTraceSinkDeliveryQueueStatus, VoiceTraceSinkDeliveryRecord, VoiceTraceSinkDeliveryResult, VoiceTraceSinkDeliveryStatus, VoiceTraceSinkDeliveryStore, VoiceTraceSinkFanoutResult, VoiceTraceSinkStoreOptions, VoiceTraceSummary } from './trace';
34
+ export type { VoicePostgresClient, VoicePostgresRuntimeStorage, VoicePostgresStoreOptions } from './postgresStore';
35
+ export type { VoiceOpsTaskLease, VoiceOpsTaskWorker, VoiceOpsTaskWorkerOptions, VoiceIdempotencyStore, VoiceIntegrationEventQueueSummary, VoiceIntegrationSinkWorkerLoop, VoiceIntegrationSinkWorkerLoopOptions, VoiceIntegrationSinkWorkerOptions, VoiceIntegrationSinkWorkerResult, VoiceRedisIdempotencyClient, VoiceRedisIdempotencyStoreOptions, VoiceRedisTaskLeaseClient, VoiceRedisTaskLeaseCoordinator, VoiceRedisTaskLeaseCoordinatorOptions, VoiceTraceSinkDeliveryQueueSummary, VoiceTraceSinkDeliveryWorkerLoop, VoiceTraceSinkDeliveryWorkerLoopOptions, VoiceTraceSinkDeliveryWorkerOptions, VoiceTraceSinkDeliveryWorkerResult, VoiceOpsTaskClaimFilters, VoiceWebhookDeliveryWorkerLoop, VoiceWebhookDeliveryWorkerLoopOptions, VoiceWebhookDeliveryWorkerOptions, VoiceWebhookDeliveryWorkerResult, VoiceOpsTaskProcessorWorkerLoop, VoiceOpsTaskProcessorWorkerLoopOptions, VoiceOpsTaskProcessorWorkerOptions, VoiceOpsTaskProcessorWorkerResult, VoiceOpsTaskQueueSummary } from './queue';
36
+ export type { VoiceS3ReviewStoreClient, VoiceS3ReviewStoreFile, VoiceS3ReviewStoreOptions } from './s3Store';
37
+ export type { VoiceSQLiteRuntimeStorage, VoiceSQLiteStoreOptions } from './sqliteStore';
38
+ export type { StoredVoiceIntegrationEvent, StoredVoiceExternalObjectMap, StoredVoiceOpsTask, VoiceExternalObjectMap, VoiceExternalObjectMapStore, VoiceOpsTaskAgeBucket, VoiceOpsTaskAnalyticsOptions, VoiceOpsTaskAnalyticsSummary, VoiceOpsTaskAssignmentRule, VoiceOpsTaskAssignmentRuleCondition, VoiceOpsTaskAssignmentRules, VoiceOpsTaskAssigneeAnalytics, VoiceOpsDispositionTaskPolicies, VoiceOpsSLABreachPolicy, VoiceIntegrationDeliveryStatus, VoiceIntegrationEvent, VoiceIntegrationEventStore, VoiceIntegrationSinkDelivery, VoiceIntegrationEventType, VoiceIntegrationWebhookConfig, VoiceOpsTask, VoiceOpsTaskHistoryEntry, VoiceOpsTaskKind, VoiceOpsTaskPolicy, VoiceOpsTaskPriority, VoiceOpsTaskStatus, VoiceOpsTaskStore, VoiceOpsTaskSummary, VoiceOpsTaskWorkerAnalytics } from './ops';
17
39
  export { createTwilioMediaStreamBridge, createTwilioVoiceResponse, decodeTwilioMulawBase64, encodeTwilioMulawBase64, transcodePCMToTwilioOutboundPayload, transcodeTwilioInboundPayloadToPCM16 } from './telephony/twilio';
18
40
  export { shapeTelephonyAssistantText } from './telephony/response';
19
41
  export type { TelephonyResponseShapeMode, TelephonyResponseShapeOptions } from './telephony/response';