import { HMSChangeMultiTrackStateParams } from './change-track-state'; import { HMSConfig, HMSPreviewConfig } from './config'; import { TokenRequest, TokenRequestOptions } from './get-token'; import { HLSConfig } from './hls-config'; import { HMSMessage } from './message'; import { HMSLocalPeer, HMSPeer } from './peer'; import { HMSPeerListIteratorOptions } from './peer-list-iterator'; import { HMSPlaylistManager, HMSPlaylistSettings } from './playlist'; import { HMSPreviewListener } from './preview-listener'; import { HMSRole } from './role'; import { HMSRoleChangeRequest } from './role-change-request'; import { HMSHLS, HMSRecording, HMSRTMP } from './room'; import { RTMPRecordingConfig } from './rtmp-recording-config'; import { HMSInteractivityCenter, HMSSessionStore } from './session-store'; import { HMSScreenShareConfig } from './track-settings'; import { HMSAudioListener, HMSConnectionQualityListener, HMSUpdateListener } from './update-listener'; import { HMSAnalyticsLevel } from '../analytics/AnalyticsEventLevel'; import { IAudioOutputManager } from '../device-manager/AudioOutputManager'; import { HMSRemoteTrack, HMSTrackSource } from '../media/tracks'; import { HMSWebrtcInternals } from '../rtc-stats/HMSWebrtcInternals'; import { HMSPeerListIterator } from '../sdk/HMSPeerListIterator'; import { HMSLogLevel } from '../utils/logger'; export interface HMSInterface { preview(config: HMSPreviewConfig, listener: HMSPreviewListener): Promise; join(config: HMSConfig, listener: HMSUpdateListener): Promise; leave(notifyServer?: boolean): Promise; cancelMidCallPreview(): Promise; getAuthTokenByRoomCode(tokenRequest: TokenRequest, tokenRequestOptions?: TokenRequestOptions): Promise; getLocalPeer(): HMSLocalPeer | undefined; getPeers(): HMSPeer[]; getRoles(): HMSRole[]; getAudioOutput(): IAudioOutputManager; getSessionStore(): HMSSessionStore; getInteractivityCenter(): HMSInteractivityCenter; getPlaylistManager(): HMSPlaylistManager; getWebrtcInternals(): HMSWebrtcInternals | undefined; refreshDevices(): Promise; /** * @deprecated Use `changeRoleOfPeer` instead */ changeRole(forPeerId: string, toRole: string, force?: boolean): void; changeRoleOfPeer(forPeerId: string, toRole: string, force?: boolean): void; changeRoleOfPeersWithRoles(roles: HMSRole[], toRole: string): void; acceptChangeRole(request: HMSRoleChangeRequest): void; changeTrackState(forRemoteTrack: HMSRemoteTrack, enabled: boolean): Promise; changeMultiTrackState(params: HMSChangeMultiTrackStateParams): Promise; removePeer(peerId: string, reason: string): Promise; endRoom(lock: boolean, reason: string): Promise; startRTMPOrRecording(params: RTMPRecordingConfig): Promise; stopRTMPAndRecording(): Promise; /** * @param {HLSConfig} params */ startHLSStreaming(params?: HLSConfig): Promise; stopHLSStreaming(params?: HLSConfig): Promise; getRecordingState(): HMSRecording | undefined; getRTMPState(): HMSRTMP | undefined; getHLSState(): HMSHLS | undefined; changeName(name: string): Promise; changeMetadata(metadata: string): Promise; /** @deprecated Use `getSessionStore().set` instead */ setSessionMetadata(metadata: any): Promise; /** @deprecated Use `getSessionStore().observe` instead */ getSessionMetadata(): Promise; /** * @deprecated The method should not be used * @see sendBroadcastMessage */ sendMessage(type: string, message: string): HMSMessage | void; sendBroadcastMessage(message: string, type?: string): Promise; sendGroupMessage(message: string, roles: HMSRole[], type?: string): Promise; sendDirectMessage(message: string, peerId: string, type?: string): Promise; startScreenShare(onStop: () => void, config?: HMSScreenShareConfig): Promise; stopScreenShare(): Promise; addTrack(track: MediaStreamTrack, source: HMSTrackSource): Promise; removeTrack(trackId: string): Promise; setLogLevel(level: HMSLogLevel): void; setAnalyticsLevel(level: HMSAnalyticsLevel): void; addAudioListener(listener: HMSAudioListener): void; addConnectionQualityListener(qualityListener: HMSConnectionQualityListener): void; raiseLocalPeerHand(): Promise; lowerLocalPeerHand(): Promise; raiseRemotePeerHand(peerId: string): Promise; lowerRemotePeerHand(peerId: string): Promise; getPeerListIterator(options?: HMSPeerListIteratorOptions): HMSPeerListIterator; updatePlaylistSettings(options: HMSPlaylistSettings): void; }