import { OpenVidu, Session, Subscriber, Publisher, Stream } from "openvidu-browser";
import { Events } from "./utils/events";
import { IUser, ConfigConference } from "./conference.type";
declare class Conference {
    events: Events;
    openVidu?: OpenVidu;
    session?: Session;
    subscribers: Subscriber[];
    publisher?: Publisher;
    userInfo?: IUser;
    token?: string;
    config?: ConfigConference;
    configDefault: {
        resolution: string;
        frameRate: number;
        insertMode: string;
        mirror: boolean;
    };
    constructor();
    init(params: {
        token: string;
        userInfo: IUser;
        config?: ConfigConference;
    }): void;
    updateToken: (token: string) => void;
    initConference: () => void;
    start: () => Promise<void>;
    retryPublish: () => Promise<void>;
    close: () => void;
    muteAudio: (val: boolean) => void;
    muteVideo: (val: boolean) => void;
    getUserInfo: (stream: Stream) => IUser | null;
}
declare const _default: Conference;
export default _default;
