voice-router-dev 0.8.9 → 0.9.1

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.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,89 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.9.1] - 2026-04-26
9
+
10
+ ### Changed
11
+
12
+ #### Strengthen Generated Typing Across Providers
13
+
14
+ Replaced remaining weak request construction paths with generated request types across multiple adapters, including Soniox, Speechmatics, Azure STT, OpenAI Whisper, AssemblyAI, ElevenLabs, Deepgram, and Gladia.
15
+
16
+ #### Soniox: Use Current Generated Batch API Endpoints
17
+
18
+ Soniox batch transcription now uses the generated `/v1` transcription endpoints instead of legacy `/speech/*` calls. File uploads use the generated file API, transcription creation uses generated request/response types, and polling reads job metadata and transcript payloads from the current async API.
19
+
20
+ #### Soniox Streaming: Generate Realtime Types from Official SDK
21
+
22
+ Soniox realtime streaming types are now generated from the official `@soniox/speech-to-text-web` SDK instead of a handwritten local spec. The generation pipeline still enriches `model` and `audioFormat` with curated enums so field metadata, select options, and autocomplete remain available.
23
+
24
+ ## [0.9.0] - 2026-04-24
25
+
26
+ ### Changed
27
+
28
+ #### Eliminate `any` Types Across Adapters
29
+
30
+ Replaced all `any` type annotations with generated types from OpenAPI specs:
31
+
32
+ | Adapter | Before | After |
33
+ |---------|--------|-------|
34
+ | **AssemblyAI** | String literals in status switch | `TranscriptStatus.queued`, `.processing`, `.completed`, `.error` |
35
+ | **Azure STT** | `any` in `normalizeResponse`, `normalizeStatus`, `resultFile` | `AzureTranscriptionResult`, `AzureStatus.*` enums, `AzureFile` + `FileKind.Transcription` |
36
+ | **ElevenLabs** | `any` in `normalizeResponse`, inline entity type | `SpeechToText200`, `MultichannelSpeechToTextResponseModel`, `DetectedEntity` |
37
+ | **OpenAI** | `as any` for file and response | `as Blob`, explicit `CreateTranscriptionResponseVerboseJson \| CreateTranscriptionResponseDiarizedJson` union |
38
+ | **Soniox** | `any[]` in `buildUtterancesFromTokens`, `normalizeResponse` | `TranscriptionTranscriptToken[]`, `TranscriptionTranscript` |
39
+ | **Speechmatics** | 67 lines of hand-written WebSocket message types | Imports from generated `streaming-message-types` |
40
+
41
+ ### Added
42
+
43
+ #### Soniox: Webhook Support
44
+
45
+ Soniox `transcribe()` now wires `webhookUrl` → `webhook_url` in the API request. When a webhook URL is provided, the adapter returns immediately with job ID instead of polling.
46
+
47
+ ```typescript
48
+ const result = await adapter.transcribe(audio, {
49
+ webhookUrl: 'https://myapp.com/webhook/soniox'
50
+ })
51
+ console.log(result.data.id) // Job ID returned immediately
52
+ ```
53
+
54
+ New `SonioxWebhookHandler` added to `WebhookRouter` with typed `SonioxWebhookPayload` (`Transcription` from generated types).
55
+
56
+ #### ElevenLabs: Webhook Support
57
+
58
+ ElevenLabs `transcribe()` now supports async webhook mode. When `webhookUrl` is provided, the adapter appends `webhook=true` to the request and returns immediately with transcription ID.
59
+
60
+ **Note:** ElevenLabs requires webhook URLs to be pre-configured in account settings via `webhook_id`. The `webhookUrl` option triggers async mode; pass `webhook_id` via ElevenLabs passthrough options.
61
+
62
+ **Webhook + polling support summary (updated):**
63
+
64
+ | Provider | webhookUrl wired | Auto-poll | API webhook model |
65
+ |----------|-----------------|-----------|-------------------|
66
+ | Gladia | `callback_config.url` | `pollForCompletion` | Per-job |
67
+ | AssemblyAI | `webhook_url` | `pollForCompletion` | Per-job |
68
+ | Deepgram | `params.callback` | N/A (sync) | Per-request |
69
+ | Speechmatics | `notification_config` | `pollForCompletion` | Per-job |
70
+ | Azure STT | `registerWebhook()` | `pollForCompletion` | Subscription-wide |
71
+ | **Soniox** | `webhook_url` | `pollForCompletion` | Per-job |
72
+ | **ElevenLabs** | `webhook=true` | N/A (sync) | Account-wide |
73
+ | OpenAI | N/A (sync) | N/A (sync) | N/A |
74
+
75
+ ### Fixed
76
+
77
+ #### Gladia: Remove `SpeakerReidentificationDTO` (Upstream Removal)
78
+
79
+ Gladia removed `speaker_reidentification` from their OpenAPI spec. Removed the import, re-export, and `GladiaExtendedData.speakerReidentification` field from `types.ts`, and the mapping from `gladia-adapter.ts`.
80
+
81
+ #### ElevenLabs: Fix `entity_redaction` FormData Regex
82
+
83
+ `fix-generated.js` regex for `entity_redaction` `Array.isArray` guard only matched backtick-quoted field names, but Orval generates double quotes. Fixed to match any quote style.
84
+
85
+ #### Webhook Handlers: Fix `raw` Payload Type Narrowing
86
+
87
+ All webhook handlers now use `raw: payload as UnifiedWebhookEvent["raw"]` for correct type narrowing (previously caused TS errors with strict typing).
88
+
89
+ ---
90
+
8
91
  ## [0.8.7] - 2026-04-18
9
92
 
10
93
  ### Added
@@ -644,48 +644,50 @@ declare const SonioxModels: readonly [{
644
644
  readonly id: "stt-rt-v4";
645
645
  readonly name: "Speech-to-Text Real-time v4";
646
646
  readonly mode: "real_time";
647
- }, {
648
- readonly id: "stt-rt-v3";
649
- readonly name: "Speech-to-Text Real-time v3";
650
- readonly mode: "real_time";
651
647
  }, {
652
648
  readonly id: "stt-async-v4";
653
649
  readonly name: "Speech-to-Text Async v4";
654
650
  readonly mode: "async";
655
- }, {
656
- readonly id: "stt-async-v3";
657
- readonly name: "Speech-to-Text Async v3";
658
- readonly mode: "async";
659
651
  }, {
660
652
  readonly id: "stt-rt-preview";
661
653
  readonly name: "Speech-to-Text Real-time Preview";
662
654
  readonly mode: "real_time";
663
- readonly aliasOf: "stt-rt-v3";
655
+ readonly aliasOf: "stt-rt-v4";
664
656
  }, {
665
657
  readonly id: "stt-async-preview";
666
658
  readonly name: "Speech-to-Text Async Preview";
667
659
  readonly mode: "async";
668
- readonly aliasOf: "stt-async-v3";
660
+ readonly aliasOf: "stt-async-v4";
669
661
  }, {
670
662
  readonly id: "stt-rt-v3-preview";
671
663
  readonly name: "Speech-to-Text Real-time v3 Preview";
672
664
  readonly mode: "real_time";
673
- readonly aliasOf: "stt-rt-v3";
665
+ readonly aliasOf: "stt-rt-v4";
674
666
  }, {
675
667
  readonly id: "stt-rt-preview-v2";
676
668
  readonly name: "Speech-to-Text Real-time Preview v2";
677
669
  readonly mode: "real_time";
678
- readonly aliasOf: "stt-rt-v3";
670
+ readonly aliasOf: "stt-rt-v4";
679
671
  }, {
680
672
  readonly id: "stt-async-preview-v1";
681
673
  readonly name: "Speech-to-Text Async Preview v1";
682
674
  readonly mode: "async";
683
- readonly aliasOf: "stt-async-v3";
675
+ readonly aliasOf: "stt-async-v4";
676
+ }, {
677
+ readonly id: "stt-rt-v3";
678
+ readonly name: "Speech-to-Text Real-time v3";
679
+ readonly mode: "real_time";
680
+ readonly aliasOf: "stt-rt-v4";
681
+ }, {
682
+ readonly id: "stt-async-v3";
683
+ readonly name: "Speech-to-Text Async v3";
684
+ readonly mode: "async";
685
+ readonly aliasOf: "stt-async-v4";
684
686
  }];
685
687
  /**
686
688
  * Soniox model IDs
687
689
  */
688
- declare const SonioxModelCodes: readonly ["stt-rt-v4", "stt-rt-v3", "stt-async-v4", "stt-async-v3", "stt-rt-preview", "stt-async-preview", "stt-rt-v3-preview", "stt-rt-preview-v2", "stt-async-preview-v1"];
690
+ declare const SonioxModelCodes: readonly ["stt-rt-v4", "stt-async-v4", "stt-rt-preview", "stt-async-preview", "stt-rt-v3-preview", "stt-rt-preview-v2", "stt-async-preview-v1", "stt-rt-v3", "stt-async-v3"];
689
691
  /**
690
692
  * Type for Soniox model codes
691
693
  */
@@ -693,7 +695,7 @@ type SonioxModelCode = (typeof SonioxModelCodes)[number];
693
695
  /**
694
696
  * Real-time streaming model IDs
695
697
  */
696
- declare const SonioxRealtimeModelCodes: readonly ["stt-rt-v4", "stt-rt-v3", "stt-rt-preview", "stt-rt-v3-preview", "stt-rt-preview-v2"];
698
+ declare const SonioxRealtimeModelCodes: readonly ["stt-rt-v4", "stt-rt-preview", "stt-rt-v3-preview", "stt-rt-preview-v2", "stt-rt-v3"];
697
699
  /**
698
700
  * Type for Soniox real-time model codes
699
701
  */
@@ -701,7 +703,7 @@ type SonioxRealtimeModelCode = (typeof SonioxRealtimeModelCodes)[number];
701
703
  /**
702
704
  * Async/batch model IDs
703
705
  */
704
- declare const SonioxAsyncModelCodes: readonly ["stt-async-v4", "stt-async-v3", "stt-async-preview", "stt-async-preview-v1"];
706
+ declare const SonioxAsyncModelCodes: readonly ["stt-async-v4", "stt-async-preview", "stt-async-preview-v1", "stt-async-v3"];
705
707
  /**
706
708
  * Type for Soniox async model codes
707
709
  */
@@ -726,33 +728,33 @@ declare const SonioxModelLabels: Record<SonioxModelCode, string>;
726
728
  */
727
729
  declare const SonioxModel: {
728
730
  readonly stt_rt_v4: "stt-rt-v4";
729
- readonly stt_rt_v3: "stt-rt-v3";
730
731
  readonly stt_async_v4: "stt-async-v4";
731
- readonly stt_async_v3: "stt-async-v3";
732
732
  readonly stt_rt_preview: "stt-rt-preview";
733
733
  readonly stt_async_preview: "stt-async-preview";
734
734
  readonly stt_rt_v3_preview: "stt-rt-v3-preview";
735
735
  readonly stt_rt_preview_v2: "stt-rt-preview-v2";
736
736
  readonly stt_async_preview_v1: "stt-async-preview-v1";
737
+ readonly stt_rt_v3: "stt-rt-v3";
738
+ readonly stt_async_v3: "stt-async-v3";
737
739
  };
738
740
  /**
739
741
  * Real-time models only (for streaming)
740
742
  */
741
743
  declare const SonioxRealtimeModel: {
742
744
  readonly stt_rt_v4: "stt-rt-v4";
743
- readonly stt_rt_v3: "stt-rt-v3";
744
745
  readonly stt_rt_preview: "stt-rt-preview";
745
746
  readonly stt_rt_v3_preview: "stt-rt-v3-preview";
746
747
  readonly stt_rt_preview_v2: "stt-rt-preview-v2";
748
+ readonly stt_rt_v3: "stt-rt-v3";
747
749
  };
748
750
  /**
749
751
  * Async models only (for batch transcription)
750
752
  */
751
753
  declare const SonioxAsyncModel: {
752
754
  readonly stt_async_v4: "stt-async-v4";
753
- readonly stt_async_v3: "stt-async-v3";
754
755
  readonly stt_async_preview: "stt-async-preview";
755
756
  readonly stt_async_preview_v1: "stt-async-preview-v1";
757
+ readonly stt_async_v3: "stt-async-v3";
756
758
  };
757
759
 
758
760
  /**
@@ -3413,7 +3415,7 @@ declare const OpenAIModel: {
3413
3415
  readonly "whisper-1": "whisper-1";
3414
3416
  };
3415
3417
  declare const OpenAIModelCodes: readonly ["gpt-4o-mini-realtime-preview", "gpt-4o-mini-realtime-preview-2024-12-17", "gpt-4o-mini-transcribe", "gpt-4o-mini-transcribe-2025-12-15", "gpt-4o-realtime-preview", "gpt-4o-realtime-preview-2024-10-01", "gpt-4o-realtime-preview-2024-12-17", "gpt-4o-realtime-preview-2025-06-03", "gpt-4o-transcribe", "gpt-4o-transcribe-diarize", "gpt-audio-1.5", "gpt-audio-mini", "gpt-audio-mini-2025-10-06", "gpt-audio-mini-2025-12-15", "gpt-realtime", "gpt-realtime-1.5", "gpt-realtime-2025-08-28", "gpt-realtime-mini", "gpt-realtime-mini-2025-10-06", "gpt-realtime-mini-2025-12-15", "whisper-1"];
3416
- declare const OpenAIModelLabels: Record<"whisper-1" | "gpt-4o-transcribe" | "gpt-4o-mini-transcribe" | "gpt-4o-mini-transcribe-2025-12-15" | "gpt-4o-transcribe-diarize" | "gpt-4o-mini-realtime-preview" | "gpt-4o-mini-realtime-preview-2024-12-17" | "gpt-4o-realtime-preview" | "gpt-4o-realtime-preview-2024-10-01" | "gpt-4o-realtime-preview-2024-12-17" | "gpt-4o-realtime-preview-2025-06-03" | "gpt-audio-1.5" | "gpt-audio-mini" | "gpt-audio-mini-2025-10-06" | "gpt-audio-mini-2025-12-15" | "gpt-realtime" | "gpt-realtime-1.5" | "gpt-realtime-2025-08-28" | "gpt-realtime-mini" | "gpt-realtime-mini-2025-10-06" | "gpt-realtime-mini-2025-12-15", string>;
3418
+ declare const OpenAIModelLabels: Record<"gpt-4o-mini-realtime-preview" | "gpt-4o-mini-realtime-preview-2024-12-17" | "gpt-4o-mini-transcribe" | "gpt-4o-mini-transcribe-2025-12-15" | "gpt-4o-realtime-preview" | "gpt-4o-realtime-preview-2024-10-01" | "gpt-4o-realtime-preview-2024-12-17" | "gpt-4o-realtime-preview-2025-06-03" | "gpt-4o-transcribe" | "gpt-4o-transcribe-diarize" | "gpt-audio-1.5" | "gpt-audio-mini" | "gpt-audio-mini-2025-10-06" | "gpt-audio-mini-2025-12-15" | "gpt-realtime" | "gpt-realtime-1.5" | "gpt-realtime-2025-08-28" | "gpt-realtime-mini" | "gpt-realtime-mini-2025-10-06" | "gpt-realtime-mini-2025-12-15" | "whisper-1", string>;
3417
3419
  /**
3418
3420
  * OpenAI Realtime API models (streaming)
3419
3421
  * @see scripts/generate-openai-models.js
@@ -644,48 +644,50 @@ declare const SonioxModels: readonly [{
644
644
  readonly id: "stt-rt-v4";
645
645
  readonly name: "Speech-to-Text Real-time v4";
646
646
  readonly mode: "real_time";
647
- }, {
648
- readonly id: "stt-rt-v3";
649
- readonly name: "Speech-to-Text Real-time v3";
650
- readonly mode: "real_time";
651
647
  }, {
652
648
  readonly id: "stt-async-v4";
653
649
  readonly name: "Speech-to-Text Async v4";
654
650
  readonly mode: "async";
655
- }, {
656
- readonly id: "stt-async-v3";
657
- readonly name: "Speech-to-Text Async v3";
658
- readonly mode: "async";
659
651
  }, {
660
652
  readonly id: "stt-rt-preview";
661
653
  readonly name: "Speech-to-Text Real-time Preview";
662
654
  readonly mode: "real_time";
663
- readonly aliasOf: "stt-rt-v3";
655
+ readonly aliasOf: "stt-rt-v4";
664
656
  }, {
665
657
  readonly id: "stt-async-preview";
666
658
  readonly name: "Speech-to-Text Async Preview";
667
659
  readonly mode: "async";
668
- readonly aliasOf: "stt-async-v3";
660
+ readonly aliasOf: "stt-async-v4";
669
661
  }, {
670
662
  readonly id: "stt-rt-v3-preview";
671
663
  readonly name: "Speech-to-Text Real-time v3 Preview";
672
664
  readonly mode: "real_time";
673
- readonly aliasOf: "stt-rt-v3";
665
+ readonly aliasOf: "stt-rt-v4";
674
666
  }, {
675
667
  readonly id: "stt-rt-preview-v2";
676
668
  readonly name: "Speech-to-Text Real-time Preview v2";
677
669
  readonly mode: "real_time";
678
- readonly aliasOf: "stt-rt-v3";
670
+ readonly aliasOf: "stt-rt-v4";
679
671
  }, {
680
672
  readonly id: "stt-async-preview-v1";
681
673
  readonly name: "Speech-to-Text Async Preview v1";
682
674
  readonly mode: "async";
683
- readonly aliasOf: "stt-async-v3";
675
+ readonly aliasOf: "stt-async-v4";
676
+ }, {
677
+ readonly id: "stt-rt-v3";
678
+ readonly name: "Speech-to-Text Real-time v3";
679
+ readonly mode: "real_time";
680
+ readonly aliasOf: "stt-rt-v4";
681
+ }, {
682
+ readonly id: "stt-async-v3";
683
+ readonly name: "Speech-to-Text Async v3";
684
+ readonly mode: "async";
685
+ readonly aliasOf: "stt-async-v4";
684
686
  }];
685
687
  /**
686
688
  * Soniox model IDs
687
689
  */
688
- declare const SonioxModelCodes: readonly ["stt-rt-v4", "stt-rt-v3", "stt-async-v4", "stt-async-v3", "stt-rt-preview", "stt-async-preview", "stt-rt-v3-preview", "stt-rt-preview-v2", "stt-async-preview-v1"];
690
+ declare const SonioxModelCodes: readonly ["stt-rt-v4", "stt-async-v4", "stt-rt-preview", "stt-async-preview", "stt-rt-v3-preview", "stt-rt-preview-v2", "stt-async-preview-v1", "stt-rt-v3", "stt-async-v3"];
689
691
  /**
690
692
  * Type for Soniox model codes
691
693
  */
@@ -693,7 +695,7 @@ type SonioxModelCode = (typeof SonioxModelCodes)[number];
693
695
  /**
694
696
  * Real-time streaming model IDs
695
697
  */
696
- declare const SonioxRealtimeModelCodes: readonly ["stt-rt-v4", "stt-rt-v3", "stt-rt-preview", "stt-rt-v3-preview", "stt-rt-preview-v2"];
698
+ declare const SonioxRealtimeModelCodes: readonly ["stt-rt-v4", "stt-rt-preview", "stt-rt-v3-preview", "stt-rt-preview-v2", "stt-rt-v3"];
697
699
  /**
698
700
  * Type for Soniox real-time model codes
699
701
  */
@@ -701,7 +703,7 @@ type SonioxRealtimeModelCode = (typeof SonioxRealtimeModelCodes)[number];
701
703
  /**
702
704
  * Async/batch model IDs
703
705
  */
704
- declare const SonioxAsyncModelCodes: readonly ["stt-async-v4", "stt-async-v3", "stt-async-preview", "stt-async-preview-v1"];
706
+ declare const SonioxAsyncModelCodes: readonly ["stt-async-v4", "stt-async-preview", "stt-async-preview-v1", "stt-async-v3"];
705
707
  /**
706
708
  * Type for Soniox async model codes
707
709
  */
@@ -726,33 +728,33 @@ declare const SonioxModelLabels: Record<SonioxModelCode, string>;
726
728
  */
727
729
  declare const SonioxModel: {
728
730
  readonly stt_rt_v4: "stt-rt-v4";
729
- readonly stt_rt_v3: "stt-rt-v3";
730
731
  readonly stt_async_v4: "stt-async-v4";
731
- readonly stt_async_v3: "stt-async-v3";
732
732
  readonly stt_rt_preview: "stt-rt-preview";
733
733
  readonly stt_async_preview: "stt-async-preview";
734
734
  readonly stt_rt_v3_preview: "stt-rt-v3-preview";
735
735
  readonly stt_rt_preview_v2: "stt-rt-preview-v2";
736
736
  readonly stt_async_preview_v1: "stt-async-preview-v1";
737
+ readonly stt_rt_v3: "stt-rt-v3";
738
+ readonly stt_async_v3: "stt-async-v3";
737
739
  };
738
740
  /**
739
741
  * Real-time models only (for streaming)
740
742
  */
741
743
  declare const SonioxRealtimeModel: {
742
744
  readonly stt_rt_v4: "stt-rt-v4";
743
- readonly stt_rt_v3: "stt-rt-v3";
744
745
  readonly stt_rt_preview: "stt-rt-preview";
745
746
  readonly stt_rt_v3_preview: "stt-rt-v3-preview";
746
747
  readonly stt_rt_preview_v2: "stt-rt-preview-v2";
748
+ readonly stt_rt_v3: "stt-rt-v3";
747
749
  };
748
750
  /**
749
751
  * Async models only (for batch transcription)
750
752
  */
751
753
  declare const SonioxAsyncModel: {
752
754
  readonly stt_async_v4: "stt-async-v4";
753
- readonly stt_async_v3: "stt-async-v3";
754
755
  readonly stt_async_preview: "stt-async-preview";
755
756
  readonly stt_async_preview_v1: "stt-async-preview-v1";
757
+ readonly stt_async_v3: "stt-async-v3";
756
758
  };
757
759
 
758
760
  /**
@@ -3413,7 +3415,7 @@ declare const OpenAIModel: {
3413
3415
  readonly "whisper-1": "whisper-1";
3414
3416
  };
3415
3417
  declare const OpenAIModelCodes: readonly ["gpt-4o-mini-realtime-preview", "gpt-4o-mini-realtime-preview-2024-12-17", "gpt-4o-mini-transcribe", "gpt-4o-mini-transcribe-2025-12-15", "gpt-4o-realtime-preview", "gpt-4o-realtime-preview-2024-10-01", "gpt-4o-realtime-preview-2024-12-17", "gpt-4o-realtime-preview-2025-06-03", "gpt-4o-transcribe", "gpt-4o-transcribe-diarize", "gpt-audio-1.5", "gpt-audio-mini", "gpt-audio-mini-2025-10-06", "gpt-audio-mini-2025-12-15", "gpt-realtime", "gpt-realtime-1.5", "gpt-realtime-2025-08-28", "gpt-realtime-mini", "gpt-realtime-mini-2025-10-06", "gpt-realtime-mini-2025-12-15", "whisper-1"];
3416
- declare const OpenAIModelLabels: Record<"whisper-1" | "gpt-4o-transcribe" | "gpt-4o-mini-transcribe" | "gpt-4o-mini-transcribe-2025-12-15" | "gpt-4o-transcribe-diarize" | "gpt-4o-mini-realtime-preview" | "gpt-4o-mini-realtime-preview-2024-12-17" | "gpt-4o-realtime-preview" | "gpt-4o-realtime-preview-2024-10-01" | "gpt-4o-realtime-preview-2024-12-17" | "gpt-4o-realtime-preview-2025-06-03" | "gpt-audio-1.5" | "gpt-audio-mini" | "gpt-audio-mini-2025-10-06" | "gpt-audio-mini-2025-12-15" | "gpt-realtime" | "gpt-realtime-1.5" | "gpt-realtime-2025-08-28" | "gpt-realtime-mini" | "gpt-realtime-mini-2025-10-06" | "gpt-realtime-mini-2025-12-15", string>;
3418
+ declare const OpenAIModelLabels: Record<"gpt-4o-mini-realtime-preview" | "gpt-4o-mini-realtime-preview-2024-12-17" | "gpt-4o-mini-transcribe" | "gpt-4o-mini-transcribe-2025-12-15" | "gpt-4o-realtime-preview" | "gpt-4o-realtime-preview-2024-10-01" | "gpt-4o-realtime-preview-2024-12-17" | "gpt-4o-realtime-preview-2025-06-03" | "gpt-4o-transcribe" | "gpt-4o-transcribe-diarize" | "gpt-audio-1.5" | "gpt-audio-mini" | "gpt-audio-mini-2025-10-06" | "gpt-audio-mini-2025-12-15" | "gpt-realtime" | "gpt-realtime-1.5" | "gpt-realtime-2025-08-28" | "gpt-realtime-mini" | "gpt-realtime-mini-2025-10-06" | "gpt-realtime-mini-2025-12-15" | "whisper-1", string>;
3417
3419
  /**
3418
3420
  * OpenAI Realtime API models (streaming)
3419
3421
  * @see scripts/generate-openai-models.js
package/dist/constants.js CHANGED
@@ -1352,73 +1352,73 @@ var SonioxLanguage = {
1352
1352
  // src/generated/soniox/models.ts
1353
1353
  var SonioxModels = [
1354
1354
  { id: "stt-rt-v4", name: "Speech-to-Text Real-time v4", mode: "real_time" },
1355
- { id: "stt-rt-v3", name: "Speech-to-Text Real-time v3", mode: "real_time" },
1356
1355
  { id: "stt-async-v4", name: "Speech-to-Text Async v4", mode: "async" },
1357
- { id: "stt-async-v3", name: "Speech-to-Text Async v3", mode: "async" },
1358
- { id: "stt-rt-preview", name: "Speech-to-Text Real-time Preview", mode: "real_time", aliasOf: "stt-rt-v3" },
1359
- { id: "stt-async-preview", name: "Speech-to-Text Async Preview", mode: "async", aliasOf: "stt-async-v3" },
1360
- { id: "stt-rt-v3-preview", name: "Speech-to-Text Real-time v3 Preview", mode: "real_time", aliasOf: "stt-rt-v3" },
1361
- { id: "stt-rt-preview-v2", name: "Speech-to-Text Real-time Preview v2", mode: "real_time", aliasOf: "stt-rt-v3" },
1362
- { id: "stt-async-preview-v1", name: "Speech-to-Text Async Preview v1", mode: "async", aliasOf: "stt-async-v3" }
1356
+ { id: "stt-rt-preview", name: "Speech-to-Text Real-time Preview", mode: "real_time", aliasOf: "stt-rt-v4" },
1357
+ { id: "stt-async-preview", name: "Speech-to-Text Async Preview", mode: "async", aliasOf: "stt-async-v4" },
1358
+ { id: "stt-rt-v3-preview", name: "Speech-to-Text Real-time v3 Preview", mode: "real_time", aliasOf: "stt-rt-v4" },
1359
+ { id: "stt-rt-preview-v2", name: "Speech-to-Text Real-time Preview v2", mode: "real_time", aliasOf: "stt-rt-v4" },
1360
+ { id: "stt-async-preview-v1", name: "Speech-to-Text Async Preview v1", mode: "async", aliasOf: "stt-async-v4" },
1361
+ { id: "stt-rt-v3", name: "Speech-to-Text Real-time v3", mode: "real_time", aliasOf: "stt-rt-v4" },
1362
+ { id: "stt-async-v3", name: "Speech-to-Text Async v3", mode: "async", aliasOf: "stt-async-v4" }
1363
1363
  ];
1364
1364
  var SonioxModelCodes = [
1365
1365
  "stt-rt-v4",
1366
- "stt-rt-v3",
1367
1366
  "stt-async-v4",
1368
- "stt-async-v3",
1369
1367
  "stt-rt-preview",
1370
1368
  "stt-async-preview",
1371
1369
  "stt-rt-v3-preview",
1372
1370
  "stt-rt-preview-v2",
1373
- "stt-async-preview-v1"
1371
+ "stt-async-preview-v1",
1372
+ "stt-rt-v3",
1373
+ "stt-async-v3"
1374
1374
  ];
1375
1375
  var SonioxRealtimeModelCodes = [
1376
1376
  "stt-rt-v4",
1377
- "stt-rt-v3",
1378
1377
  "stt-rt-preview",
1379
1378
  "stt-rt-v3-preview",
1380
- "stt-rt-preview-v2"
1379
+ "stt-rt-preview-v2",
1380
+ "stt-rt-v3"
1381
1381
  ];
1382
1382
  var SonioxAsyncModelCodes = [
1383
1383
  "stt-async-v4",
1384
- "stt-async-v3",
1385
1384
  "stt-async-preview",
1386
- "stt-async-preview-v1"
1385
+ "stt-async-preview-v1",
1386
+ "stt-async-v3"
1387
1387
  ];
1388
1388
  var SonioxModelLabels = {
1389
1389
  "stt-rt-v4": "Speech-to-Text Real-time v4",
1390
- "stt-rt-v3": "Speech-to-Text Real-time v3",
1391
1390
  "stt-async-v4": "Speech-to-Text Async v4",
1392
- "stt-async-v3": "Speech-to-Text Async v3",
1393
1391
  "stt-rt-preview": "Speech-to-Text Real-time Preview",
1394
1392
  "stt-async-preview": "Speech-to-Text Async Preview",
1395
1393
  "stt-rt-v3-preview": "Speech-to-Text Real-time v3 Preview",
1396
1394
  "stt-rt-preview-v2": "Speech-to-Text Real-time Preview v2",
1397
- "stt-async-preview-v1": "Speech-to-Text Async Preview v1"
1395
+ "stt-async-preview-v1": "Speech-to-Text Async Preview v1",
1396
+ "stt-rt-v3": "Speech-to-Text Real-time v3",
1397
+ "stt-async-v3": "Speech-to-Text Async v3"
1398
1398
  };
1399
1399
  var SonioxModel = {
1400
1400
  stt_rt_v4: "stt-rt-v4",
1401
- stt_rt_v3: "stt-rt-v3",
1402
1401
  stt_async_v4: "stt-async-v4",
1403
- stt_async_v3: "stt-async-v3",
1404
1402
  stt_rt_preview: "stt-rt-preview",
1405
1403
  stt_async_preview: "stt-async-preview",
1406
1404
  stt_rt_v3_preview: "stt-rt-v3-preview",
1407
1405
  stt_rt_preview_v2: "stt-rt-preview-v2",
1408
- stt_async_preview_v1: "stt-async-preview-v1"
1406
+ stt_async_preview_v1: "stt-async-preview-v1",
1407
+ stt_rt_v3: "stt-rt-v3",
1408
+ stt_async_v3: "stt-async-v3"
1409
1409
  };
1410
1410
  var SonioxRealtimeModel = {
1411
1411
  stt_rt_v4: "stt-rt-v4",
1412
- stt_rt_v3: "stt-rt-v3",
1413
1412
  stt_rt_preview: "stt-rt-preview",
1414
1413
  stt_rt_v3_preview: "stt-rt-v3-preview",
1415
- stt_rt_preview_v2: "stt-rt-preview-v2"
1414
+ stt_rt_preview_v2: "stt-rt-preview-v2",
1415
+ stt_rt_v3: "stt-rt-v3"
1416
1416
  };
1417
1417
  var SonioxAsyncModel = {
1418
1418
  stt_async_v4: "stt-async-v4",
1419
- stt_async_v3: "stt-async-v3",
1420
1419
  stt_async_preview: "stt-async-preview",
1421
- stt_async_preview_v1: "stt-async-preview-v1"
1420
+ stt_async_preview_v1: "stt-async-preview-v1",
1421
+ stt_async_v3: "stt-async-v3"
1422
1422
  };
1423
1423
 
1424
1424
  // src/generated/speechmatics/languages.ts
@@ -1247,73 +1247,73 @@ var SonioxLanguage = {
1247
1247
  // src/generated/soniox/models.ts
1248
1248
  var SonioxModels = [
1249
1249
  { id: "stt-rt-v4", name: "Speech-to-Text Real-time v4", mode: "real_time" },
1250
- { id: "stt-rt-v3", name: "Speech-to-Text Real-time v3", mode: "real_time" },
1251
1250
  { id: "stt-async-v4", name: "Speech-to-Text Async v4", mode: "async" },
1252
- { id: "stt-async-v3", name: "Speech-to-Text Async v3", mode: "async" },
1253
- { id: "stt-rt-preview", name: "Speech-to-Text Real-time Preview", mode: "real_time", aliasOf: "stt-rt-v3" },
1254
- { id: "stt-async-preview", name: "Speech-to-Text Async Preview", mode: "async", aliasOf: "stt-async-v3" },
1255
- { id: "stt-rt-v3-preview", name: "Speech-to-Text Real-time v3 Preview", mode: "real_time", aliasOf: "stt-rt-v3" },
1256
- { id: "stt-rt-preview-v2", name: "Speech-to-Text Real-time Preview v2", mode: "real_time", aliasOf: "stt-rt-v3" },
1257
- { id: "stt-async-preview-v1", name: "Speech-to-Text Async Preview v1", mode: "async", aliasOf: "stt-async-v3" }
1251
+ { id: "stt-rt-preview", name: "Speech-to-Text Real-time Preview", mode: "real_time", aliasOf: "stt-rt-v4" },
1252
+ { id: "stt-async-preview", name: "Speech-to-Text Async Preview", mode: "async", aliasOf: "stt-async-v4" },
1253
+ { id: "stt-rt-v3-preview", name: "Speech-to-Text Real-time v3 Preview", mode: "real_time", aliasOf: "stt-rt-v4" },
1254
+ { id: "stt-rt-preview-v2", name: "Speech-to-Text Real-time Preview v2", mode: "real_time", aliasOf: "stt-rt-v4" },
1255
+ { id: "stt-async-preview-v1", name: "Speech-to-Text Async Preview v1", mode: "async", aliasOf: "stt-async-v4" },
1256
+ { id: "stt-rt-v3", name: "Speech-to-Text Real-time v3", mode: "real_time", aliasOf: "stt-rt-v4" },
1257
+ { id: "stt-async-v3", name: "Speech-to-Text Async v3", mode: "async", aliasOf: "stt-async-v4" }
1258
1258
  ];
1259
1259
  var SonioxModelCodes = [
1260
1260
  "stt-rt-v4",
1261
- "stt-rt-v3",
1262
1261
  "stt-async-v4",
1263
- "stt-async-v3",
1264
1262
  "stt-rt-preview",
1265
1263
  "stt-async-preview",
1266
1264
  "stt-rt-v3-preview",
1267
1265
  "stt-rt-preview-v2",
1268
- "stt-async-preview-v1"
1266
+ "stt-async-preview-v1",
1267
+ "stt-rt-v3",
1268
+ "stt-async-v3"
1269
1269
  ];
1270
1270
  var SonioxRealtimeModelCodes = [
1271
1271
  "stt-rt-v4",
1272
- "stt-rt-v3",
1273
1272
  "stt-rt-preview",
1274
1273
  "stt-rt-v3-preview",
1275
- "stt-rt-preview-v2"
1274
+ "stt-rt-preview-v2",
1275
+ "stt-rt-v3"
1276
1276
  ];
1277
1277
  var SonioxAsyncModelCodes = [
1278
1278
  "stt-async-v4",
1279
- "stt-async-v3",
1280
1279
  "stt-async-preview",
1281
- "stt-async-preview-v1"
1280
+ "stt-async-preview-v1",
1281
+ "stt-async-v3"
1282
1282
  ];
1283
1283
  var SonioxModelLabels = {
1284
1284
  "stt-rt-v4": "Speech-to-Text Real-time v4",
1285
- "stt-rt-v3": "Speech-to-Text Real-time v3",
1286
1285
  "stt-async-v4": "Speech-to-Text Async v4",
1287
- "stt-async-v3": "Speech-to-Text Async v3",
1288
1286
  "stt-rt-preview": "Speech-to-Text Real-time Preview",
1289
1287
  "stt-async-preview": "Speech-to-Text Async Preview",
1290
1288
  "stt-rt-v3-preview": "Speech-to-Text Real-time v3 Preview",
1291
1289
  "stt-rt-preview-v2": "Speech-to-Text Real-time Preview v2",
1292
- "stt-async-preview-v1": "Speech-to-Text Async Preview v1"
1290
+ "stt-async-preview-v1": "Speech-to-Text Async Preview v1",
1291
+ "stt-rt-v3": "Speech-to-Text Real-time v3",
1292
+ "stt-async-v3": "Speech-to-Text Async v3"
1293
1293
  };
1294
1294
  var SonioxModel = {
1295
1295
  stt_rt_v4: "stt-rt-v4",
1296
- stt_rt_v3: "stt-rt-v3",
1297
1296
  stt_async_v4: "stt-async-v4",
1298
- stt_async_v3: "stt-async-v3",
1299
1297
  stt_rt_preview: "stt-rt-preview",
1300
1298
  stt_async_preview: "stt-async-preview",
1301
1299
  stt_rt_v3_preview: "stt-rt-v3-preview",
1302
1300
  stt_rt_preview_v2: "stt-rt-preview-v2",
1303
- stt_async_preview_v1: "stt-async-preview-v1"
1301
+ stt_async_preview_v1: "stt-async-preview-v1",
1302
+ stt_rt_v3: "stt-rt-v3",
1303
+ stt_async_v3: "stt-async-v3"
1304
1304
  };
1305
1305
  var SonioxRealtimeModel = {
1306
1306
  stt_rt_v4: "stt-rt-v4",
1307
- stt_rt_v3: "stt-rt-v3",
1308
1307
  stt_rt_preview: "stt-rt-preview",
1309
1308
  stt_rt_v3_preview: "stt-rt-v3-preview",
1310
- stt_rt_preview_v2: "stt-rt-preview-v2"
1309
+ stt_rt_preview_v2: "stt-rt-preview-v2",
1310
+ stt_rt_v3: "stt-rt-v3"
1311
1311
  };
1312
1312
  var SonioxAsyncModel = {
1313
1313
  stt_async_v4: "stt-async-v4",
1314
- stt_async_v3: "stt-async-v3",
1315
1314
  stt_async_preview: "stt-async-preview",
1316
- stt_async_preview_v1: "stt-async-preview-v1"
1315
+ stt_async_preview_v1: "stt-async-preview-v1",
1316
+ stt_async_v3: "stt-async-v3"
1317
1317
  };
1318
1318
 
1319
1319
  // src/generated/speechmatics/languages.ts