mediasfu-reactjs
Version:
MediaSFU Prebuilt ReactJS SDK - Compatible with React 18 & 19, TypeScript & JavaScript
357 lines • 12.4 kB
TypeScript
import { Producer, ProducerOptions, RtpCapabilities, Transport } from "mediasoup-client/lib/types";
import { AParamsType, CoHostResponsibility, EventType, HParamsType, Participant, Poll, ScreenParamsType, Stream, VidCons, VParamsType, ConsumeSocket, MeetingRoomParams, UserRecordingParams, ScreenState, AudioDecibels, GridSizes, Message, WaitingRoomParticipant, Request, BreakoutParticipant, WhiteboardUser, Shape, ResponseJoinRoom, ComponentSizes, Transport as TransportType } from "../../@types/types";
import { Device } from "mediasoup-client/lib/types";
import { Socket } from "socket.io-client";
import { SelfieSegmentation } from "@mediapipe/selfie_segmentation";
import { PermissionConfig } from "methods/permissionsMethods";
export interface InitialValuesStateType {
roomName: string;
member: string;
adminPasscode: string;
islevel: string;
coHost: string;
coHostResponsibility: CoHostResponsibility[];
youAreCoHost: boolean;
youAreHost: boolean;
confirmedToRecord: boolean;
meetingDisplayType: string;
meetingVideoOptimized: boolean;
eventType: EventType;
participants: Participant[];
filteredParticipants: Participant[];
participantsCounter: number;
participantsFilter: string;
validated: boolean;
localUIMode: boolean;
socket: Socket;
localSocket?: Socket;
roomData: ResponseJoinRoom | null;
device: Device | null;
apiKey: string;
apiUserName: string;
apiToken: string;
link: 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;
recordTimerInterval: NodeJS.Timeout | null;
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[];
activeNames: string[];
prevActiveNames: string[];
p_activeNames: string[];
p_dispActiveNames: 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;
reorderInterval: number;
fastReorderInterval: number;
lastReorderTime: 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)[];
remoteScreenStream: Stream[];
screenProducer: Producer | null;
localScreenProducer: Producer | null;
gotAllVids: boolean;
paginationHeightWidth: number;
paginationDirection: string;
gridSizes: GridSizes;
screenForceFullDisplay: boolean;
mainGridStream: React.JSX.Element[];
otherGridStreams: React.JSX.Element[][];
audioOnlyStreams: React.JSX.Element[];
videoInputs: MediaDeviceInfo[];
audioInputs: MediaDeviceInfo[];
meetingProgressTime: string;
meetingElapsedTime: number;
ref_participants: Participant[];
messages: Message[];
startDirectMessage: boolean;
directMessageDetails: Participant | null;
showMessagesBadge: boolean;
audioSetting: string;
videoSetting: string;
screenshareSetting: string;
chatSetting: string;
displayOption: 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" | "info" | "warning";
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;
isShareEventModalVisible: boolean;
isLoadingModalVisible: boolean;
recordingMediaOptions: string;
recordingAudioOptions: string;
recordingVideoOptions: string;
recordingVideoType: string;
recordingVideoOptimized: boolean;
recordingDisplayType: 'video' | 'media' | 'all';
recordingAddHLS: boolean;
recordingNameTags: boolean;
recordingBackgroundColor: string;
recordingNameTagsColor: string;
recordingAddText: boolean;
recordingCustomText: string;
recordingCustomTextPosition: string;
recordingCustomTextColor: 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;
localAudioProducer: Producer | null;
consumerTransports: TransportType[];
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;
micActive: boolean;
videoActive: boolean;
screenShareActive: boolean;
endCallActive: boolean;
participantsActive: boolean;
menuActive: boolean;
commentsActive: boolean;
permissionConfig: PermissionConfig | null;
panelistsFocused: boolean;
panelistFocusChanged: boolean;
panelists: Participant[];
muteOthersMic: boolean;
muteOthersCamera: boolean;
}
export declare const initialValuesState: InitialValuesStateType;
//# sourceMappingURL=initialValuesState.d.ts.map