@livekit/agents 1.0.36-dev.0 → 1.0.37

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 (176) hide show
  1. package/dist/index.cjs +1 -3
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.d.cts +0 -1
  4. package/dist/index.d.ts +0 -1
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +0 -1
  7. package/dist/index.js.map +1 -1
  8. package/dist/inference/utils.cjs +2 -15
  9. package/dist/inference/utils.cjs.map +1 -1
  10. package/dist/inference/utils.d.cts +0 -1
  11. package/dist/inference/utils.d.ts +0 -1
  12. package/dist/inference/utils.d.ts.map +1 -1
  13. package/dist/inference/utils.js +1 -13
  14. package/dist/inference/utils.js.map +1 -1
  15. package/dist/stream/stream_channel.cjs +0 -3
  16. package/dist/stream/stream_channel.cjs.map +1 -1
  17. package/dist/stream/stream_channel.d.cts +2 -3
  18. package/dist/stream/stream_channel.d.ts +2 -3
  19. package/dist/stream/stream_channel.d.ts.map +1 -1
  20. package/dist/stream/stream_channel.js +0 -3
  21. package/dist/stream/stream_channel.js.map +1 -1
  22. package/dist/telemetry/trace_types.cjs +0 -15
  23. package/dist/telemetry/trace_types.cjs.map +1 -1
  24. package/dist/telemetry/trace_types.d.cts +0 -5
  25. package/dist/telemetry/trace_types.d.ts +0 -5
  26. package/dist/telemetry/trace_types.d.ts.map +1 -1
  27. package/dist/telemetry/trace_types.js +0 -10
  28. package/dist/telemetry/trace_types.js.map +1 -1
  29. package/dist/voice/agent_activity.cjs +19 -68
  30. package/dist/voice/agent_activity.cjs.map +1 -1
  31. package/dist/voice/agent_activity.d.cts +0 -14
  32. package/dist/voice/agent_activity.d.ts +0 -14
  33. package/dist/voice/agent_activity.d.ts.map +1 -1
  34. package/dist/voice/agent_activity.js +19 -68
  35. package/dist/voice/agent_activity.js.map +1 -1
  36. package/dist/voice/agent_session.cjs +65 -37
  37. package/dist/voice/agent_session.cjs.map +1 -1
  38. package/dist/voice/agent_session.d.cts +25 -4
  39. package/dist/voice/agent_session.d.ts +25 -4
  40. package/dist/voice/agent_session.d.ts.map +1 -1
  41. package/dist/voice/agent_session.js +65 -37
  42. package/dist/voice/agent_session.js.map +1 -1
  43. package/dist/voice/audio_recognition.cjs +2 -124
  44. package/dist/voice/audio_recognition.cjs.map +1 -1
  45. package/dist/voice/audio_recognition.d.cts +1 -32
  46. package/dist/voice/audio_recognition.d.ts +1 -32
  47. package/dist/voice/audio_recognition.d.ts.map +1 -1
  48. package/dist/voice/audio_recognition.js +2 -127
  49. package/dist/voice/audio_recognition.js.map +1 -1
  50. package/dist/voice/index.cjs +14 -1
  51. package/dist/voice/index.cjs.map +1 -1
  52. package/dist/voice/index.d.cts +1 -0
  53. package/dist/voice/index.d.ts +1 -0
  54. package/dist/voice/index.d.ts.map +1 -1
  55. package/dist/voice/index.js +3 -1
  56. package/dist/voice/index.js.map +1 -1
  57. package/dist/voice/room_io/room_io.cjs +1 -0
  58. package/dist/voice/room_io/room_io.cjs.map +1 -1
  59. package/dist/voice/room_io/room_io.d.ts.map +1 -1
  60. package/dist/voice/room_io/room_io.js +1 -0
  61. package/dist/voice/room_io/room_io.js.map +1 -1
  62. package/dist/voice/speech_handle.cjs +12 -3
  63. package/dist/voice/speech_handle.cjs.map +1 -1
  64. package/dist/voice/speech_handle.d.cts +12 -2
  65. package/dist/voice/speech_handle.d.ts +12 -2
  66. package/dist/voice/speech_handle.d.ts.map +1 -1
  67. package/dist/voice/speech_handle.js +10 -2
  68. package/dist/voice/speech_handle.js.map +1 -1
  69. package/dist/voice/testing/index.cjs +54 -0
  70. package/dist/voice/testing/index.cjs.map +1 -0
  71. package/dist/voice/testing/index.d.cts +20 -0
  72. package/dist/voice/testing/index.d.ts +20 -0
  73. package/dist/voice/testing/index.d.ts.map +1 -0
  74. package/dist/voice/testing/index.js +33 -0
  75. package/dist/voice/testing/index.js.map +1 -0
  76. package/dist/voice/testing/run_result.cjs +766 -0
  77. package/dist/voice/testing/run_result.cjs.map +1 -0
  78. package/dist/voice/testing/run_result.d.cts +374 -0
  79. package/dist/voice/testing/run_result.d.ts +374 -0
  80. package/dist/voice/testing/run_result.d.ts.map +1 -0
  81. package/dist/voice/testing/run_result.js +739 -0
  82. package/dist/voice/testing/run_result.js.map +1 -0
  83. package/dist/{inference/interruption/index.cjs → voice/testing/types.cjs} +24 -12
  84. package/dist/voice/testing/types.cjs.map +1 -0
  85. package/dist/voice/testing/types.d.cts +83 -0
  86. package/dist/voice/testing/types.d.ts +83 -0
  87. package/dist/voice/testing/types.d.ts.map +1 -0
  88. package/dist/voice/testing/types.js +19 -0
  89. package/dist/voice/testing/types.js.map +1 -0
  90. package/package.json +3 -4
  91. package/src/index.ts +0 -2
  92. package/src/inference/utils.ts +0 -15
  93. package/src/stream/stream_channel.ts +2 -6
  94. package/src/telemetry/trace_types.ts +0 -7
  95. package/src/voice/agent_activity.ts +24 -83
  96. package/src/voice/agent_session.ts +74 -49
  97. package/src/voice/audio_recognition.ts +1 -161
  98. package/src/voice/index.ts +1 -0
  99. package/src/voice/room_io/room_io.ts +1 -0
  100. package/src/voice/speech_handle.ts +24 -4
  101. package/src/voice/testing/index.ts +50 -0
  102. package/src/voice/testing/run_result.ts +937 -0
  103. package/src/voice/testing/types.ts +118 -0
  104. package/dist/inference/interruption/AdaptiveInterruptionDetector.cjs +0 -152
  105. package/dist/inference/interruption/AdaptiveInterruptionDetector.cjs.map +0 -1
  106. package/dist/inference/interruption/AdaptiveInterruptionDetector.d.cts +0 -50
  107. package/dist/inference/interruption/AdaptiveInterruptionDetector.d.ts +0 -50
  108. package/dist/inference/interruption/AdaptiveInterruptionDetector.d.ts.map +0 -1
  109. package/dist/inference/interruption/AdaptiveInterruptionDetector.js +0 -125
  110. package/dist/inference/interruption/AdaptiveInterruptionDetector.js.map +0 -1
  111. package/dist/inference/interruption/InterruptionStream.cjs +0 -310
  112. package/dist/inference/interruption/InterruptionStream.cjs.map +0 -1
  113. package/dist/inference/interruption/InterruptionStream.d.cts +0 -57
  114. package/dist/inference/interruption/InterruptionStream.d.ts +0 -57
  115. package/dist/inference/interruption/InterruptionStream.d.ts.map +0 -1
  116. package/dist/inference/interruption/InterruptionStream.js +0 -288
  117. package/dist/inference/interruption/InterruptionStream.js.map +0 -1
  118. package/dist/inference/interruption/defaults.cjs +0 -76
  119. package/dist/inference/interruption/defaults.cjs.map +0 -1
  120. package/dist/inference/interruption/defaults.d.cts +0 -14
  121. package/dist/inference/interruption/defaults.d.ts +0 -14
  122. package/dist/inference/interruption/defaults.d.ts.map +0 -1
  123. package/dist/inference/interruption/defaults.js +0 -42
  124. package/dist/inference/interruption/defaults.js.map +0 -1
  125. package/dist/inference/interruption/errors.cjs +0 -2
  126. package/dist/inference/interruption/errors.cjs.map +0 -1
  127. package/dist/inference/interruption/errors.d.cts +0 -2
  128. package/dist/inference/interruption/errors.d.ts +0 -2
  129. package/dist/inference/interruption/errors.d.ts.map +0 -1
  130. package/dist/inference/interruption/errors.js +0 -1
  131. package/dist/inference/interruption/errors.js.map +0 -1
  132. package/dist/inference/interruption/http_transport.cjs +0 -57
  133. package/dist/inference/interruption/http_transport.cjs.map +0 -1
  134. package/dist/inference/interruption/http_transport.d.cts +0 -23
  135. package/dist/inference/interruption/http_transport.d.ts +0 -23
  136. package/dist/inference/interruption/http_transport.d.ts.map +0 -1
  137. package/dist/inference/interruption/http_transport.js +0 -33
  138. package/dist/inference/interruption/http_transport.js.map +0 -1
  139. package/dist/inference/interruption/index.cjs.map +0 -1
  140. package/dist/inference/interruption/index.d.cts +0 -5
  141. package/dist/inference/interruption/index.d.ts +0 -5
  142. package/dist/inference/interruption/index.d.ts.map +0 -1
  143. package/dist/inference/interruption/index.js +0 -7
  144. package/dist/inference/interruption/index.js.map +0 -1
  145. package/dist/inference/interruption/interruption.cjs +0 -85
  146. package/dist/inference/interruption/interruption.cjs.map +0 -1
  147. package/dist/inference/interruption/interruption.d.cts +0 -48
  148. package/dist/inference/interruption/interruption.d.ts +0 -48
  149. package/dist/inference/interruption/interruption.d.ts.map +0 -1
  150. package/dist/inference/interruption/interruption.js +0 -59
  151. package/dist/inference/interruption/interruption.js.map +0 -1
  152. package/dist/inference/utils.test.cjs +0 -20
  153. package/dist/inference/utils.test.cjs.map +0 -1
  154. package/dist/inference/utils.test.js +0 -19
  155. package/dist/inference/utils.test.js.map +0 -1
  156. package/dist/utils/ws_transport.cjs +0 -51
  157. package/dist/utils/ws_transport.cjs.map +0 -1
  158. package/dist/utils/ws_transport.d.cts +0 -9
  159. package/dist/utils/ws_transport.d.ts +0 -9
  160. package/dist/utils/ws_transport.d.ts.map +0 -1
  161. package/dist/utils/ws_transport.js +0 -17
  162. package/dist/utils/ws_transport.js.map +0 -1
  163. package/dist/utils/ws_transport.test.cjs +0 -212
  164. package/dist/utils/ws_transport.test.cjs.map +0 -1
  165. package/dist/utils/ws_transport.test.js +0 -211
  166. package/dist/utils/ws_transport.test.js.map +0 -1
  167. package/src/inference/interruption/AdaptiveInterruptionDetector.ts +0 -166
  168. package/src/inference/interruption/InterruptionStream.ts +0 -397
  169. package/src/inference/interruption/defaults.ts +0 -33
  170. package/src/inference/interruption/errors.ts +0 -0
  171. package/src/inference/interruption/http_transport.ts +0 -61
  172. package/src/inference/interruption/index.ts +0 -4
  173. package/src/inference/interruption/interruption.ts +0 -88
  174. package/src/inference/utils.test.ts +0 -31
  175. package/src/utils/ws_transport.test.ts +0 -282
  176. package/src/utils/ws_transport.ts +0 -22
@@ -0,0 +1,374 @@
1
+ import type { AgentHandoffItem, ChatItem, ChatRole } from '../../llm/chat_context.js';
2
+ import type { LLM } from '../../llm/llm.js';
3
+ import type { Task } from '../../utils.js';
4
+ import type { Agent } from '../agent.js';
5
+ import { type SpeechHandle } from '../speech_handle.js';
6
+ import { type AgentHandoffAssertOptions, type AgentHandoffEvent, type ChatMessageEvent, type EventType, type FunctionCallAssertOptions, type FunctionCallEvent, type FunctionCallOutputAssertOptions, type FunctionCallOutputEvent, type MessageAssertOptions, type RunEvent } from './types.js';
7
+ type AgentConstructor = new (...args: any[]) => Agent;
8
+ /**
9
+ * Result of a test run containing recorded events and assertion utilities.
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * const result = await session.run({ userInput: 'Hello' });
14
+ * result.expect.nextEvent().isMessage({ role: 'assistant' });
15
+ * result.expect.noMoreEvents();
16
+ * ```
17
+ */
18
+ export declare class RunResult<T = unknown> {
19
+ private _events;
20
+ private doneFut;
21
+ private userInput?;
22
+ private handles;
23
+ private lastSpeechHandle?;
24
+ private runAssert?;
25
+ constructor(options?: {
26
+ userInput?: string;
27
+ });
28
+ /**
29
+ * List of all recorded events generated during the run.
30
+ */
31
+ get events(): RunEvent[];
32
+ /**
33
+ * Provides an assertion helper for verifying the run events.
34
+ */
35
+ get expect(): RunAssert;
36
+ /**
37
+ * Returns the final output of the run after completion.
38
+ *
39
+ * @throws Error - Not implemented yet.
40
+ */
41
+ get finalOutput(): T;
42
+ /**
43
+ * Indicates whether the run has finished processing all events.
44
+ */
45
+ done(): boolean;
46
+ /**
47
+ * Wait for the RunResult to complete. Returns `this` for method chaining.
48
+ *
49
+ * @example
50
+ * ```ts
51
+ * const result = session.run({ userInput: 'Hi!' });
52
+ * await result.wait(); // waits for completion
53
+ * result.expect.nextEvent().isMessage({ role: 'assistant' });
54
+ * ```
55
+ */
56
+ wait(): Promise<this>;
57
+ /**
58
+ * @internal
59
+ * Records an agent handoff event.
60
+ */
61
+ _agentHandoff(params: {
62
+ item: AgentHandoffItem;
63
+ oldAgent?: Agent;
64
+ newAgent: Agent;
65
+ }): void;
66
+ /**
67
+ * @internal
68
+ * Called when a chat item is added during the run.
69
+ */
70
+ _itemAdded(item: ChatItem): void;
71
+ /**
72
+ * @internal
73
+ * Watch a speech handle or task for completion.
74
+ */
75
+ _watchHandle(handle: SpeechHandle | Task<void>): void;
76
+ /**
77
+ * @internal
78
+ * Unwatch a handle.
79
+ */
80
+ _unwatchHandle(handle: SpeechHandle | Task<void>): void;
81
+ private _markDoneIfNeeded;
82
+ private _markDone;
83
+ /**
84
+ * Find the correct insertion index to maintain chronological order.
85
+ */
86
+ private _findInsertionIndex;
87
+ }
88
+ /**
89
+ * Assertion helper for verifying run events in sequence.
90
+ */
91
+ export declare class RunAssert {
92
+ private _events;
93
+ private _currentIndex;
94
+ constructor(runResult: RunResult);
95
+ /**
96
+ * Access a specific event by index for assertions.
97
+ * Supports negative indices (e.g., -1 for last event).
98
+ *
99
+ * @example
100
+ * ```typescript
101
+ * result.expect.at(0).isMessage({ role: 'user' });
102
+ * result.expect.at(-1).isMessage({ role: 'assistant' });
103
+ * ```
104
+ */
105
+ at(index: number): EventAssert;
106
+ /**
107
+ * Advance to the next event, optionally filtering by type.
108
+ *
109
+ * @example
110
+ * ```typescript
111
+ * result.expect.nextEvent().isMessage({ role: 'assistant' });
112
+ * result.expect.nextEvent({ type: 'function_call' }).isFunctionCall({ name: 'foo' });
113
+ * ```
114
+ */
115
+ nextEvent(options?: {
116
+ type?: EventType;
117
+ }): EventAssert;
118
+ /**
119
+ * Skip a specified number of upcoming events without assertions.
120
+ *
121
+ * @example
122
+ * ```typescript
123
+ * result.expect.skipNext(2);
124
+ * ```
125
+ */
126
+ skipNext(count?: number): this;
127
+ /**
128
+ * Conditionally skip the next event if it matches the specified criteria.
129
+ * Returns the event assertion if matched and skipped, or undefined if not matched.
130
+ *
131
+ * @example
132
+ * ```typescript
133
+ * // Skip optional assistant message before function call
134
+ * result.expect.skipNextEventIf({ type: 'message', role: 'assistant' });
135
+ * result.expect.nextEvent().isFunctionCall({ name: 'foo' });
136
+ * ```
137
+ */
138
+ skipNextEventIf(options: {
139
+ type: 'message';
140
+ role?: ChatRole;
141
+ } | {
142
+ type: 'function_call';
143
+ name?: string;
144
+ args?: Record<string, unknown>;
145
+ } | {
146
+ type: 'function_call_output';
147
+ output?: string;
148
+ isError?: boolean;
149
+ } | {
150
+ type: 'agent_handoff';
151
+ newAgentType?: AgentConstructor;
152
+ }): MessageAssert | FunctionCallAssert | FunctionCallOutputAssert | AgentHandoffAssert | undefined;
153
+ /**
154
+ * Get an EventRangeAssert for a range of events.
155
+ * Similar to Python's slice access: expect[0:3] or expect[:]
156
+ *
157
+ * @param start - Start index (inclusive), defaults to 0
158
+ * @param end - End index (exclusive), defaults to events.length
159
+ *
160
+ * @example
161
+ * ```typescript
162
+ * // Search all events
163
+ * result.expect.range().containsFunctionCall({ name: 'foo' });
164
+ * // Search first 3 events
165
+ * result.expect.range(0, 3).containsMessage({ role: 'assistant' });
166
+ * ```
167
+ */
168
+ range(start?: number, end?: number): EventRangeAssert;
169
+ /**
170
+ * Assert that a function call matching criteria exists anywhere in the events.
171
+ *
172
+ * @example
173
+ * ```typescript
174
+ * result.expect.containsFunctionCall({ name: 'order_item' });
175
+ * ```
176
+ */
177
+ containsFunctionCall(options?: FunctionCallAssertOptions): FunctionCallAssert;
178
+ /**
179
+ * Assert that a message matching criteria exists anywhere in the events.
180
+ *
181
+ * @example
182
+ * ```typescript
183
+ * result.expect.containsMessage({ role: 'assistant' });
184
+ * ```
185
+ */
186
+ containsMessage(options?: MessageAssertOptions): MessageAssert;
187
+ /**
188
+ * Assert that a function call output matching criteria exists anywhere in the events.
189
+ *
190
+ * @example
191
+ * ```typescript
192
+ * result.expect.containsFunctionCallOutput({ isError: false });
193
+ * ```
194
+ */
195
+ containsFunctionCallOutput(options?: FunctionCallOutputAssertOptions): FunctionCallOutputAssert;
196
+ /**
197
+ * Assert that an agent handoff matching criteria exists anywhere in the events.
198
+ *
199
+ * @example
200
+ * ```typescript
201
+ * result.expect.containsAgentHandoff({ newAgentType: MyAgent });
202
+ * ```
203
+ */
204
+ containsAgentHandoff(options?: AgentHandoffAssertOptions): AgentHandoffAssert;
205
+ /**
206
+ * Assert that there are no further events.
207
+ *
208
+ * @example
209
+ * ```typescript
210
+ * result.expect.noMoreEvents();
211
+ * ```
212
+ */
213
+ noMoreEvents(): void;
214
+ private _currentEvent;
215
+ /** @internal */
216
+ _raiseWithDebugInfo(message: string, index?: number): never;
217
+ }
218
+ /**
219
+ * Assertion wrapper for a single event.
220
+ */
221
+ export declare class EventAssert {
222
+ protected _event: RunEvent;
223
+ protected _parent: RunAssert;
224
+ protected _index: number;
225
+ constructor(event: RunEvent, parent: RunAssert, index: number);
226
+ /**
227
+ * Get the underlying event.
228
+ */
229
+ event(): RunEvent;
230
+ protected _raise(message: string): never;
231
+ /**
232
+ * Verify this event is a message with optional role matching.
233
+ *
234
+ * @example
235
+ * ```typescript
236
+ * result.expect.nextEvent().isMessage({ role: 'assistant' });
237
+ * ```
238
+ */
239
+ isMessage(options?: MessageAssertOptions): MessageAssert;
240
+ /**
241
+ * Verify this event is a function call with optional name/args matching.
242
+ *
243
+ * @example
244
+ * ```typescript
245
+ * result.expect.nextEvent().isFunctionCall({ name: 'order_item', args: { id: 'big_mac' } });
246
+ * ```
247
+ */
248
+ isFunctionCall(options?: FunctionCallAssertOptions): FunctionCallAssert;
249
+ /**
250
+ * Verify this event is a function call output with optional matching.
251
+ *
252
+ * @example
253
+ * ```typescript
254
+ * result.expect.nextEvent().isFunctionCallOutput({ isError: false });
255
+ * ```
256
+ */
257
+ isFunctionCallOutput(options?: FunctionCallOutputAssertOptions): FunctionCallOutputAssert;
258
+ /**
259
+ * Verify this event is an agent handoff with optional type matching.
260
+ *
261
+ * @example
262
+ * ```typescript
263
+ * result.expect.nextEvent().isAgentHandoff({ newAgentType: MyAgent });
264
+ * ```
265
+ */
266
+ isAgentHandoff(options?: AgentHandoffAssertOptions): AgentHandoffAssert;
267
+ }
268
+ /**
269
+ * Assertion wrapper for a range of events.
270
+ * Provides contains*() methods to search within the range.
271
+ */
272
+ export declare class EventRangeAssert {
273
+ private _events;
274
+ private _parent;
275
+ private _range;
276
+ constructor(events: RunEvent[], parent: RunAssert, range: {
277
+ start: number;
278
+ end: number;
279
+ });
280
+ /**
281
+ * Assert that a function call matching criteria exists in this event range.
282
+ *
283
+ * @example
284
+ * ```typescript
285
+ * result.expect.range(0, 3).containsFunctionCall({ name: 'foo' });
286
+ * ```
287
+ */
288
+ containsFunctionCall(options?: FunctionCallAssertOptions): FunctionCallAssert;
289
+ /**
290
+ * Assert that a message matching criteria exists in this event range.
291
+ *
292
+ * @example
293
+ * ```typescript
294
+ * result.expect.range(0, 2).containsMessage({ role: 'assistant' });
295
+ * ```
296
+ */
297
+ containsMessage(options?: MessageAssertOptions): MessageAssert;
298
+ /**
299
+ * Assert that a function call output matching criteria exists in this event range.
300
+ *
301
+ * @example
302
+ * ```typescript
303
+ * result.expect.range(1, 4).containsFunctionCallOutput({ isError: true });
304
+ * ```
305
+ */
306
+ containsFunctionCallOutput(options?: FunctionCallOutputAssertOptions): FunctionCallOutputAssert;
307
+ /**
308
+ * Assert that an agent handoff matching criteria exists in this event range.
309
+ *
310
+ * @example
311
+ * ```typescript
312
+ * result.expect.range(0, 3).containsAgentHandoff({ newAgentType: MyAgent });
313
+ * ```
314
+ */
315
+ containsAgentHandoff(options?: AgentHandoffAssertOptions): AgentHandoffAssert;
316
+ }
317
+ /**
318
+ * Assertion wrapper for message events.
319
+ */
320
+ export declare class MessageAssert extends EventAssert {
321
+ protected _event: ChatMessageEvent;
322
+ constructor(event: ChatMessageEvent, parent: RunAssert, index: number);
323
+ event(): ChatMessageEvent;
324
+ /**
325
+ * Evaluate whether the message fulfills the given intent using an LLM.
326
+ *
327
+ * @param llm - LLM instance for judgment
328
+ * @param options - Options containing the intent description
329
+ * @returns Self for chaining further assertions
330
+ *
331
+ * @example
332
+ * ```typescript
333
+ * await result.expect
334
+ * .nextEvent()
335
+ * .isMessage({ role: 'assistant' })
336
+ * .judge(llm, { intent: 'should ask for the drink size' });
337
+ * ```
338
+ */
339
+ judge(llm: LLM, options: {
340
+ intent: string;
341
+ }): Promise<MessageAssert>;
342
+ }
343
+ /**
344
+ * Assertion wrapper for function call events.
345
+ */
346
+ export declare class FunctionCallAssert extends EventAssert {
347
+ protected _event: FunctionCallEvent;
348
+ constructor(event: FunctionCallEvent, parent: RunAssert, index: number);
349
+ event(): FunctionCallEvent;
350
+ }
351
+ /**
352
+ * Assertion wrapper for function call output events.
353
+ */
354
+ export declare class FunctionCallOutputAssert extends EventAssert {
355
+ protected _event: FunctionCallOutputEvent;
356
+ constructor(event: FunctionCallOutputEvent, parent: RunAssert, index: number);
357
+ event(): FunctionCallOutputEvent;
358
+ }
359
+ /**
360
+ * Assertion wrapper for agent handoff events.
361
+ */
362
+ export declare class AgentHandoffAssert extends EventAssert {
363
+ protected _event: AgentHandoffEvent;
364
+ constructor(event: AgentHandoffEvent, parent: RunAssert, index: number);
365
+ event(): AgentHandoffEvent;
366
+ }
367
+ /**
368
+ * Custom assertion error for test failures.
369
+ */
370
+ export declare class AssertionError extends Error {
371
+ constructor(message: string);
372
+ }
373
+ export {};
374
+ //# sourceMappingURL=run_result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run_result.d.ts","sourceRoot":"","sources":["../../../src/voice/testing/run_result.ts"],"names":[],"mappings":"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"}