UNPKG

@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

102 lines (101 loc) 4.2 kB
import { KnownRoles, TrackStateEntry } from './StoreInterfaces'; import { HMSConfig, HMSFrameworkInfo, HMSPoll, HMSSpeaker, HMSWhiteboard } from '../../interfaces'; import { IErrorListener } from '../../interfaces/error-listener'; import { HMSSimulcastLayerDefinition, SimulcastLayer } from '../../interfaces/simulcast-layers'; import { HMSAudioTrack, HMSLocalTrack, HMSRemoteVideoTrack, HMSTrack, HMSTrackSource, HMSVideoTrack } from '../../media/tracks'; import { PolicyParams } from '../../notification-manager'; import { ENV } from '../../utils/support'; import HMSRoom from '../models/HMSRoom'; import { HMSLocalPeer, HMSPeer, HMSRemotePeer } from '../models/peer'; declare class Store { private TAG; private room?; private knownRoles; private localPeerId?; private peers; private tracks; private templateAppData?; private peerTrackStates; private speakers; private videoLayers?; private config?; private errorListener?; private roleDetailsArrived; private env; private simulcastEnabled; private userAgent; private polls; private whiteboards; getConfig(): HMSConfig | undefined; setSimulcastEnabled(enabled: boolean): void; removeRemoteTracks(): void; getEnv(): ENV; getPublishParams(): import("../../interfaces").PublishParams | undefined; getRoom(): HMSRoom | undefined; getPolicyForRole(role: string): import("../../interfaces").HMSRole; getKnownRoles(): KnownRoles; getTemplateAppData(): Record<string, string> | undefined; getLocalPeer(): HMSLocalPeer | undefined; getRemotePeers(): HMSRemotePeer[]; getPeers(): HMSPeer[]; getPeerMap(): Record<string, HMSPeer>; getPeerById(peerId: string): HMSPeer | undefined; getTracksMap(): Map<HMSTrack, HMSTrack>; getTracks(): HMSTrack[]; getVideoTracks(): HMSVideoTrack[]; getRemoteVideoTracks(): HMSRemoteVideoTrack[]; getAudioTracks(): HMSAudioTrack[]; getPeerTracks(peerId?: string): HMSTrack[]; getLocalPeerTracks(): HMSLocalTrack[]; hasTrack(track: HMSTrack): boolean; getTrackById(trackId: string): HMSTrack | import("../../media/tracks").HMSLocalAudioTrack | undefined; getPeerByTrackId(trackId: string): HMSPeer | undefined; getSpeakers(): HMSSpeaker[]; getSpeakerPeers(): HMSPeer[]; getUserAgent(): string; createAndSetUserAgent(frameworkInfo?: HMSFrameworkInfo): void; setRoom(room: HMSRoom): void; setKnownRoles(params: PolicyParams): void; hasRoleDetailsArrived(): boolean; setConfig(config: HMSConfig): void; addPeer(peer: HMSPeer): void; /** * @param {HMSTrack} track the published track that has to be added * * Note: Only use this method to add published tracks not preview traks */ addTrack(track: HMSTrack): void; getTrackState(trackId: string): TrackStateEntry; setTrackState(trackStateEntry: TrackStateEntry): void; removeTrackState(trackId: string): void; removePeer(peerId: string): void; removeTrack(track: HMSTrack): void; updateSpeakers(speakers: HMSSpeaker[]): void; updateAudioOutputVolume(value: number): Promise<void>; updateAudioOutputDevice(device: MediaDeviceInfo): Promise<void>; getSimulcastLayers(source: HMSTrackSource): SimulcastLayer[]; /** * Convert maxBitrate from kbps to bps * @internal * @param simulcastLayers * @returns {SimulcastLayers} */ private convertSimulcastLayers; getSimulcastDefinitionsForPeer(peer: HMSPeer, source: HMSTrackSource): HMSSimulcastLayerDefinition[]; setPoll(poll: HMSPoll): void; getPoll(id: string): HMSPoll | undefined; setWhiteboard(whiteboard: HMSWhiteboard): void; getWhiteboards(): Map<string, HMSWhiteboard>; getWhiteboard(id?: string): HMSWhiteboard | undefined; getErrorListener(): IErrorListener | undefined; cleanup(): void; setErrorListener(listener: IErrorListener): void; private updatePeersPolicy; private addPluginsToRoles; private addPermissionToRole; private addWhiteboardPluginToRole; private addTranscriptionsPluginToRole; private handleNoiseCancellationPlugin; private setEnv; } export { Store };