// This file was auto-generated by Fern from our API Definition.

import type * as Vapi from "../index.js";

/**
 * This is the transcriber for the workflow.
 *
 * This can be overridden at node level using `nodes[n].transcriber`.
 */
export type WorkflowUserEditableTranscriber =
    | Vapi.WorkflowUserEditableTranscriber.AssemblyAi
    | Vapi.WorkflowUserEditableTranscriber.Azure
    | Vapi.WorkflowUserEditableTranscriber.CustomTranscriber
    | Vapi.WorkflowUserEditableTranscriber.Deepgram
    | Vapi.WorkflowUserEditableTranscriber._11Labs
    | Vapi.WorkflowUserEditableTranscriber.Gladia
    | Vapi.WorkflowUserEditableTranscriber.Google
    | Vapi.WorkflowUserEditableTranscriber.Speechmatics
    | Vapi.WorkflowUserEditableTranscriber.Talkscriber
    | Vapi.WorkflowUserEditableTranscriber.Openai
    | Vapi.WorkflowUserEditableTranscriber.Cartesia
    | Vapi.WorkflowUserEditableTranscriber.Soniox;

export namespace WorkflowUserEditableTranscriber {
    export interface AssemblyAi extends Vapi.AssemblyAiTranscriber {
        provider: "assembly-ai";
    }

    export interface Azure extends Vapi.AzureSpeechTranscriber {
        provider: "azure";
    }

    export interface CustomTranscriber extends Vapi.CustomTranscriber {
        provider: "custom-transcriber";
    }

    export interface Deepgram extends Vapi.DeepgramTranscriber {
        provider: "deepgram";
    }

    export interface _11Labs extends Vapi.ElevenLabsTranscriber {
        provider: "11labs";
    }

    export interface Gladia extends Vapi.GladiaTranscriber {
        provider: "gladia";
    }

    export interface Google extends Vapi.GoogleTranscriber {
        provider: "google";
    }

    export interface Speechmatics extends Vapi.SpeechmaticsTranscriber {
        provider: "speechmatics";
    }

    export interface Talkscriber extends Vapi.TalkscriberTranscriber {
        provider: "talkscriber";
    }

    export interface Openai extends Vapi.OpenAiTranscriber {
        provider: "openai";
    }

    export interface Cartesia extends Vapi.CartesiaTranscriber {
        provider: "cartesia";
    }

    export interface Soniox extends Vapi.SonioxTranscriber {
        provider: "soniox";
    }
}
