import { HMSInternalEvent } from './HMSInternalEvent'; import AnalyticsEvent from '../analytics/AnalyticsEvent'; import { HMSException } from '../error/HMSException'; import { HMSDeviceChangeEvent, HMSRole } from '../interfaces'; import { HMSLocalAudioTrack, HMSLocalVideoTrack, HMSRemoteAudioTrack, HMSRemoteVideoTrack, HMSWebrtcStats } from '../internal'; import { PolicyParams } from '../notification-manager/HMSNotifications'; import { HMSRemotePeer } from '../sdk/models/peer'; import { ITrackAudioLevelUpdate } from '../utils/track-audio-level-monitor'; export declare class EventBus { private eventEmitter; readonly deviceChange: HMSInternalEvent; readonly localAudioEnabled: HMSInternalEvent<{ enabled: boolean; track: HMSLocalAudioTrack; }>; readonly localVideoEnabled: HMSInternalEvent<{ enabled: boolean; track: HMSLocalVideoTrack; }>; /** * Emitter which processes raw RTC stats from rtcStatsUpdate and calls client callback */ readonly statsUpdate: HMSInternalEvent; readonly trackDegraded: HMSInternalEvent; readonly trackRestored: HMSInternalEvent; /** * Emits audio level updates for audio tracks(used with local track in preview) */ readonly trackAudioLevelUpdate: HMSInternalEvent; readonly audioPluginFailed: HMSInternalEvent; readonly localAudioSilence: HMSInternalEvent<{ track: HMSLocalAudioTrack; }>; readonly analytics: HMSInternalEvent; readonly policyChange: HMSInternalEvent; readonly localRoleUpdate: HMSInternalEvent<{ oldRole: HMSRole; newRole: HMSRole; }>; readonly audioTrackUpdate: HMSInternalEvent<{ track: HMSRemoteAudioTrack; enabled: boolean; }>; readonly audioTrackAdded: HMSInternalEvent<{ track: HMSRemoteAudioTrack; peer: HMSRemotePeer; }>; readonly audioTrackRemoved: HMSInternalEvent; readonly autoplayError: HMSInternalEvent; readonly leave: HMSInternalEvent; }