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

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

export type GetToolsResponse =
    | Vapi.GetToolsResponse.ApiRequest
    | Vapi.GetToolsResponse.Code
    | Vapi.GetToolsResponse.Dtmf
    | Vapi.GetToolsResponse.EndCall
    | Vapi.GetToolsResponse.Function
    | Vapi.GetToolsResponse.TransferCall
    | Vapi.GetToolsResponse.Handoff
    | Vapi.GetToolsResponse.Bash
    | Vapi.GetToolsResponse.Computer
    | Vapi.GetToolsResponse.TextEditor
    | Vapi.GetToolsResponse.Query
    | Vapi.GetToolsResponse.GoogleCalendarEventCreate
    | Vapi.GetToolsResponse.GoogleSheetsRowAppend
    | Vapi.GetToolsResponse.GoogleCalendarAvailabilityCheck
    | Vapi.GetToolsResponse.SlackMessageSend
    | Vapi.GetToolsResponse.Sms
    | Vapi.GetToolsResponse.Mcp
    | Vapi.GetToolsResponse.GohighlevelCalendarAvailabilityCheck
    | Vapi.GetToolsResponse.GohighlevelCalendarEventCreate
    | Vapi.GetToolsResponse.GohighlevelContactCreate
    | Vapi.GetToolsResponse.GohighlevelContactGet
    | Vapi.GetToolsResponse.SipRequest
    | Vapi.GetToolsResponse.Voicemail;

export namespace GetToolsResponse {
    export interface ApiRequest extends Vapi.ApiRequestTool {
        type: "apiRequest";
    }

    export interface Code extends Vapi.CodeTool {
        type: "code";
    }

    export interface Dtmf extends Vapi.DtmfTool {
        type: "dtmf";
    }

    export interface EndCall extends Vapi.EndCallTool {
        type: "endCall";
    }

    export interface Function extends Vapi.FunctionTool {
        type: "function";
    }

    export interface TransferCall extends Vapi.TransferCallTool {
        type: "transferCall";
    }

    export interface Handoff extends Vapi.HandoffTool {
        type: "handoff";
    }

    export interface Bash extends Vapi.BashTool {
        type: "bash";
    }

    export interface Computer extends Vapi.ComputerTool {
        type: "computer";
    }

    export interface TextEditor extends Vapi.TextEditorTool {
        type: "textEditor";
    }

    export interface Query extends Vapi.QueryTool {
        type: "query";
    }

    export interface GoogleCalendarEventCreate extends Vapi.GoogleCalendarCreateEventTool {
        type: "google.calendar.event.create";
    }

    export interface GoogleSheetsRowAppend extends Vapi.GoogleSheetsRowAppendTool {
        type: "google.sheets.row.append";
    }

    export interface GoogleCalendarAvailabilityCheck extends Vapi.GoogleCalendarCheckAvailabilityTool {
        type: "google.calendar.availability.check";
    }

    export interface SlackMessageSend extends Vapi.SlackSendMessageTool {
        type: "slack.message.send";
    }

    export interface Sms extends Vapi.SmsTool {
        type: "sms";
    }

    export interface Mcp extends Vapi.McpTool {
        type: "mcp";
    }

    export interface GohighlevelCalendarAvailabilityCheck extends Vapi.GoHighLevelCalendarAvailabilityTool {
        type: "gohighlevel.calendar.availability.check";
    }

    export interface GohighlevelCalendarEventCreate extends Vapi.GoHighLevelCalendarEventCreateTool {
        type: "gohighlevel.calendar.event.create";
    }

    export interface GohighlevelContactCreate extends Vapi.GoHighLevelContactCreateTool {
        type: "gohighlevel.contact.create";
    }

    export interface GohighlevelContactGet extends Vapi.GoHighLevelContactGetTool {
        type: "gohighlevel.contact.get";
    }

    export interface SipRequest extends Vapi.SipRequestTool {
        type: "sipRequest";
    }

    export interface Voicemail extends Vapi.VoicemailTool {
        type: "voicemail";
    }
}
