import { ConferenceMemberList } from './types'; declare type FreeSwitchCommon = Readonly<{ "Event-Date-Timestamp": string; }>; declare type FreeSwitchChannel = FreeSwitchCommon & Readonly<{ "Channel-Name": string; "Unique-ID": string; }>; export declare type FreeSwitchCreateAnswerDestroyCommon = FreeSwitchChannel & Readonly<{ "Caller-Caller-ID-Number": string; "Caller-Callee-ID-Number"?: string; "Caller-Destination-Number"?: string; "Channel-Presence-ID"?: string; "Other-Leg-Channel-Name"?: string; "Other-Leg-Unique-ID"?: string; "Other-Leg-Caller-ID-Number"?: string; "Other-Leg-Callee-ID-Number"?: string; variable_att_xfer_digits?: string; variable_AgentID?: string; variable_ori_ani?: string; variable_cc_member_session_uuid?: string; variable_cc_queue?: string; variable_video_possible?: string; variable_effect_caller_uuid?: string; variable_effect_role?: string; }>; export declare type FreeSwitchCreateEvent = FreeSwitchCreateAnswerDestroyCommon & Readonly<{ "Event-Name": "CHANNEL_CREATE"; "Caller-Direction": string; variable_choice?: string; "trunk_number": string; variable_agent_group?: string; att_xfer_group?: string; customer_uuid?: string; "Other-Leg-Direction"?: string; "Other-Leg-Logical-Direction"?: string; "Other-Leg-Destination-Number"?: string; "Caller-Logical-Direction"?: string; }>; export declare type FreeSwitchAnswerEvent = FreeSwitchCreateAnswerDestroyCommon & Readonly<{ "Event-Name": "CHANNEL_ANSWER"; "Channel-State": string; "Call-Direction": string; "Channel-Call-UUID": string; "Caller-Channel-Created-Time": string; variable_conference_name?: string; variable_dialed_user?: string; custom_fields: Record; "trunk_number": string; }>; export declare type FreeSwitchDestroyEvent = FreeSwitchCreateAnswerDestroyCommon & Readonly<{ "Event-Name": "CHANNEL_DESTROY"; "Channel-State": string; "Caller-Transfer-Source": string; "Caller-RDNIS": string; "Other-Leg-Destination-Number"?: string; "Caller-Orig-Caller-ID-Number": string; "Caller-Profile-Created-Time": string; "Caller-Channel-Created-Time": string; "Caller-Channel-Answered-Time": string; "Caller-Channel-Hangup-Time": string; "Caller-Channel-Bridged-Time": string; "Caller-Channel-Progress-Media-Time": string; "Other-Leg-Profile-Created-Time": string; "Other-Leg-Channel-Created-Time": string; "Other-Leg-Channel-Progress-Media-Time": string; variable_hangup_cause: string; variable_billsec: string; variable_cc_cancel_reason?: string; variable_remote_audio_ip?: string; variable_start_stamp?: string; variable_end_stamp?: string; variable_agent_group?: string; variable_transfer_history?: string; variable_sip_term_status?: string; variable_sip_invite_failure_status?: string; variable_call_timeout?: string; variable_cc_agent?: string; variable_cc_tracked_agent?: string; "Caller-Logical-Direction"?: string; "Caller-Caller-ID-Name"?: string; "Caller-Callee-ID-Name"?: string; "Hangup-Cause": string; }>; export declare type FreeSwitchHoldEvent = FreeSwitchChannel & { "Event-Name": "CHANNEL_HOLD"; "Channel-Presence-ID": string; "variable_agent_group": string; "variable_cc_tracked_agent": string; }; export declare type FreeSwitchDetectedSpeechEvent = FreeSwitchChannel & { "Event-Name": "DETECTED_SPEECH"; "Other-Leg-Channel-Name": string; "Other-Leg-Unique-ID": string; "Speech-Type": string; "ASR-Completion-Cause": string; _body: string; }; export declare type FreeSwitchUnHoldEvent = FreeSwitchChannel & { "Event-Name": "CHANNEL_UNHOLD"; }; export declare type FreeSwitchTTSEndEvent = FreeSwitchChannel & { "Event-Name": "CHANNEL_EXECUTE_COMPLETE"; "Other-Leg-Channel-Name": string; "Other-Leg-Unique-ID": string; "Application": string; }; export declare type FreeSwitchAudioPlayEndEvent = FreeSwitchChannel & { "Event-Name": "CHANNEL_EXECUTE_COMPLETE"; "Other-Leg-Channel-Name": string; "Other-Leg-Unique-ID": string; "Application": string; "Application-Data": string; }; export declare type FreeSwitchDTMFReceiveEvent = FreeSwitchChannel & { "Event-Name": "DTMF"; "DTMF-Digit": string; "Other-Leg-Channel-Name": string; "Other-Leg-Unique-ID": string; "Caller-Destination-Number": string; }; export declare type FreeSwitchChannelStateEvent = FreeSwitchChannel & { "Event-Name": "CHANNEL_STATE"; "Channel-State": string; "Answer-State": string; "Caller-Direction": string; "Caller-Logical-Direction": string; "Caller-Caller-ID-Name": string; "Caller-Caller-ID-Number": string; "Caller-Callee-ID-Name": string; "Caller-Callee-ID-Number": string; "Other-Leg-Direction": string; "Other-Leg-Logical-Direction": string; "Other-Leg-Caller-ID-Name": string; "Other-Leg-Caller-ID-Number": string; "Other-Leg-Callee-ID-Name": string; "Other-Leg-Callee-ID-Number": string; }; export declare type FreeSwitchJobEvent = FreeSwitchCommon & Readonly<{ "Event-Name": "BACKGROUND_JOB"; "Job-Command": string; "Job-Command-Arg": string; "Job-Command-Other-Arg"?: string; "Event-Calling-File"?: string; _body?: string; }>; export declare const FS_AVAILABLE = "Available"; export declare const FS_AVAILABLE_ON_DEMAND = "Available (On Demand)"; export declare const FS_ON_BREAK = "On Break"; export declare const FS_LOGOUT = "Logged Out"; declare const all_fs_status: readonly ["Available", "Available (On Demand)", "On Break", "Logged Out"]; export declare type EnumFreeSwitchAgentStatus = typeof all_fs_status[number]; export declare type FreeSwitchCustomEvent = FreeSwitchCommon & Readonly<{ "Event-Name": "CUSTOM"; "Event-Subclass": string; "CC-Action"?: string; "CC-Agent"?: string; "CC-Agent-State"?: string; "CC-Agent-Status"?: EnumFreeSwitchAgentStatus; "CC-Queue"?: string; "CC-Count"?: string; "CC-Hangup-Cause"?: string; "CC-Member-Session-UUID"?: string; "CC-Member-CID-Number"?: string; Action?: string; "Channel-Name"?: string; "Unique-ID"?: string; "Channel-Presence-ID"?: string; "Conference-Name"?: string; "Member-ID"?: string; "Caller-Transfer-Source"?: string; "Member-List"?: ConferenceMemberList; presence_id?: string; status?: string; }>; export declare type FreeSwitchHeartbeatEvent = FreeSwitchCommon & Readonly<{ "Event-Name": "HEARTBEAT"; }>; export declare type FreeSwitchAPIEvent = FreeSwitchCommon & Readonly<{ "Event-Name": "API"; "API-Command": string; "API-Command-Argument": string; }>; export declare type FreeSwitchOutGoingEvent = FreeSwitchCommon & Readonly<{ "Event-Name": "CHANNEL_OUTGOING"; "Channel-State": string; "Channel-Call-State": string; "Answer-State": string; "Caller-Direction": string; "Caller-Caller-ID-Number": string; }>; declare type FreeSwitchCallControlEvent = FreeSwitchCreateEvent | FreeSwitchAnswerEvent | FreeSwitchDestroyEvent | FreeSwitchHoldEvent | FreeSwitchTTSEndEvent | FreeSwitchAudioPlayEndEvent | FreeSwitchDTMFReceiveEvent | FreeSwitchUnHoldEvent; export declare type FreeSwitchEventConsultFail = FreeSwitchCustomEvent; export declare type FreeSwitchEventStatusChange = FreeSwitchJobEvent; export declare type FreeSwitchEventQueueCount = FreeSwitchCustomEvent; export declare type FreeSwitchEvent = FreeSwitchCallControlEvent | FreeSwitchJobEvent | FreeSwitchCustomEvent | FreeSwitchDetectedSpeechEvent | FreeSwitchHeartbeatEvent | FreeSwitchAPIEvent | FreeSwitchOutGoingEvent | FreeSwitchChannelStateEvent; export declare const prop: , K extends keyof T>(obj: Readonly, key: K) => string; export declare const isFreeSwitchCreateEvent: (e: FreeSwitchEvent) => e is FreeSwitchCreateEvent; export declare const isFreeSwitchAnswerEvent: (e: FreeSwitchEvent) => e is FreeSwitchAnswerEvent; export declare const isFreeSwitchHoldEvent: (e: FreeSwitchEvent) => e is FreeSwitchHoldEvent; export declare const isFreeSwitchUnHoldEvent: (e: FreeSwitchEvent) => e is FreeSwitchUnHoldEvent; export declare const isFreeSwitchConsultEvent: (e: FreeSwitchEvent) => e is FreeSwitchJobEvent; export declare const isFreeSwitchConsultFailEvent: (e: FreeSwitchEvent) => e is FreeSwitchCustomEvent; export declare const isFreeSwitchTransferEvent: (e: FreeSwitchEvent) => e is FreeSwitchJobEvent; export declare const isFreeSwitchThreePartiesEvent: (e: FreeSwitchEvent) => e is FreeSwitchJobEvent; export declare const isFreeSwitchDestroyEvent: (e: FreeSwitchEvent) => e is FreeSwitchDestroyEvent; export declare const isCallControlEvent: (e: FreeSwitchEvent) => boolean; export declare const isFreeSwitchAgentOutboundCustomerOutGoingEvent: (e: FreeSwitchEvent) => e is FreeSwitchOutGoingEvent; export declare const isFreeSwitchOutgoingEvent: (e: FreeSwitchEvent) => e is FreeSwitchOutGoingEvent; export declare const isFreeSwitchAgentOutboundCustomerDialEvent: (e: FreeSwitchEvent) => e is FreeSwitchAPIEvent; export declare const isFreeSwitchAPIEvent: (e: FreeSwitchEvent) => e is FreeSwitchAPIEvent; export declare const isFreeSwitchJobEvent: (e: FreeSwitchEvent) => e is FreeSwitchJobEvent; export declare const isFreeSwitchCustomEvent: (e: FreeSwitchEvent) => e is FreeSwitchCustomEvent; export declare const isFSAgentLoginEvent: (e: FreeSwitchEvent) => e is FreeSwitchAPIEvent; export declare const isFSAgentLogoutEvent: (e: FreeSwitchEvent) => e is FreeSwitchAPIEvent; export declare const isFreeSwitchLoginFailEvent: (e: FreeSwitchEvent) => e is FreeSwitchJobEvent; export declare const isFreeSwitchStatusChangeEvent: (e: FreeSwitchEvent) => e is FreeSwitchJobEvent; export declare const isFreeSwitchEvaluationEvent: (e: FreeSwitchEvent, xml: string) => e is FreeSwitchJobEvent; export declare const isFreeSwitchCheckRegisteredEvent: (e: FreeSwitchEvent) => e is FreeSwitchJobEvent; export declare const isFreeSwitchRegisterEvent: (e: FreeSwitchEvent) => e is FreeSwitchCustomEvent; export declare const isFreeSwitchUnRegisterEvent: (e: FreeSwitchEvent) => e is FreeSwitchCustomEvent; export declare const isFreeSwitchInQueueCallEvent: (e: FreeSwitchEvent) => e is FreeSwitchCustomEvent; export declare const isFreeSwitchDetectSpeechEvent: (e: FreeSwitchEvent) => e is FreeSwitchDetectedSpeechEvent; export declare const isFreeSwitchQueueCountEvent: (e: FreeSwitchEvent) => e is FreeSwitchCustomEvent; export declare const isFreeSwitchEnterQueueEvent: (e: FreeSwitchEvent) => e is FreeSwitchCustomEvent; export declare const isFreeSwitchDispatchQueueEvent: (e: FreeSwitchEvent) => e is FreeSwitchCustomEvent; export declare const isFreeSwitchLeaveQueueEvent: (e: FreeSwitchEvent) => e is FreeSwitchCustomEvent; export declare const isFreeSwitchConferenceDialEvent: (e: FreeSwitchEvent) => e is FreeSwitchJobEvent; export declare const isFreeSwitchAddConferenceMemberEvent: (e: FreeSwitchEvent) => e is FreeSwitchCustomEvent; export declare const isFreeSwitchLeaveConferenceEvent: (e: FreeSwitchEvent) => e is FreeSwitchCustomEvent; export declare const isFreeSwitchTTSEndEvent: (e: FreeSwitchEvent) => e is FreeSwitchTTSEndEvent; export declare const isFreeSwitchAudioPlayEndEvent: (e: FreeSwitchEvent) => e is FreeSwitchAudioPlayEndEvent; export declare const isFreeSwitchDTMFReceiveEvent: (e: FreeSwitchEvent) => e is FreeSwitchDTMFReceiveEvent; export declare const isFreeSwitchChannelStateEvent: (e: FreeSwitchEvent) => e is FreeSwitchChannelStateEvent; export declare const isFreeSwitchSnapShortEvent: (e: FreeSwitchEvent) => e is FreeSwitchJobEvent; export declare const isFreeSwitchMonitorForceWLCEvent: (e: FreeSwitchEvent) => e is FreeSwitchJobEvent; export {};