import { Auth, Janus, Media } from '../types'; export default class ConferenceSession { private client; id: string; currentUserDisplayName?: string; localStream?: MediaStream; mediaParams: MediaStreamConstraints; onParticipantJoinedListener: Janus.OnParticipantJoinedListener; onParticipantLeftListener: Janus.OnParticipantLeftListener; onSlowLinkListener: Janus.OnSlowLinkListener; onRemoteStreamListener: Janus.OnRemoteStreamListener; onRemoteTracksUpdatedListener: Janus.OnRemoteTracksUpdatedListener; onRemoteConnectionStateChangedListener: Janus.OnRemoteConnectionStateChangedListener; onDataChannelOpenedListener: Janus.OnDataChannelOpenedListener; onDataChannelMessageListener: Janus.OnDataChannelMessageListener; onSessionConnectionStateChangedListener: Janus.OnSessionConnectionStateChangedListener; onErrorListener: Janus.OnErrorListener; constructor(token: Auth.Session['token']); get currentRoomId(): string | null; set currentRoomId(roomId: string | null); get currentPublisherPC(): any; private createSession; join(roomId: string, user_id: number, userDisplayName: string): Promise; joinAsListener(roomId: string, user_id: number, userDisplayName: string): Promise; sendKeyframeRequest(roomId: string): Promise; private createHandler; private joinInternal; private onParticipantJoined; private onParticipantLeft; private onError; private onDataChannelOpen; private onDataChannelMessage; private onLocalIceStateChanged; private onRemoteIceStateChanged; private onRemoteStream; private onRemoteTracksUpdated; private onSlowLink; listOfOnlineParticipants(): Promise; leave(): Promise; leaveGroup(): Promise; destroy(): Promise; detachVideoConferencingPlugin(): Promise; getDisplayMedia(params: Media.DisplayParams): Promise; getUserMedia(params: Media.UserParams): Promise; private upsertStream; private replaceTracks; switchMediaTracks(options: Media.TrackConstraintsOrDeviceIds): Promise; muteVideo(): void; unmuteVideo(): void; muteAudio(): void; unmuteAudio(): void; isVideoMuted(): boolean; isAudioMuted(): boolean; getUserVolume(): Promise; getRemoteUserBitrate(userId: number): any; getRemoteUserVolume(userId: number): Promise; attachMediaStream(elementId: string, stream: MediaStream, opt?: Media.ElementOptions): void; detachMediaStream(elementId: string, opt?: Media.ElementOptions): void; sendData(data: any, label: any): Promise; } //# sourceMappingURL=ConferenceSession.d.ts.map