import { GenericRESTService } from "../GenericRESTService";
import { HTTPService } from "../HttpService.js";
declare class RESTConferenceV2 extends GenericRESTService {
    http: HTTPService;
    _logger: any;
    evtEmitter: any;
    static getClassName(): string;
    getClassName(): string;
    static getAccessorName(): string;
    getAccessorName(): string;
    constructor(evtEmitter: any, _logger: any);
    start(http: HTTPService): Promise<unknown>;
    stop(): Promise<unknown>;
    addPSTNParticipantToConference(roomId: string, participantPhoneNumber: string, country: string): Promise<unknown>;
    snapshotConference(roomId: string, limit?: number, offset?: number): Promise<unknown>;
    delegateConference(roomId: string, userId: string): Promise<unknown>;
    disconnectPSTNParticipantFromConference(roomId: string): Promise<unknown>;
    disconnectParticipantFromConference(roomId: string, userId: string): Promise<unknown>;
    getTalkingTimeForAllPparticipantsInConference(roomId: string, limit?: number, offset?: number): Promise<unknown>;
    joinConference(roomId: string, participantPhoneNumber?: string, country?: string, deskphone?: boolean, dc?: Array<string>, mute?: boolean, microphone?: boolean, media?: Array<string>, resourceId?: string): Promise<unknown>;
    pauseRecording(roomId: string): Promise<unknown>;
    resumeRecording(roomId: string): Promise<unknown>;
    startRecording(roomId: string): Promise<unknown>;
    stopRecording(roomId: string): Promise<unknown>;
    rejectAVideoConference(roomId: string): Promise<unknown>;
    startConferenceOrWebinarInARoom(roomId: string, services?: any): Promise<unknown>;
    stopConferenceOrWebinar(roomId: string): Promise<unknown>;
    subscribeForParticipantVideoStream(roomId: string, userId: string, media?: string, subStreamLevel?: number, dynamicFeed?: boolean): Promise<unknown>;
    updatePSTNParticipantParameters(roomId: string, phoneNumber: string, option?: string): Promise<unknown>;
    updateConferenceParameters(roomId: string, option?: string): Promise<unknown>;
    updateParticipantParameters(roomId: string, userId: string, option: string, media: string, bitRate: number, subStreamLevel: number, publisherId: string): Promise<unknown>;
    allowTalkWebinar(roomId: string, userId: string): Promise<unknown>;
    disableTalkWebinar(roomId: string, userId: string): Promise<unknown>;
    lowerHandWebinar(roomId: string): Promise<unknown>;
    raiseHandWebinar(roomId: string): Promise<unknown>;
    stageDescriptionWebinar(roomId: string, userId: string, type: string, properties: Array<string>): Promise<unknown>;
}
export { RESTConferenceV2 };
