MediaSFU Angular
    Preparing search index...

    Class MediasfuChat

    MediasfuChat component provides an interface for chat-based streaming events. It includes a conditional prejoin screen, main content with flexible grids and modals, and supports chat-related settings.

    app-mediasfu-chat

    true

    [RouterOutlet, CommonModule, AlertComponent, AudioGrid, ControlButtonsComponentTouch, FlexibleGrid, LoadingModal, ConfirmExitModal, MessagesModal, ConfirmHereModal, ShareEventModal, WelcomePage, MainAspectComponent, MainContainerComponent, MainScreenComponent, OtherGridComponent, MessageWidget]

    template structure:

    • Conditional rendering of a PrejoinPage or WelcomePage for introductory or pre-session screens.
    • Main content area with nested components for grid layouts, flexible video, and audio grids.
    • Modals for user interactions, including participant management, event settings, breakout rooms, whiteboarding, and media settings.

    PrejoinPage - Component for the prejoin page, defaults to WelcomePage.

    options - Configuration options for the component.

    connectMediaSFU - Flag to enable/disable connection to the MediaSFU server.

    localLink - Local link for the Community Edition server.

    credentials - API credentials for secure access.

    useLocalUIMode - Flag to toggle local UI settings.

    seedData - Seed data for initializing the component with specific configurations.

    useSeed - Enable/disable use of seed data.

    imgSrc - URL for branding images or logos.

    sourceParameters - Additional parameters for the source.

    updateSourceParameters - Function to update the source parameters.

    returnUI - Flag to return the UI elements.

    noUIPreJoinOptions - Options for the prejoin page without UI.

    joinMediaSFURoom - Function to join a room on MediaSFU.

    createMediaSFURoom - Function to create a room on MediaSFU.

    customVideoCard - Custom component to replace the default VideoCard component.

    customAudioCard - Custom component to replace the default AudioCard component.

    customMiniCard - Custom component to replace the default MiniCard component.

    customMainComponent - Custom component that provides complete control over the main UI, bypassing default MediaSFU styling.

    Customizable styles for layout and overflow.

    [CookieService] - Service for managing cookies within the component.

    OnInit, OnDestroy

    ngOnInit - Initializes configurations and parameters.

    ngOnDestroy - Handles cleanup and removal of event listeners or intervals.

    <app-mediasfu-chat
    [PrejoinPage]="CustomPrejoinComponent"
    [localLink]="'https://localhost:3000'"
    [connectMediaSFU]="true"
    [credentials]="{ apiUserName: 'username', apiKey: 'apikey' }"
    [useLocalUIMode]="true"
    [seedData]="seedDataObject"
    [useSeed]="true"
    [imgSrc]="'https://example.com/logo.png'"
    [sourceParameters]="{ source: 'camera', width: 640, height: 480 }"
    [updateSourceParameters]="updateSourceParameters"
    [returnUI]="true"
    [noUIPreJoinOptions]="{ roomName: 'room1', userName: 'user1' }"
    [joinMediaSFURoom]="joinMediaSFURoom"
    [createMediaSFURoom]="createMediaSFURoom"
    [customVideoCard]="CustomVideoCardComponent"
    [customAudioCard]="CustomAudioCardComponent"
    [customMiniCard]="CustomMiniCardComponent"
    [customMainComponent]="CustomMainComponent">
    </app-mediasfu-chat>

    Implements

    • OnInit
    • OnDestroy
    Index

    Constructors

    Methods

    updateSourceParameters? mainContainerOverrideProps mainAspectOverrideProps mainScreenOverrideProps otherGridOverrideProps flexibleGridOverrideProps controlButtonsTouchOverrideProps audioGridOverrideProps alertOverrideProps loadingModalOverrideProps messagesModalOverrideProps confirmExitModalOverrideProps confirmHereModalOverrideProps shareEventModalOverrideProps createInjector getMediaDevicesList getParticipantMedia mediaSFUFunctions updateValidated updateSocket updateLocalSocket updateDevice updateRoomData updateApiKey updateApiUserName updateApiToken updateLink updateRoomName updateMember updateAdminPasscode updateIslevel updateCoHost updateCoHostResponsibility updateYouAreCoHost updateYouAreHost updateConfirmedToRecord updateMeetingDisplayType updateMeetingVideoOptimized updateEventType updateParticipants updateFilteredParticipants updateParticipantsCounter updateParticipantsFilter updateConsume_sockets updateRtpCapabilities updateRoomRecvIPs updateMeetingRoomParams updateItemPageLimit updateAudioOnlyRoom updateAddForBasic updateScreenPageLimit updateShareScreenStarted updateShared updateTargetOrientation updateTargetResolution updateTargetResolutionHost updateVidCons updateFrameRate updateHParams updateVParams updateScreenParams updateAParams updateRecordingAudioPausesLimit updateRecordingAudioPausesCount updateRecordingAudioSupport updateRecordingAudioPeopleLimit updateRecordingAudioParticipantsTimeLimit updateRecordingVideoPausesCount updateRecordingVideoPausesLimit updateRecordingVideoSupport updateRecordingVideoPeopleLimit updateRecordingVideoParticipantsTimeLimit updateRecordingAllParticipantsSupport updateRecordingVideoParticipantsSupport updateRecordingAllParticipantsFullRoomSupport updateRecordingVideoParticipantsFullRoomSupport updateRecordingPreferredOrientation updateRecordingSupportForOtherOrientation updateRecordingMultiFormatsSupport updateUserRecordingParams updateCanRecord updateStartReport updateEndReport updateRecordTimerInterval updateRecordStartTime updateRecordElapsedTime updateIsTimerRunning updateCanPauseResume updateRecordChangeSeconds updatePauseLimit updatePauseRecordCount updateCanLaunchRecord updateStopLaunchRecord updateParticipantsAll updateFirstAll updateUpdateMainWindow updateFirst_round updateLandScaped updateLock_screen updateScreenId updateAllVideoStreams updateNewLimitedStreams updateNewLimitedStreamsIDs updateActiveSounds updateScreenShareIDStream updateScreenShareNameStream updateAdminIDStream updateAdminNameStream updateYouYouStream updateYouYouStreamIDs updateLocalStream updateRecordStarted updateRecordResumed updateRecordPaused updateRecordStopped updateAdminRestrictSetting updateVideoRequestState updateVideoRequestTime updateVideoAction updateLocalStreamVideo updateUserDefaultVideoInputDevice updateCurrentFacingMode updatePrevFacingMode updateDefVideoID updateAllowed updateDispActiveNames updateP_dispActiveNames updateActiveNames updatePrevActiveNames updateP_activeNames updateMembersReceived updateDeferScreenReceived updateHostFirstSwitch updateMicAction updateScreenAction updateChatAction updateAudioRequestState updateScreenRequestState updateChatRequestState updateAudioRequestTime updateScreenRequestTime updateChatRequestTime updateOldSoundIds updateHostLabel updateMainScreenFilled updateLocalStreamScreen updateScreenAlreadyOn updateChatAlreadyOn updateRedirectURL updateOldAllStreams updateAdminVidID updateStreamNames updateNon_alVideoStreams updateSortAudioLoudness updateAudioDecibels updateMixed_alVideoStreams updateNon_alVideoStreams_muted updatePaginatedStreams updateLocalStreamAudio updateDefAudioID updateUserDefaultAudioInputDevice updateUserDefaultAudioOutputDevice updatePrevAudioInputDevice updatePrevVideoInputDevice updateAudioPaused updateMainScreenPerson updateAdminOnMainScreen updateScreenStates updatePrevScreenStates updateUpdateDateState updateLastUpdate updateNForReadjustRecord updateFixedPageLimit updateRemoveAltGrid updateNForReadjust updateLastReorderTime updateAudStreamNames updateCurrentUserPage updateMainHeightWidth updatePrevMainHeightWidth updatePrevDoPaginate updateDoPaginate updateShareEnded updateLStreams updateChatRefStreams updateControlHeight updateIsWideScreen updateIsMediumScreen updateIsSmallScreen updateAddGrid updateAddAltGrid updateGridRows updateGridCols updateAltGridRows updateAltGridCols updateNumberPages updateCurrentStreams updateShowMiniView updateNStream updateDefer_receive updateAllAudioStreams updateRemoteScreenStream updateScreenProducer updateLocalScreenProducer updateGotAllVids updatePaginationHeightWidth updatePaginationDirection updateGridSizes updateScreenForceFullDisplay updateMainGridStream updateOtherGridStreams updateAudioOnlyStreams updateVideoInputs updateAudioInputs updateMeetingProgressTime updateMeetingElapsedTime updateRef_participants updateMessages updateStartDirectMessage updateDirectMessageDetails updateShowMessagesBadge updateAudioSetting updateVideoSetting updateScreenshareSetting updateChatSetting updateDisplayOption updateAutoWave updateForceFullDisplay updatePrevForceFullDisplay updatePrevMeetingDisplayType updateWaitingRoomCounter updateWaitingRoomFilter updateWaitingRoomList onWaitingRoomClose updateRequestCounter updateRequestFilter updateRequestList onRequestClose updateTotalReqWait updateAlertVisible updateAlertMessage updateAlertType updateAlertDuration updateProgressTimerVisible updateProgressTimerValue updateIsMenuModalVisible updateIsRecordingModalVisible updateIsSettingsModalVisible updateIsRequestsModalVisible updateIsWaitingModalVisible updateIsCoHostModalVisible updateIsMediaSettingsModalVisible updateIsDisplaySettingsModalVisible updateIsParticipantsModalVisible updateIsMessagesModalVisible updateIsConfirmExitModalVisible updateIsConfirmHereModalVisible updateIsLoadingModalVisible updateIsShareEventModalVisible updateRecordingMediaOptions updateRecordingAudioOptions updateRecordingVideoOptions updateRecordingVideoType updateRecordingVideoOptimized updateRecordingDisplayType updateRecordingAddHLS updateRecordingAddText updateRecordingCustomText updateRecordingCustomTextPosition updateRecordingCustomTextColor updateRecordingNameTags updateRecordingBackgroundColor updateRecordingNameTagsColor updateRecordingOrientationVideo updateClearedToResume updateClearedToRecord updateRecordState updateShowRecordButtons updateRecordingProgressTime updateAudioSwitching updateVideoSwitching updateVideoAlreadyOn updateAudioAlreadyOn updateComponentSizes updateHasCameraPermission updateHasAudioPermission requestPermissionCamera requestPermissionAudio updateTransportCreated updateLocalTransportCreated updateTransportCreatedVideo updateTransportCreatedAudio updateTransportCreatedScreen updateProducerTransport updateLocalProducerTransport updateVideoProducer updateLocalVideoProducer updateParams updateVideoParams updateAudioParams updateAudioProducer updateAudioLevel updateLocalAudioProducer updateConsumerTransports updateConsumingTransports updatePolls updatePoll updateIsPollModalVisible updateCustomImage updateSelectedImage updateSegmentVideo updateSelfieSegmentation updatePauseSegmentation updateProcessedStream updateKeepBackground updateBackgroundHasChanged updateVirtualStream updateMainCanvas updatePrevKeepBackground updateAppliedBackground updateIsBackgroundModalVisible updateAutoClickBackground updateBreakoutRooms updateCurrentRoomIndex updateCanStartBreakout updateBreakOutRoomStarted updateBreakOutRoomEnded updateHostNewRoom updateLimitedBreakRoom updateMainRoomsLength updateMemberRoom updateIsBreakoutRoomsModalVisible updateWhiteboardUsers updateCurrentWhiteboardIndex updateCanStartWhiteboard updateWhiteboardStarted updateWhiteboardEnded updateWhiteboardLimit updateIsWhiteboardModalVisible updateIsConfigureWhiteboardModalVisible updateShapes updateUseImageBackground updateRedoStack updateUndoStack updateCanvasStream updateCanvasWhiteboard updateCanvasScreenboard updateProcessedScreenStream updateAnnotateScreenStream updateMainScreenCanvas updateIsScreenboardModalVisible checkOrientation showAlert getAllParams getUpdatedAllParams updatePrejoinPageComponent initializeFunctionOverrides ngOnInit ngOnDestroy updateMainVideoSize connectAndAddSocketMethods handleValidated handleResize disconnectAllSockets closeAndReset computeDimensionsMethod calculateDimensions handleOrientationChange setupResizeListener joinRoom join_Room updateStatesToInitialValues onCloseMenuModal onEventSettingsClose onCoHostClose onMediaSettingsClose onDisplaySettingsClose onPollClose onBreakoutRoomsClose onConfigureWhiteboardClose onMessagesClose onRecordingClose onParticipantsClose onBackgroundClose onConfirmExitClose onConfirmHereClose onScreenboardClose onShareEventClose onAlertHide updateControlChatButtons connect_Socket

    Properties

    PrejoinPage localLink connectMediaSFU credentials useLocalUIMode seedData? useSeed imgSrc sourceParameters? returnUI? noUIPreJoinOptions? joinMediaSFURoom? createMediaSFURoom? customVideoCard? customAudioCard? customMiniCard? customMainComponent? containerStyle? uiOverrides? title MainContainerComponentRef MainAspectComponentRef MainScreenComponentRef OtherGridComponentRef FlexibleGridRef ControlButtonsComponentTouchRef AudioGridRef AlertComponentRef LoadingModalRef MessagesModalRef ConfirmExitModalRef ConfirmHereModalRef ShareEventModalRef updateMiniCardsGrid mixStreams dispStreams stopShareScreen checkScreenShare startShareScreen requestScreenShare reorderStreams prepopulateUserMedia getVideos rePort trigger consumerResume connectSendTransport connectSendTransportAudio connectSendTransportVideo connectSendTransportScreen processConsumerTransports resumePauseStreams readjust checkGrid getEstimate calculateRowsAndColumns addVideosGrid onScreenChanges changeVids compareActiveNames compareScreenStates createSendTransport resumeSendTransportAudio receiveAllPipedTransports disconnectSendTransportVideo disconnectSendTransportAudio disconnectSendTransportScreen getPipedProducersAlt signalNewConsumerTransport connectRecvTransport reUpdateInter updateParticipantAudioDecibels closeAndResize autoAdjust switchUserVideoAlt switchUserVideo switchUserAudio getDomains formatNumber connectIps connectLocalIps createDeviceClient captureCanvasStream resumePauseAudioStreams processConsumerTransportsAudio launchMessages launchConfirmExit startMeetingProgressTimer producerMediaPaused producerMediaResumed producerMediaClosed meetingEnded disconnectUserSelf receiveMessage meetingTimeRemaining meetingStillThere allMembers allMembersRest disconnect socketManager joinRoomClient joinLocalRoom updateRoomParametersClient clickVideo clickAudio clickScreenShare switchVideoAlt streamSuccessVideo streamSuccessAudio streamSuccessScreen streamSuccessAudioSwitch checkPermission updateConsumingDomains receiveRoomMessages validated localUIMode socket localSocket? roomData device apiKey apiUserName apiToken link roomName member adminPasscode islevel coHost coHostResponsibility youAreCoHost youAreHost confirmedToRecord meetingDisplayType meetingVideoOptimized eventType participants filteredParticipants participantsCounter participantsFilter consume_sockets rtpCapabilities roomRecvIPs meetingRoomParams itemPageLimit audioOnlyRoom addForBasic screenPageLimit shareScreenStarted shared targetOrientation targetResolution targetResolutionHost vidCons frameRate hParams vParams screenParams aParams recordingAudioPausesLimit recordingAudioPausesCount recordingAudioSupport recordingAudioPeopleLimit recordingAudioParticipantsTimeLimit recordingVideoPausesCount recordingVideoPausesLimit recordingVideoSupport recordingVideoPeopleLimit recordingVideoParticipantsTimeLimit recordingAllParticipantsSupport recordingVideoParticipantsSupport recordingAllParticipantsFullRoomSupport recordingVideoParticipantsFullRoomSupport recordingPreferredOrientation recordingSupportForOtherOrientation recordingMultiFormatsSupport userRecordingParams canRecord startReport endReport recordTimerInterval recordStartTime recordElapsedTime isTimerRunning canPauseResume recordChangeSeconds pauseLimit pauseRecordCount canLaunchRecord stopLaunchRecord participantsAll firstAll updateMainWindow first_round landScaped lock_screen screenId allVideoStreams newLimitedStreams newLimitedStreamsIDs activeSounds screenShareIDStream screenShareNameStream adminIDStream adminNameStream youYouStream youYouStreamIDs localStream recordStarted recordResumed recordPaused recordStopped adminRestrictSetting videoRequestState videoRequestTime videoAction localStreamVideo userDefaultVideoInputDevice currentFacingMode prevFacingMode defVideoID allowed dispActiveNames p_dispActiveNames activeNames prevActiveNames p_activeNames membersReceived deferScreenReceived hostFirstSwitch micAction screenAction chatAction audioRequestState screenRequestState chatRequestState audioRequestTime screenRequestTime chatRequestTime updateRequestIntervalSeconds oldSoundIds hostLabel mainScreenFilled localStreamScreen screenAlreadyOn chatAlreadyOn redirectURL oldAllStreams adminVidID streamNames non_alVideoStreams sortAudioLoudness audioDecibels mixed_alVideoStreams non_alVideoStreams_muted paginatedStreams localStreamAudio defAudioID userDefaultAudioInputDevice userDefaultAudioOutputDevice prevAudioInputDevice prevVideoInputDevice audioPaused mainScreenPerson adminOnMainScreen screenStates prevScreenStates updateDateState lastUpdate nForReadjustRecord fixedPageLimit removeAltGrid nForReadjust reorderInterval fastReorderInterval lastReorderTime audStreamNames currentUserPage mainHeightWidth prevMainHeightWidth prevDoPaginate doPaginate shareEnded lStreams chatRefStreams controlHeight isWideScreen isMediumScreen isSmallScreen addGrid addAltGrid gridRows gridCols altGridRows altGridCols numberPages currentStreams showMiniView nStream defer_receive allAudioStreams remoteScreenStream screenProducer localScreenProducer gotAllVids paginationHeightWidth paginationDirection gridSizes screenForceFullDisplay mainGridStream otherGridStreams audioOnlyStreams videoInputs audioInputs meetingProgressTime meetingElapsedTime ref_participants messages startDirectMessage directMessageDetails showMessagesBadge audioSetting videoSetting screenshareSetting chatSetting displayOption autoWave forceFullDisplay prevForceFullDisplay prevMeetingDisplayType waitingRoomFilter waitingRoomList waitingRoomCounter filteredWaitingRoomList requestFilter requestList requestCounter filteredRequestList totalReqWait alertVisible alertMessage alertType alertDuration progressTimerVisible progressTimerValue isMenuModalVisible isRecordingModalVisible isSettingsModalVisible isRequestsModalVisible isWaitingModalVisible isCoHostModalVisible isMediaSettingsModalVisible isDisplaySettingsModalVisible isParticipantsModalVisible isMessagesModalVisible isConfirmExitModalVisible isConfirmHereModalVisible isShareEventModalVisible isLoadingModalVisible recordingMediaOptions recordingAudioOptions recordingVideoOptions recordingVideoType recordingVideoOptimized recordingDisplayType recordingAddHLS recordingNameTags recordingBackgroundColor recordingNameTagsColor recordingAddText recordingCustomText recordingCustomTextPosition recordingCustomTextColor recordingOrientationVideo clearedToResume clearedToRecord recordState showRecordButtons recordingProgressTime audioSwitching videoSwitching videoAlreadyOn audioAlreadyOn componentSizes hasCameraPermission hasAudioPermission transportCreated localTransportCreated transportCreatedVideo transportCreatedAudio transportCreatedScreen producerTransport localProducerTransport videoProducer localVideoProducer params videoParams audioParams audioProducer audioLevel localAudioProducer consumerTransports consumingTransports polls poll isPollModalVisible customImage selectedImage segmentVideo selfieSegmentation pauseSegmentation processedStream keepBackground backgroundHasChanged virtualStream mainCanvas prevKeepBackground appliedBackground isBackgroundModalVisible autoClickBackground breakoutRooms currentRoomIndex canStartBreakout breakOutRoomStarted breakOutRoomEnded hostNewRoom limitedBreakRoom mainRoomsLength memberRoom isBreakoutRoomsModalVisible whiteboardUsers currentWhiteboardIndex canStartWhiteboard whiteboardStarted whiteboardEnded whiteboardLimit isWhiteboardModalVisible isConfigureWhiteboardModalVisible shapes useImageBackground redoStack undoStack canvasStream canvasWhiteboard canvasScreenboard processedScreenStream annotateScreenStream mainScreenCanvas isScreenboardModalVisible micActive videoActive screenShareActive endCallActive participantsActive menuActive commentsActive mediaSFUParameters PrejoinPageComponent orientation faMicrophone faMicrophoneSlash faVideo faVideoSlash faSync faPhone faShareAlt faComments messageWidget controlChatButtons controlChatButtonsArray

    Constructors

    Methods

    • Returns {
          backgroundColor: string;
          defaultFraction: number;
          showControls: boolean;
          updateIsWideScreen: (value: boolean) => void;
          updateIsMediumScreen: (value: boolean) => void;
          updateIsSmallScreen: (value: boolean) => void;
      }

    • Returns {
          doStack: boolean;
          mainSize: number;
          defaultFraction: number;
          showControls: boolean;
          updateComponentSizes: (sizes: ComponentSizes) => void;
      }

    • Returns {
          height: number;
          width: number;
          backgroundColor: string;
          showAspect: boolean;
          timeBackgroundColor: string;
          showTimer: boolean;
          meetingProgressTime: string;
      }

    • Returns {
          customWidth: number;
          customHeight: number;
          rows: number;
          columns: number;
          componentsToRender: CustomMediaComponent[];
          backgroundColor: string;
      }

    • Returns {
          buttons: ButtonTouch[];
          position: string;
          location: string;
          direction: string;
          showAspect: boolean;
      }

    • Returns {
          visible: boolean;
          message: string;
          type: "success" | "danger";
          duration: number;
          onHide: () => void;
          textColor: string;
      }

    • Returns {
          backgroundColor: string;
          isMessagesModalVisible: boolean;
          onMessagesClose: () => void;
          messages: Message[];
          eventType: EventType;
          member: string;
          islevel: string;
          coHostResponsibility: CoHostResponsibility[];
          coHost: string;
          startDirectMessage: boolean;
          directMessageDetails: Participant | null;
          updateStartDirectMessage: (value: boolean) => void;
          updateDirectMessageDetails: (value: Participant | null) => void;
          showAlert: (
              __namedParameters: {
                  message: string;
                  type: "success" | "danger";
                  duration?: number;
              },
          ) => void;
          roomName: string;
          socket: Socket<DefaultEventsMap, DefaultEventsMap>;
          chatSetting: string;
      }

    • Returns {
          backgroundColor: string;
          isConfirmExitModalVisible: boolean;
          onConfirmExitClose: () => void;
          position: string;
          member: string;
          roomName: string;
          socket: Socket<DefaultEventsMap, DefaultEventsMap>;
          islevel: string;
      }

    • Returns {
          backgroundColor: string;
          isConfirmHereModalVisible: boolean;
          onConfirmHereClose: () => void;
          member: string;
          roomName: string;
          socket: Socket<DefaultEventsMap, DefaultEventsMap>;
      }

    • Returns {
          isShareEventModalVisible: boolean;
          onShareEventClose: () => void;
          roomName: string;
          islevel: string;
          adminPasscode: string;
          eventType: EventType;
          localLink: string;
      }

    • Gets a list of media devices filtered by the specified kind.

      Parameters

      • kind: "videoinput" | "audioinput"

        The kind of media device to filter by ('videoinput' or 'audioinput')

      Returns Promise<MediaDeviceInfo[]>

      A promise that resolves to an array of MediaDeviceInfo objects

    • Gets the media stream for a participant by their ID or name.

      Parameters

      • options: { id?: string; name?: string; kind: "video" | "audio" }

        Object containing id, name, and kind parameters

      Returns Promise<MediaStream | null>

      A promise that resolves to the participant's MediaStream or null if not found

    • Parameters

      • __namedParameters: { message: string; type: "success" | "danger"; duration?: number }

      Returns void

    • Returns {
          localUIMode: boolean;
          roomName: string;
          member: string;
          adminPasscode: string;
          youAreCoHost: boolean;
          youAreHost: boolean;
          islevel: string;
          confirmedToRecord: boolean;
          meetingDisplayType: string;
          meetingVideoOptimized: boolean;
          eventType: EventType;
          participants: Participant[];
          filteredParticipants: Participant[];
          participantsCounter: number;
          participantsFilter: string;
          consume_sockets: ConsumeSocket[];
          rtpCapabilities: RtpCapabilities | null;
          roomRecvIPs: string[];
          meetingRoomParams: MeetingRoomParams | null;
          itemPageLimit: number;
          audioOnlyRoom: boolean;
          addForBasic: boolean;
          screenPageLimit: number;
          shareScreenStarted: boolean;
          shared: boolean;
          targetOrientation: string;
          targetResolution: string;
          targetResolutionHost: string;
          vidCons: VidCons;
          frameRate: number;
          hParams: HParamsType;
          vParams: VParamsType;
          screenParams: ScreenParamsType;
          aParams: AParamsType;
          recordingAudioPausesLimit: number;
          recordingAudioPausesCount: number;
          recordingAudioSupport: boolean;
          recordingAudioPeopleLimit: number;
          recordingAudioParticipantsTimeLimit: number;
          recordingVideoPausesCount: number;
          recordingVideoPausesLimit: number;
          recordingVideoSupport: boolean;
          recordingVideoPeopleLimit: number;
          recordingVideoParticipantsTimeLimit: number;
          recordingAllParticipantsSupport: boolean;
          recordingVideoParticipantsSupport: boolean;
          recordingAllParticipantsFullRoomSupport: boolean;
          recordingVideoParticipantsFullRoomSupport: boolean;
          recordingPreferredOrientation: string;
          recordingSupportForOtherOrientation: boolean;
          recordingMultiFormatsSupport: boolean;
          userRecordingParams: UserRecordingParams;
          canRecord: boolean;
          startReport: boolean;
          endReport: boolean;
          recordStartTime: number;
          recordElapsedTime: number;
          isTimerRunning: boolean;
          canPauseResume: boolean;
          recordChangeSeconds: number;
          pauseLimit: number;
          pauseRecordCount: number;
          canLaunchRecord: boolean;
          stopLaunchRecord: boolean;
          participantsAll: Participant[];
          firstAll: boolean;
          updateMainWindow: boolean;
          first_round: boolean;
          landScaped: boolean;
          lock_screen: boolean;
          screenId: string;
          allVideoStreams: (Participant | Stream)[];
          newLimitedStreams: (Participant | Stream)[];
          newLimitedStreamsIDs: string[];
          activeSounds: string[];
          screenShareIDStream: string;
          screenShareNameStream: string;
          adminIDStream: string;
          adminNameStream: string;
          youYouStream: (Participant | Stream)[];
          youYouStreamIDs: string[];
          localStream: MediaStream | null;
          recordStarted: boolean;
          recordResumed: boolean;
          recordPaused: boolean;
          recordStopped: boolean;
          adminRestrictSetting: boolean;
          videoRequestState: string | null;
          videoRequestTime: number;
          videoAction: boolean;
          localStreamVideo: MediaStream | null;
          userDefaultVideoInputDevice: string;
          currentFacingMode: string;
          prevFacingMode: string;
          defVideoID: string;
          allowed: boolean;
          dispActiveNames: string[];
          p_dispActiveNames: string[];
          activeNames: string[];
          prevActiveNames: string[];
          p_activeNames: string[];
          membersReceived: boolean;
          deferScreenReceived: boolean;
          hostFirstSwitch: boolean;
          micAction: boolean;
          screenAction: boolean;
          chatAction: boolean;
          audioRequestState: string | null;
          screenRequestState: string | null;
          chatRequestState: string | null;
          audioRequestTime: number;
          screenRequestTime: number;
          chatRequestTime: number;
          updateRequestIntervalSeconds: number;
          oldSoundIds: string[];
          hostLabel: string;
          mainScreenFilled: boolean;
          localStreamScreen: MediaStream | null;
          screenAlreadyOn: boolean;
          chatAlreadyOn: boolean;
          redirectURL: string;
          oldAllStreams: (Participant | Stream)[];
          adminVidID: string;
          streamNames: Stream[];
          non_alVideoStreams: Participant[];
          sortAudioLoudness: boolean;
          audioDecibels: AudioDecibels[];
          mixed_alVideoStreams: (Participant | Stream)[];
          non_alVideoStreams_muted: Participant[];
          paginatedStreams: (Participant | Stream)[][];
          localStreamAudio: MediaStream | null;
          defAudioID: string;
          userDefaultAudioInputDevice: string;
          userDefaultAudioOutputDevice: string;
          prevAudioInputDevice: string;
          prevVideoInputDevice: string;
          audioPaused: boolean;
          mainScreenPerson: string;
          adminOnMainScreen: boolean;
          screenStates: ScreenState[];
          prevScreenStates: ScreenState[];
          updateDateState: number | null;
          lastUpdate: number | null;
          nForReadjustRecord: number;
          fixedPageLimit: number;
          removeAltGrid: boolean;
          nForReadjust: number;
          lastReorderTime: number;
          reorderInterval: number;
          fastReorderInterval: number;
          audStreamNames: Stream[];
          currentUserPage: number;
          mainHeightWidth: number;
          prevMainHeightWidth: number;
          prevDoPaginate: boolean;
          doPaginate: boolean;
          shareEnded: boolean;
          lStreams: (Participant | Stream)[];
          chatRefStreams: (Participant | Stream)[];
          controlHeight: number;
          isWideScreen: boolean;
          isMediumScreen: boolean;
          isSmallScreen: boolean;
          addGrid: boolean;
          addAltGrid: boolean;
          gridRows: number;
          gridCols: number;
          altGridRows: number;
          altGridCols: number;
          numberPages: number;
          currentStreams: (Participant | Stream)[];
          showMiniView: boolean;
          nStream: MediaStream | null;
          defer_receive: boolean;
          allAudioStreams: (Participant | Stream)[];
          screenProducer: Producer | null;
          remoteScreenStream: Stream[];
          gotAllVids: boolean;
          paginationHeightWidth: number;
          paginationDirection: "horizontal" | "vertical";
          gridSizes: GridSizes;
          screenForceFullDisplay: boolean;
          mainGridStream: CustomMediaComponent[];
          otherGridStreams: CustomMediaComponent[][];
          audioOnlyStreams: CustomMediaComponent[];
          videoInputs: MediaDeviceInfo[];
          audioInputs: MediaDeviceInfo[];
          meetingProgressTime: string;
          meetingElapsedTime: number;
          ref_participants: Participant[];
          messages: Message[];
          startDirectMessage: boolean;
          directMessageDetails: Participant | null;
          coHost: string;
          coHostResponsibility: CoHostResponsibility[];
          audioSetting: string;
          videoSetting: string;
          screenshareSetting: string;
          chatSetting: string;
          autoWave: boolean;
          forceFullDisplay: boolean;
          prevForceFullDisplay: boolean;
          prevMeetingDisplayType: string;
          waitingRoomFilter: string;
          waitingRoomList: WaitingRoomParticipant[];
          waitingRoomCounter: number;
          filteredWaitingRoomList: WaitingRoomParticipant[];
          requestFilter: string;
          requestList: Request[];
          requestCounter: number;
          filteredRequestList: Request[];
          totalReqWait: number;
          alertVisible: boolean;
          alertMessage: string;
          alertType: "success" | "danger";
          alertDuration: number;
          progressTimerVisible: boolean;
          progressTimerValue: number;
          isMenuModalVisible: boolean;
          isRecordingModalVisible: boolean;
          isSettingsModalVisible: boolean;
          isRequestsModalVisible: boolean;
          isWaitingModalVisible: boolean;
          isCoHostModalVisible: boolean;
          isMediaSettingsModalVisible: boolean;
          isDisplaySettingsModalVisible: boolean;
          isParticipantsModalVisible: boolean;
          isMessagesModalVisible: boolean;
          isConfirmExitModalVisible: boolean;
          isConfirmHereModalVisible: boolean;
          isLoadingModalVisible: boolean;
          recordingMediaOptions: string;
          recordingAudioOptions: string;
          recordingVideoOptions: string;
          recordingVideoType: string;
          recordingVideoOptimized: boolean;
          recordingDisplayType: "video" | "media" | "all";
          recordingAddHLS: boolean;
          recordingAddText: boolean;
          recordingCustomText: string;
          recordingCustomTextPosition: string;
          recordingCustomTextColor: string;
          recordingNameTags: boolean;
          recordingBackgroundColor: string;
          recordingNameTagsColor: string;
          recordingOrientationVideo: string;
          clearedToResume: boolean;
          clearedToRecord: boolean;
          recordState: string;
          showRecordButtons: boolean;
          recordingProgressTime: string;
          audioSwitching: boolean;
          videoSwitching: boolean;
          videoAlreadyOn: boolean;
          audioAlreadyOn: boolean;
          componentSizes: ComponentSizes;
          hasCameraPermission: boolean;
          hasAudioPermission: boolean;
          transportCreated: boolean;
          localTransportCreated: boolean;
          transportCreatedVideo: boolean;
          transportCreatedAudio: boolean;
          transportCreatedScreen: boolean;
          producerTransport: Transport | null;
          localProducerTransport: Transport | null;
          videoProducer: Producer | null;
          localVideoProducer: Producer | null;
          params: ProducerOptions;
          videoParams: ProducerOptions;
          audioParams: ProducerOptions;
          audioProducer: Producer | null;
          audioLevel: number;
          localAudioProducer: Producer | null;
          consumerTransports: Transport[];
          consumingTransports: string[];
          polls: Poll[];
          poll: Poll | null;
          isPollModalVisible: boolean;
          customImage: string;
          selectedImage: string;
          segmentVideo: MediaStream | null;
          selfieSegmentation: SelfieSegmentation | null;
          pauseSegmentation: boolean;
          processedStream: MediaStream | null;
          keepBackground: boolean;
          backgroundHasChanged: boolean;
          virtualStream: MediaStream | null;
          mainCanvas: HTMLCanvasElement | null;
          prevKeepBackground: boolean;
          appliedBackground: boolean;
          isBackgroundModalVisible: boolean;
          autoClickBackground: boolean;
          breakoutRooms: BreakoutParticipant[][];
          currentRoomIndex: number;
          canStartBreakout: boolean;
          breakOutRoomStarted: boolean;
          breakOutRoomEnded: boolean;
          hostNewRoom: number;
          limitedBreakRoom: BreakoutParticipant[];
          mainRoomsLength: number;
          memberRoom: number;
          isBreakoutRoomsModalVisible: boolean;
          whiteboardUsers: WhiteboardUser[];
          currentWhiteboardIndex: number;
          canStartWhiteboard: boolean;
          whiteboardStarted: boolean;
          whiteboardEnded: boolean;
          whiteboardLimit: number;
          isWhiteboardModalVisible: boolean;
          isConfigureWhiteboardModalVisible: boolean;
          shapes: Shape[];
          useImageBackground: boolean;
          redoStack: Shape[];
          undoStack: string[];
          canvasStream: MediaStream | null;
          canvasWhiteboard: HTMLCanvasElement | null;
          canvasScreenboard: HTMLCanvasElement | null;
          processedScreenStream: MediaStream | null;
          annotateScreenStream: boolean;
          mainScreenCanvas: HTMLCanvasElement | null;
          isScreenboardModalVisible: boolean;
          validated: boolean;
          device: Device | null;
          socket: Socket<DefaultEventsMap, DefaultEventsMap>;
          localSocket: Socket<DefaultEventsMap, DefaultEventsMap> | undefined;
          checkMediaPermission: boolean;
          onWeb: boolean;
          updateRoomName: (value: string) => void;
          updateMember: (value: string) => void;
          updateAdminPasscode: (value: string) => void;
          updateYouAreCoHost: (value: boolean) => void;
          updateYouAreHost: (value: boolean) => void;
          updateIslevel: (value: string) => void;
          updateCoHost: (value: string) => void;
          updateCoHostResponsibility: (value: CoHostResponsibility[]) => void;
          updateConfirmedToRecord: (value: boolean) => void;
          updateMeetingDisplayType: (value: string) => void;
          updateMeetingVideoOptimized: (value: boolean) => void;
          updateEventType: (value: EventType) => void;
          updateParticipants: (value: Participant[]) => void;
          updateParticipantsCounter: (value: number) => void;
          updateParticipantsFilter: (value: string) => void;
          updateConsume_sockets: (value: ConsumeSocket[]) => void;
          updateRtpCapabilities: (value: RtpCapabilities | null) => void;
          updateRoomRecvIPs: (value: string[]) => void;
          updateMeetingRoomParams: (value: MeetingRoomParams | null) => void;
          updateItemPageLimit: (value: number) => void;
          updateAudioOnlyRoom: (value: boolean) => void;
          updateAddForBasic: (value: boolean) => void;
          updateScreenPageLimit: (value: number) => void;
          updateShareScreenStarted: (value: boolean) => void;
          updateShared: (value: boolean) => void;
          updateTargetOrientation: (value: string) => void;
          updateTargetResolution: (value: string) => void;
          updateTargetResolutionHost: (value: string) => void;
          updateVidCons: (value: VidCons) => void;
          updateFrameRate: (value: number) => void;
          updateHParams: (value: HParamsType) => void;
          updateVParams: (value: VParamsType) => void;
          updateScreenParams: (value: ScreenParamsType) => void;
          updateAParams: (value: AParamsType) => void;
          updateRecordingAudioPausesLimit: (value: number) => void;
          updateRecordingAudioPausesCount: (value: number) => void;
          updateRecordingAudioSupport: (value: boolean) => void;
          updateRecordingAudioPeopleLimit: (value: number) => void;
          updateRecordingAudioParticipantsTimeLimit: (value: number) => void;
          updateRecordingVideoPausesCount: (value: number) => void;
          updateRecordingVideoPausesLimit: (value: number) => void;
          updateRecordingVideoSupport: (value: boolean) => void;
          updateRecordingVideoPeopleLimit: (value: number) => void;
          updateRecordingVideoParticipantsTimeLimit: (value: number) => void;
          updateRecordingAllParticipantsSupport: (value: boolean) => void;
          updateRecordingVideoParticipantsSupport: (value: boolean) => void;
          updateRecordingAllParticipantsFullRoomSupport: (value: boolean) => void;
          updateRecordingVideoParticipantsFullRoomSupport: (value: boolean) => void;
          updateRecordingPreferredOrientation: (value: string) => void;
          updateRecordingSupportForOtherOrientation: (value: boolean) => void;
          updateRecordingMultiFormatsSupport: (value: boolean) => void;
          updateUserRecordingParams: (value: UserRecordingParams) => void;
          updateCanRecord: (value: boolean) => void;
          updateStartReport: (value: boolean) => void;
          updateEndReport: (value: boolean) => void;
          updateRecordTimerInterval: (value: Timeout | null) => void;
          updateRecordStartTime: (value: number) => void;
          updateRecordElapsedTime: (value: number) => void;
          updateIsTimerRunning: (value: boolean) => void;
          updateCanPauseResume: (value: boolean) => void;
          updateRecordChangeSeconds: (value: number) => void;
          updatePauseLimit: (value: number) => void;
          updatePauseRecordCount: (value: number) => void;
          updateCanLaunchRecord: (value: boolean) => void;
          updateStopLaunchRecord: (value: boolean) => void;
          updateParticipantsAll: (value: Participant[]) => void;
          updateFirstAll: (value: boolean) => void;
          updateUpdateMainWindow: (value: boolean) => void;
          updateFirst_round: (value: boolean) => void;
          updateLandScaped: (value: boolean) => void;
          updateLock_screen: (value: boolean) => void;
          updateScreenId: (value: string) => void;
          updateAllVideoStreams: (value: (Participant | Stream)[]) => void;
          updateNewLimitedStreams: (value: (Participant | Stream)[]) => void;
          updateNewLimitedStreamsIDs: (value: string[]) => void;
          updateActiveSounds: (value: string[]) => void;
          updateScreenShareIDStream: (value: string) => void;
          updateScreenShareNameStream: (value: string) => void;
          updateAdminIDStream: (value: string) => void;
          updateAdminNameStream: (value: string) => void;
          updateYouYouStream: (value: (Participant | Stream)[]) => void;
          updateYouYouStreamIDs: (value: string[]) => void;
          updateLocalStream: (value: MediaStream | null) => void;
          updateRecordStarted: (value: boolean) => void;
          updateRecordResumed: (value: boolean) => void;
          updateRecordPaused: (value: boolean) => void;
          updateRecordStopped: (value: boolean) => void;
          updateAdminRestrictSetting: (value: boolean) => void;
          updateVideoRequestState: (value: string | null) => void;
          updateVideoRequestTime: (value: number) => void;
          updateVideoAction: (value: boolean) => void;
          updateLocalStreamVideo: (value: MediaStream | null) => void;
          updateUserDefaultVideoInputDevice: (value: string) => void;
          updateCurrentFacingMode: (value: string) => void;
          updatePrevFacingMode: (value: string) => void;
          updateDefVideoID: (value: string) => void;
          updateAllowed: (value: boolean) => void;
          updateDispActiveNames: (value: string[]) => void;
          updateP_dispActiveNames: (value: string[]) => void;
          updateActiveNames: (value: string[]) => void;
          updatePrevActiveNames: (value: string[]) => void;
          updateP_activeNames: (value: string[]) => void;
          updateMembersReceived: (value: boolean) => void;
          updateDeferScreenReceived: (value: boolean) => void;
          updateHostFirstSwitch: (value: boolean) => void;
          updateMicAction: (value: boolean) => void;
          updateScreenAction: (value: boolean) => void;
          updateChatAction: (value: boolean) => void;
          updateAudioRequestState: (value: string | null) => void;
          updateScreenRequestState: (value: string | null) => void;
          updateChatRequestState: (value: string | null) => void;
          updateAudioRequestTime: (value: number) => void;
          updateScreenRequestTime: (value: number) => void;
          updateChatRequestTime: (value: number) => void;
          updateOldSoundIds: (value: string[]) => void;
          updateHostLabel: (value: string) => void;
          updateMainScreenFilled: (value: boolean) => void;
          updateLocalStreamScreen: (value: MediaStream | null) => void;
          updateScreenAlreadyOn: (value: boolean) => void;
          updateChatAlreadyOn: (value: boolean) => void;
          updateRedirectURL: (value: string) => void;
          updateOldAllStreams: (value: (Participant | Stream)[]) => void;
          updateAdminVidID: (value: string) => void;
          updateStreamNames: (value: Stream[]) => void;
          updateNon_alVideoStreams: (value: Participant[]) => void;
          updateSortAudioLoudness: (value: boolean) => void;
          updateAudioDecibels: (value: AudioDecibels[]) => void;
          updateMixed_alVideoStreams: (value: (Participant | Stream)[]) => void;
          updateNon_alVideoStreams_muted: (value: Participant[]) => void;
          updatePaginatedStreams: (value: (Participant | Stream)[][]) => void;
          updateLocalStreamAudio: (value: MediaStream | null) => void;
          updateDefAudioID: (value: string) => void;
          updateUserDefaultAudioInputDevice: (value: string) => void;
          updateUserDefaultAudioOutputDevice: (value: string) => void;
          updatePrevAudioInputDevice: (value: string) => void;
          updatePrevVideoInputDevice: (value: string) => void;
          updateAudioPaused: (value: boolean) => void;
          updateMainScreenPerson: (value: string) => void;
          updateAdminOnMainScreen: (value: boolean) => void;
          updateScreenStates: (value: ScreenState[]) => void;
          updatePrevScreenStates: (value: ScreenState[]) => void;
          updateUpdateDateState: (value: number | null) => void;
          updateLastUpdate: (value: number | null) => void;
          updateNForReadjustRecord: (value: number) => void;
          updateFixedPageLimit: (value: number) => void;
          updateRemoveAltGrid: (value: boolean) => void;
          updateNForReadjust: (value: number) => void;
          updateLastReorderTime: (value: number) => void;
          updateAudStreamNames: (value: Stream[]) => void;
          updateCurrentUserPage: (value: number) => void;
          updateMainHeightWidth: (value: number) => void;
          updatePrevMainHeightWidth: (value: number) => void;
          updatePrevDoPaginate: (value: boolean) => void;
          updateDoPaginate: (value: boolean) => void;
          updateShareEnded: (value: boolean) => void;
          updateLStreams: (value: (Participant | Stream)[]) => void;
          updateChatRefStreams: (value: (Participant | Stream)[]) => void;
          updateControlHeight: (value: number) => void;
          updateIsWideScreen: (value: boolean) => void;
          updateIsMediumScreen: (value: boolean) => void;
          updateIsSmallScreen: (value: boolean) => void;
          updateAddGrid: (value: boolean) => void;
          updateAddAltGrid: (value: boolean) => void;
          updateGridRows: (value: number) => void;
          updateGridCols: (value: number) => void;
          updateAltGridRows: (value: number) => void;
          updateAltGridCols: (value: number) => void;
          updateNumberPages: (value: number) => void;
          updateCurrentStreams: (value: (Participant | Stream)[]) => void;
          updateShowMiniView: (value: boolean) => void;
          updateNStream: (value: MediaStream | null) => void;
          updateDefer_receive: (value: boolean) => void;
          updateAllAudioStreams: (value: (Participant | Stream)[]) => void;
          updateRemoteScreenStream: (value: Stream[]) => void;
          updateScreenProducer: (value: Producer | null) => void;
          updateGotAllVids: (value: boolean) => void;
          updatePaginationHeightWidth: (value: number) => void;
          updatePaginationDirection: (value: "horizontal" | "vertical") => void;
          updateGridSizes: (value: GridSizes) => void;
          updateScreenForceFullDisplay: (value: boolean) => void;
          updateMainGridStream: (value: CustomMediaComponent[]) => void;
          updateOtherGridStreams: (value: CustomMediaComponent[][]) => void;
          updateAudioOnlyStreams: (value: CustomMediaComponent[]) => void;
          updateVideoInputs: (value: MediaDeviceInfo[]) => void;
          updateAudioInputs: (value: MediaDeviceInfo[]) => void;
          updateMeetingProgressTime: (value: string) => void;
          updateMeetingElapsedTime: (value: number) => void;
          updateRef_participants: (value: Participant[]) => void;
          updateMessages: (value: Message[]) => void;
          updateStartDirectMessage: (value: boolean) => void;
          updateDirectMessageDetails: (value: Participant | null) => void;
          updateShowMessagesBadge: (value: boolean) => void;
          updateAudioSetting: (value: string) => void;
          updateVideoSetting: (value: string) => void;
          updateScreenshareSetting: (value: string) => void;
          updateChatSetting: (value: string) => void;
          updateAutoWave: (value: boolean) => void;
          updateForceFullDisplay: (value: boolean) => void;
          updatePrevForceFullDisplay: (value: boolean) => void;
          updatePrevMeetingDisplayType: (value: string) => void;
          updateWaitingRoomFilter: (value: string) => void;
          updateWaitingRoomList: (value: WaitingRoomParticipant[]) => void;
          updateWaitingRoomCounter: (value: number) => void;
          updateRequestFilter: (value: string) => void;
          updateRequestList: (value: Request[]) => void;
          updateRequestCounter: (value: number) => void;
          updateTotalReqWait: (value: number) => void;
          updateIsMenuModalVisible: (value: boolean) => void;
          updateIsRecordingModalVisible: (value: boolean) => void;
          updateIsSettingsModalVisible: (value: boolean) => void;
          updateIsRequestsModalVisible: (value: boolean) => void;
          updateIsWaitingModalVisible: (value: boolean) => void;
          updateIsCoHostModalVisible: (value: boolean) => void;
          updateIsMediaSettingsModalVisible: (value: boolean) => void;
          updateIsDisplaySettingsModalVisible: (value: boolean) => void;
          updateIsParticipantsModalVisible: (value: boolean) => void;
          updateIsMessagesModalVisible: (value: boolean) => void;
          updateIsConfirmExitModalVisible: (value: boolean) => void;
          updateIsConfirmHereModalVisible: (value: boolean) => void;
          updateIsLoadingModalVisible: (value: boolean) => void;
          updateRecordingMediaOptions: (value: string) => void;
          updateRecordingAudioOptions: (value: string) => void;
          updateRecordingVideoOptions: (value: string) => void;
          updateRecordingVideoType: (value: string) => void;
          updateRecordingVideoOptimized: (value: boolean) => void;
          updateRecordingDisplayType: (value: "video" | "media" | "all") => void;
          updateRecordingAddHLS: (value: boolean) => void;
          updateRecordingAddText: (value: boolean) => void;
          updateRecordingCustomText: (value: string) => void;
          updateRecordingCustomTextPosition: (value: string) => void;
          updateRecordingCustomTextColor: (value: string) => void;
          updateRecordingNameTags: (value: boolean) => void;
          updateRecordingBackgroundColor: (value: string) => void;
          updateRecordingNameTagsColor: (value: string) => void;
          updateRecordingOrientationVideo: (value: string) => void;
          updateClearedToResume: (value: boolean) => void;
          updateClearedToRecord: (value: boolean) => void;
          updateRecordState: (value: string) => void;
          updateShowRecordButtons: (value: boolean) => void;
          updateRecordingProgressTime: (value: string) => void;
          updateAudioSwitching: (value: boolean) => void;
          updateVideoSwitching: (value: boolean) => void;
          updateVideoAlreadyOn: (value: boolean) => void;
          updateAudioAlreadyOn: (value: boolean) => void;
          updateComponentSizes: (sizes: ComponentSizes) => void;
          updateHasCameraPermission: (value: boolean) => void;
          updateHasAudioPermission: (value: boolean) => void;
          updateTransportCreated: (value: boolean) => void;
          updateLocalTransportCreated: (value: boolean) => void;
          updateTransportCreatedVideo: (value: boolean) => void;
          updateTransportCreatedAudio: (value: boolean) => void;
          updateTransportCreatedScreen: (value: boolean) => void;
          updateProducerTransport: (value: Transport | null) => void;
          updateLocalProducerTransport: (value: Transport | null) => void;
          updateVideoProducer: (value: Producer | null) => void;
          updateLocalVideoProducer: (value: Producer | null) => void;
          updateParams: (value: ProducerOptions) => void;
          updateVideoParams: (value: ProducerOptions) => void;
          updateAudioParams: (value: ProducerOptions) => void;
          updateAudioProducer: (value: Producer | null) => void;
          updateAudioLevel: (value: number) => void;
          updateLocalAudioProducer: (value: Producer | null) => void;
          updateConsumerTransports: (value: Transport[]) => void;
          updateConsumingTransports: (value: string[]) => void;
          updatePolls: (value: Poll[]) => void;
          updatePoll: (value: Poll | null) => void;
          updateIsPollModalVisible: (value: boolean) => void;
          updateCustomImage: (value: string) => void;
          updateSelectedImage: (value: string) => void;
          updateSegmentVideo: (value: MediaStream | null) => void;
          updateSelfieSegmentation: (value: SelfieSegmentation | null) => void;
          updatePauseSegmentation: (value: boolean) => void;
          updateProcessedStream: (value: MediaStream | null) => void;
          updateKeepBackground: (value: boolean) => void;
          updateBackgroundHasChanged: (value: boolean) => void;
          updateVirtualStream: (value: MediaStream | null) => void;
          updateMainCanvas: (value: HTMLCanvasElement | null) => void;
          updatePrevKeepBackground: (value: boolean) => void;
          updateAppliedBackground: (value: boolean) => void;
          updateIsBackgroundModalVisible: (value: boolean) => void;
          updateAutoClickBackground: (value: boolean) => void;
          updateBreakoutRooms: (value: BreakoutParticipant[][]) => void;
          updateCurrentRoomIndex: (value: number) => void;
          updateCanStartBreakout: (value: boolean) => void;
          updateBreakOutRoomStarted: (value: boolean) => void;
          updateBreakOutRoomEnded: (value: boolean) => void;
          updateHostNewRoom: (value: number) => void;
          updateLimitedBreakRoom: (value: BreakoutParticipant[]) => void;
          updateMainRoomsLength: (value: number) => void;
          updateMemberRoom: (value: number) => void;
          updateIsBreakoutRoomsModalVisible: (value: boolean) => void;
          updateWhiteboardUsers: (value: WhiteboardUser[]) => void;
          updateCurrentWhiteboardIndex: (value: number) => void;
          updateCanStartWhiteboard: (value: boolean) => void;
          updateWhiteboardStarted: (value: boolean) => void;
          updateWhiteboardEnded: (value: boolean) => void;
          updateWhiteboardLimit: (value: number) => void;
          updateIsWhiteboardModalVisible: (value: boolean) => void;
          updateIsConfigureWhiteboardModalVisible: (value: boolean) => void;
          updateShapes: (value: Shape[]) => void;
          updateUseImageBackground: (value: boolean) => void;
          updateRedoStack: (value: Shape[]) => void;
          updateUndoStack: (value: string[]) => void;
          updateCanvasStream: (value: MediaStream | null) => void;
          updateCanvasWhiteboard: (value: HTMLCanvasElement | null) => void;
          updateCanvasScreenboard: (value: HTMLCanvasElement | null) => void;
          updateProcessedScreenStream: (value: MediaStream | null) => void;
          updateAnnotateScreenStream: (value: boolean) => void;
          updateMainScreenCanvas: (value: HTMLCanvasElement | null) => void;
          updateIsScreenboardModalVisible: (value: boolean) => void;
          checkOrientation: () => "landscape" | "portrait";
          updateDevice: (value: Device | null) => void;
          updateSocket: (value: Socket) => void;
          updateLocalSocket: (
              value: Socket<DefaultEventsMap, DefaultEventsMap> | null,
          ) => void;
          updateValidated: (value: boolean) => void;
          customVideoCard: any;
          customAudioCard: any;
          customMiniCard: any;
          showAlert: (
              __namedParameters: {
                  message: string;
                  type: "success" | "danger";
                  duration?: number;
              },
          ) => void;
          getUpdatedAllParams: () => any;
      }

    • A callback method that is invoked immediately after the default change detector has checked the directive's data-bound properties for the first time, and before any of the view or content children have been checked. It is invoked only once when the directive is instantiated.

      Returns void

    • Parameters

      • __namedParameters: {
            containerWidthFraction?: number;
            containerHeightFraction?: number;
            mainSize: number;
            doStack?: boolean;
            defaultFraction: number;
        }

      Returns ComponentSizes

    • Parameters

      • __namedParameters: {
            parentWidth: number;
            parentHeight: number;
            isWideScreen: boolean;
            mainSize: number;
            doStack: boolean;
        }

      Returns ComponentSizes

    • Parameters

      • data: {
            socket: Socket;
            roomName: string;
            islevel: string;
            member: string;
            sec: string;
            apiUserName: string;
        }

      Returns Promise<ResponseJoinRoom | null>

    • Parameters

      • __namedParameters: {
            socket: Socket;
            roomName: string;
            islevel: string;
            member: string;
            sec: string;
            apiUserName: string;
            isLocal?: boolean;
        }

      Returns Promise<void>

    • Parameters

      • apiUserName: string
      • token: string
      • skipSockets: boolean = false

      Returns Promise<Socket<DefaultEventsMap, DefaultEventsMap> | null>

    Properties

    PrejoinPage: any = WelcomePage
    localLink: string = ''
    connectMediaSFU: boolean = true
    credentials: { apiUserName: string; apiKey: string } = ...
    useLocalUIMode: boolean = false
    seedData?: SeedData
    useSeed: boolean = false
    imgSrc: string = 'https://mediasfu.com/images/logo192.png'
    sourceParameters?: { [key: string]: any } = {}
    returnUI?: boolean = true
    joinMediaSFURoom?: JoinRoomOnMediaSFUType
    createMediaSFURoom?: CreateRoomOnMediaSFUType
    customVideoCard?: any
    customAudioCard?: any
    customMiniCard?: any
    customMainComponent?: any
    containerStyle?: Record<string, any>
    title: string = 'MediaSFU-Chat'

    The title of the component, defaults to "MediaSFU-Chat".

    MainContainerComponentRef: typeof MainContainerComponent = MainContainerComponent
    MainAspectComponentRef: typeof MainAspectComponent = MainAspectComponent
    MainScreenComponentRef: typeof MainScreenComponent = MainScreenComponent
    OtherGridComponentRef: typeof OtherGridComponent = OtherGridComponent
    FlexibleGridRef: typeof FlexibleGrid = FlexibleGrid
    ControlButtonsComponentTouchRef: typeof ControlButtonsComponentTouch = ControlButtonsComponentTouch
    AudioGridRef: typeof AudioGrid = AudioGrid
    AlertComponentRef: typeof AlertComponent = AlertComponent
    LoadingModalRef: typeof LoadingModal = LoadingModal
    MessagesModalRef: typeof MessagesModal = MessagesModal
    ConfirmExitModalRef: typeof ConfirmExitModal = ConfirmExitModal
    ConfirmHereModalRef: typeof ConfirmHereModal = ConfirmHereModal
    ShareEventModalRef: typeof ShareEventModal = ShareEventModal
    updateMiniCardsGrid: UpdateMiniCardsGrid
    mixStreams: MixStreams
    dispStreams: DispStreams
    stopShareScreen: StopShareScreen
    checkScreenShare: CheckScreenShare
    startShareScreen: StartShareScreen
    requestScreenShare: RequestScreenShare
    reorderStreams: ReorderStreams
    prepopulateUserMedia: PrepopulateUserMedia
    getVideos: GetVideos
    rePort: RePort
    trigger: Trigger
    consumerResume: ConsumerResume
    connectSendTransport: ConnectSendTransport
    connectSendTransportAudio: ConnectSendTransportAudio
    connectSendTransportVideo: ConnectSendTransportVideo
    connectSendTransportScreen: ConnectSendTransportScreen
    processConsumerTransports: ProcessConsumerTransports
    resumePauseStreams: ResumePauseStreams
    readjust: Readjust
    checkGrid: CheckGrid
    getEstimate: GetEstimate
    calculateRowsAndColumns: CalculateRowsAndColumns
    addVideosGrid: AddVideosGrid
    onScreenChanges: OnScreenChanges
    changeVids: ChangeVids
    compareActiveNames: CompareActiveNames
    compareScreenStates: CompareScreenStates
    createSendTransport: CreateSendTransport
    resumeSendTransportAudio: ResumeSendTransportAudio
    receiveAllPipedTransports: ReceiveAllPipedTransports
    disconnectSendTransportVideo: DisconnectSendTransportVideo
    disconnectSendTransportAudio: DisconnectSendTransportAudio
    disconnectSendTransportScreen: DisconnectSendTransportScreen
    getPipedProducersAlt: GetPipedProducersAlt
    signalNewConsumerTransport: SignalNewConsumerTransport
    connectRecvTransport: ConnectRecvTransport
    reUpdateInter: ReUpdateInter
    updateParticipantAudioDecibels: UpdateParticipantAudioDecibels
    closeAndResize: CloseAndResize
    autoAdjust: AutoAdjust
    switchUserVideoAlt: SwitchUserVideoAlt
    switchUserVideo: SwitchUserVideo
    switchUserAudio: SwitchUserAudio
    getDomains: GetDomains
    formatNumber: FormatNumber
    connectIps: ConnectIps
    connectLocalIps: ConnectLocalIps
    createDeviceClient: CreateDeviceClient
    captureCanvasStream: CaptureCanvasStream
    resumePauseAudioStreams: ResumePauseAudioStreams
    processConsumerTransportsAudio: ProcessConsumerTransportsAudio
    launchMessages: LaunchMessages
    launchConfirmExit: LaunchConfirmExit
    startMeetingProgressTimer: StartMeetingProgressTimer
    producerMediaPaused: ProducerMediaPaused
    producerMediaResumed: ProducerMediaResumed
    producerMediaClosed: ProducerMediaClosed
    meetingEnded: MeetingEnded
    disconnectUserSelf: DisconnectUserSelf
    receiveMessage: ReceiveMessage
    meetingTimeRemaining: MeetingTimeRemaining
    meetingStillThere: MeetingStillThere
    allMembers: AllMembers
    allMembersRest: AllMembersRest
    disconnect: Disconnect
    socketManager: SocketManager
    joinRoomClient: JoinRoomClient
    joinLocalRoom: JoinLocalRoom
    updateRoomParametersClient: UpdateRoomParametersClient
    clickVideo: ClickVideo
    clickAudio: ClickAudio
    clickScreenShare: ClickScreenShare
    switchVideoAlt: SwitchVideoAlt
    streamSuccessVideo: StreamSuccessVideo
    streamSuccessAudio: StreamSuccessAudio
    streamSuccessScreen: StreamSuccessScreen
    streamSuccessAudioSwitch: StreamSuccessAudioSwitch
    checkPermission: CheckPermission
    updateConsumingDomains: UpdateConsumingDomains
    receiveRoomMessages: ReceiveRoomMessages
    validated: BehaviorSubject<boolean> = ...
    localUIMode: BehaviorSubject<boolean> = ...
    socket: BehaviorSubject<Socket<DefaultEventsMap, DefaultEventsMap>> = ...
    localSocket?: BehaviorSubject<
        Socket<DefaultEventsMap, DefaultEventsMap>
        | undefined,
    > = ...
    roomData: BehaviorSubject<ResponseJoinRoom | null> = ...
    device: BehaviorSubject<Device | null> = ...
    apiKey: BehaviorSubject<string> = ...
    apiUserName: BehaviorSubject<string> = ...
    apiToken: BehaviorSubject<string> = ...
    link: BehaviorSubject<string> = ...
    roomName: BehaviorSubject<string> = ...
    member: BehaviorSubject<string> = ...
    adminPasscode: BehaviorSubject<string> = ...
    islevel: BehaviorSubject<string> = ...
    coHost: BehaviorSubject<string> = ...
    coHostResponsibility: BehaviorSubject<CoHostResponsibility[]> = ...
    youAreCoHost: BehaviorSubject<boolean> = ...
    youAreHost: BehaviorSubject<boolean> = ...
    confirmedToRecord: BehaviorSubject<boolean> = ...
    meetingDisplayType: BehaviorSubject<string> = ...
    meetingVideoOptimized: BehaviorSubject<boolean> = ...
    eventType: BehaviorSubject<EventType> = ...
    participants: BehaviorSubject<Participant[]> = ...
    filteredParticipants: BehaviorSubject<Participant[]> = ...
    participantsCounter: BehaviorSubject<number> = ...
    participantsFilter: BehaviorSubject<string> = ...
    consume_sockets: BehaviorSubject<ConsumeSocket[]> = ...
    rtpCapabilities: BehaviorSubject<RtpCapabilities | null> = ...
    roomRecvIPs: BehaviorSubject<string[]> = ...
    meetingRoomParams: BehaviorSubject<MeetingRoomParams | null> = ...
    itemPageLimit: BehaviorSubject<number> = ...
    audioOnlyRoom: BehaviorSubject<boolean> = ...
    addForBasic: BehaviorSubject<boolean> = ...
    screenPageLimit: BehaviorSubject<number> = ...
    shareScreenStarted: BehaviorSubject<boolean> = ...
    shared: BehaviorSubject<boolean> = ...
    targetOrientation: BehaviorSubject<string> = ...
    targetResolution: BehaviorSubject<string> = ...
    targetResolutionHost: BehaviorSubject<string> = ...
    vidCons: BehaviorSubject<VidCons> = ...
    frameRate: BehaviorSubject<number> = ...
    hParams: BehaviorSubject<HParamsType> = ...
    vParams: BehaviorSubject<VParamsType> = ...
    screenParams: BehaviorSubject<ScreenParamsType> = ...
    aParams: BehaviorSubject<AParamsType> = ...
    recordingAudioPausesLimit: BehaviorSubject<number> = ...
    recordingAudioPausesCount: BehaviorSubject<number> = ...
    recordingAudioSupport: BehaviorSubject<boolean> = ...
    recordingAudioPeopleLimit: BehaviorSubject<number> = ...
    recordingAudioParticipantsTimeLimit: BehaviorSubject<number> = ...
    recordingVideoPausesCount: BehaviorSubject<number> = ...
    recordingVideoPausesLimit: BehaviorSubject<number> = ...
    recordingVideoSupport: BehaviorSubject<boolean> = ...
    recordingVideoPeopleLimit: BehaviorSubject<number> = ...
    recordingVideoParticipantsTimeLimit: BehaviorSubject<number> = ...
    recordingAllParticipantsSupport: BehaviorSubject<boolean> = ...
    recordingVideoParticipantsSupport: BehaviorSubject<boolean> = ...
    recordingAllParticipantsFullRoomSupport: BehaviorSubject<boolean> = ...
    recordingVideoParticipantsFullRoomSupport: BehaviorSubject<boolean> = ...
    recordingPreferredOrientation: BehaviorSubject<string> = ...
    recordingSupportForOtherOrientation: BehaviorSubject<boolean> = ...
    recordingMultiFormatsSupport: BehaviorSubject<boolean> = ...
    userRecordingParams: BehaviorSubject<UserRecordingParams> = ...
    canRecord: BehaviorSubject<boolean> = ...
    startReport: BehaviorSubject<boolean> = ...
    endReport: BehaviorSubject<boolean> = ...
    recordTimerInterval: BehaviorSubject<Timeout | null> = ...
    recordStartTime: BehaviorSubject<number> = ...
    recordElapsedTime: BehaviorSubject<number> = ...
    isTimerRunning: BehaviorSubject<boolean> = ...
    canPauseResume: BehaviorSubject<boolean> = ...
    recordChangeSeconds: BehaviorSubject<number> = ...
    pauseLimit: BehaviorSubject<number> = ...
    pauseRecordCount: BehaviorSubject<number> = ...
    canLaunchRecord: BehaviorSubject<boolean> = ...
    stopLaunchRecord: BehaviorSubject<boolean> = ...
    participantsAll: BehaviorSubject<Participant[]> = ...
    firstAll: BehaviorSubject<boolean> = ...
    updateMainWindow: BehaviorSubject<boolean> = ...
    first_round: BehaviorSubject<boolean> = ...
    landScaped: BehaviorSubject<boolean> = ...
    lock_screen: BehaviorSubject<boolean> = ...
    screenId: BehaviorSubject<string> = ...
    allVideoStreams: BehaviorSubject<(Participant | Stream)[]> = ...
    newLimitedStreams: BehaviorSubject<(Participant | Stream)[]> = ...
    newLimitedStreamsIDs: BehaviorSubject<string[]> = ...
    activeSounds: BehaviorSubject<string[]> = ...
    screenShareIDStream: BehaviorSubject<string> = ...
    screenShareNameStream: BehaviorSubject<string> = ...
    adminIDStream: BehaviorSubject<string> = ...
    adminNameStream: BehaviorSubject<string> = ...
    youYouStream: BehaviorSubject<(Participant | Stream)[]> = ...
    youYouStreamIDs: BehaviorSubject<string[]> = ...
    localStream: BehaviorSubject<MediaStream | null> = ...
    recordStarted: BehaviorSubject<boolean> = ...
    recordResumed: BehaviorSubject<boolean> = ...
    recordPaused: BehaviorSubject<boolean> = ...
    recordStopped: BehaviorSubject<boolean> = ...
    adminRestrictSetting: BehaviorSubject<boolean> = ...
    videoRequestState: BehaviorSubject<string | null> = ...
    videoRequestTime: BehaviorSubject<number> = ...
    videoAction: BehaviorSubject<boolean> = ...
    localStreamVideo: BehaviorSubject<MediaStream | null> = ...
    userDefaultVideoInputDevice: BehaviorSubject<string> = ...
    currentFacingMode: BehaviorSubject<string> = ...
    prevFacingMode: BehaviorSubject<string> = ...
    defVideoID: BehaviorSubject<string> = ...
    allowed: BehaviorSubject<boolean> = ...
    dispActiveNames: BehaviorSubject<string[]> = ...
    p_dispActiveNames: BehaviorSubject<string[]> = ...
    activeNames: BehaviorSubject<string[]> = ...
    prevActiveNames: BehaviorSubject<string[]> = ...
    p_activeNames: BehaviorSubject<string[]> = ...
    membersReceived: BehaviorSubject<boolean> = ...
    deferScreenReceived: BehaviorSubject<boolean> = ...
    hostFirstSwitch: BehaviorSubject<boolean> = ...
    micAction: BehaviorSubject<boolean> = ...
    screenAction: BehaviorSubject<boolean> = ...
    chatAction: BehaviorSubject<boolean> = ...
    audioRequestState: BehaviorSubject<string | null> = ...
    screenRequestState: BehaviorSubject<string | null> = ...
    chatRequestState: BehaviorSubject<string | null> = ...
    audioRequestTime: BehaviorSubject<number> = ...
    screenRequestTime: BehaviorSubject<number> = ...
    chatRequestTime: BehaviorSubject<number> = ...
    updateRequestIntervalSeconds: BehaviorSubject<number> = ...
    oldSoundIds: BehaviorSubject<string[]> = ...
    hostLabel: BehaviorSubject<string> = ...
    mainScreenFilled: BehaviorSubject<boolean> = ...
    localStreamScreen: BehaviorSubject<MediaStream | null> = ...
    screenAlreadyOn: BehaviorSubject<boolean> = ...
    chatAlreadyOn: BehaviorSubject<boolean> = ...
    redirectURL: BehaviorSubject<string> = ...
    oldAllStreams: BehaviorSubject<(Participant | Stream)[]> = ...
    adminVidID: BehaviorSubject<string> = ...
    streamNames: BehaviorSubject<Stream[]> = ...
    non_alVideoStreams: BehaviorSubject<Participant[]> = ...
    sortAudioLoudness: BehaviorSubject<boolean> = ...
    audioDecibels: BehaviorSubject<AudioDecibels[]> = ...
    mixed_alVideoStreams: BehaviorSubject<(Participant | Stream)[]> = ...
    non_alVideoStreams_muted: BehaviorSubject<Participant[]> = ...
    paginatedStreams: BehaviorSubject<(Participant | Stream)[][]> = ...
    localStreamAudio: BehaviorSubject<MediaStream | null> = ...
    defAudioID: BehaviorSubject<string> = ...
    userDefaultAudioInputDevice: BehaviorSubject<string> = ...
    userDefaultAudioOutputDevice: BehaviorSubject<string> = ...
    prevAudioInputDevice: BehaviorSubject<string> = ...
    prevVideoInputDevice: BehaviorSubject<string> = ...
    audioPaused: BehaviorSubject<boolean> = ...
    mainScreenPerson: BehaviorSubject<string> = ...
    adminOnMainScreen: BehaviorSubject<boolean> = ...
    screenStates: BehaviorSubject<ScreenState[]> = ...
    prevScreenStates: BehaviorSubject<ScreenState[]> = ...
    updateDateState: BehaviorSubject<number | null> = ...
    lastUpdate: BehaviorSubject<number | null> = ...
    nForReadjustRecord: BehaviorSubject<number> = ...
    fixedPageLimit: BehaviorSubject<number> = ...
    removeAltGrid: BehaviorSubject<boolean> = ...
    nForReadjust: BehaviorSubject<number> = ...
    reorderInterval: BehaviorSubject<number> = ...
    fastReorderInterval: BehaviorSubject<number> = ...
    lastReorderTime: BehaviorSubject<number> = ...
    audStreamNames: BehaviorSubject<Stream[]> = ...
    currentUserPage: BehaviorSubject<number> = ...
    mainHeightWidth: BehaviorSubject<number> = ...
    prevMainHeightWidth: BehaviorSubject<number> = ...
    prevDoPaginate: BehaviorSubject<boolean> = ...
    doPaginate: BehaviorSubject<boolean> = ...
    shareEnded: BehaviorSubject<boolean> = ...
    lStreams: BehaviorSubject<(Participant | Stream)[]> = ...
    chatRefStreams: BehaviorSubject<(Participant | Stream)[]> = ...
    controlHeight: BehaviorSubject<number> = ...
    isWideScreen: BehaviorSubject<boolean> = ...
    isMediumScreen: BehaviorSubject<boolean> = ...
    isSmallScreen: BehaviorSubject<boolean> = ...
    addGrid: BehaviorSubject<boolean> = ...
    addAltGrid: BehaviorSubject<boolean> = ...
    gridRows: BehaviorSubject<number> = ...
    gridCols: BehaviorSubject<number> = ...
    altGridRows: BehaviorSubject<number> = ...
    altGridCols: BehaviorSubject<number> = ...
    numberPages: BehaviorSubject<number> = ...
    currentStreams: BehaviorSubject<(Participant | Stream)[]> = ...
    showMiniView: BehaviorSubject<boolean> = ...
    nStream: BehaviorSubject<MediaStream | null> = ...
    defer_receive: BehaviorSubject<boolean> = ...
    allAudioStreams: BehaviorSubject<(Participant | Stream)[]> = ...
    remoteScreenStream: BehaviorSubject<Stream[]> = ...
    screenProducer: BehaviorSubject<Producer | null> = ...
    localScreenProducer: BehaviorSubject<Producer | null> = ...
    gotAllVids: BehaviorSubject<boolean> = ...
    paginationHeightWidth: BehaviorSubject<number> = ...
    paginationDirection: BehaviorSubject<"horizontal" | "vertical"> = ...
    gridSizes: BehaviorSubject<GridSizes> = ...
    screenForceFullDisplay: BehaviorSubject<boolean> = ...
    mainGridStream: BehaviorSubject<CustomMediaComponent[]> = ...
    otherGridStreams: BehaviorSubject<CustomMediaComponent[][]> = ...
    audioOnlyStreams: BehaviorSubject<CustomMediaComponent[]> = ...
    videoInputs: BehaviorSubject<MediaDeviceInfo[]> = ...
    audioInputs: BehaviorSubject<MediaDeviceInfo[]> = ...
    meetingProgressTime: BehaviorSubject<string> = ...
    meetingElapsedTime: BehaviorSubject<number> = ...
    ref_participants: BehaviorSubject<Participant[]> = ...
    messages: BehaviorSubject<Message[]> = ...
    startDirectMessage: BehaviorSubject<boolean> = ...
    directMessageDetails: BehaviorSubject<Participant | null> = ...
    showMessagesBadge: BehaviorSubject<boolean> = ...
    audioSetting: BehaviorSubject<string> = ...
    videoSetting: BehaviorSubject<string> = ...
    screenshareSetting: BehaviorSubject<string> = ...
    chatSetting: BehaviorSubject<string> = ...
    displayOption: BehaviorSubject<string> = ...
    autoWave: BehaviorSubject<boolean> = ...
    forceFullDisplay: BehaviorSubject<boolean> = ...
    prevForceFullDisplay: BehaviorSubject<boolean> = ...
    prevMeetingDisplayType: BehaviorSubject<string> = ...
    waitingRoomFilter: BehaviorSubject<string> = ...
    waitingRoomList: BehaviorSubject<WaitingRoomParticipant[]> = ...
    waitingRoomCounter: BehaviorSubject<number> = ...
    filteredWaitingRoomList: BehaviorSubject<WaitingRoomParticipant[]> = ...
    requestFilter: BehaviorSubject<string> = ...
    requestList: BehaviorSubject<Request[]> = ...
    requestCounter: BehaviorSubject<number> = ...
    filteredRequestList: BehaviorSubject<Request[]> = ...
    totalReqWait: BehaviorSubject<number> = ...
    alertVisible: BehaviorSubject<boolean> = ...
    alertMessage: BehaviorSubject<string> = ...
    alertType: BehaviorSubject<"success" | "danger"> = ...
    alertDuration: BehaviorSubject<number> = ...
    progressTimerVisible: BehaviorSubject<boolean> = ...
    progressTimerValue: BehaviorSubject<number> = ...
    isMenuModalVisible: BehaviorSubject<boolean> = ...
    isRecordingModalVisible: BehaviorSubject<boolean> = ...
    isSettingsModalVisible: BehaviorSubject<boolean> = ...
    isRequestsModalVisible: BehaviorSubject<boolean> = ...
    isWaitingModalVisible: BehaviorSubject<boolean> = ...
    isCoHostModalVisible: BehaviorSubject<boolean> = ...
    isMediaSettingsModalVisible: BehaviorSubject<boolean> = ...
    isDisplaySettingsModalVisible: BehaviorSubject<boolean> = ...
    isParticipantsModalVisible: BehaviorSubject<boolean> = ...
    isMessagesModalVisible: BehaviorSubject<boolean> = ...
    isConfirmExitModalVisible: BehaviorSubject<boolean> = ...
    isConfirmHereModalVisible: BehaviorSubject<boolean> = ...
    isShareEventModalVisible: BehaviorSubject<boolean> = ...
    isLoadingModalVisible: BehaviorSubject<boolean> = ...
    recordingMediaOptions: BehaviorSubject<string> = ...
    recordingAudioOptions: BehaviorSubject<string> = ...
    recordingVideoOptions: BehaviorSubject<string> = ...
    recordingVideoType: BehaviorSubject<string> = ...
    recordingVideoOptimized: BehaviorSubject<boolean> = ...
    recordingDisplayType: BehaviorSubject<"video" | "media" | "all"> = ...
    recordingAddHLS: BehaviorSubject<boolean> = ...
    recordingNameTags: BehaviorSubject<boolean> = ...
    recordingBackgroundColor: BehaviorSubject<string> = ...
    recordingNameTagsColor: BehaviorSubject<string> = ...
    recordingAddText: BehaviorSubject<boolean> = ...
    recordingCustomText: BehaviorSubject<string> = ...
    recordingCustomTextPosition: BehaviorSubject<string> = ...
    recordingCustomTextColor: BehaviorSubject<string> = ...
    recordingOrientationVideo: BehaviorSubject<string> = ...
    clearedToResume: BehaviorSubject<boolean> = ...
    clearedToRecord: BehaviorSubject<boolean> = ...
    recordState: BehaviorSubject<string> = ...
    showRecordButtons: BehaviorSubject<boolean> = ...
    recordingProgressTime: BehaviorSubject<string> = ...
    audioSwitching: BehaviorSubject<boolean> = ...
    videoSwitching: BehaviorSubject<boolean> = ...
    videoAlreadyOn: BehaviorSubject<boolean> = ...
    audioAlreadyOn: BehaviorSubject<boolean> = ...
    componentSizes: BehaviorSubject<ComponentSizes> = ...
    hasCameraPermission: BehaviorSubject<boolean> = ...
    hasAudioPermission: BehaviorSubject<boolean> = ...
    transportCreated: BehaviorSubject<boolean> = ...
    localTransportCreated: BehaviorSubject<boolean> = ...
    transportCreatedVideo: BehaviorSubject<boolean> = ...
    transportCreatedAudio: BehaviorSubject<boolean> = ...
    transportCreatedScreen: BehaviorSubject<boolean> = ...
    producerTransport: BehaviorSubject<Transport | null> = ...
    localProducerTransport: BehaviorSubject<Transport | null> = ...
    videoProducer: BehaviorSubject<Producer | null> = ...
    localVideoProducer: BehaviorSubject<Producer | null> = ...
    params: BehaviorSubject<ProducerOptions> = ...
    videoParams: BehaviorSubject<ProducerOptions> = ...
    audioParams: BehaviorSubject<ProducerOptions> = ...
    audioProducer: BehaviorSubject<Producer | null> = ...
    audioLevel: BehaviorSubject<number> = ...
    localAudioProducer: BehaviorSubject<Producer | null> = ...
    consumerTransports: BehaviorSubject<Transport[]> = ...
    consumingTransports: BehaviorSubject<string[]> = ...
    polls: BehaviorSubject<Poll[]> = ...
    poll: BehaviorSubject<Poll | null> = ...
    isPollModalVisible: BehaviorSubject<boolean> = ...
    customImage: BehaviorSubject<string> = ...
    selectedImage: BehaviorSubject<string> = ...
    segmentVideo: BehaviorSubject<MediaStream | null> = ...
    selfieSegmentation: BehaviorSubject<SelfieSegmentation | null> = ...
    pauseSegmentation: BehaviorSubject<boolean> = ...
    processedStream: BehaviorSubject<MediaStream | null> = ...
    keepBackground: BehaviorSubject<boolean> = ...
    backgroundHasChanged: BehaviorSubject<boolean> = ...
    virtualStream: BehaviorSubject<MediaStream | null> = ...
    mainCanvas: BehaviorSubject<HTMLCanvasElement | null> = ...
    prevKeepBackground: BehaviorSubject<boolean> = ...
    appliedBackground: BehaviorSubject<boolean> = ...
    isBackgroundModalVisible: BehaviorSubject<boolean> = ...
    autoClickBackground: BehaviorSubject<boolean> = ...
    breakoutRooms: BehaviorSubject<BreakoutParticipant[][]> = ...
    currentRoomIndex: BehaviorSubject<number> = ...
    canStartBreakout: BehaviorSubject<boolean> = ...
    breakOutRoomStarted: BehaviorSubject<boolean> = ...
    breakOutRoomEnded: BehaviorSubject<boolean> = ...
    hostNewRoom: BehaviorSubject<number> = ...
    limitedBreakRoom: BehaviorSubject<BreakoutParticipant[]> = ...
    mainRoomsLength: BehaviorSubject<number> = ...
    memberRoom: BehaviorSubject<number> = ...
    isBreakoutRoomsModalVisible: BehaviorSubject<boolean> = ...
    whiteboardUsers: BehaviorSubject<WhiteboardUser[]> = ...
    currentWhiteboardIndex: BehaviorSubject<number> = ...
    canStartWhiteboard: BehaviorSubject<boolean> = ...
    whiteboardStarted: BehaviorSubject<boolean> = ...
    whiteboardEnded: BehaviorSubject<boolean> = ...
    whiteboardLimit: BehaviorSubject<number> = ...
    isWhiteboardModalVisible: BehaviorSubject<boolean> = ...
    isConfigureWhiteboardModalVisible: BehaviorSubject<boolean> = ...
    shapes: BehaviorSubject<Shape[]> = ...
    useImageBackground: BehaviorSubject<boolean> = ...
    redoStack: BehaviorSubject<Shape[]> = ...
    undoStack: BehaviorSubject<string[]> = ...
    canvasStream: BehaviorSubject<MediaStream | null> = ...
    canvasWhiteboard: BehaviorSubject<HTMLCanvasElement | null> = ...
    canvasScreenboard: BehaviorSubject<HTMLCanvasElement | null> = ...
    processedScreenStream: BehaviorSubject<MediaStream | null> = ...
    annotateScreenStream: BehaviorSubject<boolean> = ...
    mainScreenCanvas: BehaviorSubject<HTMLCanvasElement | null> = ...
    isScreenboardModalVisible: BehaviorSubject<boolean> = ...
    micActive: BehaviorSubject<boolean> = ...
    videoActive: BehaviorSubject<boolean> = ...
    screenShareActive: BehaviorSubject<boolean> = ...
    endCallActive: BehaviorSubject<boolean> = ...
    participantsActive: BehaviorSubject<boolean> = ...
    menuActive: BehaviorSubject<boolean> = ...
    commentsActive: BehaviorSubject<boolean> = ...
    mediaSFUParameters: any = ...
    PrejoinPageComponent: any = ...
    orientation: string = ...
    faMicrophone: IconDefinition = faMicrophone
    faMicrophoneSlash: IconDefinition = faMicrophoneSlash
    faVideo: IconDefinition = faVideo
    faVideoSlash: IconDefinition = faVideoSlash
    faSync: IconDefinition = faSync
    faPhone: IconDefinition = faPhone
    faShareAlt: IconDefinition = faShareAlt
    faComments: IconDefinition = faComments
    messageWidget: { component: typeof MessageWidget; injector: Injector } = ...
    controlChatButtons: ButtonTouch[] = []
    controlChatButtonsArray: ButtonTouch[] = ...