import { z } from 'zod';
export declare const BroadcastTypes: z.ZodEnum<["Announcement", "Survey", "SMS", "SMSAndAnnouncement", "SMSAndSurvey", "SMSOrAnnouncement", "SMSOrSurvey"]>;
export declare const VoiceOptions: z.ZodEnum<["Ivy", "Joanna", "Kendra", "Kimberly", "Salli", "Joey", "Justin", "Kevin", "Matthew"]>;
export type VoiceOption = z.infer<typeof VoiceOptions>;
export declare const VoiceSchema: z.ZodObject<{
    TextToSpeech: z.ZodBoolean;
    Text: z.ZodString;
    Voice: z.ZodEnum<["Ivy", "Joanna", "Kendra", "Kimberly", "Salli", "Joey", "Justin", "Kevin", "Matthew"]>;
}, "strip", z.ZodTypeAny, {
    Voice: "Ivy" | "Joanna" | "Kendra" | "Kimberly" | "Salli" | "Joey" | "Justin" | "Kevin" | "Matthew";
    Text: string;
    TextToSpeech: boolean;
}, {
    Voice: "Ivy" | "Joanna" | "Kendra" | "Kimberly" | "Salli" | "Joey" | "Justin" | "Kevin" | "Matthew";
    Text: string;
    TextToSpeech: boolean;
}>;
export declare const TransferSchema: z.ZodObject<{
    transferNumber: z.ZodString;
    transferMessage: z.ZodString;
    transferDigit: z.ZodString;
    transferIntroduction: z.ZodString;
}, "strip", z.ZodTypeAny, {
    transferNumber: string;
    transferMessage: string;
    transferDigit: string;
    transferIntroduction: string;
}, {
    transferNumber: string;
    transferMessage: string;
    transferDigit: string;
    transferIntroduction: string;
}>;
export type TransferDetails = z.infer<typeof TransferSchema>;
export declare const AudioType: z.ZodEnum<["NeverUsed", "Announcement", "SurveyLiveAnswer", "SurveyVoiceMail", "AnnouncementVoiceMail", "TransferAndConnect"]>;
export declare const AudioSchema: z.ZodObject<{
    Uri: z.ZodString;
    AudioID: z.ZodString;
    Name: z.ZodString;
    Description: z.ZodString;
    Favorite: z.ZodBoolean;
    Shared: z.ZodBoolean;
    Length: z.ZodNumber;
    MessageType: z.ZodEnum<["NeverUsed", "Announcement", "SurveyLiveAnswer", "SurveyVoiceMail", "AnnouncementVoiceMail", "TransferAndConnect"]>;
    ReadOnly: z.ZodBoolean;
    Created: z.ZodString;
    LastUsed: z.ZodString;
    TextToSpeech: z.ZodBoolean;
    Text: z.ZodString;
    Voice: z.ZodObject<{
        TextToSpeech: z.ZodBoolean;
        Text: z.ZodString;
        Voice: z.ZodEnum<["Ivy", "Joanna", "Kendra", "Kimberly", "Salli", "Joey", "Justin", "Kevin", "Matthew"]>;
    }, "strip", z.ZodTypeAny, {
        Voice: "Ivy" | "Joanna" | "Kendra" | "Kimberly" | "Salli" | "Joey" | "Justin" | "Kevin" | "Matthew";
        Text: string;
        TextToSpeech: boolean;
    }, {
        Voice: "Ivy" | "Joanna" | "Kendra" | "Kimberly" | "Salli" | "Joey" | "Justin" | "Kevin" | "Matthew";
        Text: string;
        TextToSpeech: boolean;
    }>;
}, "strip", z.ZodTypeAny, {
    Voice: {
        Voice: "Ivy" | "Joanna" | "Kendra" | "Kimberly" | "Salli" | "Joey" | "Justin" | "Kevin" | "Matthew";
        Text: string;
        TextToSpeech: boolean;
    };
    Description: string;
    Created: string;
    Text: string;
    Name: string;
    TextToSpeech: boolean;
    Uri: string;
    AudioID: string;
    Favorite: boolean;
    Shared: boolean;
    Length: number;
    MessageType: "Announcement" | "NeverUsed" | "SurveyLiveAnswer" | "SurveyVoiceMail" | "AnnouncementVoiceMail" | "TransferAndConnect";
    ReadOnly: boolean;
    LastUsed: string;
}, {
    Voice: {
        Voice: "Ivy" | "Joanna" | "Kendra" | "Kimberly" | "Salli" | "Joey" | "Justin" | "Kevin" | "Matthew";
        Text: string;
        TextToSpeech: boolean;
    };
    Description: string;
    Created: string;
    Text: string;
    Name: string;
    TextToSpeech: boolean;
    Uri: string;
    AudioID: string;
    Favorite: boolean;
    Shared: boolean;
    Length: number;
    MessageType: "Announcement" | "NeverUsed" | "SurveyLiveAnswer" | "SurveyVoiceMail" | "AnnouncementVoiceMail" | "TransferAndConnect";
    ReadOnly: boolean;
    LastUsed: string;
}>;
export type AudioDetails = z.infer<typeof AudioSchema>;
export interface Broadcast {
    Uri: string;
    UriBroadcastDetails: string;
    BroadcastID: number;
    BroadcastName: string;
    BroadcastType: z.infer<typeof BroadcastTypes>;
    BroadcastStatus: string;
    BroadcastStatusCategory: string;
    CreatedDate: string;
    StartDate: string;
    CompletedDate: string;
    CallerID: string | null;
    CreditsUsed: number;
    PhoneNumberCount: number;
    TotalCompleted: number;
    User: Record<string, unknown>;
    TransferAndConnect?: z.infer<typeof TransferSchema> | null;
    Audio?: z.infer<typeof AudioSchema> | null;
    AudioVM?: z.infer<typeof AudioSchema> | null;
    RetryTimes?: number;
    CallThrottle?: number;
    LivePersonTotal?: number;
    AnsweringMachineTotal?: number;
    BusyNoAnswerTotal?: number;
    InvalidNumberTotal?: number;
    SurveyResponseTotal?: number;
    TransferTotal?: number;
    BroadcastSurveyResponse?: Record<string, unknown>;
    MaxMessageLength?: number;
    MessageRecordingInstruction?: string;
    EstimatedDuration?: number;
    EstimatedCompletion?: number;
    ExcludedDaysIgnored?: boolean;
    CallingWindowIgnored?: boolean;
    NotEnoughTimeToComplete?: boolean;
    TextMessage?: string;
    DeliveredTexts?: number;
    NotDeliveredTexts?: number;
    InvalidTextCount?: number;
    FailedTextTotal?: number;
    TextReplies?: number;
    UnreadTextReplies?: number;
    UnreadConversationReplies?: number;
    NotRepliedTotal?: number;
    TextOptedOut?: number;
    TextNumberID?: number;
    TextPhoneNumber?: string;
    TextBroadcastID?: string;
    FailedContacts?: Array<Record<string, unknown>>;
}
export interface TextEmAllError {
    Message: string;
    ErrorType: string;
    ErrorCode: number;
}
