import { AbstractUiComponent } from "../AbstractUiComponent";
import { TeamAppsUiContext } from "../TeamAppsUiContext";
import { UiMediaSoupWebRtcClient_ActivityChangedEvent, UiMediaSoupWebRtcClient_PlaybackProfileChangedEvent, UiMediaSoupWebRtcClientCommandHandler, UiMediaSoupWebRtcClientConfig, UiMediaSoupWebRtcClientEventSource } from "../../generated/UiMediaSoupWebRtcClientConfig";
import { UiMediaSoupPlaybackParamatersConfig } from "../../generated/UiMediaSoupPlaybackParamatersConfig";
import { UiMediaSoupPublishingParametersConfig } from "../../generated/UiMediaSoupPublishingParametersConfig";
import { TeamAppsEvent } from "../util/TeamAppsEvent";
export declare class UiMediaSoupWebRtcClient extends AbstractUiComponent<UiMediaSoupWebRtcClientConfig> implements UiMediaSoupWebRtcClientCommandHandler, UiMediaSoupWebRtcClientEventSource {
    readonly onPlaybackProfileChanged: TeamAppsEvent<UiMediaSoupWebRtcClient_PlaybackProfileChangedEvent>;
    readonly onActivityChanged: TeamAppsEvent<UiMediaSoupWebRtcClient_ActivityChangedEvent>;
    private $main;
    private conference;
    private $video;
    private $profileDisplay;
    private $icon;
    private $caption;
    private voiceActivityDetectionHandle;
    constructor(config: UiMediaSoupWebRtcClientConfig, context: TeamAppsUiContext);
    getMainDomElement(): HTMLElement;
    publish(parameters: UiMediaSoupPublishingParametersConfig): void;
    playback(parameters: UiMediaSoupPlaybackParamatersConfig): void;
    stop(): void;
    update(config: UiMediaSoupWebRtcClientConfig): void;
    setActive(active: boolean): void;
    private isVideoShown;
    onResize(): void;
    private static createVideoConstraints;
}
