import { BaseVideoCallHandler } from "./BaseVideoCallHandler"; import { Device } from 'mediasoup-client'; import { WebSocketMessageBody } from "../websocket-handler/WebsocketHandler"; import { Track } from "../model/Track"; import { Consumer } from "mediasoup-client/lib/Consumer"; import { MeetingStartRequest } from '..'; import { CommunicationHandler } from '../inter-communication-handler/CommunicationHandler'; import { TrackStats } from '../model/TrackStats'; export declare class SFUHandler extends BaseVideoCallHandler { private device?; private transportCallBacks; private routerRtpCapabilities?; private sendTransport?; private consumerTransport?; private isProduceTrackIntialWorkDone; private producers; private consumers; private dataProducers; private dataConsumer; private isInitDone; constructor(_meetingStartRequest: MeetingStartRequest, _communicationHandler: CommunicationHandler); getDevice: () => Device; reconnectedWithoutPing(): void; onReconnect(): Promise; private onRestartIceCandidateResponse; stopTrack(track: Track): void; pauseTrack(track: Track): void; getConsumerForTrack(track: Track): Consumer; resumeProducerOrConsumerForTrack(track: Track): Promise; pauseProducerOrConsumerForTrack(track: Track): Promise; resumeTrack(track: Track): void; pauseIncomingTrack(track: Track): void; resumeIncomingTrack(track: Track): void; updateSpatialForTrack(track: Track, spatialLayerIndex: number): Promise; sendTrack(track: Track): Promise; createDataChannel(): Promise; onParticipantUpdated(): void; sendMessageViaDataChannel(messagePayload: any): void; init(isForceFully?: boolean): Promise; private onTransportNotFound; restartTransport(): void; private addObserverForDevice; private onAllProducers; private onRouterRtpCapabilities; private onTransportConnectDone; private onSendTransport; private onConsumeTransportCreated; private produceTracks; private onProduceSyncDone; private sendMessageReadyToConsume; private sendSFUMessageToSocket; onSocketMessage(websocketCallHandler: WebSocketMessageBody): void; private onConsumerNotFound; private onProducerNotFound; private onTrackEnded; private onNewProducer; onConsumerScoreChange: (_data: any) => Promise; onProducerScoreChange: (_data: any) => Promise; onConsumerLayerChange: (_data: any) => Promise; private onServerConsumer; private onAudioVolumeChanged; private onSpeakerChanged; getClientStats: () => Promise; private eachTrackStats; cleanup(shouldStopTracks?: boolean): Promise; }