@speakai/shared 2.1.4 → 2.1.5

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 (141) hide show
  1. package/dist/enums/menu.d.ts +7 -2
  2. package/dist/enums/menu.d.ts.map +1 -1
  3. package/dist/enums/menu.js +6 -0
  4. package/dist/enums/menu.js.map +1 -1
  5. package/dist/index.d.ts +1 -0
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +2 -0
  8. package/dist/index.js.map +1 -1
  9. package/dist/voice/enums/agent.d.ts +19 -0
  10. package/dist/voice/enums/agent.d.ts.map +1 -0
  11. package/dist/voice/enums/agent.js +18 -0
  12. package/dist/voice/enums/agent.js.map +1 -0
  13. package/dist/voice/enums/auth.d.ts +19 -0
  14. package/dist/voice/enums/auth.d.ts.map +1 -0
  15. package/dist/voice/enums/auth.js +21 -0
  16. package/dist/voice/enums/auth.js.map +1 -0
  17. package/dist/voice/enums/avatar.d.ts +6 -0
  18. package/dist/voice/enums/avatar.d.ts.map +1 -0
  19. package/dist/voice/enums/avatar.js +5 -0
  20. package/dist/voice/enums/avatar.js.map +1 -0
  21. package/dist/voice/enums/billing.d.ts +26 -0
  22. package/dist/voice/enums/billing.d.ts.map +1 -0
  23. package/dist/voice/enums/billing.js +29 -0
  24. package/dist/voice/enums/billing.js.map +1 -0
  25. package/dist/voice/enums/conversation.d.ts +62 -0
  26. package/dist/voice/enums/conversation.d.ts.map +1 -0
  27. package/dist/voice/enums/conversation.js +73 -0
  28. package/dist/voice/enums/conversation.js.map +1 -0
  29. package/dist/voice/enums/dataCollection.d.ts +54 -0
  30. package/dist/voice/enums/dataCollection.d.ts.map +1 -0
  31. package/dist/voice/enums/dataCollection.js +59 -0
  32. package/dist/voice/enums/dataCollection.js.map +1 -0
  33. package/dist/voice/enums/index.d.ts +22 -0
  34. package/dist/voice/enums/index.d.ts.map +1 -0
  35. package/dist/voice/enums/index.js +22 -0
  36. package/dist/voice/enums/index.js.map +1 -0
  37. package/dist/voice/enums/integration.d.ts +80 -0
  38. package/dist/voice/enums/integration.d.ts.map +1 -0
  39. package/dist/voice/enums/integration.js +96 -0
  40. package/dist/voice/enums/integration.js.map +1 -0
  41. package/dist/voice/enums/livekit.d.ts +26 -0
  42. package/dist/voice/enums/livekit.d.ts.map +1 -0
  43. package/dist/voice/enums/livekit.js +35 -0
  44. package/dist/voice/enums/livekit.js.map +1 -0
  45. package/dist/voice/enums/notification.d.ts +6 -0
  46. package/dist/voice/enums/notification.d.ts.map +1 -0
  47. package/dist/voice/enums/notification.js +5 -0
  48. package/dist/voice/enums/notification.js.map +1 -0
  49. package/dist/voice/enums/organization.d.ts +11 -0
  50. package/dist/voice/enums/organization.d.ts.map +1 -0
  51. package/dist/voice/enums/organization.js +12 -0
  52. package/dist/voice/enums/organization.js.map +1 -0
  53. package/dist/voice/enums/providers.d.ts +28 -0
  54. package/dist/voice/enums/providers.d.ts.map +1 -0
  55. package/dist/voice/enums/providers.js +35 -0
  56. package/dist/voice/enums/providers.js.map +1 -0
  57. package/dist/voice/enums/structuredOutput.d.ts +15 -0
  58. package/dist/voice/enums/structuredOutput.d.ts.map +1 -0
  59. package/dist/voice/enums/structuredOutput.js +16 -0
  60. package/dist/voice/enums/structuredOutput.js.map +1 -0
  61. package/dist/voice/enums/telephony.d.ts +6 -0
  62. package/dist/voice/enums/telephony.d.ts.map +1 -0
  63. package/dist/voice/enums/telephony.js +5 -0
  64. package/dist/voice/enums/telephony.js.map +1 -0
  65. package/dist/voice/enums/voice.d.ts +6 -0
  66. package/dist/voice/enums/voice.d.ts.map +1 -0
  67. package/dist/voice/enums/voice.js +5 -0
  68. package/dist/voice/enums/voice.js.map +1 -0
  69. package/dist/voice/index.d.ts +11 -0
  70. package/dist/voice/index.d.ts.map +1 -0
  71. package/dist/voice/index.js +11 -0
  72. package/dist/voice/index.js.map +1 -0
  73. package/dist/voice/interfaces/agent.d.ts +246 -0
  74. package/dist/voice/interfaces/agent.d.ts.map +1 -0
  75. package/dist/voice/interfaces/agent.js +12 -0
  76. package/dist/voice/interfaces/agent.js.map +1 -0
  77. package/dist/voice/interfaces/analytics.d.ts +45 -0
  78. package/dist/voice/interfaces/analytics.d.ts.map +1 -0
  79. package/dist/voice/interfaces/analytics.js +6 -0
  80. package/dist/voice/interfaces/analytics.js.map +1 -0
  81. package/dist/voice/interfaces/avatar.d.ts +60 -0
  82. package/dist/voice/interfaces/avatar.d.ts.map +1 -0
  83. package/dist/voice/interfaces/avatar.js +5 -0
  84. package/dist/voice/interfaces/avatar.js.map +1 -0
  85. package/dist/voice/interfaces/billing.d.ts +130 -0
  86. package/dist/voice/interfaces/billing.d.ts.map +1 -0
  87. package/dist/voice/interfaces/billing.js +6 -0
  88. package/dist/voice/interfaces/billing.js.map +1 -0
  89. package/dist/voice/interfaces/conversation.d.ts +132 -0
  90. package/dist/voice/interfaces/conversation.d.ts.map +1 -0
  91. package/dist/voice/interfaces/conversation.js +6 -0
  92. package/dist/voice/interfaces/conversation.js.map +1 -0
  93. package/dist/voice/interfaces/dataCollection.d.ts +173 -0
  94. package/dist/voice/interfaces/dataCollection.d.ts.map +1 -0
  95. package/dist/voice/interfaces/dataCollection.js +6 -0
  96. package/dist/voice/interfaces/dataCollection.js.map +1 -0
  97. package/dist/voice/interfaces/index.d.ts +23 -0
  98. package/dist/voice/interfaces/index.d.ts.map +1 -0
  99. package/dist/voice/interfaces/index.js +23 -0
  100. package/dist/voice/interfaces/index.js.map +1 -0
  101. package/dist/voice/interfaces/integration.d.ts +146 -0
  102. package/dist/voice/interfaces/integration.d.ts.map +1 -0
  103. package/dist/voice/interfaces/integration.js +2 -0
  104. package/dist/voice/interfaces/integration.js.map +1 -0
  105. package/dist/voice/interfaces/kbGap.d.ts +21 -0
  106. package/dist/voice/interfaces/kbGap.d.ts.map +1 -0
  107. package/dist/voice/interfaces/kbGap.js +2 -0
  108. package/dist/voice/interfaces/kbGap.js.map +1 -0
  109. package/dist/voice/interfaces/knowledgeBase.d.ts +24 -0
  110. package/dist/voice/interfaces/knowledgeBase.d.ts.map +1 -0
  111. package/dist/voice/interfaces/knowledgeBase.js +6 -0
  112. package/dist/voice/interfaces/knowledgeBase.js.map +1 -0
  113. package/dist/voice/interfaces/livekit.d.ts +29 -0
  114. package/dist/voice/interfaces/livekit.d.ts.map +1 -0
  115. package/dist/voice/interfaces/livekit.js +5 -0
  116. package/dist/voice/interfaces/livekit.js.map +1 -0
  117. package/dist/voice/interfaces/notification.d.ts +19 -0
  118. package/dist/voice/interfaces/notification.d.ts.map +1 -0
  119. package/dist/voice/interfaces/notification.js +5 -0
  120. package/dist/voice/interfaces/notification.js.map +1 -0
  121. package/dist/voice/interfaces/organization.d.ts +49 -0
  122. package/dist/voice/interfaces/organization.d.ts.map +1 -0
  123. package/dist/voice/interfaces/organization.js +9 -0
  124. package/dist/voice/interfaces/organization.js.map +1 -0
  125. package/dist/voice/interfaces/structuredOutput.d.ts +75 -0
  126. package/dist/voice/interfaces/structuredOutput.d.ts.map +1 -0
  127. package/dist/voice/interfaces/structuredOutput.js +6 -0
  128. package/dist/voice/interfaces/structuredOutput.js.map +1 -0
  129. package/dist/voice/interfaces/telephony.d.ts +116 -0
  130. package/dist/voice/interfaces/telephony.d.ts.map +1 -0
  131. package/dist/voice/interfaces/telephony.js +5 -0
  132. package/dist/voice/interfaces/telephony.js.map +1 -0
  133. package/dist/voice/interfaces/testing.d.ts +141 -0
  134. package/dist/voice/interfaces/testing.d.ts.map +1 -0
  135. package/dist/voice/interfaces/testing.js +6 -0
  136. package/dist/voice/interfaces/testing.js.map +1 -0
  137. package/dist/voice/interfaces/voice.d.ts +34 -0
  138. package/dist/voice/interfaces/voice.d.ts.map +1 -0
  139. package/dist/voice/interfaces/voice.js +5 -0
  140. package/dist/voice/interfaces/voice.js.map +1 -0
  141. package/package.json +1 -1
@@ -0,0 +1,132 @@
1
+ /**
2
+ * Conversation Types
3
+ * Shared types for conversation tracking and events
4
+ */
5
+ import { UsageMetrics, CostBreakdown } from "./billing.js";
6
+ import { CallType, RecordingStatus, ConversationStatus } from "../enums/billing.js";
7
+ import { PhoneCallMetadata, HandoffMetadata } from "./telephony.js";
8
+ import { StructuredOutputsMap } from "./structuredOutput.js";
9
+ import { CanonicalEndReason, SentimentType } from "../enums/conversation.js";
10
+ export interface TranscriptMessage {
11
+ role: "user" | "agent";
12
+ message: string;
13
+ timestamp: string;
14
+ messageId?: string;
15
+ }
16
+ export interface ConversationMetadata {
17
+ systemPrompt?: string;
18
+ agentName?: string;
19
+ voiceProvider?: string;
20
+ [key: string]: unknown;
21
+ }
22
+ export interface WordTimestamp {
23
+ word: string;
24
+ start?: number;
25
+ end?: number;
26
+ confidence?: number;
27
+ }
28
+ export interface ConversationSummaryMeta {
29
+ model: string;
30
+ inputTokens: number;
31
+ outputTokens: number;
32
+ costUsd: number;
33
+ }
34
+ export interface ConversationSummary {
35
+ text: string;
36
+ sentiment: SentimentType;
37
+ keyTopics: string[];
38
+ actionItems: string[];
39
+ generatedAt: string;
40
+ meta: ConversationSummaryMeta;
41
+ }
42
+ export interface ConversationAnalysis {
43
+ structuredData?: Record<string, any>;
44
+ structuredOutputs?: StructuredOutputsMap;
45
+ successEvaluation?: string;
46
+ summary?: ConversationSummary;
47
+ }
48
+ /**
49
+ * Full Conversation interface
50
+ * Used by client and backend
51
+ */
52
+ export interface Conversation {
53
+ conversationId: string;
54
+ agentId: string;
55
+ agentName?: string;
56
+ userId: string;
57
+ widgetSessionId?: string;
58
+ participants: string[];
59
+ sessionId: string;
60
+ transcript: TranscriptMessage[];
61
+ status: ConversationStatus;
62
+ duration: number;
63
+ usage?: UsageMetrics;
64
+ costs?: CostBreakdown;
65
+ startedAt: string;
66
+ endedAt?: string;
67
+ analysis?: ConversationAnalysis;
68
+ /** Post-call feedback submitted by the end user (rating is 1-5; submittedAt is ISO). */
69
+ feedback?: {
70
+ rating?: number;
71
+ comment?: string;
72
+ submittedAt?: string;
73
+ };
74
+ endedReason?: CanonicalEndReason;
75
+ recordingUrls?: {
76
+ mixed?: string;
77
+ user?: string;
78
+ agent?: string;
79
+ };
80
+ recordingStatus?: RecordingStatus;
81
+ metadata?: Record<string, any>;
82
+ callType?: CallType;
83
+ phone?: PhoneCallMetadata;
84
+ handoff?: HandoffMetadata;
85
+ callerId?: string;
86
+ createdAt: string;
87
+ }
88
+ export interface ConversationEvent {
89
+ eventId: string;
90
+ conversationId: string;
91
+ agentId?: string;
92
+ userId?: string;
93
+ eventType: string;
94
+ timestamp: string;
95
+ cost?: number;
96
+ platformCost?: number;
97
+ data: Record<string, unknown>;
98
+ metadata?: {
99
+ turnNumber?: number;
100
+ requestId?: string;
101
+ };
102
+ }
103
+ export interface ConversationSearchEvent {
104
+ type: "kb" | "web";
105
+ query: string;
106
+ resultCount: number;
107
+ durationMs: number;
108
+ topUrl?: string;
109
+ avgScore?: number;
110
+ failed?: boolean;
111
+ }
112
+ export interface ConversationTurn {
113
+ turnNumber: number;
114
+ userMessage?: {
115
+ text: string;
116
+ timestamp: number;
117
+ };
118
+ agentMessage?: {
119
+ text: string;
120
+ timestamp: number;
121
+ };
122
+ searches: ConversationSearchEvent[];
123
+ errors: Array<{
124
+ service: string;
125
+ message: string;
126
+ }>;
127
+ attribution: {
128
+ primarySource: "kb" | "web" | "none";
129
+ sources: Array<"kb" | "web">;
130
+ };
131
+ }
132
+ //# sourceMappingURL=conversation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/conversation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Conversation Types
3
+ * Shared types for conversation tracking and events
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=conversation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../../src/voice/interfaces/conversation.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,173 @@
1
+ /**
2
+ * Data Collection Interfaces
3
+ * Shared types for data collection templates and fields
4
+ */
5
+ import { DataCollectionFieldType, DataCollectionCategory, CollectionMethod, NoResponseBehavior } from "../enums/dataCollection.js";
6
+ /**
7
+ * Validation configuration for a field
8
+ */
9
+ export interface ValidationConfig {
10
+ pattern?: string;
11
+ minLength?: number;
12
+ maxLength?: number;
13
+ min?: number;
14
+ max?: number;
15
+ allowedValues?: string[];
16
+ customValidation?: string;
17
+ }
18
+ /**
19
+ * Field configuration (template defaults or agent overrides)
20
+ */
21
+ export interface FieldConfig {
22
+ displayLabel: string;
23
+ promptText: string;
24
+ confirmationText?: string;
25
+ validationPrompt?: string;
26
+ inputPlaceholder?: string;
27
+ validation?: ValidationConfig;
28
+ allowTextInput: boolean;
29
+ allowSkip: boolean;
30
+ showInlineInput: boolean;
31
+ }
32
+ /**
33
+ * Data Collection Template (global, reusable)
34
+ */
35
+ export interface DataCollectionTemplate {
36
+ templateId: string;
37
+ userId?: string;
38
+ name: string;
39
+ description: string;
40
+ category: DataCollectionCategory;
41
+ fieldType: DataCollectionFieldType;
42
+ defaultConfig: FieldConfig;
43
+ isSystemTemplate: boolean;
44
+ isPublic: boolean;
45
+ tags: string[];
46
+ usageCount: number;
47
+ createdAt: string;
48
+ updatedAt: string;
49
+ }
50
+ /**
51
+ * Custom configuration (agent-level overrides)
52
+ */
53
+ export interface CustomFieldConfig {
54
+ displayLabel?: string;
55
+ promptText?: string;
56
+ confirmationText?: string;
57
+ validationPrompt?: string;
58
+ inputPlaceholder?: string;
59
+ validation?: Partial<ValidationConfig>;
60
+ allowTextInput?: boolean;
61
+ allowSkip?: boolean;
62
+ showInlineInput?: boolean;
63
+ }
64
+ /**
65
+ * Agent Data Collection Field (mapping template to agent)
66
+ */
67
+ export interface AgentDataCollectionField {
68
+ fieldId: string;
69
+ agentId: string;
70
+ templateId: string;
71
+ customConfig?: CustomFieldConfig;
72
+ required: boolean;
73
+ maxPromptAttempts: number;
74
+ noResponseBehavior: NoResponseBehavior;
75
+ triggerCondition?: string;
76
+ order: number;
77
+ enabled: boolean;
78
+ createdAt: string;
79
+ updatedAt: string;
80
+ }
81
+ /**
82
+ * Resolved Data Collection Field (template + agent config merged)
83
+ */
84
+ export interface ResolvedDataCollectionField {
85
+ fieldId: string;
86
+ agentId: string;
87
+ templateId: string;
88
+ template: DataCollectionTemplate;
89
+ resolvedConfig: FieldConfig;
90
+ required: boolean;
91
+ maxPromptAttempts: number;
92
+ noResponseBehavior: NoResponseBehavior;
93
+ triggerCondition?: string;
94
+ order: number;
95
+ enabled: boolean;
96
+ hasCustomizations: boolean;
97
+ }
98
+ /**
99
+ * Collection event stored in conversation metadata
100
+ */
101
+ export interface CollectionEvent {
102
+ fieldId?: string;
103
+ fieldName: string;
104
+ value: any;
105
+ method: CollectionMethod;
106
+ timestamp: string;
107
+ }
108
+ /**
109
+ * Collected data entry
110
+ */
111
+ export interface CollectedFieldData {
112
+ value: any;
113
+ collectedAt: string;
114
+ method: CollectionMethod;
115
+ confirmed: boolean;
116
+ attempts: number;
117
+ }
118
+ /**
119
+ * Collection state for a conversation
120
+ */
121
+ export interface CollectionState {
122
+ [fieldName: string]: CollectedFieldData;
123
+ }
124
+ /**
125
+ * Request to add field to agent
126
+ */
127
+ export interface AddFieldToAgentRequest {
128
+ templateId: string;
129
+ customConfig?: CustomFieldConfig;
130
+ required?: boolean;
131
+ maxPromptAttempts?: number;
132
+ noResponseBehavior?: NoResponseBehavior;
133
+ triggerCondition?: string;
134
+ order?: number;
135
+ }
136
+ /**
137
+ * Request to update agent field
138
+ */
139
+ export interface UpdateAgentFieldRequest {
140
+ customConfig?: CustomFieldConfig;
141
+ required?: boolean;
142
+ maxPromptAttempts?: number;
143
+ noResponseBehavior?: NoResponseBehavior;
144
+ triggerCondition?: string;
145
+ order?: number;
146
+ enabled?: boolean;
147
+ }
148
+ /**
149
+ * Request to reorder fields
150
+ */
151
+ export interface ReorderFieldsRequest {
152
+ fieldOrders: Array<{
153
+ fieldId: string;
154
+ order: number;
155
+ }>;
156
+ }
157
+ /**
158
+ * Validation result
159
+ */
160
+ export interface ValidationResult {
161
+ valid: boolean;
162
+ message?: string;
163
+ }
164
+ /**
165
+ * Collection progress
166
+ */
167
+ export interface CollectionProgress {
168
+ totalFields: number;
169
+ collectedFields: number;
170
+ missingRequired: string[];
171
+ percentComplete: number;
172
+ }
173
+ //# sourceMappingURL=dataCollection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataCollection.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/dataCollection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Data Collection Interfaces
3
+ * Shared types for data collection templates and fields
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=dataCollection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataCollection.js","sourceRoot":"","sources":["../../../src/voice/interfaces/dataCollection.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Voice Agent Interfaces Index
3
+ * Client-facing Voice Agent domain interfaces. The prospect/demo domain and
4
+ * supervision types are intentionally NOT re-exported here — they remain
5
+ * private to speak-server.
6
+ */
7
+ export * from "./agent.js";
8
+ export * from "./avatar.js";
9
+ export * from "./voice.js";
10
+ export * from "./livekit.js";
11
+ export * from "./conversation.js";
12
+ export * from "./dataCollection.js";
13
+ export * from "./structuredOutput.js";
14
+ export * from "./telephony.js";
15
+ export * from "./billing.js";
16
+ export * from "./knowledgeBase.js";
17
+ export * from "./analytics.js";
18
+ export * from "./integration.js";
19
+ export * from "./kbGap.js";
20
+ export * from "./notification.js";
21
+ export * from "./organization.js";
22
+ export * from "./testing.js";
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Voice Agent Interfaces Index
3
+ * Client-facing Voice Agent domain interfaces. The prospect/demo domain and
4
+ * supervision types are intentionally NOT re-exported here — they remain
5
+ * private to speak-server.
6
+ */
7
+ export * from "./agent.js";
8
+ export * from "./avatar.js";
9
+ export * from "./voice.js";
10
+ export * from "./livekit.js";
11
+ export * from "./conversation.js";
12
+ export * from "./dataCollection.js";
13
+ export * from "./structuredOutput.js";
14
+ export * from "./telephony.js";
15
+ export * from "./billing.js";
16
+ export * from "./knowledgeBase.js";
17
+ export * from "./analytics.js";
18
+ export * from "./integration.js";
19
+ export * from "./kbGap.js";
20
+ export * from "./notification.js";
21
+ export * from "./organization.js";
22
+ export * from "./testing.js";
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/voice/interfaces/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC"}
@@ -0,0 +1,146 @@
1
+ import { IntegrationSlug, VoiceIntegrationAuthType, IntegrationStatus, RuleConditionField, RuleOperator } from "../enums/integration.js";
2
+ /**
3
+ * Org-level integration record as returned by the backend `GET /integrations`
4
+ * list endpoint. Represents a single connected (or connecting) integration for
5
+ * the organization — distinct from `ConnectedIntegration`, which is scoped to a
6
+ * specific agent.
7
+ */
8
+ export interface OrgIntegration {
9
+ integrationId: string;
10
+ orgId: string;
11
+ slug: IntegrationSlug;
12
+ status: IntegrationStatus;
13
+ /**
14
+ * Provider-side account identifier (Composio connected-account id). Required:
15
+ * uniquely identifies which connected account this org integration maps to,
16
+ * enabling multiple accounts per provider.
17
+ */
18
+ providerAccountId: string;
19
+ /**
20
+ * Best-effort account email. OPTIONAL — Composio's list API does NOT expose
21
+ * the email, so this is frequently absent; the human-facing label is
22
+ * primarily driven by `accountLabel`.
23
+ */
24
+ accountEmail?: string;
25
+ /** User-provided human label distinguishing this account from others on the same provider. */
26
+ accountLabel?: string;
27
+ /** User id of the org member who connected this account. */
28
+ connectedByUserId?: string;
29
+ connectedAt?: string | Date;
30
+ error?: string | null;
31
+ createdAt: string | Date;
32
+ updatedAt: string | Date;
33
+ }
34
+ /**
35
+ * A tool descriptor as returned by the backend `GET /:slug/tools`
36
+ * endpoint. Describes a single callable tool exposed by an integration.
37
+ */
38
+ export interface ToolDescriptor {
39
+ toolName: string;
40
+ displayName: string;
41
+ description: string;
42
+ paramsSchema: Record<string, any>;
43
+ destructive: boolean;
44
+ /** Optional icon URL for the tool/provider, surfaced in the picker UI. */
45
+ iconUrl?: string;
46
+ }
47
+ export interface ConnectedIntegration {
48
+ integrationId: string;
49
+ agentId: string;
50
+ orgId: string;
51
+ slug: IntegrationSlug;
52
+ status: IntegrationStatus;
53
+ config?: Record<string, any>;
54
+ connectedAt?: string;
55
+ lastSyncedAt?: string;
56
+ error?: string | null;
57
+ }
58
+ /**
59
+ * Describes a single credential field the user must supply when connecting an
60
+ * API-key integration. The backend is the source of truth for these specs
61
+ * (per-provider field names come from the provider's connect-account schema);
62
+ * the client renders a form from `VoiceConnectFieldsResponse.fields`.
63
+ */
64
+ export interface VoiceCredentialFieldSpec {
65
+ /** Provider-specific field key sent back in `VoiceConnectKeyRequest.fields`. */
66
+ name: string;
67
+ /** Human-facing label for the input. */
68
+ label: string;
69
+ /** Input type — `password` masks the value in the UI. */
70
+ type: "text" | "password";
71
+ required: boolean;
72
+ /** Optional placeholder shown in the empty input. */
73
+ placeholder?: string;
74
+ /** Optional "where do I find this?" help link. */
75
+ helpUrl?: string;
76
+ /** Optional longer-form description / hint for the field. */
77
+ description?: string;
78
+ /** When true, the value is a secret (never echoed back, never logged). */
79
+ secret?: boolean;
80
+ }
81
+ /**
82
+ * Response shape for `GET /integrations/:slug/connect-fields`. Tells the client
83
+ * which auth flow a provider uses and, for API-key providers, the fields to
84
+ * render in the connect form.
85
+ */
86
+ export interface VoiceConnectFieldsResponse {
87
+ slug: IntegrationSlug;
88
+ authType: VoiceIntegrationAuthType;
89
+ fields: VoiceCredentialFieldSpec[];
90
+ }
91
+ /**
92
+ * Request body for `POST /integrations/:slug/connect-key`. Maps each
93
+ * `VoiceCredentialFieldSpec.name` to the user-entered value. Pass-through only —
94
+ * the secret is never persisted by our backend.
95
+ */
96
+ export interface VoiceConnectKeyRequest {
97
+ fields: Record<string, string>;
98
+ }
99
+ /**
100
+ * Response shape for `POST /integrations/:slug/connect-key`. On success the
101
+ * connected account summary is returned; on failure `reason` carries a
102
+ * machine-readable code (e.g. failed key verification).
103
+ */
104
+ export interface VoiceConnectKeyResponse {
105
+ status: "connected" | "failed";
106
+ reason?: string;
107
+ account?: {
108
+ providerAccountId: string;
109
+ status: string;
110
+ };
111
+ }
112
+ export interface CallSyncPayload {
113
+ conversationId: string;
114
+ agentId: string;
115
+ summary?: string;
116
+ sentiment?: string;
117
+ transcript: string;
118
+ structuredOutputs: Record<string, any>;
119
+ durationSeconds: number;
120
+ callerPhone?: string;
121
+ [key: string]: any;
122
+ }
123
+ export interface RuleCondition {
124
+ field: RuleConditionField;
125
+ operator: RuleOperator;
126
+ value?: string | number;
127
+ outputKey?: string;
128
+ }
129
+ export interface RuleAction {
130
+ slug: IntegrationSlug;
131
+ action: string;
132
+ params?: Record<string, any>;
133
+ }
134
+ export interface AutomationRule {
135
+ ruleId: string;
136
+ agentId: string;
137
+ orgId: string;
138
+ name: string;
139
+ enabled: boolean;
140
+ conditionLogic: "AND" | "OR";
141
+ conditions: RuleCondition[];
142
+ actions: RuleAction[];
143
+ createdAt: string;
144
+ updatedAt: string;
145
+ }
146
+ //# sourceMappingURL=integration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/integration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=integration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"integration.js","sourceRoot":"","sources":["../../../src/voice/interfaces/integration.ts"],"names":[],"mappings":""}
@@ -0,0 +1,21 @@
1
+ export interface KbGapSuggestion {
2
+ gapId: string;
3
+ agentId: string;
4
+ query: string;
5
+ context: string;
6
+ avgRetrievalScore: number;
7
+ conversationId: string;
8
+ suggestedAnswer: string;
9
+ suggestedTitle: string;
10
+ status: "pending" | "added" | "dismissed";
11
+ severity: "low" | "medium" | "high";
12
+ createdAt: string;
13
+ resolvedAt?: string | null;
14
+ }
15
+ export interface KbGapReport {
16
+ agentId: string;
17
+ gaps: KbGapSuggestion[];
18
+ lastAnalyzedAt: string | null;
19
+ conversationsSampled: number;
20
+ }
21
+ //# sourceMappingURL=kbGap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kbGap.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/kbGap.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,SAAS,GAAG,OAAO,GAAG,WAAW,CAAC;IAC1C,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,eAAe,EAAE,CAAC;IACxB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;CAC9B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=kbGap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kbGap.js","sourceRoot":"","sources":["../../../src/voice/interfaces/kbGap.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Knowledge Base Interfaces
3
+ * Shared across backend and client
4
+ */
5
+ export type KnowledgeBaseStatusType = "pending" | "uploading" | "processing" | "generating-embeddings" | "teaching-agent" | "completed" | "failed";
6
+ /** A file in a knowledge base. Backend and API use s3Key for the object-storage key. */
7
+ export interface KnowledgeBaseFile {
8
+ fileId: string;
9
+ name: string;
10
+ s3Key: string;
11
+ url: string;
12
+ size: number;
13
+ type: string;
14
+ status: string;
15
+ region?: string;
16
+ metadata?: Record<string, any>;
17
+ }
18
+ export interface KnowledgeBaseStatus {
19
+ status: KnowledgeBaseStatusType;
20
+ processingStage: string;
21
+ progress: number;
22
+ files: KnowledgeBaseFile[];
23
+ }
24
+ //# sourceMappingURL=knowledgeBase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledgeBase.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/knowledgeBase.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,uBAAuB,GAC/B,SAAS,GACT,WAAW,GACX,YAAY,GACZ,uBAAuB,GACvB,gBAAgB,GAChB,WAAW,GACX,QAAQ,CAAC;AAEb,wFAAwF;AACxF,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,uBAAuB,CAAC;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,iBAAiB,EAAE,CAAC;CAC5B"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Knowledge Base Interfaces
3
+ * Shared across backend and client
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=knowledgeBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledgeBase.js","sourceRoot":"","sources":["../../../src/voice/interfaces/knowledgeBase.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * LiveKit Interfaces
3
+ */
4
+ import { LiveKitMessageType } from "../enums/livekit.js";
5
+ export interface LiveKitDataMessage {
6
+ type: LiveKitMessageType;
7
+ text: string;
8
+ streaming?: boolean;
9
+ isFinal?: boolean;
10
+ reason?: string;
11
+ }
12
+ export interface LiveKitRoomState {
13
+ isConnected: boolean;
14
+ error: string | null;
15
+ }
16
+ export interface TavusConversation {
17
+ conversation_id: string;
18
+ conversation_name?: string;
19
+ status: string;
20
+ created_at?: string;
21
+ }
22
+ export interface CreateConversationParams {
23
+ replicaId: string;
24
+ personaId: string;
25
+ livekitWsUrl: string;
26
+ livekitRoomToken: string;
27
+ conversationName?: string;
28
+ }
29
+ //# sourceMappingURL=livekit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"livekit.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/livekit.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,kBAAkB,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B"}