@livekit/agents 1.0.37 → 1.0.39

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 (155) hide show
  1. package/dist/cli.cjs.map +1 -1
  2. package/dist/inference/api_protos.cjs +68 -0
  3. package/dist/inference/api_protos.cjs.map +1 -1
  4. package/dist/inference/api_protos.d.cts +345 -4
  5. package/dist/inference/api_protos.d.ts +345 -4
  6. package/dist/inference/api_protos.d.ts.map +1 -1
  7. package/dist/inference/api_protos.js +60 -0
  8. package/dist/inference/api_protos.js.map +1 -1
  9. package/dist/inference/llm.cjs +7 -3
  10. package/dist/inference/llm.cjs.map +1 -1
  11. package/dist/inference/llm.d.cts +5 -6
  12. package/dist/inference/llm.d.ts +5 -6
  13. package/dist/inference/llm.d.ts.map +1 -1
  14. package/dist/inference/llm.js +7 -3
  15. package/dist/inference/llm.js.map +1 -1
  16. package/dist/inference/stt.cjs +32 -21
  17. package/dist/inference/stt.cjs.map +1 -1
  18. package/dist/inference/stt.d.cts +5 -4
  19. package/dist/inference/stt.d.ts +5 -4
  20. package/dist/inference/stt.d.ts.map +1 -1
  21. package/dist/inference/stt.js +34 -21
  22. package/dist/inference/stt.js.map +1 -1
  23. package/dist/inference/tts.cjs.map +1 -1
  24. package/dist/inference/tts.d.cts +10 -7
  25. package/dist/inference/tts.d.ts +10 -7
  26. package/dist/inference/tts.d.ts.map +1 -1
  27. package/dist/inference/tts.js.map +1 -1
  28. package/dist/ipc/inference_proc_executor.cjs.map +1 -1
  29. package/dist/ipc/job_proc_executor.cjs.map +1 -1
  30. package/dist/stt/stream_adapter.cjs +9 -1
  31. package/dist/stt/stream_adapter.cjs.map +1 -1
  32. package/dist/stt/stream_adapter.d.ts.map +1 -1
  33. package/dist/stt/stream_adapter.js +9 -1
  34. package/dist/stt/stream_adapter.js.map +1 -1
  35. package/dist/stt/stt.cjs +10 -0
  36. package/dist/stt/stt.cjs.map +1 -1
  37. package/dist/stt/stt.d.cts +12 -0
  38. package/dist/stt/stt.d.ts +12 -0
  39. package/dist/stt/stt.d.ts.map +1 -1
  40. package/dist/stt/stt.js +10 -0
  41. package/dist/stt/stt.js.map +1 -1
  42. package/dist/telemetry/traces.cjs +4 -3
  43. package/dist/telemetry/traces.cjs.map +1 -1
  44. package/dist/telemetry/traces.d.cts +2 -0
  45. package/dist/telemetry/traces.d.ts +2 -0
  46. package/dist/telemetry/traces.d.ts.map +1 -1
  47. package/dist/telemetry/traces.js +4 -3
  48. package/dist/telemetry/traces.js.map +1 -1
  49. package/dist/utils.cjs +11 -0
  50. package/dist/utils.cjs.map +1 -1
  51. package/dist/utils.d.cts +10 -0
  52. package/dist/utils.d.ts +10 -0
  53. package/dist/utils.d.ts.map +1 -1
  54. package/dist/utils.js +10 -0
  55. package/dist/utils.js.map +1 -1
  56. package/dist/voice/agent.cjs +6 -2
  57. package/dist/voice/agent.cjs.map +1 -1
  58. package/dist/voice/agent.d.ts.map +1 -1
  59. package/dist/voice/agent.js +6 -2
  60. package/dist/voice/agent.js.map +1 -1
  61. package/dist/voice/agent_activity.cjs +72 -37
  62. package/dist/voice/agent_activity.cjs.map +1 -1
  63. package/dist/voice/agent_activity.d.cts +2 -1
  64. package/dist/voice/agent_activity.d.ts +2 -1
  65. package/dist/voice/agent_activity.d.ts.map +1 -1
  66. package/dist/voice/agent_activity.js +73 -38
  67. package/dist/voice/agent_activity.js.map +1 -1
  68. package/dist/voice/agent_session.cjs +7 -5
  69. package/dist/voice/agent_session.cjs.map +1 -1
  70. package/dist/voice/agent_session.d.cts +5 -2
  71. package/dist/voice/agent_session.d.ts +5 -2
  72. package/dist/voice/agent_session.d.ts.map +1 -1
  73. package/dist/voice/agent_session.js +7 -5
  74. package/dist/voice/agent_session.js.map +1 -1
  75. package/dist/voice/audio_recognition.cjs +3 -1
  76. package/dist/voice/audio_recognition.cjs.map +1 -1
  77. package/dist/voice/audio_recognition.d.ts.map +1 -1
  78. package/dist/voice/audio_recognition.js +3 -1
  79. package/dist/voice/audio_recognition.js.map +1 -1
  80. package/dist/voice/avatar/datastream_io.cjs +6 -0
  81. package/dist/voice/avatar/datastream_io.cjs.map +1 -1
  82. package/dist/voice/avatar/datastream_io.d.cts +1 -0
  83. package/dist/voice/avatar/datastream_io.d.ts +1 -0
  84. package/dist/voice/avatar/datastream_io.d.ts.map +1 -1
  85. package/dist/voice/avatar/datastream_io.js +6 -0
  86. package/dist/voice/avatar/datastream_io.js.map +1 -1
  87. package/dist/voice/background_audio.cjs.map +1 -1
  88. package/dist/voice/generation.cjs +14 -5
  89. package/dist/voice/generation.cjs.map +1 -1
  90. package/dist/voice/generation.d.cts +3 -2
  91. package/dist/voice/generation.d.ts +3 -2
  92. package/dist/voice/generation.d.ts.map +1 -1
  93. package/dist/voice/generation.js +14 -5
  94. package/dist/voice/generation.js.map +1 -1
  95. package/dist/voice/io.cjs +12 -0
  96. package/dist/voice/io.cjs.map +1 -1
  97. package/dist/voice/io.d.cts +19 -1
  98. package/dist/voice/io.d.ts +19 -1
  99. package/dist/voice/io.d.ts.map +1 -1
  100. package/dist/voice/io.js +12 -0
  101. package/dist/voice/io.js.map +1 -1
  102. package/dist/voice/recorder_io/recorder_io.cjs +91 -28
  103. package/dist/voice/recorder_io/recorder_io.cjs.map +1 -1
  104. package/dist/voice/recorder_io/recorder_io.d.cts +7 -1
  105. package/dist/voice/recorder_io/recorder_io.d.ts +7 -1
  106. package/dist/voice/recorder_io/recorder_io.d.ts.map +1 -1
  107. package/dist/voice/recorder_io/recorder_io.js +91 -28
  108. package/dist/voice/recorder_io/recorder_io.js.map +1 -1
  109. package/dist/voice/room_io/_input.cjs +40 -11
  110. package/dist/voice/room_io/_input.cjs.map +1 -1
  111. package/dist/voice/room_io/_input.d.cts +4 -1
  112. package/dist/voice/room_io/_input.d.ts +4 -1
  113. package/dist/voice/room_io/_input.d.ts.map +1 -1
  114. package/dist/voice/room_io/_input.js +31 -2
  115. package/dist/voice/room_io/_input.js.map +1 -1
  116. package/dist/voice/room_io/_output.cjs +6 -0
  117. package/dist/voice/room_io/_output.cjs.map +1 -1
  118. package/dist/voice/room_io/_output.d.cts +1 -0
  119. package/dist/voice/room_io/_output.d.ts +1 -0
  120. package/dist/voice/room_io/_output.d.ts.map +1 -1
  121. package/dist/voice/room_io/_output.js +6 -0
  122. package/dist/voice/room_io/_output.js.map +1 -1
  123. package/dist/voice/room_io/room_io.cjs.map +1 -1
  124. package/dist/voice/room_io/room_io.d.cts +2 -2
  125. package/dist/voice/room_io/room_io.d.ts +2 -2
  126. package/dist/voice/room_io/room_io.d.ts.map +1 -1
  127. package/dist/voice/room_io/room_io.js.map +1 -1
  128. package/dist/voice/speech_handle.cjs +2 -0
  129. package/dist/voice/speech_handle.cjs.map +1 -1
  130. package/dist/voice/speech_handle.d.cts +3 -0
  131. package/dist/voice/speech_handle.d.ts +3 -0
  132. package/dist/voice/speech_handle.d.ts.map +1 -1
  133. package/dist/voice/speech_handle.js +2 -0
  134. package/dist/voice/speech_handle.js.map +1 -1
  135. package/package.json +2 -2
  136. package/src/inference/api_protos.ts +83 -0
  137. package/src/inference/llm.ts +20 -15
  138. package/src/inference/stt.ts +48 -29
  139. package/src/inference/tts.ts +36 -16
  140. package/src/stt/stream_adapter.ts +12 -1
  141. package/src/stt/stt.ts +21 -0
  142. package/src/telemetry/traces.ts +6 -2
  143. package/src/utils.ts +21 -0
  144. package/src/voice/agent.ts +11 -2
  145. package/src/voice/agent_activity.ts +108 -41
  146. package/src/voice/agent_session.ts +6 -5
  147. package/src/voice/audio_recognition.ts +2 -0
  148. package/src/voice/avatar/datastream_io.ts +8 -0
  149. package/src/voice/generation.ts +24 -12
  150. package/src/voice/io.ts +27 -5
  151. package/src/voice/recorder_io/recorder_io.ts +123 -31
  152. package/src/voice/room_io/_input.ts +32 -4
  153. package/src/voice/room_io/_output.ts +8 -0
  154. package/src/voice/room_io/room_io.ts +3 -1
  155. package/src/voice/speech_handle.ts +4 -0
package/dist/cli.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/cli.ts","../../node_modules/.pnpm/tsup@8.4.0_@microsoft+api-extractor@7.43.7_@types+node@22.15.30__postcss@8.5.6_tsx@4.20.4_typescript@5.4.5/node_modules/tsup/assets/cjs_shims.js"],"sourcesContent":["// SPDX-FileCopyrightText: 2024 LiveKit, Inc.\n//\n// SPDX-License-Identifier: Apache-2.0\nimport { Command, Option } from 'commander';\nimport type { EventEmitter } from 'node:events';\nimport { initializeLogger, log } from './log.js';\nimport { Plugin } from './plugin.js';\nimport { version } from './version.js';\nimport { AgentServer, ServerOptions } from './worker.js';\n\ntype CliArgs = {\n opts: ServerOptions;\n production: boolean;\n watch: boolean;\n event?: EventEmitter;\n room?: string;\n participantIdentity?: string;\n};\n\nconst runServer = async (args: CliArgs) => {\n initializeLogger({ pretty: !args.production, level: args.opts.logLevel });\n const logger = log();\n\n // though `production` is defined in ServerOptions, it will always be overridden by CLI.\n const { production: _, ...opts } = args.opts; // eslint-disable-line @typescript-eslint/no-unused-vars\n const server = new AgentServer(new ServerOptions({ production: args.production, ...opts }));\n\n if (args.room) {\n server.event.once('worker_registered', () => {\n logger.info(`connecting to room ${args.room}`);\n server.simulateJob(args.room!, args.participantIdentity);\n });\n }\n\n process.once('SIGINT', async () => {\n logger.debug('SIGINT received in CLI');\n // allow C-c C-c for force interrupt\n process.once('SIGINT', () => {\n console.log('Force exit (Ctrl+C pressed twice)');\n process.exit(130); // SIGINT exit code\n });\n if (args.production) {\n await server.drain();\n }\n await server.close();\n logger.debug('worker closed due to SIGINT.');\n process.exit(130); // SIGINT exit code\n });\n\n process.once('SIGTERM', async () => {\n logger.debug('SIGTERM received in CLI.');\n if (args.production) {\n await server.drain();\n }\n await server.close();\n logger.debug('worker closed due to SIGTERM.');\n process.exit(143); // SIGTERM exit code\n });\n\n try {\n await server.run();\n } catch {\n logger.fatal('closing worker due to error.');\n process.exit(1);\n }\n};\n\n/**\n * Exposes a CLI for creating a new worker, in development or production mode.\n *\n * @param opts - Options to launch the worker with\n * @example\n * ```\n * if (process.argv[1] === fileURLToPath(import.meta.url)) {\n * cli.runApp(new ServerOptions({ agent: import.meta.filename }));\n * }\n * ```\n */\nexport const runApp = (opts: ServerOptions) => {\n const program = new Command()\n .name('agents')\n .description('LiveKit Agents CLI')\n .version(version)\n .addOption(\n new Option('--log-level <level>', 'Set the logging level')\n .choices(['trace', 'debug', 'info', 'warn', 'error', 'fatal'])\n .default('info')\n .env('LOG_LEVEL'),\n )\n .addOption(\n new Option('--url <string>', 'LiveKit server or Cloud project websocket URL').env(\n 'LIVEKIT_URL',\n ),\n )\n .addOption(\n new Option('--api-key <string>', \"LiveKit server or Cloud project's API key\").env(\n 'LIVEKIT_API_KEY',\n ),\n )\n .addOption(\n new Option('--api-secret <string>', \"LiveKit server or Cloud project's API secret\").env(\n 'LIVEKIT_API_SECRET',\n ),\n )\n .addOption(\n new Option('--worker-token <string>', 'Internal use only')\n .env('LIVEKIT_WORKER_TOKEN')\n .hideHelp(),\n )\n .action(() => {\n if (\n // do not run CLI if origin file is agents/ipc/job_main.js\n process.argv[1] !== new URL('ipc/job_main.js', import.meta.url).pathname &&\n process.argv.length < 3\n ) {\n program.help();\n }\n });\n\n program\n .command('start')\n .description('Start the worker in production mode')\n .action(() => {\n const options = program.optsWithGlobals();\n opts.wsURL = options.url || opts.wsURL;\n opts.apiKey = options.apiKey || opts.apiKey;\n opts.apiSecret = options.apiSecret || opts.apiSecret;\n opts.logLevel = options.logLevel || opts.logLevel;\n opts.workerToken = options.workerToken || opts.workerToken;\n runServer({\n opts,\n production: true,\n watch: false,\n });\n });\n\n program\n .command('dev')\n .description('Start the worker in development mode')\n .addOption(\n new Option('--log-level <level>', 'Set the logging level')\n .choices(['trace', 'debug', 'info', 'warn', 'error', 'fatal'])\n .default('debug')\n .env('LOG_LEVEL'),\n )\n .action(() => {\n const options = program.optsWithGlobals();\n opts.wsURL = options.url || opts.wsURL;\n opts.apiKey = options.apiKey || opts.apiKey;\n opts.apiSecret = options.apiSecret || opts.apiSecret;\n opts.logLevel = options.logLevel || opts.logLevel;\n opts.workerToken = options.workerToken || opts.workerToken;\n runServer({\n opts,\n production: false,\n watch: false,\n });\n });\n\n program\n .command('connect')\n .description('Connect to a specific room')\n .requiredOption('--room <string>', 'Room name to connect to')\n .option('--participant-identity <string>', 'Identity of user to listen to')\n .addOption(\n new Option('--log-level <level>', 'Set the logging level')\n .choices(['trace', 'debug', 'info', 'warn', 'error', 'fatal'])\n .default('debug')\n .env('LOG_LEVEL'),\n )\n .action((...[, command]) => {\n const options = command.optsWithGlobals();\n opts.wsURL = options.url || opts.wsURL;\n opts.apiKey = options.apiKey || opts.apiKey;\n opts.apiSecret = options.apiSecret || opts.apiSecret;\n opts.logLevel = options.logLevel || opts.logLevel;\n opts.workerToken = options.workerToken || opts.workerToken;\n runServer({\n opts,\n production: false,\n watch: false,\n room: options.room,\n participantIdentity: options.participantIdentity,\n });\n });\n\n program\n .command('download-files')\n .description('Download plugin dependency files')\n .addOption(\n new Option('--log-level <level>', 'Set the logging level')\n .choices(['trace', 'debug', 'info', 'warn', 'error', 'fatal'])\n .default('debug')\n .env('LOG_LEVEL'),\n )\n .action(() => {\n const options = program.optsWithGlobals();\n initializeLogger({ pretty: true, level: options.logLevel });\n const logger = log();\n\n const downloadFiles = async () => {\n for (const plugin of Plugin.registeredPlugins) {\n logger.info(`Downloading files for ${plugin.title}`);\n try {\n await plugin.downloadFiles();\n logger.info(`Finished downloading files for ${plugin.title}`);\n } catch (error) {\n logger.error(`Failed to download files for ${plugin.title}: ${error}`);\n }\n }\n };\n\n downloadFiles()\n .catch((error) => {\n logger.fatal(`Error during file downloads: ${error}`);\n process.exit(1);\n })\n .finally(() => {\n process.exit(0);\n });\n });\n\n program.parse();\n};\n","// Shim globals in cjs bundle\n// There's a weird bug that esbuild will always inject importMetaUrl\n// if we export it as `const importMetaUrl = ... __filename ...`\n// But using a function will not cause this issue\n\nconst getImportMetaUrl = () =>\n typeof document === 'undefined'\n ? new URL(`file:${__filename}`).href\n : (document.currentScript && document.currentScript.src) ||\n new URL('main.js', document.baseURI).href\n\nexport const importMetaUrl = /* @__PURE__ */ getImportMetaUrl()\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/cli.ts","../../node_modules/.pnpm/tsup@8.4.0_@microsoft+api-extractor@7.43.7_@types+node@22.15.30__postcss@8.5.6_tsx@4.21.0_typescript@5.4.5/node_modules/tsup/assets/cjs_shims.js"],"sourcesContent":["// SPDX-FileCopyrightText: 2024 LiveKit, Inc.\n//\n// SPDX-License-Identifier: Apache-2.0\nimport { Command, Option } from 'commander';\nimport type { EventEmitter } from 'node:events';\nimport { initializeLogger, log } from './log.js';\nimport { Plugin } from './plugin.js';\nimport { version } from './version.js';\nimport { AgentServer, ServerOptions } from './worker.js';\n\ntype CliArgs = {\n opts: ServerOptions;\n production: boolean;\n watch: boolean;\n event?: EventEmitter;\n room?: string;\n participantIdentity?: string;\n};\n\nconst runServer = async (args: CliArgs) => {\n initializeLogger({ pretty: !args.production, level: args.opts.logLevel });\n const logger = log();\n\n // though `production` is defined in ServerOptions, it will always be overridden by CLI.\n const { production: _, ...opts } = args.opts; // eslint-disable-line @typescript-eslint/no-unused-vars\n const server = new AgentServer(new ServerOptions({ production: args.production, ...opts }));\n\n if (args.room) {\n server.event.once('worker_registered', () => {\n logger.info(`connecting to room ${args.room}`);\n server.simulateJob(args.room!, args.participantIdentity);\n });\n }\n\n process.once('SIGINT', async () => {\n logger.debug('SIGINT received in CLI');\n // allow C-c C-c for force interrupt\n process.once('SIGINT', () => {\n console.log('Force exit (Ctrl+C pressed twice)');\n process.exit(130); // SIGINT exit code\n });\n if (args.production) {\n await server.drain();\n }\n await server.close();\n logger.debug('worker closed due to SIGINT.');\n process.exit(130); // SIGINT exit code\n });\n\n process.once('SIGTERM', async () => {\n logger.debug('SIGTERM received in CLI.');\n if (args.production) {\n await server.drain();\n }\n await server.close();\n logger.debug('worker closed due to SIGTERM.');\n process.exit(143); // SIGTERM exit code\n });\n\n try {\n await server.run();\n } catch {\n logger.fatal('closing worker due to error.');\n process.exit(1);\n }\n};\n\n/**\n * Exposes a CLI for creating a new worker, in development or production mode.\n *\n * @param opts - Options to launch the worker with\n * @example\n * ```\n * if (process.argv[1] === fileURLToPath(import.meta.url)) {\n * cli.runApp(new ServerOptions({ agent: import.meta.filename }));\n * }\n * ```\n */\nexport const runApp = (opts: ServerOptions) => {\n const program = new Command()\n .name('agents')\n .description('LiveKit Agents CLI')\n .version(version)\n .addOption(\n new Option('--log-level <level>', 'Set the logging level')\n .choices(['trace', 'debug', 'info', 'warn', 'error', 'fatal'])\n .default('info')\n .env('LOG_LEVEL'),\n )\n .addOption(\n new Option('--url <string>', 'LiveKit server or Cloud project websocket URL').env(\n 'LIVEKIT_URL',\n ),\n )\n .addOption(\n new Option('--api-key <string>', \"LiveKit server or Cloud project's API key\").env(\n 'LIVEKIT_API_KEY',\n ),\n )\n .addOption(\n new Option('--api-secret <string>', \"LiveKit server or Cloud project's API secret\").env(\n 'LIVEKIT_API_SECRET',\n ),\n )\n .addOption(\n new Option('--worker-token <string>', 'Internal use only')\n .env('LIVEKIT_WORKER_TOKEN')\n .hideHelp(),\n )\n .action(() => {\n if (\n // do not run CLI if origin file is agents/ipc/job_main.js\n process.argv[1] !== new URL('ipc/job_main.js', import.meta.url).pathname &&\n process.argv.length < 3\n ) {\n program.help();\n }\n });\n\n program\n .command('start')\n .description('Start the worker in production mode')\n .action(() => {\n const options = program.optsWithGlobals();\n opts.wsURL = options.url || opts.wsURL;\n opts.apiKey = options.apiKey || opts.apiKey;\n opts.apiSecret = options.apiSecret || opts.apiSecret;\n opts.logLevel = options.logLevel || opts.logLevel;\n opts.workerToken = options.workerToken || opts.workerToken;\n runServer({\n opts,\n production: true,\n watch: false,\n });\n });\n\n program\n .command('dev')\n .description('Start the worker in development mode')\n .addOption(\n new Option('--log-level <level>', 'Set the logging level')\n .choices(['trace', 'debug', 'info', 'warn', 'error', 'fatal'])\n .default('debug')\n .env('LOG_LEVEL'),\n )\n .action(() => {\n const options = program.optsWithGlobals();\n opts.wsURL = options.url || opts.wsURL;\n opts.apiKey = options.apiKey || opts.apiKey;\n opts.apiSecret = options.apiSecret || opts.apiSecret;\n opts.logLevel = options.logLevel || opts.logLevel;\n opts.workerToken = options.workerToken || opts.workerToken;\n runServer({\n opts,\n production: false,\n watch: false,\n });\n });\n\n program\n .command('connect')\n .description('Connect to a specific room')\n .requiredOption('--room <string>', 'Room name to connect to')\n .option('--participant-identity <string>', 'Identity of user to listen to')\n .addOption(\n new Option('--log-level <level>', 'Set the logging level')\n .choices(['trace', 'debug', 'info', 'warn', 'error', 'fatal'])\n .default('debug')\n .env('LOG_LEVEL'),\n )\n .action((...[, command]) => {\n const options = command.optsWithGlobals();\n opts.wsURL = options.url || opts.wsURL;\n opts.apiKey = options.apiKey || opts.apiKey;\n opts.apiSecret = options.apiSecret || opts.apiSecret;\n opts.logLevel = options.logLevel || opts.logLevel;\n opts.workerToken = options.workerToken || opts.workerToken;\n runServer({\n opts,\n production: false,\n watch: false,\n room: options.room,\n participantIdentity: options.participantIdentity,\n });\n });\n\n program\n .command('download-files')\n .description('Download plugin dependency files')\n .addOption(\n new Option('--log-level <level>', 'Set the logging level')\n .choices(['trace', 'debug', 'info', 'warn', 'error', 'fatal'])\n .default('debug')\n .env('LOG_LEVEL'),\n )\n .action(() => {\n const options = program.optsWithGlobals();\n initializeLogger({ pretty: true, level: options.logLevel });\n const logger = log();\n\n const downloadFiles = async () => {\n for (const plugin of Plugin.registeredPlugins) {\n logger.info(`Downloading files for ${plugin.title}`);\n try {\n await plugin.downloadFiles();\n logger.info(`Finished downloading files for ${plugin.title}`);\n } catch (error) {\n logger.error(`Failed to download files for ${plugin.title}: ${error}`);\n }\n }\n };\n\n downloadFiles()\n .catch((error) => {\n logger.fatal(`Error during file downloads: ${error}`);\n process.exit(1);\n })\n .finally(() => {\n process.exit(0);\n });\n });\n\n program.parse();\n};\n","// Shim globals in cjs bundle\n// There's a weird bug that esbuild will always inject importMetaUrl\n// if we export it as `const importMetaUrl = ... __filename ...`\n// But using a function will not cause this issue\n\nconst getImportMetaUrl = () =>\n typeof document === 'undefined'\n ? new URL(`file:${__filename}`).href\n : (document.currentScript && document.currentScript.src) ||\n new URL('main.js', document.baseURI).href\n\nexport const importMetaUrl = /* @__PURE__ */ getImportMetaUrl()\n"],"mappings":"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","names":[]}
@@ -18,6 +18,14 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var api_protos_exports = {};
20
20
  __export(api_protos_exports, {
21
+ sttErrorEventSchema: () => sttErrorEventSchema,
22
+ sttFinalTranscriptEventSchema: () => sttFinalTranscriptEventSchema,
23
+ sttInterimTranscriptEventSchema: () => sttInterimTranscriptEventSchema,
24
+ sttServerEventSchema: () => sttServerEventSchema,
25
+ sttSessionClosedEventSchema: () => sttSessionClosedEventSchema,
26
+ sttSessionCreatedEventSchema: () => sttSessionCreatedEventSchema,
27
+ sttSessionFinalizedEventSchema: () => sttSessionFinalizedEventSchema,
28
+ sttWordSchema: () => sttWordSchema,
21
29
  ttsClientEventSchema: () => ttsClientEventSchema,
22
30
  ttsDoneEventSchema: () => ttsDoneEventSchema,
23
31
  ttsErrorEventSchema: () => ttsErrorEventSchema,
@@ -87,8 +95,68 @@ const ttsServerEventSchema = import_zod.z.discriminatedUnion("type", [
87
95
  ttsSessionClosedEventSchema,
88
96
  ttsErrorEventSchema
89
97
  ]);
98
+ const sttWordSchema = import_zod.z.object({
99
+ word: import_zod.z.string().optional().default(""),
100
+ start: import_zod.z.number().optional().default(0),
101
+ end: import_zod.z.number().optional().default(0),
102
+ confidence: import_zod.z.number().optional().default(0),
103
+ extra: import_zod.z.unknown().nullable().optional()
104
+ });
105
+ const sttInterimTranscriptEventSchema = import_zod.z.object({
106
+ type: import_zod.z.literal("interim_transcript"),
107
+ session_id: import_zod.z.string().optional(),
108
+ transcript: import_zod.z.string().optional().default(""),
109
+ language: import_zod.z.string().optional().default(""),
110
+ start: import_zod.z.number().optional().default(0),
111
+ duration: import_zod.z.number().optional().default(0),
112
+ confidence: import_zod.z.number().optional().default(1),
113
+ words: import_zod.z.array(sttWordSchema).optional().default([]),
114
+ extra: import_zod.z.unknown().nullable().optional()
115
+ });
116
+ const sttFinalTranscriptEventSchema = import_zod.z.object({
117
+ type: import_zod.z.literal("final_transcript"),
118
+ session_id: import_zod.z.string().optional(),
119
+ transcript: import_zod.z.string().optional().default(""),
120
+ language: import_zod.z.string().optional().default(""),
121
+ start: import_zod.z.number().optional().default(0),
122
+ duration: import_zod.z.number().optional().default(0),
123
+ confidence: import_zod.z.number().optional().default(1),
124
+ words: import_zod.z.array(sttWordSchema).optional().default([]),
125
+ extra: import_zod.z.unknown().nullable().optional()
126
+ });
127
+ const sttSessionCreatedEventSchema = import_zod.z.object({
128
+ type: import_zod.z.literal("session.created"),
129
+ session_id: import_zod.z.string().optional()
130
+ });
131
+ const sttSessionFinalizedEventSchema = import_zod.z.object({
132
+ type: import_zod.z.literal("session.finalized")
133
+ });
134
+ const sttSessionClosedEventSchema = import_zod.z.object({
135
+ type: import_zod.z.literal("session.closed")
136
+ });
137
+ const sttErrorEventSchema = import_zod.z.object({
138
+ type: import_zod.z.literal("error"),
139
+ message: import_zod.z.string().optional(),
140
+ code: import_zod.z.string().optional()
141
+ });
142
+ const sttServerEventSchema = import_zod.z.discriminatedUnion("type", [
143
+ sttSessionCreatedEventSchema,
144
+ sttSessionFinalizedEventSchema,
145
+ sttSessionClosedEventSchema,
146
+ sttInterimTranscriptEventSchema,
147
+ sttFinalTranscriptEventSchema,
148
+ sttErrorEventSchema
149
+ ]);
90
150
  // Annotate the CommonJS export names for ESM import in node:
91
151
  0 && (module.exports = {
152
+ sttErrorEventSchema,
153
+ sttFinalTranscriptEventSchema,
154
+ sttInterimTranscriptEventSchema,
155
+ sttServerEventSchema,
156
+ sttSessionClosedEventSchema,
157
+ sttSessionCreatedEventSchema,
158
+ sttSessionFinalizedEventSchema,
159
+ sttWordSchema,
92
160
  ttsClientEventSchema,
93
161
  ttsDoneEventSchema,
94
162
  ttsErrorEventSchema,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/inference/api_protos.ts"],"sourcesContent":["// SPDX-FileCopyrightText: 2025 LiveKit, Inc.\n//\n// SPDX-License-Identifier: Apache-2.0\nimport { z } from 'zod';\n\nexport const ttsSessionCreateEventSchema = z.object({\n type: z.literal('session.create'),\n sample_rate: z.string(),\n encoding: z.string(),\n model: z.string().optional(),\n voice: z.string().optional(),\n language: z.string().optional(),\n extra: z.record(z.string(), z.unknown()),\n transcript: z.string().optional(),\n});\n\nexport const ttsInputTranscriptEventSchema = z.object({\n type: z.literal('input_transcript'),\n transcript: z.string(),\n});\n\nexport const ttsSessionFlushEventSchema = z.object({\n type: z.literal('session.flush'),\n});\n\nexport const ttsSessionCloseEventSchema = z.object({\n type: z.literal('session.close'),\n});\n\nexport const ttsSessionCreatedEventSchema = z.object({\n type: z.literal('session.created'),\n session_id: z.string(),\n});\n\nexport const ttsOutputAudioEventSchema = z.object({\n type: z.literal('output_audio'),\n audio: z.string(),\n session_id: z.string(),\n});\n\nexport const ttsDoneEventSchema = z.object({\n type: z.literal('done'),\n session_id: z.string(),\n});\n\nexport const ttsSessionClosedEventSchema = z.object({\n type: z.literal('session.closed'),\n session_id: z.string(),\n});\n\nexport const ttsErrorEventSchema = z.object({\n type: z.literal('error'),\n message: z.string().optional(),\n session_id: z.string().optional(),\n});\n\nexport const ttsClientEventSchema = z.discriminatedUnion('type', [\n ttsSessionCreateEventSchema,\n ttsInputTranscriptEventSchema,\n ttsSessionFlushEventSchema,\n ttsSessionCloseEventSchema,\n]);\n\nexport const ttsServerEventSchema = z.discriminatedUnion('type', [\n ttsSessionCreatedEventSchema,\n ttsOutputAudioEventSchema,\n ttsDoneEventSchema,\n ttsSessionClosedEventSchema,\n ttsErrorEventSchema,\n]);\n\nexport type TtsSessionCreateEvent = z.infer<typeof ttsSessionCreateEventSchema>;\nexport type TtsInputTranscriptEvent = z.infer<typeof ttsInputTranscriptEventSchema>;\nexport type TtsSessionFlushEvent = z.infer<typeof ttsSessionFlushEventSchema>;\nexport type TtsSessionCloseEvent = z.infer<typeof ttsSessionCloseEventSchema>;\nexport type TtsSessionCreatedEvent = z.infer<typeof ttsSessionCreatedEventSchema>;\nexport type TtsOutputAudioEvent = z.infer<typeof ttsOutputAudioEventSchema>;\nexport type TtsDoneEvent = z.infer<typeof ttsDoneEventSchema>;\nexport type TtsSessionClosedEvent = z.infer<typeof ttsSessionClosedEventSchema>;\nexport type TtsErrorEvent = z.infer<typeof ttsErrorEventSchema>;\nexport type TtsClientEvent = z.infer<typeof ttsClientEventSchema>;\nexport type TtsServerEvent = z.infer<typeof ttsServerEventSchema>;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iBAAkB;AAEX,MAAM,8BAA8B,aAAE,OAAO;AAAA,EAClD,MAAM,aAAE,QAAQ,gBAAgB;AAAA,EAChC,aAAa,aAAE,OAAO;AAAA,EACtB,UAAU,aAAE,OAAO;AAAA,EACnB,OAAO,aAAE,OAAO,EAAE,SAAS;AAAA,EAC3B,OAAO,aAAE,OAAO,EAAE,SAAS;AAAA,EAC3B,UAAU,aAAE,OAAO,EAAE,SAAS;AAAA,EAC9B,OAAO,aAAE,OAAO,aAAE,OAAO,GAAG,aAAE,QAAQ,CAAC;AAAA,EACvC,YAAY,aAAE,OAAO,EAAE,SAAS;AAClC,CAAC;AAEM,MAAM,gCAAgC,aAAE,OAAO;AAAA,EACpD,MAAM,aAAE,QAAQ,kBAAkB;AAAA,EAClC,YAAY,aAAE,OAAO;AACvB,CAAC;AAEM,MAAM,6BAA6B,aAAE,OAAO;AAAA,EACjD,MAAM,aAAE,QAAQ,eAAe;AACjC,CAAC;AAEM,MAAM,6BAA6B,aAAE,OAAO;AAAA,EACjD,MAAM,aAAE,QAAQ,eAAe;AACjC,CAAC;AAEM,MAAM,+BAA+B,aAAE,OAAO;AAAA,EACnD,MAAM,aAAE,QAAQ,iBAAiB;AAAA,EACjC,YAAY,aAAE,OAAO;AACvB,CAAC;AAEM,MAAM,4BAA4B,aAAE,OAAO;AAAA,EAChD,MAAM,aAAE,QAAQ,cAAc;AAAA,EAC9B,OAAO,aAAE,OAAO;AAAA,EAChB,YAAY,aAAE,OAAO;AACvB,CAAC;AAEM,MAAM,qBAAqB,aAAE,OAAO;AAAA,EACzC,MAAM,aAAE,QAAQ,MAAM;AAAA,EACtB,YAAY,aAAE,OAAO;AACvB,CAAC;AAEM,MAAM,8BAA8B,aAAE,OAAO;AAAA,EAClD,MAAM,aAAE,QAAQ,gBAAgB;AAAA,EAChC,YAAY,aAAE,OAAO;AACvB,CAAC;AAEM,MAAM,sBAAsB,aAAE,OAAO;AAAA,EAC1C,MAAM,aAAE,QAAQ,OAAO;AAAA,EACvB,SAAS,aAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,YAAY,aAAE,OAAO,EAAE,SAAS;AAClC,CAAC;AAEM,MAAM,uBAAuB,aAAE,mBAAmB,QAAQ;AAAA,EAC/D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,MAAM,uBAAuB,aAAE,mBAAmB,QAAQ;AAAA,EAC/D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../src/inference/api_protos.ts"],"sourcesContent":["// SPDX-FileCopyrightText: 2025 LiveKit, Inc.\n//\n// SPDX-License-Identifier: Apache-2.0\nimport { z } from 'zod';\n\nexport const ttsSessionCreateEventSchema = z.object({\n type: z.literal('session.create'),\n sample_rate: z.string(),\n encoding: z.string(),\n model: z.string().optional(),\n voice: z.string().optional(),\n language: z.string().optional(),\n extra: z.record(z.string(), z.unknown()),\n transcript: z.string().optional(),\n});\n\nexport const ttsInputTranscriptEventSchema = z.object({\n type: z.literal('input_transcript'),\n transcript: z.string(),\n});\n\nexport const ttsSessionFlushEventSchema = z.object({\n type: z.literal('session.flush'),\n});\n\nexport const ttsSessionCloseEventSchema = z.object({\n type: z.literal('session.close'),\n});\n\nexport const ttsSessionCreatedEventSchema = z.object({\n type: z.literal('session.created'),\n session_id: z.string(),\n});\n\nexport const ttsOutputAudioEventSchema = z.object({\n type: z.literal('output_audio'),\n audio: z.string(),\n session_id: z.string(),\n});\n\nexport const ttsDoneEventSchema = z.object({\n type: z.literal('done'),\n session_id: z.string(),\n});\n\nexport const ttsSessionClosedEventSchema = z.object({\n type: z.literal('session.closed'),\n session_id: z.string(),\n});\n\nexport const ttsErrorEventSchema = z.object({\n type: z.literal('error'),\n message: z.string().optional(),\n session_id: z.string().optional(),\n});\n\nexport const ttsClientEventSchema = z.discriminatedUnion('type', [\n ttsSessionCreateEventSchema,\n ttsInputTranscriptEventSchema,\n ttsSessionFlushEventSchema,\n ttsSessionCloseEventSchema,\n]);\n\nexport const ttsServerEventSchema = z.discriminatedUnion('type', [\n ttsSessionCreatedEventSchema,\n ttsOutputAudioEventSchema,\n ttsDoneEventSchema,\n ttsSessionClosedEventSchema,\n ttsErrorEventSchema,\n]);\n\nexport type TtsSessionCreateEvent = z.infer<typeof ttsSessionCreateEventSchema>;\nexport type TtsInputTranscriptEvent = z.infer<typeof ttsInputTranscriptEventSchema>;\nexport type TtsSessionFlushEvent = z.infer<typeof ttsSessionFlushEventSchema>;\nexport type TtsSessionCloseEvent = z.infer<typeof ttsSessionCloseEventSchema>;\nexport type TtsSessionCreatedEvent = z.infer<typeof ttsSessionCreatedEventSchema>;\nexport type TtsOutputAudioEvent = z.infer<typeof ttsOutputAudioEventSchema>;\nexport type TtsDoneEvent = z.infer<typeof ttsDoneEventSchema>;\nexport type TtsSessionClosedEvent = z.infer<typeof ttsSessionClosedEventSchema>;\nexport type TtsErrorEvent = z.infer<typeof ttsErrorEventSchema>;\nexport type TtsClientEvent = z.infer<typeof ttsClientEventSchema>;\nexport type TtsServerEvent = z.infer<typeof ttsServerEventSchema>;\n\n// ============================================================================\n// STT Schemas\n// ============================================================================\n\n// Word-level timing data\nexport const sttWordSchema = z.object({\n word: z.string().optional().default(''),\n start: z.number().optional().default(0),\n end: z.number().optional().default(0),\n confidence: z.number().optional().default(0.0),\n extra: z.unknown().nullable().optional(),\n});\n\n// Interim transcript event\nexport const sttInterimTranscriptEventSchema = z.object({\n type: z.literal('interim_transcript'),\n session_id: z.string().optional(),\n transcript: z.string().optional().default(''),\n language: z.string().optional().default(''),\n start: z.number().optional().default(0),\n duration: z.number().optional().default(0),\n confidence: z.number().optional().default(1.0),\n words: z.array(sttWordSchema).optional().default([]),\n extra: z.unknown().nullable().optional(),\n});\n\n// Final transcript event\nexport const sttFinalTranscriptEventSchema = z.object({\n type: z.literal('final_transcript'),\n session_id: z.string().optional(),\n transcript: z.string().optional().default(''),\n language: z.string().optional().default(''),\n start: z.number().optional().default(0),\n duration: z.number().optional().default(0),\n confidence: z.number().optional().default(1.0),\n words: z.array(sttWordSchema).optional().default([]),\n extra: z.unknown().nullable().optional(),\n});\n\n// Session created event\nexport const sttSessionCreatedEventSchema = z.object({\n type: z.literal('session.created'),\n session_id: z.string().optional(),\n});\n\n// Session finalized event\nexport const sttSessionFinalizedEventSchema = z.object({\n type: z.literal('session.finalized'),\n});\n\n// Session closed event\nexport const sttSessionClosedEventSchema = z.object({\n type: z.literal('session.closed'),\n});\n\n// Error event\nexport const sttErrorEventSchema = z.object({\n type: z.literal('error'),\n message: z.string().optional(),\n code: z.string().optional(),\n});\n\n// Discriminated union for all STT server events\nexport const sttServerEventSchema = z.discriminatedUnion('type', [\n sttSessionCreatedEventSchema,\n sttSessionFinalizedEventSchema,\n sttSessionClosedEventSchema,\n sttInterimTranscriptEventSchema,\n sttFinalTranscriptEventSchema,\n sttErrorEventSchema,\n]);\n\n// Type exports for STT\nexport type SttWord = z.infer<typeof sttWordSchema>;\nexport type SttInterimTranscriptEvent = z.infer<typeof sttInterimTranscriptEventSchema>;\nexport type SttFinalTranscriptEvent = z.infer<typeof sttFinalTranscriptEventSchema>;\nexport type SttTranscriptEvent = SttInterimTranscriptEvent | SttFinalTranscriptEvent;\nexport type SttSessionCreatedEvent = z.infer<typeof sttSessionCreatedEventSchema>;\nexport type SttSessionFinalizedEvent = z.infer<typeof sttSessionFinalizedEventSchema>;\nexport type SttSessionClosedEvent = z.infer<typeof sttSessionClosedEventSchema>;\nexport type SttErrorEvent = z.infer<typeof sttErrorEventSchema>;\nexport type SttServerEvent = z.infer<typeof sttServerEventSchema>;\n"],"mappings":"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","names":[]}
@@ -13,18 +13,18 @@ export declare const ttsSessionCreateEventSchema: z.ZodObject<{
13
13
  extra: Record<string, unknown>;
14
14
  sample_rate: string;
15
15
  encoding: string;
16
- language?: string | undefined;
17
16
  model?: string | undefined;
18
17
  transcript?: string | undefined;
18
+ language?: string | undefined;
19
19
  voice?: string | undefined;
20
20
  }, {
21
21
  type: "session.create";
22
22
  extra: Record<string, unknown>;
23
23
  sample_rate: string;
24
24
  encoding: string;
25
- language?: string | undefined;
26
25
  model?: string | undefined;
27
26
  transcript?: string | undefined;
27
+ language?: string | undefined;
28
28
  voice?: string | undefined;
29
29
  }>;
30
30
  export declare const ttsInputTranscriptEventSchema: z.ZodObject<{
@@ -121,18 +121,18 @@ export declare const ttsClientEventSchema: z.ZodDiscriminatedUnion<"type", [z.Zo
121
121
  extra: Record<string, unknown>;
122
122
  sample_rate: string;
123
123
  encoding: string;
124
- language?: string | undefined;
125
124
  model?: string | undefined;
126
125
  transcript?: string | undefined;
126
+ language?: string | undefined;
127
127
  voice?: string | undefined;
128
128
  }, {
129
129
  type: "session.create";
130
130
  extra: Record<string, unknown>;
131
131
  sample_rate: string;
132
132
  encoding: string;
133
- language?: string | undefined;
134
133
  model?: string | undefined;
135
134
  transcript?: string | undefined;
135
+ language?: string | undefined;
136
136
  voice?: string | undefined;
137
137
  }>, z.ZodObject<{
138
138
  type: z.ZodLiteral<"input_transcript">;
@@ -219,4 +219,345 @@ export type TtsSessionClosedEvent = z.infer<typeof ttsSessionClosedEventSchema>;
219
219
  export type TtsErrorEvent = z.infer<typeof ttsErrorEventSchema>;
220
220
  export type TtsClientEvent = z.infer<typeof ttsClientEventSchema>;
221
221
  export type TtsServerEvent = z.infer<typeof ttsServerEventSchema>;
222
+ export declare const sttWordSchema: z.ZodObject<{
223
+ word: z.ZodDefault<z.ZodOptional<z.ZodString>>;
224
+ start: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
225
+ end: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
226
+ confidence: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
227
+ extra: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
228
+ }, "strip", z.ZodTypeAny, {
229
+ end: number;
230
+ confidence: number;
231
+ start: number;
232
+ word: string;
233
+ extra?: unknown;
234
+ }, {
235
+ end?: number | undefined;
236
+ extra?: unknown;
237
+ confidence?: number | undefined;
238
+ start?: number | undefined;
239
+ word?: string | undefined;
240
+ }>;
241
+ export declare const sttInterimTranscriptEventSchema: z.ZodObject<{
242
+ type: z.ZodLiteral<"interim_transcript">;
243
+ session_id: z.ZodOptional<z.ZodString>;
244
+ transcript: z.ZodDefault<z.ZodOptional<z.ZodString>>;
245
+ language: z.ZodDefault<z.ZodOptional<z.ZodString>>;
246
+ start: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
247
+ duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
248
+ confidence: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
249
+ words: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
250
+ word: z.ZodDefault<z.ZodOptional<z.ZodString>>;
251
+ start: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
252
+ end: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
253
+ confidence: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
254
+ extra: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
255
+ }, "strip", z.ZodTypeAny, {
256
+ end: number;
257
+ confidence: number;
258
+ start: number;
259
+ word: string;
260
+ extra?: unknown;
261
+ }, {
262
+ end?: number | undefined;
263
+ extra?: unknown;
264
+ confidence?: number | undefined;
265
+ start?: number | undefined;
266
+ word?: string | undefined;
267
+ }>, "many">>>;
268
+ extra: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
269
+ }, "strip", z.ZodTypeAny, {
270
+ type: "interim_transcript";
271
+ transcript: string;
272
+ language: string;
273
+ confidence: number;
274
+ start: number;
275
+ duration: number;
276
+ words: {
277
+ end: number;
278
+ confidence: number;
279
+ start: number;
280
+ word: string;
281
+ extra?: unknown;
282
+ }[];
283
+ extra?: unknown;
284
+ session_id?: string | undefined;
285
+ }, {
286
+ type: "interim_transcript";
287
+ extra?: unknown;
288
+ transcript?: string | undefined;
289
+ language?: string | undefined;
290
+ confidence?: number | undefined;
291
+ start?: number | undefined;
292
+ session_id?: string | undefined;
293
+ duration?: number | undefined;
294
+ words?: {
295
+ end?: number | undefined;
296
+ extra?: unknown;
297
+ confidence?: number | undefined;
298
+ start?: number | undefined;
299
+ word?: string | undefined;
300
+ }[] | undefined;
301
+ }>;
302
+ export declare const sttFinalTranscriptEventSchema: z.ZodObject<{
303
+ type: z.ZodLiteral<"final_transcript">;
304
+ session_id: z.ZodOptional<z.ZodString>;
305
+ transcript: z.ZodDefault<z.ZodOptional<z.ZodString>>;
306
+ language: z.ZodDefault<z.ZodOptional<z.ZodString>>;
307
+ start: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
308
+ duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
309
+ confidence: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
310
+ words: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
311
+ word: z.ZodDefault<z.ZodOptional<z.ZodString>>;
312
+ start: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
313
+ end: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
314
+ confidence: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
315
+ extra: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
316
+ }, "strip", z.ZodTypeAny, {
317
+ end: number;
318
+ confidence: number;
319
+ start: number;
320
+ word: string;
321
+ extra?: unknown;
322
+ }, {
323
+ end?: number | undefined;
324
+ extra?: unknown;
325
+ confidence?: number | undefined;
326
+ start?: number | undefined;
327
+ word?: string | undefined;
328
+ }>, "many">>>;
329
+ extra: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
330
+ }, "strip", z.ZodTypeAny, {
331
+ type: "final_transcript";
332
+ transcript: string;
333
+ language: string;
334
+ confidence: number;
335
+ start: number;
336
+ duration: number;
337
+ words: {
338
+ end: number;
339
+ confidence: number;
340
+ start: number;
341
+ word: string;
342
+ extra?: unknown;
343
+ }[];
344
+ extra?: unknown;
345
+ session_id?: string | undefined;
346
+ }, {
347
+ type: "final_transcript";
348
+ extra?: unknown;
349
+ transcript?: string | undefined;
350
+ language?: string | undefined;
351
+ confidence?: number | undefined;
352
+ start?: number | undefined;
353
+ session_id?: string | undefined;
354
+ duration?: number | undefined;
355
+ words?: {
356
+ end?: number | undefined;
357
+ extra?: unknown;
358
+ confidence?: number | undefined;
359
+ start?: number | undefined;
360
+ word?: string | undefined;
361
+ }[] | undefined;
362
+ }>;
363
+ export declare const sttSessionCreatedEventSchema: z.ZodObject<{
364
+ type: z.ZodLiteral<"session.created">;
365
+ session_id: z.ZodOptional<z.ZodString>;
366
+ }, "strip", z.ZodTypeAny, {
367
+ type: "session.created";
368
+ session_id?: string | undefined;
369
+ }, {
370
+ type: "session.created";
371
+ session_id?: string | undefined;
372
+ }>;
373
+ export declare const sttSessionFinalizedEventSchema: z.ZodObject<{
374
+ type: z.ZodLiteral<"session.finalized">;
375
+ }, "strip", z.ZodTypeAny, {
376
+ type: "session.finalized";
377
+ }, {
378
+ type: "session.finalized";
379
+ }>;
380
+ export declare const sttSessionClosedEventSchema: z.ZodObject<{
381
+ type: z.ZodLiteral<"session.closed">;
382
+ }, "strip", z.ZodTypeAny, {
383
+ type: "session.closed";
384
+ }, {
385
+ type: "session.closed";
386
+ }>;
387
+ export declare const sttErrorEventSchema: z.ZodObject<{
388
+ type: z.ZodLiteral<"error">;
389
+ message: z.ZodOptional<z.ZodString>;
390
+ code: z.ZodOptional<z.ZodString>;
391
+ }, "strip", z.ZodTypeAny, {
392
+ type: "error";
393
+ message?: string | undefined;
394
+ code?: string | undefined;
395
+ }, {
396
+ type: "error";
397
+ message?: string | undefined;
398
+ code?: string | undefined;
399
+ }>;
400
+ export declare const sttServerEventSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
401
+ type: z.ZodLiteral<"session.created">;
402
+ session_id: z.ZodOptional<z.ZodString>;
403
+ }, "strip", z.ZodTypeAny, {
404
+ type: "session.created";
405
+ session_id?: string | undefined;
406
+ }, {
407
+ type: "session.created";
408
+ session_id?: string | undefined;
409
+ }>, z.ZodObject<{
410
+ type: z.ZodLiteral<"session.finalized">;
411
+ }, "strip", z.ZodTypeAny, {
412
+ type: "session.finalized";
413
+ }, {
414
+ type: "session.finalized";
415
+ }>, z.ZodObject<{
416
+ type: z.ZodLiteral<"session.closed">;
417
+ }, "strip", z.ZodTypeAny, {
418
+ type: "session.closed";
419
+ }, {
420
+ type: "session.closed";
421
+ }>, z.ZodObject<{
422
+ type: z.ZodLiteral<"interim_transcript">;
423
+ session_id: z.ZodOptional<z.ZodString>;
424
+ transcript: z.ZodDefault<z.ZodOptional<z.ZodString>>;
425
+ language: z.ZodDefault<z.ZodOptional<z.ZodString>>;
426
+ start: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
427
+ duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
428
+ confidence: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
429
+ words: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
430
+ word: z.ZodDefault<z.ZodOptional<z.ZodString>>;
431
+ start: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
432
+ end: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
433
+ confidence: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
434
+ extra: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
435
+ }, "strip", z.ZodTypeAny, {
436
+ end: number;
437
+ confidence: number;
438
+ start: number;
439
+ word: string;
440
+ extra?: unknown;
441
+ }, {
442
+ end?: number | undefined;
443
+ extra?: unknown;
444
+ confidence?: number | undefined;
445
+ start?: number | undefined;
446
+ word?: string | undefined;
447
+ }>, "many">>>;
448
+ extra: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
449
+ }, "strip", z.ZodTypeAny, {
450
+ type: "interim_transcript";
451
+ transcript: string;
452
+ language: string;
453
+ confidence: number;
454
+ start: number;
455
+ duration: number;
456
+ words: {
457
+ end: number;
458
+ confidence: number;
459
+ start: number;
460
+ word: string;
461
+ extra?: unknown;
462
+ }[];
463
+ extra?: unknown;
464
+ session_id?: string | undefined;
465
+ }, {
466
+ type: "interim_transcript";
467
+ extra?: unknown;
468
+ transcript?: string | undefined;
469
+ language?: string | undefined;
470
+ confidence?: number | undefined;
471
+ start?: number | undefined;
472
+ session_id?: string | undefined;
473
+ duration?: number | undefined;
474
+ words?: {
475
+ end?: number | undefined;
476
+ extra?: unknown;
477
+ confidence?: number | undefined;
478
+ start?: number | undefined;
479
+ word?: string | undefined;
480
+ }[] | undefined;
481
+ }>, z.ZodObject<{
482
+ type: z.ZodLiteral<"final_transcript">;
483
+ session_id: z.ZodOptional<z.ZodString>;
484
+ transcript: z.ZodDefault<z.ZodOptional<z.ZodString>>;
485
+ language: z.ZodDefault<z.ZodOptional<z.ZodString>>;
486
+ start: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
487
+ duration: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
488
+ confidence: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
489
+ words: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
490
+ word: z.ZodDefault<z.ZodOptional<z.ZodString>>;
491
+ start: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
492
+ end: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
493
+ confidence: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
494
+ extra: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
495
+ }, "strip", z.ZodTypeAny, {
496
+ end: number;
497
+ confidence: number;
498
+ start: number;
499
+ word: string;
500
+ extra?: unknown;
501
+ }, {
502
+ end?: number | undefined;
503
+ extra?: unknown;
504
+ confidence?: number | undefined;
505
+ start?: number | undefined;
506
+ word?: string | undefined;
507
+ }>, "many">>>;
508
+ extra: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
509
+ }, "strip", z.ZodTypeAny, {
510
+ type: "final_transcript";
511
+ transcript: string;
512
+ language: string;
513
+ confidence: number;
514
+ start: number;
515
+ duration: number;
516
+ words: {
517
+ end: number;
518
+ confidence: number;
519
+ start: number;
520
+ word: string;
521
+ extra?: unknown;
522
+ }[];
523
+ extra?: unknown;
524
+ session_id?: string | undefined;
525
+ }, {
526
+ type: "final_transcript";
527
+ extra?: unknown;
528
+ transcript?: string | undefined;
529
+ language?: string | undefined;
530
+ confidence?: number | undefined;
531
+ start?: number | undefined;
532
+ session_id?: string | undefined;
533
+ duration?: number | undefined;
534
+ words?: {
535
+ end?: number | undefined;
536
+ extra?: unknown;
537
+ confidence?: number | undefined;
538
+ start?: number | undefined;
539
+ word?: string | undefined;
540
+ }[] | undefined;
541
+ }>, z.ZodObject<{
542
+ type: z.ZodLiteral<"error">;
543
+ message: z.ZodOptional<z.ZodString>;
544
+ code: z.ZodOptional<z.ZodString>;
545
+ }, "strip", z.ZodTypeAny, {
546
+ type: "error";
547
+ message?: string | undefined;
548
+ code?: string | undefined;
549
+ }, {
550
+ type: "error";
551
+ message?: string | undefined;
552
+ code?: string | undefined;
553
+ }>]>;
554
+ export type SttWord = z.infer<typeof sttWordSchema>;
555
+ export type SttInterimTranscriptEvent = z.infer<typeof sttInterimTranscriptEventSchema>;
556
+ export type SttFinalTranscriptEvent = z.infer<typeof sttFinalTranscriptEventSchema>;
557
+ export type SttTranscriptEvent = SttInterimTranscriptEvent | SttFinalTranscriptEvent;
558
+ export type SttSessionCreatedEvent = z.infer<typeof sttSessionCreatedEventSchema>;
559
+ export type SttSessionFinalizedEvent = z.infer<typeof sttSessionFinalizedEventSchema>;
560
+ export type SttSessionClosedEvent = z.infer<typeof sttSessionClosedEventSchema>;
561
+ export type SttErrorEvent = z.infer<typeof sttErrorEventSchema>;
562
+ export type SttServerEvent = z.infer<typeof sttServerEventSchema>;
222
563
  //# sourceMappingURL=api_protos.d.ts.map