mediasfu-reactnative-expo
Version:
mediasfu-reactnative-expo – Expo-managed React Native WebRTC SDK for video conferencing, webinars, live streaming, broadcast, screen sharing, whiteboard, chat, recording, live subtitles, translation, and AI agent rooms on iOS, Android, and web. Prebuilt r
71 lines (70 loc) • 3.19 kB
TypeScript
import { Stream, Participant, Transport, PrepopulateUserMediaParameters, PrepopulateUserMediaType, RePortParameters, RePortType, ProcessConsumerTransportsParameters, ProcessConsumerTransportsType, ResumePauseStreamsParameters, ResumePauseStreamsType, ReadjustParameters, ReadjustType, AddVideosGridType, AddVideosGridParameters, GetEstimateType, CheckGridType, ResumePauseAudioStreamsParameters, ResumePauseAudioStreamsType, GetEstimateParameters, EventType, MediaStream } from '../@types/types';
export interface DispStreamsParameters extends PrepopulateUserMediaParameters, RePortParameters, ProcessConsumerTransportsParameters, ResumePauseStreamsParameters, ReadjustParameters, ResumePauseAudioStreamsParameters, GetEstimateParameters, AddVideosGridParameters {
consumerTransports: Transport[];
streamNames: Stream[];
audStreamNames: Stream[];
participants: Participant[];
ref_participants: Participant[];
recordingDisplayType: 'video' | 'media' | 'all';
recordingVideoOptimized: boolean;
meetingDisplayType: string;
meetingVideoOptimized: boolean;
currentUserPage: number;
hostLabel: string;
mainHeightWidth: number;
prevMainHeightWidth: number;
prevDoPaginate: boolean;
doPaginate: boolean;
firstAll: boolean;
shared: boolean;
shareScreenStarted: boolean;
shareEnded: boolean;
oldAllStreams: (Stream | Participant)[];
updateMainWindow: boolean;
remoteProducerId?: string;
activeNames: string[];
dispActiveNames: string[];
p_dispActiveNames: string[];
nForReadjustRecord: number;
first_round: boolean;
lock_screen: boolean;
chatRefStreams: (Stream | Participant)[];
eventType: EventType;
islevel: string;
localStreamVideo: MediaStream | null;
breakOutRoomStarted: boolean;
breakOutRoomEnded: boolean;
keepBackground: boolean;
virtualStream: MediaStream | null;
updateActiveNames: (names: string[]) => void;
updateDispActiveNames: (names: string[]) => void;
updateLStreams: (streams: (Stream | Participant)[]) => void;
updateChatRefStreams: (streams: (Stream | Participant)[]) => void;
updateNForReadjustRecord: (n: number) => void;
updateUpdateMainWindow: (value: boolean) => void;
updateShowMiniView: (value: boolean) => void;
prepopulateUserMedia: PrepopulateUserMediaType;
rePort: RePortType;
processConsumerTransports: ProcessConsumerTransportsType;
resumePauseStreams: ResumePauseStreamsType;
readjust: ReadjustType;
addVideosGrid: AddVideosGridType;
getEstimate: GetEstimateType;
checkGrid: CheckGridType;
resumePauseAudioStreams: ResumePauseAudioStreamsType;
getUpdatedAllParams: () => DispStreamsParameters;
[key: string]: any;
}
export interface DispStreamsOptions {
lStreams: (Stream | Participant)[];
ind: number;
auto?: boolean;
ChatSkip?: boolean;
forChatCard?: any;
forChatID?: any;
parameters: DispStreamsParameters;
breakRoom?: number;
inBreakRoom?: boolean;
}
export type DispStreamsType = (options: DispStreamsOptions) => Promise<void>;
export declare const dispStreams: (options: DispStreamsOptions) => Promise<void>;