@tencentcloud/roomkit-web-vue3
Version:
<h1 align="center"> TUIRoomKit</h1> Conference (TUIRoomKit) is a product suitable for multi-person audio and video conversation scenarios such as business meetings, webinars, and online education. By integrating this product, you can add room management,
157 lines (155 loc) • 5.61 kB
TypeScript
import { TUIRole, TUIRoomInfo, TUISeatMode, TUIVideoStreamType, TUIInvitationStatus } from '../../../node_modules/@tencentcloud/tuiroom-engine-js';
export declare function getNewStreamInfo(userId: string, streamType?: TUIVideoStreamType): {
userId: string;
hasAudioStream: boolean;
hasVideoStream: boolean;
streamType: TUIVideoStreamType;
isLoading: boolean;
playDomMap: Map<any, any>;
timestamp: number;
};
export declare function getNewUserInfo(userId: string): {
userId: string;
userName: string;
avatarUrl: string;
nameCard: string;
hasAudioStream: boolean;
hasVideoStream: boolean;
hasScreenStream: boolean;
isMessageDisabled: boolean;
userRole: TUIRole;
onSeat: boolean;
isUserApplyingToAnchor: boolean;
isInvitingUserToAnchor: boolean;
isInRoom: boolean;
status: TUIInvitationStatus;
timestamp: number;
};
export type StreamInfo = {
userId: string;
streamType: TUIVideoStreamType;
hasAudioStream?: boolean;
hasVideoStream?: boolean;
isLoading?: boolean;
playDomMap?: Map<HTMLElement, TUIVideoStreamType>;
timestamp?: number;
};
export type UserInfo = {
userId: string;
userName?: string;
avatarUrl?: string;
nameCard?: string;
hasAudioStream?: boolean;
hasVideoStream?: boolean;
hasScreenStream?: boolean;
isMessageDisabled?: boolean;
userRole?: TUIRole;
onSeat?: boolean;
isRequestingUserOpenMic?: boolean;
requestUserOpenMicRequestId?: string;
isRequestingUserOpenCamera?: boolean;
requestUserOpenCameraRequestId?: string;
isUserApplyingToAnchor?: boolean;
applyToAnchorRequestId?: string;
applyToAnchorTimestamp?: number;
isInvitingUserToAnchor?: boolean;
inviteToAnchorRequestId?: string;
isInRoom?: boolean;
status?: TUIInvitationStatus;
timestamp?: number;
};
interface RoomState {
userInfoObj: Record<string, UserInfo>;
streamInfoObj: Record<string, StreamInfo>;
userVolumeObj: Record<string, number>;
currentSpeakerInfo: Record<string, string>;
masterUserId: string;
isMicrophoneDisableForAllUser: boolean;
isCameraDisableForAllUser: boolean;
isScreenShareDisableForAllUser: boolean;
isSeatEnabled: boolean | undefined;
seatMode: TUISeatMode;
maxMembersCount: number;
maxSeatCount: number;
password: string;
roomName: string;
isOnStateTabActive: boolean;
isLocalUserSharing: boolean;
isWhiteboardVisible: boolean;
isSharingScreen: boolean;
isAnnotationVisible: boolean;
}
export declare const useRoomStore: import('pinia').StoreDefinition<"room", RoomState, {
localUser(state: RoomState): UserInfo;
localStream(state: RoomState): StreamInfo | undefined;
localScreenStream(state: RoomState): StreamInfo | undefined;
isMaster(state: RoomState): boolean;
isAdmin(): boolean;
isGeneralUser(): boolean;
isFreeSpeakMode(): boolean;
isSpeakAfterTakingSeatMode(): boolean;
isAnchor(): boolean | undefined;
isAudience(): boolean | undefined;
streamList(): Array<StreamInfo>;
remoteStreamList(): Array<StreamInfo>;
cameraStreamList(): Array<StreamInfo>;
remoteScreenStream(): StreamInfo | undefined;
streamNumber(): number;
userList(): Array<UserInfo>;
userNumber(): number;
remoteUserList(): Array<UserInfo>;
remoteEnteredUserList(): Array<UserInfo>;
remoteNotEnteredUserList(): Array<UserInfo>;
remoteAnchorList(): Array<UserInfo>;
generalUserScreenStreamList(): Array<UserInfo>;
anchorUserList(): Array<UserInfo>;
applyToAnchorList(): Array<UserInfo>;
defaultStreamType(): TUIVideoStreamType;
getDisplayName(): (userId: string) => string;
}, {
getUserName(userId: string): string;
getUserRole(userId: string): TUIRole | undefined;
addUserInfo(userInfo: UserInfo): void;
addRemoteUser(userInfo: UserInfo): void;
updateUserInfo(userInfo: UserInfo): void;
removeUserInfo(userId: string): void;
addStreamInfo(userId: string, streamType: TUIVideoStreamType): void;
updateStreamInfo(streamInfo: StreamInfo): void;
removeStreamInfo(userId: string, streamType: TUIVideoStreamType): void;
getStreamInfo(userId: string, streamType: TUIVideoStreamType): StreamInfo | undefined;
setAudioVolume(audioVolumeArray: []): void;
setCurrentSpeakerInfo(speakerInfo: Record<string, string>): void;
setRoomInfo(roomInfo: Partial<TUIRoomInfo>): void;
setDisableMicrophoneForAllUserByAdmin(isDisable: boolean): void;
setDisableCameraForAllUserByAdmin(isDisable: boolean): void;
setDisableScreenShareForAllUserByAdmin(isDisable: boolean): void;
setMasterUserId(userId: string): void;
setMuteUserChat(userId: string, muted: boolean): void;
setRemoteUserRole(userId: string, role: TUIRole): void;
setRequestUserOpenMic(options: {
userId: string;
isRequesting: boolean;
requestId?: string;
}): void;
setRequestUserOpenCamera(options: {
userId: string;
isRequesting: boolean;
requestId?: string;
}): void;
addApplyToAnchorUser(options: {
userId: string;
requestId: string;
timestamp: number;
}): void;
removeApplyToAnchorUser(requestId: string): void;
addInviteToAnchorUser(options: {
userId: string;
requestId: string;
}): void;
removeInviteToAnchorUser(userId: string): void;
setOnStageTabStatus(isOnStateTabActive: boolean): void;
updateInviteeList(userList: any[]): void;
reset(): void;
resetRoomData(): void;
}>;
export {};