declare const SelfUtils: { /** * parses the relevant values for self: muted, guest, moderator, mediaStatus, state, joinedWith, pstnDevices, creator, id * @param {Object} self * @param {String} deviceId * @param {Array} participants * @returns {undefined} */ parse: (self: any, deviceId: string, participants: Array) => { remoteVideoMuted: any; remoteMuted: any; unmuteAllowed: boolean; localAudioUnmuteRequested: boolean; localAudioUnmuteRequestedTimeStamp: number; localAudioUnmuteRequired: boolean; lastModified: any; modifiedBy: any; guest: any; moderator: any; mediaStatus: { audio: any; video: any; slides: any; }; state: any; joinedWith: any; pairedWith: any; pstnDevices: any; currentMediaStatus: { audio: any; video: any; share: any; }; creator: any; selfId: any; selfIdentity: any; selfUrl: any; removed: any; roles: any; isUserUnadmitted: boolean; layout: any; canNotViewTheParticipantList: boolean; isSharingBlocked: boolean; breakoutSessions: any; breakout: any; interpretation: any; brb: any; }; getBreakoutSessions: (self: any) => any; getBreakout: (self: any) => any; getInterpretation: (self: any) => any; getBrb: (self: any) => any; getLayout: (self: any) => any; getRoles: (self: any) => any; canNotViewTheParticipantList: (self: any) => boolean; isSharingBlocked: (self: any) => boolean; getSelves: (oldParsedSelf: any, newSelf: any, deviceId: any, participants: Array) => { previous: any; current: { remoteVideoMuted: any; remoteMuted: any; unmuteAllowed: boolean; localAudioUnmuteRequested: boolean; localAudioUnmuteRequestedTimeStamp: number; localAudioUnmuteRequired: boolean; lastModified: any; modifiedBy: any; guest: any; moderator: any; mediaStatus: { audio: any; video: any; slides: any; }; state: any; joinedWith: any; pairedWith: any; pstnDevices: any; currentMediaStatus: { audio: any; video: any; share: any; }; creator: any; selfId: any; selfIdentity: any; selfUrl: any; removed: any; roles: any; isUserUnadmitted: boolean; layout: any; canNotViewTheParticipantList: boolean; isSharingBlocked: boolean; breakoutSessions: any; breakout: any; interpretation: any; brb: any; }; updates: any; }; /** * Checks if user has joined the meeting * @param {Object} self * @returns {boolean} isJoined */ isJoined: (self: any) => boolean; /** * Validate if the Meeting Layout Controls Layout has changed. * * @param {Self} previous - Previous self state * @param {Self} current - Current self state [per event] * @returns {boolean} - If the Meeting Layout Controls Layout has changed. */ layoutChanged: (previous: any, current: any) => boolean; breakoutsChanged: (previous: any, current: any) => boolean; interpretationChanged: (previous: any, current: any) => boolean; brbChanged: (previous: any, current: any) => boolean; isMediaInactive: (previous: any, current: any) => boolean; getLastModified: (self: any) => any; getModifiedBy: (self: any) => any; /** * get the id from the self object * @param {Object} self * @returns {String} */ getSelfIdentity: (self: any) => any; /** * get the "remote video mute" property from the self object * @param {Object} self * @returns {Boolean} */ getRemoteVideoMuted: (self: any) => any; /** * get the "remote mute" property from the self object * @param {Object} self * @returns {Boolean} */ getRemoteMuted: (self: any) => any; getLocalAudioUnmuteRequested: (self: any) => boolean; getLocalAudioUnmuteRequestedTimeStamp: (self: any) => number; getUnmuteAllowed: (self: any) => boolean; getLocalAudioUnmuteRequired: (self: any) => boolean; getStatus: (status: any) => { audio: any; video: any; slides: any; }; /** * @param {Object} oldSelf * @param {Object} changedSelf * @returns {Boolean} */ wasMediaInactiveOrReleased: (oldSelf: any, changedSelf: any) => boolean; /** * @param {String | undefined} state meeting state * @param {any} joinedWith device that user has joined with * @param {any} pairedWith device that user is paired with * @returns {Boolean | undefined} true if user is in lobby, false if not, undefined if it cannot be determined */ isLocusUserUnadmitted: (state?: string, joinedWith?: any, pairedWith?: any) => boolean; /** * @param {String | undefined} state meeting state * @param {any} joinedWith device that user has joined with * @param {any} pairedWith device that user is paired with * @returns {Boolean} */ isLocusUserAdmitted: (state?: string, joinedWith?: any, pairedWith?: any) => boolean; /** * @param {Object} oldSelf * @param {Object} changedSelf * @returns {Boolean} true if user has just been placed in the lobby * @throws {Error} when self is undefined */ hasUserEnteredLobby: (oldSelf: any, changedSelf: any) => boolean; moderatorChanged: (oldSelf: any, changedSelf: any) => boolean; /** * determine whether the roles of self is changed or not * @param {Object} oldSelf * @param {Object} changedSelf * @returns {Boolean} */ isRolesChanged: (oldSelf: any, changedSelf: any) => boolean; /** * @param {Object} oldSelf * @param {Object} changedSelf * @returns {Boolean} * @throws {Error} if changed self was undefined */ isDeviceObserving: (oldSelf: any, changedSelf: any) => boolean; /** * @param {Object} oldSelf * @param {Object} changedSelf * @returns {Boolean} true if the user has just been admitted from lobby into the meeting * @throws {Error} if changed self was undefined */ hasUserBeenAdmitted: (oldSelf: any, changedSelf: any) => boolean; videoMutedByOthersChanged: (oldSelf: any, changedSelf: any) => boolean; mutedByOthersChanged: (oldSelf: any, changedSelf: any) => boolean; localAudioUnmuteRequestedByServer: (oldSelf: any, changedSelf: any) => boolean; localAudioUnmuteRequiredByServer: (oldSelf: any, changedSelf: any) => boolean; /** * extract the sipUrl from the partner * @param {Object} partner * @param {Object} info * @returns {Object} */ getSipUrl: (partner: any, type: any, sipUri: any) => { sipUri: any; }; getMediaStatus: (mediaSessions?: any[]) => { audio: any; video: any; share: any; }; getReplacedBreakoutMoveId: (self: any, deviceId: string) => any; }; export default SelfUtils;