import { CallStatus } from "./CallStatus"; import { CameraOrientation } from "./options/CameraOrientation"; import { VideoFilter } from "./options/filters/video/VideoFilter"; import { AudioFilter } from "./options/filters/audio/AudioFilter"; import { CustomData } from "./CustomDataType"; import { CallsApiEvent } from "./event/CallsApiEvents"; import { CallsEventHandlers } from "./event/CallsEventHandlers"; import { ApplicationCallOptions } from "./options/ApplicationCallOptions"; import { LocalCapturer } from "./LocalCapturer"; import { ServerCapturer } from "./ServerCapturer"; import { DataChannel } from "./DataChannel"; import { AudioQualityMode } from "./options/AudioQualityMode"; import { DisplayOptions } from "./options/DisplayOptions"; import { RecordingState } from "./RecordingState"; export interface ApplicationCall { id(): string; options(): ApplicationCallOptions; customData(): CustomData; status(): CallStatus; duration(): number; startTime(): Date; establishTime(): Date; endTime(): Date; callsConfigurationId(): string; mute(shouldMute: boolean): Promise; muted(): boolean; pauseIncomingVideo(): void; resumeIncomingVideo(): void; sendDTMF(dtmf: string): Promise; stopVideo(): Promise; cameraVideo(cameraVideo: boolean): Promise; hasCameraVideo(): boolean; screenShare(screenShare: boolean): Promise; startScreenShare(displayOptions?: DisplayOptions): Promise; stopScreenShare(): Promise; hasScreenShare(): boolean; setAudioInputDevice(deviceId: string): Promise; setVideoInputDevice(deviceId: string): Promise; audioFilter(): AudioFilter; setAudioFilter(audioFilter: AudioFilter): Promise; clearAudioFilter(): Promise; videoFilter(): VideoFilter; setVideoFilter(videoFilter: VideoFilter): Promise; clearVideoFilter(): Promise; cameraOrientation(): CameraOrientation; setCameraOrientation(cameraOrientation: CameraOrientation): Promise; localCapturer(): LocalCapturer; serverCapturer(): ServerCapturer; dataChannel(): DataChannel; setAudioQualityMode(audioQualityMode: AudioQualityMode): void; audioQualityMode(): AudioQualityMode; hangup(): void; recordingState(): RecordingState; on(name: CallsApiEvent.RINGING, handler: CallsEventHandlers.Ringing): void; on(name: CallsApiEvent.EARLY_MEDIA, handler: CallsEventHandlers.EarlyMedia): void; on(name: CallsApiEvent.ESTABLISHED, handler: CallsEventHandlers.Established): void; on(name: CallsApiEvent.HANGUP, handler: CallsEventHandlers.Hangup): void; on(name: CallsApiEvent.ERROR, handler: CallsEventHandlers.Error): void; on(name: CallsApiEvent.CAMERA_VIDEO_ADDED, handler: CallsEventHandlers.CameraVideoAdded): void; on(name: CallsApiEvent.CAMERA_VIDEO_UPDATED, handler: CallsEventHandlers.CameraVideoUpdated): void; on(name: CallsApiEvent.CAMERA_VIDEO_REMOVED, handler: CallsEventHandlers.CameraVideoRemoved): void; on(name: CallsApiEvent.SCREEN_SHARE_ADDED, handler: CallsEventHandlers.ScreenShareAdded): void; on(name: CallsApiEvent.SCREEN_SHARE_REMOVED, handler: CallsEventHandlers.ScreenShareRemoved): void; on(name: CallsApiEvent.CONFERENCE_JOINED, handler: CallsEventHandlers.ConferenceJoined): void; on(name: CallsApiEvent.CONFERENCE_LEFT, handler: CallsEventHandlers.ConferenceLeft): void; on(name: CallsApiEvent.PARTICIPANT_JOINING, handler: CallsEventHandlers.ParticipantJoining): void; on(name: CallsApiEvent.PARTICIPANT_JOINED, handler: CallsEventHandlers.ParticipantJoined): void; on(name: CallsApiEvent.PARTICIPANT_MUTED, handler: CallsEventHandlers.ParticipantMuted): void; on(name: CallsApiEvent.PARTICIPANT_UNMUTED, handler: CallsEventHandlers.ParticipantUnmuted): void; on(name: CallsApiEvent.PARTICIPANT_DEAF, handler: CallsEventHandlers.ParticipantDeaf): void; on(name: CallsApiEvent.PARTICIPANT_UNDEAF, handler: CallsEventHandlers.ParticipantUndeaf): void; on(name: CallsApiEvent.PARTICIPANT_BLINDED, handler: CallsEventHandlers.ParticipantBlinded): void; on(name: CallsApiEvent.PARTICIPANT_UNBLINDED, handler: CallsEventHandlers.ParticipantUnblinded): void; on(name: CallsApiEvent.STARTED_TALKING, handler: CallsEventHandlers.StartedTalking): void; on(name: CallsApiEvent.STOPPED_TALKING, handler: CallsEventHandlers.StoppedTalking): void; on(name: CallsApiEvent.PARTICIPANT_STARTED_TALKING, handler: CallsEventHandlers.ParticipantStartedTalking): void; on(name: CallsApiEvent.PARTICIPANT_STOPPED_TALKING, handler: CallsEventHandlers.ParticipantStoppedTalking): void; on(name: CallsApiEvent.PARTICIPANT_CAMERA_VIDEO_ADDED, handler: CallsEventHandlers.ParticipantCameraVideoAdded): void; on(name: CallsApiEvent.PARTICIPANT_CAMERA_VIDEO_REMOVED, handler: CallsEventHandlers.ParticipantCameraVideoRemoved): void; on(name: CallsApiEvent.PARTICIPANT_SCREEN_SHARE_ADDED, handler: CallsEventHandlers.ParticipantScreenShareAdded): void; on(name: CallsApiEvent.PARTICIPANT_SCREEN_SHARE_REMOVED, handler: CallsEventHandlers.ParticipantCameraVideoRemoved): void; on(name: CallsApiEvent.PARTICIPANT_LEFT, handler: CallsEventHandlers.ParticipantRemoved): void; on(name: CallsApiEvent.NETWORK_QUALITY_CHANGED, handler: CallsEventHandlers.NetworkQualityChanged): void; on(name: CallsApiEvent.PARTICIPANT_NETWORK_QUALITY_CHANGED, handler: CallsEventHandlers.ParticipantNetworkQualityChanged): void; on(name: CallsApiEvent.PARTICIPANT_DISCONNECTED, handler: CallsEventHandlers.ParticipantDisconnected): void; on(name: CallsApiEvent.PARTICIPANT_RECONNECTED, handler: CallsEventHandlers.ParticipantReconnected): void; on(name: CallsApiEvent.TALKING_WHILE_MUTED, handler: CallsEventHandlers.TalkingWhileMuted): void; on(name: CallsApiEvent.DIALOG_JOINED, handler: CallsEventHandlers.DialogJoined): void; on(name: CallsApiEvent.DIALOG_LEFT, handler: CallsEventHandlers.DialogLeft): void; on(name: CallsApiEvent.RECONNECTING, handler: CallsEventHandlers.Reconnecting): void; on(name: CallsApiEvent.RECONNECTED, handler: CallsEventHandlers.Reconnected): void; on(name: CallsApiEvent.CALL_RECORDING_STARTED, handler: CallsEventHandlers.CallRecordingStartedEvent): void; on(name: CallsApiEvent.CALL_RECORDING_STOPPED, handler: CallsEventHandlers.CallRecordingStoppedEvent): void; on(name: CallsApiEvent.DIALOG_RECORDING_STARTED, handler: CallsEventHandlers.DialogRecordingStartedEvent): void; on(name: CallsApiEvent.DIALOG_RECORDING_STOPPED, handler: CallsEventHandlers.DialogRecordingStoppedEvent): void; on(name: CallsApiEvent.CONFERENCE_RECORDING_STARTED, handler: CallsEventHandlers.ConferenceRecordingStartedEvent): void; on(name: CallsApiEvent.CONFERENCE_RECORDING_STOPPED, handler: CallsEventHandlers.ConferenceRecordingStoppedEvent): void; on(name: CallsApiEvent.MESSAGE_RECEIVED, handler: CallsEventHandlers.MessageReceived): void; on(name: CallsApiEvent.MACHINE_DETECTION_FINISHED, handler: CallsEventHandlers.MachineDetectionFinished): void; on(name: CallsApiEvent.MACHINE_DETECTION_FAILED, handler: CallsEventHandlers.MachineDetectionFailed): void; }