@100mslive/hms-video-store
Version:
@100mslive Core SDK which abstracts the complexities of webRTC while providing a reactive store for data management with a unidirectional data flow
37 lines (36 loc) • 1.76 kB
TypeScript
import { HMSRole } from '../internal';
import { HMSPeer, HMSStore } from '../schema';
export interface HMSPeerWithMuteStatus {
peer: HMSPeer;
isAudioEnabled?: boolean;
}
/**
* @privateRemarks
* this is more friendly to UI format, the object in store has only peer id and role name instead of the full objects
*/
export interface HMSRoleChangeRequest {
requestedBy?: HMSPeer;
role: HMSRole;
token: string;
}
export declare const selectPeersWithAudioStatus: import("reselect").OutputSelector<HMSStore<{
sessionStore: Record<string, any>;
}>, HMSPeerWithMuteStatus[], (res1: Record<string, HMSPeer>, res2: Record<string, import("../schema").HMSTrack>) => HMSPeerWithMuteStatus[]>;
/**
* Select the role change request received for your local peer.
*/
export declare const selectRoleChangeRequest: import("reselect").OutputSelector<HMSStore<{
sessionStore: Record<string, any>;
}>, HMSRoleChangeRequest | null, (res1: import("../schema").HMSRoleChangeStoreRequest, res2: Record<string, HMSPeer>, res3: Record<string, HMSRole>) => HMSRoleChangeRequest | null>;
/**
* Select what streams is the local peer allowed to publish from video, audio and screenshare.
*/
export declare const selectIsAllowedToPublish: import("reselect").OutputSelector<HMSStore<{
sessionStore: Record<string, any>;
}>, import("../schema").HMSPublishAllowed, (res: HMSRole | null) => import("../schema").HMSPublishAllowed>;
/**
* Select what streams is the local peer allowed to preview from video, audio
*/
export declare const selectIsAllowedToPreviewMedia: import("reselect").OutputSelector<HMSStore<{
sessionStore: Record<string, any>;
}>, import("../schema").HMSPublishAllowed, (res: HMSRole | null) => import("../schema").HMSPublishAllowed>;