import { Participant, Room } from "livekit-client";
import { ConnectionState, RoomHandler } from "../types";
import DataChannelContainer from "./dataChannelContainer";
declare class RoomEventContainer {
    #private;
    constructor(room: Room, dataChannelContainer: DataChannelContainer, handler: RoomHandler);
    bindRoomEvents: () => void;
    initializeCurrentRoomStatus: (participant: Participant) => void;
    onParticipantConnected: (participant: Participant) => Promise<void>;
    onParticipantDisconnected: (participant: Participant) => Promise<void>;
    onConnectionStateChanged: (connectionState: ConnectionState) => Promise<void>;
    onRoomMetadataChanged: (metadata: string) => Promise<void>;
}
export default RoomEventContainer;
