UNPKG

@cometchat/calls-sdk-javascript

Version:

Cometchat's Javascript SDK for In-app Calling.

181 lines (180 loc) 6.53 kB
import { CallSettings, CallSettingsBuilder, MainVideoContainerSetting } from "./CallSettings"; import { CallAppSettings, CallAppSettingsBuilder } from "./CallsAppSettings"; import { OngoingCallListener } from "./Listener"; import { CallConstants } from "../constants"; import { PresenterSettings, PresenterSettingsBuilder } from "./PresenterSettings"; import { ListenerHandlers } from "./ListnerHandler"; import { CallLog } from './CallLog'; import { CallLogRequestBuilder } from './CometChatCallLogs'; import { CallUser } from "./CallUser"; import { CallGroup } from "./CallGroup"; import { Participant } from './Participant'; import { Recording } from './Recording'; export declare class CometChatCalls { private static appSettings; private static inProgress; private static callEventListener; private static debounceDeviceChange; private static deviceList; static CALL_MODE: { readonly DEFAULT: "DEFAULT"; readonly SPOTLIGHT: "SPOTLIGHT"; readonly GRID: "TILE"; }; /** * Alias to CometChatCalls.CALL_MODE */ static MODE: { readonly DEFAULT: "DEFAULT"; readonly SPOTLIGHT: "SPOTLIGHT"; readonly GRID: "TILE"; }; static addCallEventListener: typeof ListenerHandlers.addCallEventListener; static removeCallEventListener: typeof ListenerHandlers.removeCallEventListener; static OngoingCallListener: typeof OngoingCallListener; static CallSettingsBuilder: typeof CallSettingsBuilder; static CallSettings: typeof CallSettings; static PresenterSettingsBuilder: typeof PresenterSettingsBuilder; static PresenterSettings: typeof PresenterSettings; static CallAppSettingsBuilder: typeof CallAppSettingsBuilder; static CallAppSettings: typeof CallAppSettings; static MainVideoContainerSetting: typeof MainVideoContainerSetting; static CallLogRequestBuilder: typeof CallLogRequestBuilder; static CallLog: typeof CallLog; static CallUser: typeof CallUser; static CallGroup: typeof CallGroup; static Participant: typeof Participant; static Recording: typeof Recording; private static isPresenterMode; static joinPresentation(callToken: string, presenterSettings: PresenterSettings, htmlElement: HTMLElement): Promise<void>; static startSession(callToken: string, callSettings: CallSettings, htmlElement: HTMLElement): Promise<void>; private static startSessionCore; private static startTheSession; static generateToken(sessionID: string, authToken: string): Promise<{ token: string; }>; static init(appSettings: CallAppSettings): Promise<void>; private static getRef; /** * Method to pause/unpause video stream. * @param {boolean} pauseVideo Defaults to true * @returns {void} */ static pauseVideo(pauseVideo?: boolean): void; /** * Method to resume video stream. Alias to resumeVideo. * @returns {void} */ static unPauseVideo(): void; /** * Method to resume video stream. * @returns {void} */ static resumeVideo(): void; /** * Method to set mode. * @param mode * @returns {void} */ static setMode(mode: (typeof CallConstants.MODE)[keyof typeof CallConstants.MODE]): void; /** * Method to mute/unmute audio stream. * @param {boolean} muteAudio Defaults to true * @returns {void} */ static muteAudio(muteAudio?: boolean): void; /** * Method to unmute audio stream. * @returns {void} */ static unMuteAudio(): void; /** * Method to start screen share. * @returns {void} */ static startScreenShare(): void; /** * Method to stop screen share. * @returns {void} */ static stopScreenShare(): void; static endSession(): void; /** * Method to start call recording. * @returns {void} */ static startRecording(): void; /** * Method to stop call recording. * @returns {void} */ static stopRecording(): void; /** * Method to switch an audio call to video call. * @returns {void} */ static switchToVideoCall(): void; /** * Method to open the virtual background settings. * @returns {void} */ static openVirtualBackground(): void; /** * Method to close the virtual background settings. * @returns {void} */ static closeVirtualBackground(): void; /** * Method to set the background blur. This method takes number as input which decides the blur level of the background. * @param {number} blurLevel The blur level of the background * @returns {void} */ static setBackgroundBlur(blurLevel: number): void; /** * Method to set the background image. This method takes either a URL or file Object & sets that image as the background. * @param image image URL or file Object * @returns {void} */ static setBackgroundImage(image: string | Blob | Object): void; /** * Method to get all the available audio input devices. * @returns {MediaDeviceInfo[]} */ static getAudioInputDevices(): MediaDeviceInfo[]; /** * Method to get all the available audio output devices. * @returns {MediaDeviceInfo[]} */ static getAudioOutputDevices(): MediaDeviceInfo[]; /** * Method to get all the available video input devices. * @returns {MediaDeviceInfo[]} */ static getVideoInputDevices(): MediaDeviceInfo[]; /** * Method to change the audio input device. * @param {string} deviceId * @returns {void} */ static setAudioInputDevice(deviceId: string): void; /** * Method to change the audio output device. * @param {string} deviceId * @returns {void} */ static setAudioOutputDevice(deviceId: string): void; /** * Method to change the video input device. * @param {string} deviceId * @returns {void} */ static setVideoInputDevice(deviceId: string): void; /** * Retrieves call details for a given session ID and auth token. * @param sessionID - The session ID of the call. * @param authToken - The authentication token required to make the API call. * @returns A Promise that resolves to a CallLog object containing the call details. * @throws {CometChatCallsException} If there is an error retrieving the call details. */ static getCallDetails(sessionID: string, authToken: string): Promise<Array<CallLog>>; }