voice-router-dev 0.1.6 → 0.1.8

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/dist/index.d.ts CHANGED
@@ -40,6 +40,18 @@ type AudioChannels = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8;
40
40
  * Supported transcription providers
41
41
  */
42
42
  type TranscriptionProvider = "gladia" | "assemblyai" | "deepgram" | "azure-stt" | "openai-whisper" | "speechmatics";
43
+ /**
44
+ * Providers that support real-time streaming transcription
45
+ */
46
+ type StreamingProvider = "gladia" | "deepgram" | "assemblyai";
47
+ /**
48
+ * Providers that only support batch/async transcription
49
+ */
50
+ type BatchOnlyProvider = "azure-stt" | "openai-whisper" | "speechmatics";
51
+ /**
52
+ * WebSocket session status for streaming transcription
53
+ */
54
+ type SessionStatus = "connecting" | "open" | "closing" | "closed";
43
55
  /**
44
56
  * Provider capabilities - indicates which features each provider supports
45
57
  */
@@ -327,6 +339,39 @@ interface StreamingSession {
327
339
  createdAt: Date;
328
340
  }
329
341
 
342
+ /**
343
+ * Standardized error handling utilities for Voice Router SDK
344
+ *
345
+ * Provides consistent error codes, messages, and formatting across all adapters.
346
+ */
347
+ /**
348
+ * Standard error codes used across all providers
349
+ *
350
+ * These codes provide a consistent error taxonomy regardless of which
351
+ * provider is being used.
352
+ */
353
+ declare const ERROR_CODES: {
354
+ /** Failed to parse API response or WebSocket message */
355
+ readonly PARSE_ERROR: "PARSE_ERROR";
356
+ /** WebSocket connection error */
357
+ readonly WEBSOCKET_ERROR: "WEBSOCKET_ERROR";
358
+ /** Async transcription job did not complete within timeout */
359
+ readonly POLLING_TIMEOUT: "POLLING_TIMEOUT";
360
+ /** Transcription processing failed on provider side */
361
+ readonly TRANSCRIPTION_ERROR: "TRANSCRIPTION_ERROR";
362
+ /** Connection attempt timed out */
363
+ readonly CONNECTION_TIMEOUT: "CONNECTION_TIMEOUT";
364
+ /** Invalid input provided to API */
365
+ readonly INVALID_INPUT: "INVALID_INPUT";
366
+ /** Requested operation not supported by provider */
367
+ readonly NOT_SUPPORTED: "NOT_SUPPORTED";
368
+ /** No transcription results available */
369
+ readonly NO_RESULTS: "NO_RESULTS";
370
+ /** Unspecified or unknown error */
371
+ readonly UNKNOWN_ERROR: "UNKNOWN_ERROR";
372
+ };
373
+ type ErrorCode = (typeof ERROR_CODES)[keyof typeof ERROR_CODES];
374
+
330
375
  /**
331
376
  * Base adapter interface for transcription providers
332
377
  * All provider adapters must implement this interface
@@ -444,18 +489,373 @@ interface TranscriptionAdapter {
444
489
  declare abstract class BaseAdapter implements TranscriptionAdapter {
445
490
  abstract readonly name: TranscriptionProvider;
446
491
  abstract readonly capabilities: ProviderCapabilities;
492
+ /**
493
+ * Base URL for provider API (must be defined by subclass)
494
+ */
495
+ protected abstract baseUrl: string;
447
496
  protected config?: ProviderConfig;
448
497
  initialize(config: ProviderConfig): void;
449
498
  abstract transcribe(audio: AudioInput, options?: TranscribeOptions): Promise<UnifiedTranscriptResponse>;
450
499
  abstract getTranscript(transcriptId: string): Promise<UnifiedTranscriptResponse>;
451
500
  /**
452
- * Helper method to create error responses
501
+ * Helper method to create error responses with stack traces
502
+ *
503
+ * @param error - Error object or unknown error
504
+ * @param statusCode - Optional HTTP status code
505
+ * @param code - Optional error code (defaults to extracted or UNKNOWN_ERROR)
453
506
  */
454
- protected createErrorResponse(error: Error | unknown, statusCode?: number): UnifiedTranscriptResponse;
507
+ protected createErrorResponse(error: Error | unknown, statusCode?: number, code?: ErrorCode): UnifiedTranscriptResponse;
455
508
  /**
456
509
  * Helper method to validate configuration
457
510
  */
458
511
  protected validateConfig(): void;
512
+ /**
513
+ * Build axios config for generated API client functions
514
+ *
515
+ * @param authHeaderName - Header name for API key (e.g., "Authorization", "x-gladia-key")
516
+ * @param authHeaderValue - Optional function to format auth header value (defaults to raw API key)
517
+ * @returns Axios config object
518
+ */
519
+ protected getAxiosConfig(authHeaderName?: string, authHeaderValue?: (apiKey: string) => string): {
520
+ baseURL: string;
521
+ timeout: number;
522
+ headers: Record<string, string>;
523
+ };
524
+ /**
525
+ * Generic polling helper for async transcription jobs
526
+ *
527
+ * Polls getTranscript() until job completes or times out.
528
+ *
529
+ * @param transcriptId - Job/transcript ID to poll
530
+ * @param options - Polling configuration
531
+ * @returns Final transcription result
532
+ */
533
+ protected pollForCompletion(transcriptId: string, options?: {
534
+ maxAttempts?: number;
535
+ intervalMs?: number;
536
+ }): Promise<UnifiedTranscriptResponse>;
537
+ }
538
+
539
+ /**
540
+ * Generated by orval v7.9.0 🍺
541
+ * Do not edit manually.
542
+ * Gladia Control API
543
+ * OpenAPI spec version: 1.0
544
+ */
545
+ /**
546
+ * The encoding format of the audio stream. Supported formats:
547
+ - PCM: 8, 16, 24, and 32 bits
548
+ - A-law: 8 bits
549
+ - μ-law: 8 bits
550
+
551
+ Note: No need to add WAV headers to raw audio as the API supports both formats.
552
+ */
553
+ type StreamingSupportedEncodingEnum = (typeof StreamingSupportedEncodingEnum)[keyof typeof StreamingSupportedEncodingEnum];
554
+ declare const StreamingSupportedEncodingEnum: {
555
+ readonly "wav/pcm": "wav/pcm";
556
+ readonly "wav/alaw": "wav/alaw";
557
+ readonly "wav/ulaw": "wav/ulaw";
558
+ };
559
+
560
+ /**
561
+ * Generated by orval v7.9.0 🍺
562
+ * Do not edit manually.
563
+ * Gladia Control API
564
+ * OpenAPI spec version: 1.0
565
+ */
566
+ /**
567
+ * The sample rate of the audio stream
568
+ */
569
+ type StreamingSupportedSampleRateEnum = (typeof StreamingSupportedSampleRateEnum)[keyof typeof StreamingSupportedSampleRateEnum];
570
+ declare const StreamingSupportedSampleRateEnum: {
571
+ readonly NUMBER_8000: 8000;
572
+ readonly NUMBER_16000: 16000;
573
+ readonly NUMBER_32000: 32000;
574
+ readonly NUMBER_44100: 44100;
575
+ readonly NUMBER_48000: 48000;
576
+ };
577
+
578
+ /**
579
+ * Generated by orval v7.9.0 🍺
580
+ * Do not edit manually.
581
+ * Gladia Control API
582
+ * OpenAPI spec version: 1.0
583
+ */
584
+ /**
585
+ * The bit depth of the audio stream
586
+ */
587
+ type StreamingSupportedBitDepthEnum = (typeof StreamingSupportedBitDepthEnum)[keyof typeof StreamingSupportedBitDepthEnum];
588
+ declare const StreamingSupportedBitDepthEnum: {
589
+ readonly NUMBER_8: 8;
590
+ readonly NUMBER_16: 16;
591
+ readonly NUMBER_24: 24;
592
+ readonly NUMBER_32: 32;
593
+ };
594
+
595
+ /**
596
+ * Generated by orval v7.9.0 🍺
597
+ * Do not edit manually.
598
+ * Gladia Control API
599
+ * OpenAPI spec version: 1.0
600
+ */
601
+ /**
602
+ * Specify the language in which it will be pronounced when sound comparison occurs. Default to transcription language.
603
+ */
604
+ type TranscriptionLanguageCodeEnum = (typeof TranscriptionLanguageCodeEnum)[keyof typeof TranscriptionLanguageCodeEnum];
605
+ declare const TranscriptionLanguageCodeEnum: {
606
+ readonly af: "af";
607
+ readonly am: "am";
608
+ readonly ar: "ar";
609
+ readonly as: "as";
610
+ readonly az: "az";
611
+ readonly ba: "ba";
612
+ readonly be: "be";
613
+ readonly bg: "bg";
614
+ readonly bn: "bn";
615
+ readonly bo: "bo";
616
+ readonly br: "br";
617
+ readonly bs: "bs";
618
+ readonly ca: "ca";
619
+ readonly cs: "cs";
620
+ readonly cy: "cy";
621
+ readonly da: "da";
622
+ readonly de: "de";
623
+ readonly el: "el";
624
+ readonly en: "en";
625
+ readonly es: "es";
626
+ readonly et: "et";
627
+ readonly eu: "eu";
628
+ readonly fa: "fa";
629
+ readonly fi: "fi";
630
+ readonly fo: "fo";
631
+ readonly fr: "fr";
632
+ readonly gl: "gl";
633
+ readonly gu: "gu";
634
+ readonly ha: "ha";
635
+ readonly haw: "haw";
636
+ readonly he: "he";
637
+ readonly hi: "hi";
638
+ readonly hr: "hr";
639
+ readonly ht: "ht";
640
+ readonly hu: "hu";
641
+ readonly hy: "hy";
642
+ readonly id: "id";
643
+ readonly is: "is";
644
+ readonly it: "it";
645
+ readonly ja: "ja";
646
+ readonly jw: "jw";
647
+ readonly ka: "ka";
648
+ readonly kk: "kk";
649
+ readonly km: "km";
650
+ readonly kn: "kn";
651
+ readonly ko: "ko";
652
+ readonly la: "la";
653
+ readonly lb: "lb";
654
+ readonly ln: "ln";
655
+ readonly lo: "lo";
656
+ readonly lt: "lt";
657
+ readonly lv: "lv";
658
+ readonly mg: "mg";
659
+ readonly mi: "mi";
660
+ readonly mk: "mk";
661
+ readonly ml: "ml";
662
+ readonly mn: "mn";
663
+ readonly mr: "mr";
664
+ readonly ms: "ms";
665
+ readonly mt: "mt";
666
+ readonly my: "my";
667
+ readonly ne: "ne";
668
+ readonly nl: "nl";
669
+ readonly nn: "nn";
670
+ readonly no: "no";
671
+ readonly oc: "oc";
672
+ readonly pa: "pa";
673
+ readonly pl: "pl";
674
+ readonly ps: "ps";
675
+ readonly pt: "pt";
676
+ readonly ro: "ro";
677
+ readonly ru: "ru";
678
+ readonly sa: "sa";
679
+ readonly sd: "sd";
680
+ readonly si: "si";
681
+ readonly sk: "sk";
682
+ readonly sl: "sl";
683
+ readonly sn: "sn";
684
+ readonly so: "so";
685
+ readonly sq: "sq";
686
+ readonly sr: "sr";
687
+ readonly su: "su";
688
+ readonly sv: "sv";
689
+ readonly sw: "sw";
690
+ readonly ta: "ta";
691
+ readonly te: "te";
692
+ readonly tg: "tg";
693
+ readonly th: "th";
694
+ readonly tk: "tk";
695
+ readonly tl: "tl";
696
+ readonly tr: "tr";
697
+ readonly tt: "tt";
698
+ readonly uk: "uk";
699
+ readonly ur: "ur";
700
+ readonly uz: "uz";
701
+ readonly vi: "vi";
702
+ readonly yi: "yi";
703
+ readonly yo: "yo";
704
+ readonly zh: "zh";
705
+ };
706
+
707
+ /**
708
+ * Generated by orval v7.9.0 🍺
709
+ * Do not edit manually.
710
+ * Gladia Control API
711
+ * OpenAPI spec version: 1.0
712
+ */
713
+
714
+ interface LanguageConfig {
715
+ /** If one language is set, it will be used for the transcription. Otherwise, language will be auto-detected by the model. */
716
+ languages?: TranscriptionLanguageCodeEnum[];
717
+ /** If true, language will be auto-detected on each utterance. Otherwise, language will be auto-detected on first utterance and then used for the rest of the transcription. If one language is set, this option will be ignored. */
718
+ code_switching?: boolean;
719
+ }
720
+
721
+ /**
722
+ * Generated by orval v7.9.0 🍺
723
+ * Do not edit manually.
724
+ * Deepgram API Specification
725
+ * APIs for speech-to-text transcription, text-to-speech synthesis, language understanding, and account management.
726
+
727
+ * OpenAPI spec version: 1.0.0
728
+ */
729
+ /**
730
+ * ListenV1EncodingParameter type definition
731
+ */
732
+ /**
733
+ * ListenV1EncodingParameter type definition
734
+ */
735
+ /**
736
+ * ListenV1EncodingParameter type definition
737
+ */
738
+ /**
739
+ * ListenV1EncodingParameter type definition
740
+ */
741
+ type ListenV1EncodingParameter = typeof ListenV1EncodingParameter[keyof typeof ListenV1EncodingParameter];
742
+ declare const ListenV1EncodingParameter: {
743
+ readonly linear16: "linear16";
744
+ readonly flac: "flac";
745
+ readonly mulaw: "mulaw";
746
+ readonly opus: "opus";
747
+ readonly speex: "speex";
748
+ readonly g729: "g729";
749
+ };
750
+
751
+ /**
752
+ * Generated by orval v7.9.0 🍺
753
+ * Do not edit manually.
754
+ * Deepgram API Specification
755
+ * APIs for speech-to-text transcription, text-to-speech synthesis, language understanding, and account management.
756
+
757
+ * OpenAPI spec version: 1.0.0
758
+ */
759
+ /**
760
+ * The [BCP-47 language tag](https://tools.ietf.org/html/bcp47) that hints at the primary spoken language. Depending on the Model and API endpoint you choose only certain languages are available
761
+ */
762
+ type ListenV1LanguageParameter = string;
763
+
764
+ /**
765
+ * Provider-specific streaming option types using OpenAPI-generated schemas
766
+ *
767
+ * These types provide compile-time safety by restricting options to what
768
+ * each provider actually supports according to their OpenAPI specifications.
769
+ */
770
+
771
+ /**
772
+ * Gladia streaming options (from OpenAPI spec)
773
+ *
774
+ * Based on the generated `StreamingRequest` type from Gladia's OpenAPI spec.
775
+ * All supported encodings, sample rates, and bit depths are from the spec.
776
+ */
777
+ interface GladiaStreamingOptions {
778
+ /** Audio encoding format - only Gladia-supported formats */
779
+ encoding?: StreamingSupportedEncodingEnum;
780
+ /** Sample rate - only Gladia-supported rates */
781
+ sampleRate?: StreamingSupportedSampleRateEnum;
782
+ /** Bit depth - only Gladia-supported depths */
783
+ bitDepth?: StreamingSupportedBitDepthEnum;
784
+ /** Number of audio channels (1-8) */
785
+ channels?: number;
786
+ /** Endpointing duration in seconds (0.01-10) */
787
+ endpointing?: number;
788
+ /** Language configuration */
789
+ languageConfig?: LanguageConfig;
790
+ /** Interim/partial results */
791
+ interimResults?: boolean;
792
+ }
793
+ /**
794
+ * Deepgram streaming options (from OpenAPI spec)
795
+ *
796
+ * Based on the generated `ListenV1MediaTranscribeParams` type from Deepgram's OpenAPI spec.
797
+ * All supported options come directly from the spec.
798
+ */
799
+ interface DeepgramStreamingOptions {
800
+ /** Audio encoding format - only Deepgram-supported formats */
801
+ encoding?: ListenV1EncodingParameter;
802
+ /** Sample rate in Hz */
803
+ sampleRate?: number;
804
+ /** Language code (BCP-47 format) */
805
+ language?: ListenV1LanguageParameter;
806
+ /** Enable speaker diarization */
807
+ diarization?: boolean;
808
+ /** Enable language detection */
809
+ languageDetection?: boolean;
810
+ /** Enable punctuation */
811
+ punctuate?: boolean;
812
+ /** Enable smart formatting */
813
+ smartFormat?: boolean;
814
+ /** Enable interim results */
815
+ interimResults?: boolean;
816
+ /** Callback URL for webhooks */
817
+ webhookUrl?: string;
818
+ /** Custom vocabulary/keywords */
819
+ keywords?: string | string[];
820
+ /** Number of audio channels */
821
+ channels?: number;
822
+ }
823
+ /**
824
+ * AssemblyAI streaming options
825
+ *
826
+ * AssemblyAI's streaming API is simpler - it only requires sample_rate.
827
+ * Note: AssemblyAI only supports PCM16 encoding for streaming.
828
+ */
829
+ interface AssemblyAIStreamingOptions {
830
+ /** Sample rate in Hz (8000 or 16000 recommended) */
831
+ sampleRate?: 8000 | 16000 | 22050 | 44100 | 48000;
832
+ /** Enable word-level timestamps */
833
+ wordTimestamps?: boolean;
834
+ }
835
+ /**
836
+ * Union of all provider-specific streaming options
837
+ */
838
+ type ProviderStreamingOptions = ({
839
+ provider: "gladia";
840
+ } & GladiaStreamingOptions) | ({
841
+ provider: "deepgram";
842
+ } & DeepgramStreamingOptions) | ({
843
+ provider: "assemblyai";
844
+ } & AssemblyAIStreamingOptions);
845
+ /**
846
+ * Type-safe streaming options for a specific provider
847
+ */
848
+ type StreamingOptionsForProvider<P extends StreamingProvider> = P extends "gladia" ? GladiaStreamingOptions : P extends "deepgram" ? DeepgramStreamingOptions : P extends "assemblyai" ? AssemblyAIStreamingOptions : never;
849
+ /**
850
+ * Type-safe transcribeStream parameters for a specific provider
851
+ */
852
+ interface TranscribeStreamParams<P extends StreamingProvider> {
853
+ /** Streaming options specific to this provider */
854
+ options?: StreamingOptionsForProvider<P> & {
855
+ provider: P;
856
+ };
857
+ /** Event callbacks */
858
+ callbacks?: StreamingCallbacks;
459
859
  }
460
860
 
461
861
  /**
@@ -608,41 +1008,79 @@ declare class VoiceRouter {
608
1008
  */
609
1009
  getTranscript(transcriptId: string, provider: TranscriptionProvider): Promise<UnifiedTranscriptResponse>;
610
1010
  /**
611
- * Stream audio for real-time transcription
612
- * Only works with providers that support streaming
1011
+ * Stream audio for real-time transcription with Gladia
613
1012
  *
614
- * @param options - Streaming options including provider selection
1013
+ * @param options - Gladia-specific streaming options (type-safe from OpenAPI spec)
615
1014
  * @param callbacks - Event callbacks for transcription results
616
1015
  * @returns Promise that resolves with a StreamingSession
617
1016
  *
618
- * @example
1017
+ * @example Gladia streaming (type-safe!)
619
1018
  * ```typescript
620
- * import { VoiceRouter } from '@meeting-baas/sdk';
621
- *
622
- * const router = new VoiceRouter();
623
- * router.initialize({
624
- * gladia: { apiKey: process.env.GLADIA_KEY },
625
- * deepgram: { apiKey: process.env.DEEPGRAM_KEY }
1019
+ * const session = await router.transcribeStream({
1020
+ * provider: 'gladia',
1021
+ * encoding: 'wav/pcm', // Only Gladia encodings allowed
1022
+ * sampleRate: 16000, // ✅ Only 8000, 16000, 32000, 44100, 48000
1023
+ * channels: 1
1024
+ * }, {
1025
+ * onTranscript: (event) => console.log(event.text),
1026
+ * onError: (error) => console.error(error)
626
1027
  * });
1028
+ * ```
1029
+ */
1030
+ transcribeStream(options: GladiaStreamingOptions & {
1031
+ provider: "gladia";
1032
+ }, callbacks?: StreamingCallbacks): Promise<StreamingSession>;
1033
+ /**
1034
+ * Stream audio for real-time transcription with Deepgram
1035
+ *
1036
+ * @param options - Deepgram-specific streaming options (type-safe from OpenAPI spec)
1037
+ * @param callbacks - Event callbacks for transcription results
1038
+ * @returns Promise that resolves with a StreamingSession
627
1039
  *
1040
+ * @example Deepgram streaming (type-safe!)
1041
+ * ```typescript
628
1042
  * const session = await router.transcribeStream({
629
1043
  * provider: 'deepgram',
630
- * encoding: 'linear16',
1044
+ * encoding: 'linear16', // ✅ Only Deepgram encodings allowed
631
1045
  * sampleRate: 16000,
632
- * language: 'en'
1046
+ * language: 'en',
1047
+ * diarization: true
633
1048
  * }, {
634
- * onTranscript: (event) => console.log(event.text),
635
- * onError: (error) => console.error(error)
1049
+ * onTranscript: (event) => console.log(event.text)
636
1050
  * });
1051
+ * ```
1052
+ */
1053
+ transcribeStream(options: DeepgramStreamingOptions & {
1054
+ provider: "deepgram";
1055
+ }, callbacks?: StreamingCallbacks): Promise<StreamingSession>;
1056
+ /**
1057
+ * Stream audio for real-time transcription with AssemblyAI
637
1058
  *
638
- * // Send audio chunks
639
- * await session.sendAudio({ data: audioBuffer });
640
- * await session.close();
1059
+ * @param options - AssemblyAI-specific streaming options (type-safe from OpenAPI spec)
1060
+ * @param callbacks - Event callbacks for transcription results
1061
+ * @returns Promise that resolves with a StreamingSession
1062
+ *
1063
+ * @example AssemblyAI streaming (type-safe!)
1064
+ * ```typescript
1065
+ * const session = await router.transcribeStream({
1066
+ * provider: 'assemblyai',
1067
+ * sampleRate: 16000 // ✅ Only supported sample rates
1068
+ * }, {
1069
+ * onTranscript: (event) => console.log(event.text)
1070
+ * });
641
1071
  * ```
642
1072
  */
643
- transcribeStream(options?: StreamingOptions & {
644
- provider?: TranscriptionProvider;
1073
+ transcribeStream(options: AssemblyAIStreamingOptions & {
1074
+ provider: "assemblyai";
645
1075
  }, callbacks?: StreamingCallbacks): Promise<StreamingSession>;
1076
+ /**
1077
+ * Stream audio for real-time transcription (uses default provider)
1078
+ *
1079
+ * @param options - Generic streaming options
1080
+ * @param callbacks - Event callbacks for transcription results
1081
+ * @returns Promise that resolves with a StreamingSession
1082
+ */
1083
+ transcribeStream(options?: StreamingOptions, callbacks?: StreamingCallbacks): Promise<StreamingSession>;
646
1084
  /**
647
1085
  * Delete a transcription
648
1086
  * Not all providers support this operation
@@ -734,12 +1172,16 @@ declare function createVoiceRouter(config: VoiceRouterConfig, adapters?: Transcr
734
1172
  declare class GladiaAdapter extends BaseAdapter {
735
1173
  readonly name: "gladia";
736
1174
  readonly capabilities: ProviderCapabilities;
737
- private baseUrl;
1175
+ protected baseUrl: string;
738
1176
  /**
739
1177
  * Get axios config for generated API client functions
740
- * Configures headers and base URL
1178
+ * Configures headers and base URL using Gladia's x-gladia-key header
741
1179
  */
742
- private getAxiosConfig;
1180
+ protected getAxiosConfig(): {
1181
+ baseURL: string;
1182
+ timeout: number;
1183
+ headers: Record<string, string>;
1184
+ };
743
1185
  /**
744
1186
  * Submit audio for transcription
745
1187
  *
@@ -831,7 +1273,6 @@ declare class GladiaAdapter extends BaseAdapter {
831
1273
  /**
832
1274
  * Poll for transcription completion
833
1275
  */
834
- private pollForCompletion;
835
1276
  /**
836
1277
  * Stream audio for real-time transcription
837
1278
  *
@@ -937,13 +1378,17 @@ declare function createGladiaAdapter(config: ProviderConfig): GladiaAdapter;
937
1378
  declare class AssemblyAIAdapter extends BaseAdapter {
938
1379
  readonly name: "assemblyai";
939
1380
  readonly capabilities: ProviderCapabilities;
940
- private baseUrl;
1381
+ protected baseUrl: string;
941
1382
  private wsBaseUrl;
942
1383
  /**
943
1384
  * Get axios config for generated API client functions
944
- * Configures headers and base URL
1385
+ * Configures headers and base URL using authorization header
945
1386
  */
946
- private getAxiosConfig;
1387
+ protected getAxiosConfig(): {
1388
+ baseURL: string;
1389
+ timeout: number;
1390
+ headers: Record<string, string>;
1391
+ };
947
1392
  /**
948
1393
  * Submit audio for transcription
949
1394
  *
@@ -1036,10 +1481,6 @@ declare class AssemblyAIAdapter extends BaseAdapter {
1036
1481
  * Extract utterances from AssemblyAI response
1037
1482
  */
1038
1483
  private extractUtterances;
1039
- /**
1040
- * Poll for transcription completion
1041
- */
1042
- private pollForCompletion;
1043
1484
  /**
1044
1485
  * Stream audio for real-time transcription
1045
1486
  *
@@ -1146,7 +1587,7 @@ declare class DeepgramAdapter extends BaseAdapter {
1146
1587
  readonly name: "deepgram";
1147
1588
  readonly capabilities: ProviderCapabilities;
1148
1589
  private client?;
1149
- private baseUrl;
1590
+ protected baseUrl: string;
1150
1591
  private wsBaseUrl;
1151
1592
  initialize(config: ProviderConfig): void;
1152
1593
  /**
@@ -1356,12 +1797,20 @@ declare function createDeepgramAdapter(config: ProviderConfig): DeepgramAdapter;
1356
1797
  declare class AzureSTTAdapter extends BaseAdapter {
1357
1798
  readonly name: "azure-stt";
1358
1799
  readonly capabilities: ProviderCapabilities;
1359
- private client?;
1360
1800
  private region?;
1361
- private baseUrl?;
1801
+ protected baseUrl: string;
1362
1802
  initialize(config: ProviderConfig & {
1363
1803
  region?: string;
1364
1804
  }): void;
1805
+ /**
1806
+ * Get axios config for generated API client functions
1807
+ * Configures headers and base URL using Azure subscription key
1808
+ */
1809
+ protected getAxiosConfig(): {
1810
+ baseURL: string;
1811
+ timeout: number;
1812
+ headers: Record<string, string>;
1813
+ };
1365
1814
  /**
1366
1815
  * Submit audio for transcription
1367
1816
  *
@@ -1495,9 +1944,16 @@ declare function createAzureSTTAdapter(config: ProviderConfig & {
1495
1944
  declare class OpenAIWhisperAdapter extends BaseAdapter {
1496
1945
  readonly name: "openai-whisper";
1497
1946
  readonly capabilities: ProviderCapabilities;
1498
- private client?;
1499
- private baseUrl;
1500
- initialize(config: ProviderConfig): void;
1947
+ protected baseUrl: string;
1948
+ /**
1949
+ * Get axios config for generated API client functions
1950
+ * Configures headers and base URL using Bearer token authorization
1951
+ */
1952
+ protected getAxiosConfig(): {
1953
+ baseURL: string;
1954
+ timeout: number;
1955
+ headers: Record<string, string>;
1956
+ };
1501
1957
  /**
1502
1958
  * Submit audio for transcription
1503
1959
  *
@@ -1622,7 +2078,7 @@ declare class SpeechmaticsAdapter extends BaseAdapter {
1622
2078
  readonly name: "speechmatics";
1623
2079
  readonly capabilities: ProviderCapabilities;
1624
2080
  private client?;
1625
- private baseUrl;
2081
+ protected baseUrl: string;
1626
2082
  initialize(config: ProviderConfig): void;
1627
2083
  /**
1628
2084
  * Submit audio for transcription
@@ -3293,118 +3749,6 @@ interface NamedEntityRecognitionResult {
3293
3749
  end: number;
3294
3750
  }
3295
3751
 
3296
- /**
3297
- * Generated by orval v7.9.0 🍺
3298
- * Do not edit manually.
3299
- * Gladia Control API
3300
- * OpenAPI spec version: 1.0
3301
- */
3302
- /**
3303
- * Specify the language in which it will be pronounced when sound comparison occurs. Default to transcription language.
3304
- */
3305
- type TranscriptionLanguageCodeEnum = (typeof TranscriptionLanguageCodeEnum)[keyof typeof TranscriptionLanguageCodeEnum];
3306
- declare const TranscriptionLanguageCodeEnum: {
3307
- readonly af: "af";
3308
- readonly am: "am";
3309
- readonly ar: "ar";
3310
- readonly as: "as";
3311
- readonly az: "az";
3312
- readonly ba: "ba";
3313
- readonly be: "be";
3314
- readonly bg: "bg";
3315
- readonly bn: "bn";
3316
- readonly bo: "bo";
3317
- readonly br: "br";
3318
- readonly bs: "bs";
3319
- readonly ca: "ca";
3320
- readonly cs: "cs";
3321
- readonly cy: "cy";
3322
- readonly da: "da";
3323
- readonly de: "de";
3324
- readonly el: "el";
3325
- readonly en: "en";
3326
- readonly es: "es";
3327
- readonly et: "et";
3328
- readonly eu: "eu";
3329
- readonly fa: "fa";
3330
- readonly fi: "fi";
3331
- readonly fo: "fo";
3332
- readonly fr: "fr";
3333
- readonly gl: "gl";
3334
- readonly gu: "gu";
3335
- readonly ha: "ha";
3336
- readonly haw: "haw";
3337
- readonly he: "he";
3338
- readonly hi: "hi";
3339
- readonly hr: "hr";
3340
- readonly ht: "ht";
3341
- readonly hu: "hu";
3342
- readonly hy: "hy";
3343
- readonly id: "id";
3344
- readonly is: "is";
3345
- readonly it: "it";
3346
- readonly ja: "ja";
3347
- readonly jw: "jw";
3348
- readonly ka: "ka";
3349
- readonly kk: "kk";
3350
- readonly km: "km";
3351
- readonly kn: "kn";
3352
- readonly ko: "ko";
3353
- readonly la: "la";
3354
- readonly lb: "lb";
3355
- readonly ln: "ln";
3356
- readonly lo: "lo";
3357
- readonly lt: "lt";
3358
- readonly lv: "lv";
3359
- readonly mg: "mg";
3360
- readonly mi: "mi";
3361
- readonly mk: "mk";
3362
- readonly ml: "ml";
3363
- readonly mn: "mn";
3364
- readonly mr: "mr";
3365
- readonly ms: "ms";
3366
- readonly mt: "mt";
3367
- readonly my: "my";
3368
- readonly ne: "ne";
3369
- readonly nl: "nl";
3370
- readonly nn: "nn";
3371
- readonly no: "no";
3372
- readonly oc: "oc";
3373
- readonly pa: "pa";
3374
- readonly pl: "pl";
3375
- readonly ps: "ps";
3376
- readonly pt: "pt";
3377
- readonly ro: "ro";
3378
- readonly ru: "ru";
3379
- readonly sa: "sa";
3380
- readonly sd: "sd";
3381
- readonly si: "si";
3382
- readonly sk: "sk";
3383
- readonly sl: "sl";
3384
- readonly sn: "sn";
3385
- readonly so: "so";
3386
- readonly sq: "sq";
3387
- readonly sr: "sr";
3388
- readonly su: "su";
3389
- readonly sv: "sv";
3390
- readonly sw: "sw";
3391
- readonly ta: "ta";
3392
- readonly te: "te";
3393
- readonly tg: "tg";
3394
- readonly th: "th";
3395
- readonly tk: "tk";
3396
- readonly tl: "tl";
3397
- readonly tr: "tr";
3398
- readonly tt: "tt";
3399
- readonly uk: "uk";
3400
- readonly ur: "ur";
3401
- readonly uz: "uz";
3402
- readonly vi: "vi";
3403
- readonly yi: "yi";
3404
- readonly yo: "yo";
3405
- readonly zh: "zh";
3406
- };
3407
-
3408
3752
  /**
3409
3753
  * Generated by orval v7.9.0 🍺
3410
3754
  * Do not edit manually.
@@ -5662,20 +6006,6 @@ type InitTranscriptionRequestCustomMetadata = {
5662
6006
  [key: string]: unknown;
5663
6007
  };
5664
6008
 
5665
- /**
5666
- * Generated by orval v7.9.0 🍺
5667
- * Do not edit manually.
5668
- * Gladia Control API
5669
- * OpenAPI spec version: 1.0
5670
- */
5671
-
5672
- interface LanguageConfig {
5673
- /** If one language is set, it will be used for the transcription. Otherwise, language will be auto-detected by the model. */
5674
- languages?: TranscriptionLanguageCodeEnum[];
5675
- /** If true, language will be auto-detected on each utterance. Otherwise, language will be auto-detected on first utterance and then used for the rest of the transcription. If one language is set, this option will be ignored. */
5676
- code_switching?: boolean;
5677
- }
5678
-
5679
6009
  /**
5680
6010
  * Generated by orval v7.9.0 🍺
5681
6011
  * Do not edit manually.
@@ -6289,44 +6619,6 @@ interface RealtimeProcessingConfig {
6289
6619
  sentiment_analysis?: boolean;
6290
6620
  }
6291
6621
 
6292
- /**
6293
- * Generated by orval v7.9.0 🍺
6294
- * Do not edit manually.
6295
- * Gladia Control API
6296
- * OpenAPI spec version: 1.0
6297
- */
6298
- /**
6299
- * The bit depth of the audio stream
6300
- */
6301
- type StreamingSupportedBitDepthEnum = (typeof StreamingSupportedBitDepthEnum)[keyof typeof StreamingSupportedBitDepthEnum];
6302
- declare const StreamingSupportedBitDepthEnum: {
6303
- readonly NUMBER_8: 8;
6304
- readonly NUMBER_16: 16;
6305
- readonly NUMBER_24: 24;
6306
- readonly NUMBER_32: 32;
6307
- };
6308
-
6309
- /**
6310
- * Generated by orval v7.9.0 🍺
6311
- * Do not edit manually.
6312
- * Gladia Control API
6313
- * OpenAPI spec version: 1.0
6314
- */
6315
- /**
6316
- * The encoding format of the audio stream. Supported formats:
6317
- - PCM: 8, 16, 24, and 32 bits
6318
- - A-law: 8 bits
6319
- - μ-law: 8 bits
6320
-
6321
- Note: No need to add WAV headers to raw audio as the API supports both formats.
6322
- */
6323
- type StreamingSupportedEncodingEnum = (typeof StreamingSupportedEncodingEnum)[keyof typeof StreamingSupportedEncodingEnum];
6324
- declare const StreamingSupportedEncodingEnum: {
6325
- readonly "wav/pcm": "wav/pcm";
6326
- readonly "wav/alaw": "wav/alaw";
6327
- readonly "wav/ulaw": "wav/ulaw";
6328
- };
6329
-
6330
6622
  /**
6331
6623
  * Generated by orval v7.9.0 🍺
6332
6624
  * Do not edit manually.
@@ -6341,24 +6633,6 @@ declare const StreamingSupportedModels: {
6341
6633
  readonly "solaria-1": "solaria-1";
6342
6634
  };
6343
6635
 
6344
- /**
6345
- * Generated by orval v7.9.0 🍺
6346
- * Do not edit manually.
6347
- * Gladia Control API
6348
- * OpenAPI spec version: 1.0
6349
- */
6350
- /**
6351
- * The sample rate of the audio stream
6352
- */
6353
- type StreamingSupportedSampleRateEnum = (typeof StreamingSupportedSampleRateEnum)[keyof typeof StreamingSupportedSampleRateEnum];
6354
- declare const StreamingSupportedSampleRateEnum: {
6355
- readonly NUMBER_8000: 8000;
6356
- readonly NUMBER_16000: 16000;
6357
- readonly NUMBER_32000: 32000;
6358
- readonly NUMBER_44100: 44100;
6359
- readonly NUMBER_48000: 48000;
6360
- };
6361
-
6362
6636
  /**
6363
6637
  * Generated by orval v7.9.0 🍺
6364
6638
  * Do not edit manually.
@@ -10914,4 +11188,4 @@ declare namespace index {
10914
11188
  export { index_AudioIntelligenceModelStatus as AudioIntelligenceModelStatus, type index_AutoHighlightResult as AutoHighlightResult, type index_AutoHighlightsResult as AutoHighlightsResult, type index_BadRequestResponse as BadRequestResponse, type index_CannotAccessUploadedFileResponse as CannotAccessUploadedFileResponse, type index_Chapter as Chapter, type index_ContentSafetyLabel as ContentSafetyLabel, type index_ContentSafetyLabelResult as ContentSafetyLabelResult, type index_ContentSafetyLabelsResult as ContentSafetyLabelsResult, type index_ContentSafetyLabelsResultSeverityScoreSummary as ContentSafetyLabelsResultSeverityScoreSummary, type index_ContentSafetyLabelsResultSummary as ContentSafetyLabelsResultSummary, type index_CreateRealtimeTemporaryTokenParams as CreateRealtimeTemporaryTokenParams, type index_Entity as Entity, index_EntityType as EntityType, type Error$1 as Error, type index_GatewayTimeoutResponse as GatewayTimeoutResponse, type index_GetSubtitlesParams as GetSubtitlesParams, type index_InternalServerErrorResponse as InternalServerErrorResponse, type index_LemurActionItemsParams as LemurActionItemsParams, type index_LemurActionItemsParamsAllOf as LemurActionItemsParamsAllOf, type index_LemurActionItemsResponse as LemurActionItemsResponse, type index_LemurBaseParams as LemurBaseParams, type index_LemurBaseParamsContext as LemurBaseParamsContext, type index_LemurBaseParamsContextOneOf as LemurBaseParamsContextOneOf, type index_LemurBaseParamsFinalModel as LemurBaseParamsFinalModel, type index_LemurBaseResponse as LemurBaseResponse, index_LemurModel as LemurModel, type index_LemurQuestion as LemurQuestion, type index_LemurQuestionAnswer as LemurQuestionAnswer, type index_LemurQuestionAnswerParams as LemurQuestionAnswerParams, type index_LemurQuestionAnswerParamsAllOf as LemurQuestionAnswerParamsAllOf, type index_LemurQuestionAnswerResponse as LemurQuestionAnswerResponse, type index_LemurQuestionAnswerResponseAllOf as LemurQuestionAnswerResponseAllOf, type index_LemurQuestionContext as LemurQuestionContext, type index_LemurQuestionContextOneOf as LemurQuestionContextOneOf, type index_LemurResponse as LemurResponse, type index_LemurStringResponse as LemurStringResponse, type index_LemurStringResponseAllOf as LemurStringResponseAllOf, type index_LemurSummaryParams as LemurSummaryParams, type index_LemurSummaryParamsAllOf as LemurSummaryParamsAllOf, type index_LemurSummaryResponse as LemurSummaryResponse, type index_LemurTaskParams as LemurTaskParams, type index_LemurTaskParamsAllOf as LemurTaskParamsAllOf, type index_LemurTaskResponse as LemurTaskResponse, type index_LemurUsage as LemurUsage, type index_ListTranscriptParams as ListTranscriptParams, type index_ListTranscriptsParams as ListTranscriptsParams, type index_NotFoundResponse as NotFoundResponse, type index_PageDetails as PageDetails, type index_PageDetailsNextUrl as PageDetailsNextUrl, type index_PageDetailsPrevUrl as PageDetailsPrevUrl, type index_ParagraphsResponse as ParagraphsResponse, index_PiiPolicy as PiiPolicy, type index_PurgeLemurRequestDataResponse as PurgeLemurRequestDataResponse, type index_RealtimeTemporaryTokenResponse as RealtimeTemporaryTokenResponse, index_RedactPiiAudioQuality as RedactPiiAudioQuality, type index_RedactedAudioNotification as RedactedAudioNotification, type index_RedactedAudioResponse as RedactedAudioResponse, index_RedactedAudioStatus as RedactedAudioStatus, type index_SentencesResponse as SentencesResponse, index_Sentiment as Sentiment, type index_SentimentAnalysisResult as SentimentAnalysisResult, type index_SentimentAnalysisResultChannel as SentimentAnalysisResultChannel, type index_SentimentAnalysisResultSpeaker as SentimentAnalysisResultSpeaker, type index_ServiceUnavailableResponse as ServiceUnavailableResponse, type index_SeverityScoreSummary as SeverityScoreSummary, index_SpeechModel as SpeechModel, index_SubstitutionPolicy as SubstitutionPolicy, index_SubtitleFormat as SubtitleFormat, index_SummaryModel as SummaryModel, index_SummaryType as SummaryType, type index_Timestamp as Timestamp, type index_TooManyRequestsResponse as TooManyRequestsResponse, type index_TopicDetectionModelResult as TopicDetectionModelResult, type index_TopicDetectionModelResultSummary as TopicDetectionModelResultSummary, type index_TopicDetectionResult as TopicDetectionResult, type index_TopicDetectionResultLabelsItem as TopicDetectionResultLabelsItem, type index_Transcript as Transcript, type index_TranscriptAudioDuration as TranscriptAudioDuration, type index_TranscriptAudioEndAt as TranscriptAudioEndAt, type index_TranscriptAudioStartFrom as TranscriptAudioStartFrom, type index_TranscriptAutoChapters as TranscriptAutoChapters, type index_TranscriptAutoHighlightsResult as TranscriptAutoHighlightsResult, index_TranscriptBoostParam as TranscriptBoostParam, type index_TranscriptBoostParamProperty as TranscriptBoostParamProperty, type index_TranscriptChapters as TranscriptChapters, type index_TranscriptConfidence as TranscriptConfidence, type index_TranscriptContentSafety as TranscriptContentSafety, type index_TranscriptContentSafetyLabels as TranscriptContentSafetyLabels, type index_TranscriptCustomSpelling as TranscriptCustomSpelling, type index_TranscriptCustomSpellingProperty as TranscriptCustomSpellingProperty, type index_TranscriptCustomTopics as TranscriptCustomTopics, type index_TranscriptDisfluencies as TranscriptDisfluencies, type index_TranscriptEntities as TranscriptEntities, type index_TranscriptEntityDetection as TranscriptEntityDetection, type index_TranscriptFilterProfanity as TranscriptFilterProfanity, type index_TranscriptFormatText as TranscriptFormatText, type index_TranscriptIabCategories as TranscriptIabCategories, type index_TranscriptIabCategoriesResult as TranscriptIabCategoriesResult, index_TranscriptLanguageCode as TranscriptLanguageCode, type index_TranscriptLanguageCodeProperty as TranscriptLanguageCodeProperty, type index_TranscriptLanguageConfidence as TranscriptLanguageConfidence, type index_TranscriptLanguageConfidenceThreshold as TranscriptLanguageConfidenceThreshold, type index_TranscriptLanguageDetection as TranscriptLanguageDetection, type index_TranscriptList as TranscriptList, type index_TranscriptListItem as TranscriptListItem, type index_TranscriptListItemCompleted as TranscriptListItemCompleted, type index_TranscriptListItemError as TranscriptListItemError, type index_TranscriptMultichannel as TranscriptMultichannel, type index_TranscriptOptionalParams as TranscriptOptionalParams, type index_TranscriptOptionalParamsLanguageCode as TranscriptOptionalParamsLanguageCode, type index_TranscriptOptionalParamsLanguageCodeOneOf as TranscriptOptionalParamsLanguageCodeOneOf, type index_TranscriptOptionalParamsRedactPiiSub as TranscriptOptionalParamsRedactPiiSub, type index_TranscriptOptionalParamsSpeakersExpected as TranscriptOptionalParamsSpeakersExpected, type index_TranscriptOptionalParamsSpeechModel as TranscriptOptionalParamsSpeechModel, type index_TranscriptOptionalParamsSpeechThreshold as TranscriptOptionalParamsSpeechThreshold, type index_TranscriptOptionalParamsWebhookAuthHeaderName as TranscriptOptionalParamsWebhookAuthHeaderName, type index_TranscriptOptionalParamsWebhookAuthHeaderValue as TranscriptOptionalParamsWebhookAuthHeaderValue, type index_TranscriptParagraph as TranscriptParagraph, type index_TranscriptParams as TranscriptParams, type index_TranscriptParamsAllOf as TranscriptParamsAllOf, type index_TranscriptPunctuate as TranscriptPunctuate, type index_TranscriptReadyNotification as TranscriptReadyNotification, index_TranscriptReadyStatus as TranscriptReadyStatus, type index_TranscriptRedactPiiAudio as TranscriptRedactPiiAudio, type index_TranscriptRedactPiiAudioQuality as TranscriptRedactPiiAudioQuality, type index_TranscriptRedactPiiPolicies as TranscriptRedactPiiPolicies, type index_TranscriptSentence as TranscriptSentence, type index_TranscriptSentenceChannel as TranscriptSentenceChannel, type index_TranscriptSentenceSpeaker as TranscriptSentenceSpeaker, type index_TranscriptSentimentAnalysis as TranscriptSentimentAnalysis, type index_TranscriptSentimentAnalysisResults as TranscriptSentimentAnalysisResults, type index_TranscriptSpeakerLabels as TranscriptSpeakerLabels, type index_TranscriptSpeakersExpected as TranscriptSpeakersExpected, type index_TranscriptSpeechModel as TranscriptSpeechModel, type index_TranscriptSpeechThreshold as TranscriptSpeechThreshold, type index_TranscriptSpeedBoost as TranscriptSpeedBoost, index_TranscriptStatus as TranscriptStatus, type index_TranscriptSummary as TranscriptSummary, type index_TranscriptSummaryModel as TranscriptSummaryModel, type index_TranscriptSummaryType as TranscriptSummaryType, type index_TranscriptText as TranscriptText, type index_TranscriptThrottled as TranscriptThrottled, type index_TranscriptUtterance as TranscriptUtterance, type index_TranscriptUtteranceChannel as TranscriptUtteranceChannel, type index_TranscriptUtterances as TranscriptUtterances, type index_TranscriptWebhookAuthHeaderName as TranscriptWebhookAuthHeaderName, type index_TranscriptWebhookNotification as TranscriptWebhookNotification, type index_TranscriptWebhookStatusCode as TranscriptWebhookStatusCode, type index_TranscriptWebhookUrl as TranscriptWebhookUrl, type index_TranscriptWord as TranscriptWord, type index_TranscriptWordChannel as TranscriptWordChannel, type index_TranscriptWordSpeaker as TranscriptWordSpeaker, type index_TranscriptWords as TranscriptWords, type index_UnauthorizedResponse as UnauthorizedResponse, type index_UploadedFile as UploadedFile, type index_WordSearchMatch as WordSearchMatch, type index_WordSearchParams as WordSearchParams, type index_WordSearchResponse as WordSearchResponse, type index_WordSearchTimestamp as WordSearchTimestamp };
10915
11189
  }
10916
11190
 
10917
- export { AssemblyAIAdapter, index as AssemblyAITypes, AssemblyAIWebhookHandler, type AudioChunk, type AudioInput, AzureSTTAdapter, AzureWebhookHandler, BaseAdapter, BaseWebhookHandler, DeepgramAdapter, DeepgramWebhookHandler, GladiaAdapter, index$1 as GladiaTypes, GladiaWebhookHandler, OpenAIWhisperAdapter, type ProviderCapabilities, type ProviderConfig, type Speaker, SpeechmaticsAdapter, SpeechmaticsWebhookHandler, type StreamEvent, type StreamEventType, type StreamingCallbacks, type StreamingOptions, type StreamingSession, type TranscribeOptions, type TranscriptionAdapter, type TranscriptionProvider, type TranscriptionStatus, type UnifiedTranscriptResponse, type UnifiedWebhookEvent, type Utterance, VoiceRouter, type VoiceRouterConfig, type WebhookEventType, WebhookRouter, type WebhookRouterOptions, type WebhookRouterResult, type WebhookValidation, type WebhookVerificationOptions, type Word, createAssemblyAIAdapter, createAssemblyAIWebhookHandler, createAzureSTTAdapter, createAzureWebhookHandler, createDeepgramAdapter, createDeepgramWebhookHandler, createGladiaAdapter, createGladiaWebhookHandler, createOpenAIWhisperAdapter, createSpeechmaticsAdapter, createVoiceRouter, createWebhookRouter };
11191
+ export { AssemblyAIAdapter, type AssemblyAIStreamingOptions, index as AssemblyAITypes, AssemblyAIWebhookHandler, type AudioChunk, type AudioInput, AzureSTTAdapter, AzureWebhookHandler, BaseAdapter, BaseWebhookHandler, type BatchOnlyProvider, DeepgramAdapter, type DeepgramStreamingOptions, DeepgramWebhookHandler, GladiaAdapter, type GladiaStreamingOptions, index$1 as GladiaTypes, GladiaWebhookHandler, OpenAIWhisperAdapter, type ProviderCapabilities, type ProviderConfig, type ProviderStreamingOptions, type SessionStatus, type Speaker, SpeechmaticsAdapter, SpeechmaticsWebhookHandler, type StreamEvent, type StreamEventType, type StreamingCallbacks, type StreamingOptions, type StreamingOptionsForProvider, type StreamingProvider, type StreamingSession, type TranscribeOptions, type TranscribeStreamParams, type TranscriptionAdapter, type TranscriptionProvider, type TranscriptionStatus, type UnifiedTranscriptResponse, type UnifiedWebhookEvent, type Utterance, VoiceRouter, type VoiceRouterConfig, type WebhookEventType, WebhookRouter, type WebhookRouterOptions, type WebhookRouterResult, type WebhookValidation, type WebhookVerificationOptions, type Word, createAssemblyAIAdapter, createAssemblyAIWebhookHandler, createAzureSTTAdapter, createAzureWebhookHandler, createDeepgramAdapter, createDeepgramWebhookHandler, createGladiaAdapter, createGladiaWebhookHandler, createOpenAIWhisperAdapter, createSpeechmaticsAdapter, createVoiceRouter, createWebhookRouter };