@just-every/ensemble 0.2.87 → 0.2.88

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 (215) hide show
  1. package/dist/cjs/config/tool_execution.cjs +47 -0
  2. package/dist/cjs/config/tool_execution.d.ts +12 -0
  3. package/dist/cjs/config/tool_execution.d.ts.map +1 -0
  4. package/dist/cjs/config/tool_execution.js.map +1 -0
  5. package/dist/cjs/core/ensemble_embed.cjs +35 -0
  6. package/dist/cjs/core/ensemble_embed.d.ts +3 -0
  7. package/dist/cjs/core/ensemble_embed.d.ts.map +1 -0
  8. package/dist/cjs/core/ensemble_embed.js.map +1 -0
  9. package/dist/cjs/core/ensemble_image.cjs +13 -0
  10. package/dist/cjs/core/ensemble_image.d.ts +3 -0
  11. package/dist/cjs/core/ensemble_image.d.ts.map +1 -0
  12. package/dist/cjs/core/ensemble_image.js.map +1 -0
  13. package/dist/cjs/core/ensemble_listen.cjs +162 -0
  14. package/dist/cjs/core/ensemble_listen.d.ts +5 -0
  15. package/dist/cjs/core/ensemble_listen.d.ts.map +1 -0
  16. package/dist/cjs/core/ensemble_listen.js.map +1 -0
  17. package/dist/cjs/core/ensemble_live.cjs +387 -0
  18. package/dist/cjs/core/ensemble_live.d.ts +14 -0
  19. package/dist/cjs/core/ensemble_live.d.ts.map +1 -0
  20. package/dist/cjs/core/ensemble_live.js.map +1 -0
  21. package/dist/cjs/core/ensemble_request.cjs +409 -0
  22. package/dist/cjs/core/ensemble_request.d.ts +4 -0
  23. package/dist/cjs/core/ensemble_request.d.ts.map +1 -0
  24. package/dist/cjs/core/ensemble_request.js.map +1 -0
  25. package/dist/cjs/core/ensemble_voice.cjs +284 -0
  26. package/dist/cjs/core/ensemble_voice.d.ts +4 -0
  27. package/dist/cjs/core/ensemble_voice.d.ts.map +1 -0
  28. package/dist/cjs/core/ensemble_voice.js.map +1 -0
  29. package/dist/cjs/data/model_data.cjs +1460 -0
  30. package/dist/cjs/data/model_data.d.ts +71 -0
  31. package/dist/cjs/data/model_data.d.ts.map +1 -0
  32. package/dist/cjs/data/model_data.js.map +1 -0
  33. package/dist/cjs/index.cjs +139 -0
  34. package/dist/cjs/index.d.ts +37 -0
  35. package/dist/cjs/index.d.ts.map +1 -0
  36. package/dist/cjs/index.js.map +1 -0
  37. package/dist/cjs/model_providers/base_provider.cjs +46 -0
  38. package/dist/cjs/model_providers/base_provider.d.ts +13 -0
  39. package/dist/cjs/model_providers/base_provider.d.ts.map +1 -0
  40. package/dist/cjs/model_providers/base_provider.js.map +1 -0
  41. package/dist/cjs/model_providers/claude.cjs +782 -0
  42. package/dist/cjs/model_providers/claude.d.ts +12 -0
  43. package/dist/cjs/model_providers/claude.d.ts.map +1 -0
  44. package/dist/cjs/model_providers/claude.js.map +1 -0
  45. package/dist/cjs/model_providers/deepseek.cjs +129 -0
  46. package/dist/cjs/model_providers/deepseek.d.ts +8 -0
  47. package/dist/cjs/model_providers/deepseek.d.ts.map +1 -0
  48. package/dist/cjs/model_providers/deepseek.js.map +1 -0
  49. package/dist/cjs/model_providers/elevenlabs.cjs +140 -0
  50. package/dist/cjs/model_providers/elevenlabs.d.ts +37 -0
  51. package/dist/cjs/model_providers/elevenlabs.d.ts.map +1 -0
  52. package/dist/cjs/model_providers/elevenlabs.js.map +1 -0
  53. package/dist/cjs/model_providers/gemini.cjs +1654 -0
  54. package/dist/cjs/model_providers/gemini.d.ts +22 -0
  55. package/dist/cjs/model_providers/gemini.d.ts.map +1 -0
  56. package/dist/cjs/model_providers/gemini.js.map +1 -0
  57. package/dist/cjs/model_providers/grok.cjs +25 -0
  58. package/dist/cjs/model_providers/grok.d.ts +8 -0
  59. package/dist/cjs/model_providers/grok.d.ts.map +1 -0
  60. package/dist/cjs/model_providers/grok.js.map +1 -0
  61. package/dist/cjs/model_providers/model_provider.cjs +296 -0
  62. package/dist/cjs/model_providers/model_provider.d.ts +10 -0
  63. package/dist/cjs/model_providers/model_provider.d.ts.map +1 -0
  64. package/dist/cjs/model_providers/model_provider.js.map +1 -0
  65. package/dist/cjs/model_providers/openai.cjs +1117 -0
  66. package/dist/cjs/model_providers/openai.d.ts +19 -0
  67. package/dist/cjs/model_providers/openai.d.ts.map +1 -0
  68. package/dist/cjs/model_providers/openai.js.map +1 -0
  69. package/dist/cjs/model_providers/openai_chat.cjs +787 -0
  70. package/dist/cjs/model_providers/openai_chat.d.ts +20 -0
  71. package/dist/cjs/model_providers/openai_chat.d.ts.map +1 -0
  72. package/dist/cjs/model_providers/openai_chat.js.map +1 -0
  73. package/dist/cjs/model_providers/openrouter.cjs +22 -0
  74. package/dist/cjs/model_providers/openrouter.d.ts +6 -0
  75. package/dist/cjs/model_providers/openrouter.d.ts.map +1 -0
  76. package/dist/cjs/model_providers/openrouter.js.map +1 -0
  77. package/dist/cjs/model_providers/test_provider.cjs +236 -0
  78. package/dist/cjs/model_providers/test_provider.d.ts +29 -0
  79. package/dist/cjs/model_providers/test_provider.d.ts.map +1 -0
  80. package/dist/cjs/model_providers/test_provider.js.map +1 -0
  81. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
  82. package/dist/cjs/types/api_types.cjs +3 -0
  83. package/dist/cjs/types/api_types.d.ts +249 -0
  84. package/dist/cjs/types/api_types.d.ts.map +1 -0
  85. package/dist/cjs/types/api_types.js.map +1 -0
  86. package/dist/cjs/types/errors.cjs +76 -0
  87. package/dist/cjs/types/errors.d.ts +34 -0
  88. package/dist/cjs/types/errors.d.ts.map +1 -0
  89. package/dist/cjs/types/errors.js.map +1 -0
  90. package/dist/cjs/types/types.cjs +3 -0
  91. package/dist/cjs/types/types.d.ts +638 -0
  92. package/dist/cjs/types/types.d.ts.map +1 -0
  93. package/dist/cjs/types/types.js.map +1 -0
  94. package/dist/cjs/utils/agent.cjs +384 -0
  95. package/dist/cjs/utils/agent.d.ts +48 -0
  96. package/dist/cjs/utils/agent.d.ts.map +1 -0
  97. package/dist/cjs/utils/agent.js.map +1 -0
  98. package/dist/cjs/utils/audio_stream_player.cjs +342 -0
  99. package/dist/cjs/utils/audio_stream_player.d.ts +37 -0
  100. package/dist/cjs/utils/audio_stream_player.d.ts.map +1 -0
  101. package/dist/cjs/utils/audio_stream_player.js.map +1 -0
  102. package/dist/cjs/utils/citation_tracker.cjs +25 -0
  103. package/dist/cjs/utils/citation_tracker.d.ts +12 -0
  104. package/dist/cjs/utils/citation_tracker.d.ts.map +1 -0
  105. package/dist/cjs/utils/citation_tracker.js.map +1 -0
  106. package/dist/cjs/utils/config_manager.cjs +105 -0
  107. package/dist/cjs/utils/config_manager.d.ts +31 -0
  108. package/dist/cjs/utils/config_manager.d.ts.map +1 -0
  109. package/dist/cjs/utils/config_manager.js.map +1 -0
  110. package/dist/cjs/utils/cost_tracker.cjs +226 -0
  111. package/dist/cjs/utils/cost_tracker.d.ts +33 -0
  112. package/dist/cjs/utils/cost_tracker.d.ts.map +1 -0
  113. package/dist/cjs/utils/cost_tracker.js.map +1 -0
  114. package/dist/cjs/utils/create_tool_function.cjs +182 -0
  115. package/dist/cjs/utils/create_tool_function.d.ts +3 -0
  116. package/dist/cjs/utils/create_tool_function.d.ts.map +1 -0
  117. package/dist/cjs/utils/create_tool_function.js.map +1 -0
  118. package/dist/cjs/utils/delta_buffer.cjs +65 -0
  119. package/dist/cjs/utils/delta_buffer.d.ts +14 -0
  120. package/dist/cjs/utils/delta_buffer.d.ts.map +1 -0
  121. package/dist/cjs/utils/delta_buffer.js.map +1 -0
  122. package/dist/cjs/utils/ensemble_result.cjs +167 -0
  123. package/dist/cjs/utils/ensemble_result.d.ts +33 -0
  124. package/dist/cjs/utils/ensemble_result.d.ts.map +1 -0
  125. package/dist/cjs/utils/ensemble_result.js.map +1 -0
  126. package/dist/cjs/utils/event_controller.cjs +59 -0
  127. package/dist/cjs/utils/event_controller.d.ts +13 -0
  128. package/dist/cjs/utils/event_controller.d.ts.map +1 -0
  129. package/dist/cjs/utils/event_controller.js.map +1 -0
  130. package/dist/cjs/utils/external_models.cjs +42 -0
  131. package/dist/cjs/utils/external_models.d.ts +9 -0
  132. package/dist/cjs/utils/external_models.d.ts.map +1 -0
  133. package/dist/cjs/utils/external_models.js.map +1 -0
  134. package/dist/cjs/utils/image_to_text.cjs +58 -0
  135. package/dist/cjs/utils/image_to_text.d.ts +3 -0
  136. package/dist/cjs/utils/image_to_text.d.ts.map +1 -0
  137. package/dist/cjs/utils/image_to_text.js.map +1 -0
  138. package/dist/cjs/utils/image_utils.cjs +168 -0
  139. package/dist/cjs/utils/image_utils.d.ts +18 -0
  140. package/dist/cjs/utils/image_utils.d.ts.map +1 -0
  141. package/dist/cjs/utils/image_utils.js.map +1 -0
  142. package/dist/cjs/utils/image_validation.cjs +31 -0
  143. package/dist/cjs/utils/image_validation.d.ts +3 -0
  144. package/dist/cjs/utils/image_validation.d.ts.map +1 -0
  145. package/dist/cjs/utils/image_validation.js.map +1 -0
  146. package/dist/cjs/utils/llm_logger.cjs +31 -0
  147. package/dist/cjs/utils/llm_logger.d.ts +8 -0
  148. package/dist/cjs/utils/llm_logger.d.ts.map +1 -0
  149. package/dist/cjs/utils/llm_logger.js.map +1 -0
  150. package/dist/cjs/utils/message_history.cjs +560 -0
  151. package/dist/cjs/utils/message_history.d.ts +65 -0
  152. package/dist/cjs/utils/message_history.d.ts.map +1 -0
  153. package/dist/cjs/utils/message_history.js.map +1 -0
  154. package/dist/cjs/utils/model_class_config.cjs +105 -0
  155. package/dist/cjs/utils/model_class_config.d.ts +12 -0
  156. package/dist/cjs/utils/model_class_config.d.ts.map +1 -0
  157. package/dist/cjs/utils/model_class_config.js.map +1 -0
  158. package/dist/cjs/utils/pause_controller.cjs +90 -0
  159. package/dist/cjs/utils/pause_controller.d.ts +14 -0
  160. package/dist/cjs/utils/pause_controller.d.ts.map +1 -0
  161. package/dist/cjs/utils/pause_controller.js.map +1 -0
  162. package/dist/cjs/utils/quota_tracker.cjs +311 -0
  163. package/dist/cjs/utils/quota_tracker.d.ts +22 -0
  164. package/dist/cjs/utils/quota_tracker.d.ts.map +1 -0
  165. package/dist/cjs/utils/quota_tracker.js.map +1 -0
  166. package/dist/cjs/utils/retry_handler.cjs +131 -0
  167. package/dist/cjs/utils/retry_handler.d.ts +15 -0
  168. package/dist/cjs/utils/retry_handler.d.ts.map +1 -0
  169. package/dist/cjs/utils/retry_handler.js.map +1 -0
  170. package/dist/cjs/utils/running_tool_tracker.cjs +133 -0
  171. package/dist/cjs/utils/running_tool_tracker.d.ts +42 -0
  172. package/dist/cjs/utils/running_tool_tracker.d.ts.map +1 -0
  173. package/dist/cjs/utils/running_tool_tracker.js.map +1 -0
  174. package/dist/cjs/utils/sequential_queue.cjs +73 -0
  175. package/dist/cjs/utils/sequential_queue.d.ts +13 -0
  176. package/dist/cjs/utils/sequential_queue.d.ts.map +1 -0
  177. package/dist/cjs/utils/sequential_queue.js.map +1 -0
  178. package/dist/cjs/utils/stream_handler.cjs +73 -0
  179. package/dist/cjs/utils/stream_handler.d.ts +16 -0
  180. package/dist/cjs/utils/stream_handler.d.ts.map +1 -0
  181. package/dist/cjs/utils/stream_handler.js.map +1 -0
  182. package/dist/cjs/utils/summary_utils.cjs +211 -0
  183. package/dist/cjs/utils/summary_utils.d.ts +7 -0
  184. package/dist/cjs/utils/summary_utils.d.ts.map +1 -0
  185. package/dist/cjs/utils/summary_utils.js.map +1 -0
  186. package/dist/cjs/utils/test_utils.cjs +212 -0
  187. package/dist/cjs/utils/test_utils.d.ts +58 -0
  188. package/dist/cjs/utils/test_utils.d.ts.map +1 -0
  189. package/dist/cjs/utils/test_utils.js.map +1 -0
  190. package/dist/cjs/utils/tool_execution_manager.cjs +139 -0
  191. package/dist/cjs/utils/tool_execution_manager.d.ts +7 -0
  192. package/dist/cjs/utils/tool_execution_manager.d.ts.map +1 -0
  193. package/dist/cjs/utils/tool_execution_manager.js.map +1 -0
  194. package/dist/cjs/utils/tool_parameter_utils.cjs +168 -0
  195. package/dist/cjs/utils/tool_parameter_utils.d.ts +5 -0
  196. package/dist/cjs/utils/tool_parameter_utils.d.ts.map +1 -0
  197. package/dist/cjs/utils/tool_parameter_utils.js.map +1 -0
  198. package/dist/cjs/utils/tool_result_processor.cjs +363 -0
  199. package/dist/cjs/utils/tool_result_processor.d.ts +11 -0
  200. package/dist/cjs/utils/tool_result_processor.d.ts.map +1 -0
  201. package/dist/cjs/utils/tool_result_processor.js.map +1 -0
  202. package/dist/cjs/utils/verification.cjs +59 -0
  203. package/dist/cjs/utils/verification.d.ts +7 -0
  204. package/dist/cjs/utils/verification.d.ts.map +1 -0
  205. package/dist/cjs/utils/verification.js.map +1 -0
  206. package/dist/tsconfig.tsbuildinfo +1 -1
  207. package/dist/utils/audio_stream_player.d.ts +2 -0
  208. package/dist/utils/audio_stream_player.d.ts.map +1 -1
  209. package/dist/utils/audio_stream_player.js +83 -1
  210. package/dist/utils/audio_stream_player.js.map +1 -1
  211. package/dist/utils/cost_tracker.d.ts +7 -0
  212. package/dist/utils/cost_tracker.d.ts.map +1 -1
  213. package/dist/utils/cost_tracker.js +29 -0
  214. package/dist/utils/cost_tracker.js.map +1 -1
  215. package/package.json +18 -3
@@ -0,0 +1,34 @@
1
+ import { ModelProviderID } from "../data/model_data.cjs";
2
+ export declare class EnsembleError extends Error {
3
+ code: string;
4
+ recoverable: boolean;
5
+ details?: Record<string, unknown>;
6
+ constructor(message: string, code: string, recoverable?: boolean, details?: Record<string, unknown>);
7
+ }
8
+ export declare class ProviderError extends EnsembleError {
9
+ provider: ModelProviderID;
10
+ constructor(provider: ModelProviderID, message: string, code: string, recoverable?: boolean, details?: Record<string, unknown>);
11
+ }
12
+ export declare class ToolExecutionError extends EnsembleError {
13
+ toolName: string;
14
+ constructor(toolName: string, message: string, code?: string, recoverable?: boolean, details?: Record<string, unknown>);
15
+ }
16
+ export declare class AbortError extends EnsembleError {
17
+ constructor(message?: string);
18
+ }
19
+ export declare class PauseAbortError extends AbortError {
20
+ constructor();
21
+ }
22
+ export declare class QuotaExceededError extends EnsembleError {
23
+ provider: ModelProviderID;
24
+ model: string;
25
+ constructor(provider: ModelProviderID, model: string, message: string, details?: Record<string, unknown>);
26
+ }
27
+ export declare class ModelNotFoundError extends EnsembleError {
28
+ model: string;
29
+ constructor(model: string, message?: string);
30
+ }
31
+ export declare class ConfigurationError extends EnsembleError {
32
+ constructor(message: string, details?: Record<string, unknown>);
33
+ }
34
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../types/errors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAKxD,qBAAa,aAAc,SAAQ,KAAK;IAGzB,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,OAAO;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAHxC,OAAO,EAAE,MAAM,EACR,IAAI,EAAE,MAAM,EACZ,WAAW,GAAE,OAAe,EAC5B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAK/C;AAKD,qBAAa,aAAc,SAAQ,aAAa;IAEjC,QAAQ,EAAE,eAAe;gBAAzB,QAAQ,EAAE,eAAe,EAChC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,WAAW,GAAE,OAAe,EAC5B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAKxC;AAKD,qBAAa,kBAAmB,SAAQ,aAAa;IAEtC,QAAQ,EAAE,MAAM;gBAAhB,QAAQ,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,MAA+B,EACrC,WAAW,GAAE,OAAc,EAC3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAKxC;AAKD,qBAAa,UAAW,SAAQ,aAAa;gBAC7B,OAAO,GAAE,MAA4B;CAIpD;AAKD,qBAAa,eAAgB,SAAQ,UAAU;;CAK9C;AAKD,qBAAa,kBAAmB,SAAQ,aAAa;IAEtC,QAAQ,EAAE,eAAe;IACzB,KAAK,EAAE,MAAM;gBADb,QAAQ,EAAE,eAAe,EACzB,KAAK,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAKxC;AAKD,qBAAa,kBAAmB,SAAQ,aAAa;IAEtC,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,MAAM;CAKvB;AAKD,qBAAa,kBAAmB,SAAQ,aAAa;gBACrC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAIjE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../types/errors.ts"],"names":[],"mappings":";;;AASA,MAAa,aAAc,SAAQ,KAAK;IAGzB;IACA;IACA;IAJX,YACI,OAAe,EACR,IAAY,EACZ,cAAuB,KAAK,EAC5B,OAAiC;QAExC,KAAK,CAAC,OAAO,CAAC,CAAC;QAJR,SAAI,GAAJ,IAAI,CAAQ;QACZ,gBAAW,GAAX,WAAW,CAAiB;QAC5B,YAAO,GAAP,OAAO,CAA0B;QAGxC,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAChC,CAAC;CACJ;AAVD,sCAUC;AAKD,MAAa,aAAc,SAAQ,aAAa;IAEjC;IADX,YACW,QAAyB,EAChC,OAAe,EACf,IAAY,EACZ,cAAuB,KAAK,EAC5B,OAAiC;QAEjC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QANpC,aAAQ,GAAR,QAAQ,CAAiB;QAOhC,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAChC,CAAC;CACJ;AAXD,sCAWC;AAKD,MAAa,kBAAmB,SAAQ,aAAa;IAEtC;IADX,YACW,QAAgB,EACvB,OAAe,EACf,OAAe,sBAAsB,EACrC,cAAuB,IAAI,EAC3B,OAAiC;QAEjC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QANpC,aAAQ,GAAR,QAAQ,CAAQ;QAOvB,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACrC,CAAC;CACJ;AAXD,gDAWC;AAKD,MAAa,UAAW,SAAQ,aAAa;IACzC,YAAY,UAAkB,mBAAmB;QAC7C,KAAK,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;CACJ;AALD,gCAKC;AAKD,MAAa,eAAgB,SAAQ,UAAU;IAC3C;QACI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAClC,CAAC;CACJ;AALD,0CAKC;AAKD,MAAa,kBAAmB,SAAQ,aAAa;IAEtC;IACA;IAFX,YACW,QAAyB,EACzB,KAAa,EACpB,OAAe,EACf,OAAiC;QAEjC,KAAK,CAAC,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAL1C,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAQ;QAKpB,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACrC,CAAC;CACJ;AAVD,gDAUC;AAKD,MAAa,kBAAmB,SAAQ,aAAa;IAEtC;IADX,YACW,KAAa,EACpB,OAAgB;QAEhB,KAAK,CAAC,OAAO,IAAI,UAAU,KAAK,8BAA8B,EAAE,iBAAiB,EAAE,KAAK,CAAC,CAAC;QAHnF,UAAK,GAAL,KAAK,CAAQ;QAIpB,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACrC,CAAC;CACJ;AARD,gDAQC;AAKD,MAAa,kBAAmB,SAAQ,aAAa;IACjD,YAAY,OAAe,EAAE,OAAiC;QAC1D,KAAK,CAAC,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACrC,CAAC;CACJ;AALD,gDAKC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,638 @@
1
+ export type ToolParameterType = 'string' | 'number' | 'boolean' | 'object' | 'array' | 'null';
2
+ export interface ToolParameter {
3
+ type?: ToolParameterType;
4
+ description?: string | (() => string);
5
+ enum?: string[] | (() => Promise<string[]>);
6
+ items?: ToolParameter | {
7
+ type: ToolParameterType;
8
+ enum?: string[] | (() => Promise<string[]>);
9
+ };
10
+ properties?: Record<string, ToolParameter>;
11
+ required?: string[];
12
+ optional?: boolean;
13
+ minItems?: number;
14
+ additionalProperties?: boolean;
15
+ default?: unknown;
16
+ minimum?: number;
17
+ maximum?: number;
18
+ minLength?: number;
19
+ maxLength?: number;
20
+ pattern?: string;
21
+ }
22
+ export type ExecutableFunction = (...args: unknown[]) => Promise<string> | string;
23
+ export interface ToolFunction {
24
+ function: ExecutableFunction;
25
+ definition: ToolDefinition;
26
+ injectAgentId?: boolean;
27
+ injectAbortSignal?: boolean;
28
+ }
29
+ export interface ToolDefinition {
30
+ type: 'function';
31
+ function: {
32
+ name: string;
33
+ description: string;
34
+ parameters: {
35
+ type: 'object';
36
+ properties: Record<string, ToolParameter>;
37
+ required: string[];
38
+ };
39
+ };
40
+ }
41
+ export interface ResponseJSONSchema {
42
+ name: string;
43
+ schema: Record<string, unknown>;
44
+ type: 'json_schema';
45
+ description?: string;
46
+ strict?: boolean | null;
47
+ }
48
+ export interface ModelSettings {
49
+ temperature?: number;
50
+ top_p?: number;
51
+ top_k?: number;
52
+ max_tokens?: number;
53
+ stop_sequence?: string;
54
+ seed?: number;
55
+ text?: {
56
+ format: string;
57
+ };
58
+ tool_choice?: 'auto' | 'none' | 'required' | {
59
+ type: string;
60
+ function: {
61
+ name: string;
62
+ };
63
+ };
64
+ sequential_tools?: boolean;
65
+ json_schema?: ResponseJSONSchema;
66
+ force_json?: boolean;
67
+ }
68
+ export interface ToolCall {
69
+ id: string;
70
+ type: 'function';
71
+ call_id?: string;
72
+ function: {
73
+ name: string;
74
+ arguments: string;
75
+ arguments_formatted?: string;
76
+ };
77
+ }
78
+ export interface ToolCallResult {
79
+ toolCall: ToolCall;
80
+ id: string;
81
+ call_id: string;
82
+ output?: string;
83
+ error?: string;
84
+ }
85
+ export interface ToolCallHandler {
86
+ onToolCall?: (toolCall: ToolCall) => void;
87
+ onToolResult?: (toolCall: ToolCall, result: string) => void;
88
+ }
89
+ export interface ResponseContentText {
90
+ type: 'input_text';
91
+ text: string;
92
+ }
93
+ export interface ResponseContentImage {
94
+ type: 'input_image';
95
+ detail: 'high' | 'low' | 'auto';
96
+ file_id?: string;
97
+ image_url?: string;
98
+ }
99
+ export interface ResponseContentFileInput {
100
+ type: 'input_file';
101
+ file_data?: string;
102
+ file_id?: string;
103
+ filename?: string;
104
+ }
105
+ export type ResponseContent = string | Array<ResponseContentText | ResponseContentImage | ResponseContentFileInput>;
106
+ export type ResponseInput = Array<ResponseInputItem>;
107
+ export type ResponseInputItem = ResponseInputMessage | ResponseThinkingMessage | ResponseOutputMessage | ResponseInputFunctionCall | ResponseInputFunctionCallOutput;
108
+ export interface ResponseBaseMessage {
109
+ type: string;
110
+ model?: string;
111
+ timestamp?: number;
112
+ }
113
+ export interface ResponseInputMessage extends ResponseBaseMessage {
114
+ type: 'message';
115
+ name?: string;
116
+ content: ResponseContent;
117
+ role: 'user' | 'system' | 'developer';
118
+ status?: 'in_progress' | 'completed' | 'incomplete';
119
+ }
120
+ export interface ResponseThinkingMessage extends ResponseBaseMessage {
121
+ type: 'thinking';
122
+ content: ResponseContent;
123
+ signature?: ResponseContent;
124
+ thinking_id?: string;
125
+ role: 'assistant';
126
+ status?: 'in_progress' | 'completed' | 'incomplete';
127
+ }
128
+ export interface ResponseOutputMessage extends ResponseBaseMessage {
129
+ id?: string;
130
+ type: 'message';
131
+ content: ResponseContent;
132
+ role: 'assistant';
133
+ status: 'in_progress' | 'completed' | 'incomplete';
134
+ }
135
+ export interface ResponseInputFunctionCall extends ResponseBaseMessage {
136
+ type: 'function_call';
137
+ call_id: string;
138
+ name: string;
139
+ arguments: string;
140
+ id?: string;
141
+ status?: 'in_progress' | 'completed' | 'incomplete';
142
+ }
143
+ export interface ResponseInputFunctionCallOutput extends ResponseBaseMessage {
144
+ type: 'function_call_output';
145
+ call_id: string;
146
+ name?: string;
147
+ output: string;
148
+ id?: string;
149
+ status?: 'in_progress' | 'completed' | 'incomplete';
150
+ }
151
+ export type StreamEventType = 'connected' | 'command_start' | 'command_done' | 'project_create' | 'project_update' | 'process_start' | 'process_running' | 'process_updated' | 'process_done' | 'process_failed' | 'process_waiting' | 'process_terminated' | 'agent_start' | 'agent_updated' | 'agent_done' | 'agent_status' | 'message_start' | 'message_delta' | 'message_complete' | 'audio_stream' | 'tool_start' | 'tool_delta' | 'tool_done' | 'file_start' | 'file_delta' | 'file_complete' | 'cost_update' | 'system_status' | 'system_update' | 'quota_update' | 'screenshot' | 'design_grid' | 'console' | 'error' | 'response_output' | 'tool_wait_start' | 'tool_waiting' | 'tool_wait_complete' | 'task_wait_start' | 'task_waiting' | 'task_wait_complete' | 'task_complete' | 'task_fatal_error' | 'git_pull_request' | 'stream_end' | 'agent_start' | 'agent_status' | 'agent_done';
152
+ export interface StreamEventBase {
153
+ type: StreamEventType;
154
+ timestamp?: string;
155
+ agent?: AgentExportDefinition;
156
+ }
157
+ export interface MessageEventBase extends StreamEventBase {
158
+ type: StreamEventType;
159
+ content: string;
160
+ message_id: string;
161
+ order?: number;
162
+ thinking_content?: string;
163
+ thinking_signature?: string;
164
+ }
165
+ export interface MessageEvent extends MessageEventBase {
166
+ type: 'message_start' | 'message_delta' | 'message_complete';
167
+ }
168
+ export interface FileEvent extends StreamEventBase {
169
+ type: 'file_start' | 'file_delta' | 'file_complete';
170
+ message_id: string;
171
+ mime_type?: string;
172
+ data_format: 'base64';
173
+ data: string;
174
+ order?: number;
175
+ }
176
+ export interface ToolEvent extends StreamEventBase {
177
+ type: 'tool_start' | 'tool_delta' | 'tool_done';
178
+ tool_call: ToolCall;
179
+ result?: {
180
+ call_id: string;
181
+ output: string;
182
+ error?: string;
183
+ };
184
+ }
185
+ export interface ErrorEvent extends StreamEventBase {
186
+ type: 'error';
187
+ error: string;
188
+ }
189
+ export interface TaskEvent extends StreamEventBase {
190
+ type: 'task_complete' | 'task_fatal_error';
191
+ result?: string;
192
+ }
193
+ export interface CostUpdateEvent extends StreamEventBase {
194
+ type: 'cost_update';
195
+ usage: ModelUsage;
196
+ thought_delay?: number;
197
+ }
198
+ export interface ResponseOutputEvent extends StreamEventBase {
199
+ type: 'response_output';
200
+ message: ResponseInputItem;
201
+ }
202
+ export interface AgentEvent extends StreamEventBase {
203
+ type: 'agent_start' | 'agent_status' | 'agent_done';
204
+ agent: AgentExportDefinition;
205
+ input?: string;
206
+ output?: string;
207
+ status?: string;
208
+ parent_id?: string;
209
+ }
210
+ export type ProviderStreamEvent = StreamEventBase | MessageEvent | FileEvent | ToolEvent | ErrorEvent | CostUpdateEvent | ResponseOutputEvent | AgentEvent;
211
+ export interface ModelProvider {
212
+ provider_id: string;
213
+ createResponseStream(messages: ResponseInput, model: string, agent: AgentDefinition): AsyncGenerator<ProviderStreamEvent>;
214
+ createEmbedding?(input: string | string[], model: string, opts?: EmbedOpts): Promise<number[] | number[][]>;
215
+ createImage?(prompt: string, model?: string, opts?: ImageGenerationOpts): Promise<string[]>;
216
+ createVoice?(text: string, model: string, opts?: VoiceGenerationOpts): Promise<ReadableStream<Uint8Array> | ArrayBuffer>;
217
+ createTranscription?(audio: TranscriptionAudioSource, agent: AgentDefinition, model: string, opts?: TranscriptionOpts): AsyncGenerator<TranscriptionEvent>;
218
+ createLiveSession?(config: LiveConfig, agent: AgentDefinition, model: string, opts?: LiveOptions): Promise<LiveSession>;
219
+ }
220
+ export interface LiveSession {
221
+ sessionId: string;
222
+ sendAudio(audio: LiveAudioBlob): Promise<void>;
223
+ sendText(text: string, role?: 'user' | 'assistant'): Promise<void>;
224
+ sendToolResponse(toolResults: ToolCallResult[]): Promise<void>;
225
+ getEventStream(): AsyncIterable<LiveEvent>;
226
+ close(): Promise<void>;
227
+ isActive(): boolean;
228
+ }
229
+ export type ModelClassID = 'standard' | 'mini' | 'reasoning' | 'reasoning_mini' | 'monologue' | 'metacognition' | 'code' | 'writing' | 'summary' | 'vision' | 'vision_mini' | 'search' | 'image_generation' | 'embedding' | 'voice' | 'transcription';
230
+ export type ModelProviderID = 'openai' | 'anthropic' | 'google' | 'xai' | 'deepseek' | 'openrouter' | 'elevenlabs' | 'test';
231
+ export interface TieredPrice {
232
+ threshold_tokens: number;
233
+ price_below_threshold_per_million: number;
234
+ price_above_threshold_per_million: number;
235
+ }
236
+ export interface TimeBasedPrice {
237
+ peak_price_per_million: number;
238
+ off_peak_price_per_million: number;
239
+ peak_utc_start_hour: number;
240
+ peak_utc_start_minute: number;
241
+ peak_utc_end_hour: number;
242
+ peak_utc_end_minute: number;
243
+ }
244
+ export interface ModalityPrice {
245
+ text?: number | TieredPrice | TimeBasedPrice;
246
+ audio?: number | TieredPrice | TimeBasedPrice;
247
+ video?: number | TieredPrice | TimeBasedPrice;
248
+ image?: number | TieredPrice | TimeBasedPrice;
249
+ }
250
+ export interface ModelCost {
251
+ input_per_million?: number | TieredPrice | TimeBasedPrice | ModalityPrice;
252
+ output_per_million?: number | TieredPrice | TimeBasedPrice | ModalityPrice;
253
+ cached_input_per_million?: number | TieredPrice | TimeBasedPrice;
254
+ per_image?: number;
255
+ }
256
+ export interface ModelFeatures {
257
+ context_length?: number;
258
+ input_modality?: ('text' | 'image' | 'audio' | 'video')[];
259
+ output_modality?: ('text' | 'image' | 'audio' | 'embedding')[];
260
+ tool_use?: boolean;
261
+ streaming?: boolean;
262
+ json_output?: boolean;
263
+ max_output_tokens?: number;
264
+ reasoning_output?: boolean;
265
+ }
266
+ export interface ModelEntry {
267
+ id: string;
268
+ aliases?: string[];
269
+ provider: ModelProviderID;
270
+ cost: ModelCost;
271
+ features: ModelFeatures;
272
+ class?: string;
273
+ description?: string;
274
+ rate_limit_fallback?: string;
275
+ openrouter_id?: string;
276
+ embedding?: boolean;
277
+ dim?: number;
278
+ score?: number;
279
+ scores?: {
280
+ monologue?: number;
281
+ code?: number;
282
+ reasoning?: number;
283
+ };
284
+ }
285
+ export interface ModelUsage {
286
+ model?: string;
287
+ cost?: number;
288
+ input_tokens?: number;
289
+ output_tokens?: number;
290
+ total_tokens?: number;
291
+ cached_tokens?: number;
292
+ image_count?: number;
293
+ metadata?: Record<string, unknown>;
294
+ timestamp?: Date;
295
+ isFreeTierUsage?: boolean;
296
+ input_modality?: 'text' | 'audio' | 'video' | 'image';
297
+ output_modality?: 'text' | 'audio' | 'video' | 'image';
298
+ }
299
+ export interface ModelClass {
300
+ models: string[];
301
+ random?: boolean;
302
+ }
303
+ export interface ModelSpecificQuota {
304
+ model: string;
305
+ dailyTokenLimit: number;
306
+ dailyTokensUsed: number;
307
+ dailyRequestLimit: number;
308
+ dailyRequestsUsed: number;
309
+ rateLimit?: {
310
+ requestsPerMinute: number;
311
+ tokensPerMinute: number;
312
+ };
313
+ lastResetDate?: Date;
314
+ }
315
+ export interface ProviderQuota {
316
+ provider: ModelProviderID;
317
+ creditBalance?: number;
318
+ creditLimit?: number;
319
+ info?: Record<string, unknown>;
320
+ models: Record<string, ModelSpecificQuota>;
321
+ lastResetDate?: Date;
322
+ }
323
+ export interface EnsembleLogger {
324
+ log_llm_request(agentId: string, providerName: string, model: string, requestData: unknown, timestamp?: Date): string;
325
+ log_llm_response(requestId: string | undefined, responseData: unknown, timestamp?: Date): void;
326
+ log_llm_error(requestId: string | undefined, errorData: unknown, timestamp?: Date): void;
327
+ }
328
+ export interface ExtractBase64ImageResult {
329
+ found: boolean;
330
+ originalContent: string;
331
+ replaceContent: string;
332
+ image_id: string | null;
333
+ images: Record<string, string>;
334
+ }
335
+ export interface EmbedOpts {
336
+ taskType?: string;
337
+ dimensions?: number;
338
+ normalize?: boolean;
339
+ }
340
+ export interface ImageGenerationOpts {
341
+ n?: number;
342
+ size?: 'square' | 'landscape' | 'portrait' | '1024x1024' | '1536x1024' | '1024x1536' | '1792x1024' | '1024x1792' | '512x512' | '256x256';
343
+ quality?: 'standard' | 'hd' | 'low' | 'medium' | 'high';
344
+ style?: 'vivid' | 'natural';
345
+ response_format?: 'url' | 'b64_json';
346
+ source_images?: string | string[];
347
+ mask?: string;
348
+ }
349
+ export interface VoiceGenerationOpts {
350
+ voice?: 'alloy' | 'echo' | 'fable' | 'onyx' | 'nova' | 'shimmer' | 'rachel' | 'domi' | 'bella' | 'antoni' | 'elli' | 'josh' | 'arnold' | 'adam' | 'sam' | 'george' | string;
351
+ speed?: number;
352
+ response_format?: 'mp3' | 'opus' | 'aac' | 'flac' | 'wav' | 'pcm' | 'mp3_low' | 'mp3_high' | 'pcm_16000' | 'pcm_22050' | 'pcm_24000' | 'pcm_44100' | 'ulaw';
353
+ stream?: boolean;
354
+ voice_settings?: {
355
+ stability?: number;
356
+ similarity_boost?: number;
357
+ style?: number;
358
+ use_speaker_boost?: boolean;
359
+ speed?: number;
360
+ };
361
+ affect?: string;
362
+ instructions?: string;
363
+ }
364
+ export type WorkerFunction = (...args: any[]) => AgentDefinition;
365
+ export interface AgentExportDefinition {
366
+ agent_id?: string;
367
+ name?: string;
368
+ parent_id?: string;
369
+ model?: string;
370
+ modelClass?: string;
371
+ cwd?: string;
372
+ modelScores?: Record<string, number>;
373
+ disabledModels?: string[];
374
+ }
375
+ export interface AgentDefinition {
376
+ agent_id?: string;
377
+ name?: string;
378
+ description?: string;
379
+ instructions?: string;
380
+ parent_id?: string;
381
+ workers?: WorkerFunction[];
382
+ tools?: ToolFunction[];
383
+ model?: string;
384
+ modelClass?: ModelClassID;
385
+ modelSettings?: ModelSettings;
386
+ intelligence?: 'low' | 'standard' | 'high';
387
+ maxToolCalls?: number;
388
+ maxToolCallRoundsPerTurn?: number;
389
+ verifier?: AgentDefinition;
390
+ maxVerificationAttempts?: number;
391
+ args?: any;
392
+ jsonSchema?: ResponseJSONSchema;
393
+ historyThread?: ResponseInput | undefined;
394
+ cwd?: string;
395
+ modelScores?: Record<string, number>;
396
+ disabledModels?: string[];
397
+ getTools?: () => Promise<ToolFunction[]>;
398
+ onToolCall?: (toolCall: ToolCall) => Promise<void>;
399
+ processToolCall?: (toolCalls: ToolCall[]) => Promise<Record<string, any>>;
400
+ onToolResult?: (toolCallResult: ToolCallResult) => Promise<void>;
401
+ onToolError?: (toolCallResult: ToolCallResult) => Promise<void>;
402
+ onRequest?: (agent: AgentDefinition, messages: ResponseInput) => Promise<[any, ResponseInput]>;
403
+ onResponse?: (message: ResponseOutputMessage) => Promise<void>;
404
+ onThinking?: (message: ResponseThinkingMessage) => Promise<void>;
405
+ onToolEvent?: (event: ProviderStreamEvent) => void | Promise<void>;
406
+ params?: ToolParameterMap;
407
+ processParams?: (agent: AgentDefinition, params: Record<string, any>) => Promise<{
408
+ prompt: string;
409
+ intelligence?: 'low' | 'standard' | 'high';
410
+ }>;
411
+ abortSignal?: AbortSignal;
412
+ retryOptions?: {
413
+ maxRetries?: number;
414
+ initialDelay?: number;
415
+ maxDelay?: number;
416
+ backoffMultiplier?: number;
417
+ additionalRetryableErrors?: string[];
418
+ additionalRetryableStatusCodes?: number[];
419
+ onRetry?: (error: any, attempt: number) => void;
420
+ };
421
+ }
422
+ export interface ToolParameter {
423
+ type?: ToolParameterType;
424
+ description?: string | (() => string);
425
+ enum?: string[] | (() => Promise<string[]>);
426
+ items?: ToolParameter | {
427
+ type: ToolParameterType;
428
+ enum?: string[] | (() => Promise<string[]>);
429
+ };
430
+ properties?: Record<string, ToolParameter>;
431
+ required?: string[];
432
+ optional?: boolean;
433
+ minItems?: number;
434
+ additionalProperties?: boolean;
435
+ default?: unknown;
436
+ minimum?: number;
437
+ maximum?: number;
438
+ minLength?: number;
439
+ maxLength?: number;
440
+ pattern?: string;
441
+ }
442
+ export type ToolParameterMap = Record<string, string | ToolParameter>;
443
+ export interface TranscriptionOpts {
444
+ audioFormat?: {
445
+ sampleRate?: number;
446
+ channels?: number;
447
+ encoding?: 'pcm' | 'opus' | 'flac';
448
+ };
449
+ realtimeInputConfig?: any;
450
+ speechConfig?: any;
451
+ bufferConfig?: {
452
+ chunkSize?: number;
453
+ flushInterval?: number;
454
+ };
455
+ stream?: boolean;
456
+ prompt?: string;
457
+ language?: string;
458
+ vad?: boolean;
459
+ noiseReduction?: 'near_field' | 'far_field' | null;
460
+ }
461
+ export type TranscriptionAudioSource = ReadableStream<Uint8Array> | AsyncIterable<Uint8Array> | (() => AsyncIterable<Uint8Array>) | ArrayBuffer | Uint8Array;
462
+ export type TranscriptionEventType = 'transcription_start' | 'transcription_turn_delta' | 'transcription_turn_start' | 'transcription_turn_complete' | 'transcription_complete' | 'error';
463
+ export interface TranscriptionEventBase {
464
+ type: TranscriptionEventType;
465
+ timestamp: string;
466
+ agent?: AgentExportDefinition;
467
+ }
468
+ export interface TranscriptionStartEvent extends TranscriptionEventBase {
469
+ type: 'transcription_start';
470
+ format: string;
471
+ language?: string;
472
+ audioFormat?: TranscriptionOpts['audioFormat'];
473
+ }
474
+ export interface TranscriptionTurnDeltaEvent extends TranscriptionEventBase {
475
+ type: 'transcription_turn_delta';
476
+ delta: string;
477
+ partial?: boolean;
478
+ }
479
+ export interface TranscriptionTurnEvent extends TranscriptionEventBase {
480
+ type: 'transcription_turn_start' | 'transcription_turn_complete';
481
+ text?: string;
482
+ }
483
+ export interface TranscriptionCompleteEvent extends TranscriptionEventBase {
484
+ type: 'transcription_complete';
485
+ text?: string;
486
+ duration?: number;
487
+ }
488
+ export interface TranscriptionErrorEvent extends TranscriptionEventBase {
489
+ type: 'error';
490
+ error: string;
491
+ }
492
+ export type TranscriptionEvent = TranscriptionStartEvent | TranscriptionTurnDeltaEvent | TranscriptionTurnEvent | TranscriptionCompleteEvent | TranscriptionErrorEvent;
493
+ export type LiveResponseModality = 'TEXT' | 'AUDIO';
494
+ export interface LiveVoiceConfig {
495
+ voiceName?: string;
496
+ }
497
+ export interface LiveSpeechConfig {
498
+ voiceConfig?: {
499
+ prebuiltVoiceConfig?: LiveVoiceConfig;
500
+ };
501
+ languageCode?: string;
502
+ }
503
+ export interface LiveVADConfig {
504
+ disabled?: boolean;
505
+ startOfSpeechSensitivity?: 'START_SENSITIVITY_LOW' | 'START_SENSITIVITY_MEDIUM' | 'START_SENSITIVITY_HIGH';
506
+ endOfSpeechSensitivity?: 'END_SENSITIVITY_LOW' | 'END_SENSITIVITY_MEDIUM' | 'END_SENSITIVITY_HIGH';
507
+ prefixPaddingMs?: number;
508
+ silenceDurationMs?: number;
509
+ }
510
+ export interface LiveRealtimeInputConfig {
511
+ automaticActivityDetection?: LiveVADConfig;
512
+ }
513
+ export interface LiveConfig {
514
+ responseModalities: [LiveResponseModality];
515
+ speechConfig?: LiveSpeechConfig;
516
+ realtimeInputConfig?: LiveRealtimeInputConfig;
517
+ outputAudioTranscription?: boolean | Record<string, never>;
518
+ inputAudioTranscription?: boolean | Record<string, never>;
519
+ tools?: Array<{
520
+ functionDeclarations?: ToolDefinition['function'][];
521
+ codeExecution?: boolean | Record<string, never>;
522
+ googleSearch?: boolean | Record<string, never>;
523
+ }>;
524
+ mediaResolution?: 'MEDIA_RESOLUTION_LOW' | 'MEDIA_RESOLUTION_MEDIUM' | 'MEDIA_RESOLUTION_HIGH';
525
+ enableAffectiveDialog?: boolean;
526
+ proactivity?: {
527
+ proactiveAudio?: boolean;
528
+ };
529
+ }
530
+ export interface LiveOptions {
531
+ messageHistory?: ResponseInput;
532
+ abortSignal?: AbortSignal;
533
+ sequentialTools?: boolean;
534
+ maxToolCalls?: number;
535
+ maxToolCallRoundsPerTurn?: number;
536
+ apiVersion?: string;
537
+ }
538
+ export interface LiveAudioBlob {
539
+ data: string;
540
+ mimeType: string;
541
+ }
542
+ export type LiveEventType = 'live_start' | 'live_ready' | 'audio_input' | 'audio_output' | 'text_delta' | 'message_delta' | 'tool_start' | 'tool_call' | 'tool_result' | 'tool_done' | 'turn_start' | 'turn_complete' | 'interrupted' | 'transcription_input' | 'transcription_output' | 'cost_update' | 'error' | 'live_end';
543
+ export interface LiveEventBase {
544
+ type: LiveEventType;
545
+ timestamp: string;
546
+ }
547
+ export interface LiveStartEvent extends LiveEventBase {
548
+ type: 'live_start';
549
+ sessionId: string;
550
+ config: LiveConfig;
551
+ }
552
+ export interface LiveReadyEvent extends LiveEventBase {
553
+ type: 'live_ready';
554
+ }
555
+ export interface LiveAudioInputEvent extends LiveEventBase {
556
+ type: 'audio_input';
557
+ size: number;
558
+ }
559
+ export interface LiveAudioOutputEvent extends LiveEventBase {
560
+ type: 'audio_output';
561
+ data: string;
562
+ format?: {
563
+ sampleRate: number;
564
+ channels: number;
565
+ encoding: string;
566
+ };
567
+ }
568
+ export interface LiveTextDeltaEvent extends LiveEventBase {
569
+ type: 'text_delta';
570
+ delta: string;
571
+ }
572
+ export interface LiveMessageDeltaEvent extends LiveEventBase {
573
+ type: 'message_delta';
574
+ delta: string;
575
+ }
576
+ export interface LiveTurnStartEvent extends LiveEventBase {
577
+ type: 'turn_start';
578
+ role: 'user' | 'model';
579
+ }
580
+ export interface LiveTurnCompleteEvent extends LiveEventBase {
581
+ type: 'turn_complete';
582
+ role: 'user' | 'model';
583
+ message?: ResponseInputMessage | ResponseOutputMessage;
584
+ }
585
+ export interface LiveInterruptedEvent extends LiveEventBase {
586
+ type: 'interrupted';
587
+ cancelledToolCalls?: string[];
588
+ }
589
+ export interface LiveTranscriptionInputEvent extends LiveEventBase {
590
+ type: 'transcription_input';
591
+ text: string;
592
+ }
593
+ export interface LiveTranscriptionOutputEvent extends LiveEventBase {
594
+ type: 'transcription_output';
595
+ text: string;
596
+ }
597
+ export interface LiveToolStartEvent extends LiveEventBase {
598
+ type: 'tool_start';
599
+ toolCall: ToolCall;
600
+ }
601
+ export interface LiveToolCallEvent extends LiveEventBase {
602
+ type: 'tool_call';
603
+ toolCalls: ToolCall[];
604
+ }
605
+ export interface LiveToolResultEvent extends LiveEventBase {
606
+ type: 'tool_result';
607
+ toolCallResult: ToolCallResult;
608
+ }
609
+ export interface LiveToolDoneEvent extends LiveEventBase {
610
+ type: 'tool_done';
611
+ totalCalls: number;
612
+ }
613
+ export interface LiveCostUpdateEvent extends LiveEventBase {
614
+ type: 'cost_update';
615
+ usage: {
616
+ inputTokens: number;
617
+ outputTokens: number;
618
+ totalTokens: number;
619
+ inputCost?: number;
620
+ outputCost?: number;
621
+ totalCost?: number;
622
+ };
623
+ }
624
+ export interface LiveErrorEvent extends LiveEventBase {
625
+ type: 'error';
626
+ error: string;
627
+ code?: string;
628
+ recoverable?: boolean;
629
+ }
630
+ export interface LiveEndEvent extends LiveEventBase {
631
+ type: 'live_end';
632
+ reason?: string;
633
+ duration?: number;
634
+ totalTokens?: number;
635
+ totalCost?: number;
636
+ }
637
+ export type LiveEvent = LiveStartEvent | LiveReadyEvent | LiveAudioInputEvent | LiveAudioOutputEvent | LiveTextDeltaEvent | LiveMessageDeltaEvent | LiveTurnStartEvent | LiveTurnCompleteEvent | LiveInterruptedEvent | LiveTranscriptionInputEvent | LiveTranscriptionOutputEvent | LiveToolStartEvent | LiveToolCallEvent | LiveToolResultEvent | LiveToolDoneEvent | LiveCostUpdateEvent | LiveErrorEvent | LiveEndEvent;
638
+ //# sourceMappingURL=types.d.ts.map