/**
A disc that shows video stream. Until streaming starts, altText is displayed on the cylinder.
It can be extended, and new class provided to WorldManager factory.
*/
export class VideoAvatar extends Avatar {
    constructor(scene: any, callback: any, customOptions: any);
    callback: any;
    deviceId: any;
    radius: number;
    altText: string;
    altImage: any;
    textStyle: string;
    textColor: string;
    backColor: string;
    maxWidth: number;
    maxHeight: number;
    /** Should show() start video? */
    autoStart: boolean;
    /** Should own video avatar be attached to hud? */
    autoAttach: boolean;
    attached: boolean;
    displaying: string;
    /**
    Show the avatar. Used for both own and remote avatars.
     */
    show(): Promise<void>;
    cameraTracker: () => void;
    mesh: any;
    isEnabled(): any;
    /**
    Display and optionally set altText.
     */
    displayAltText(text: any): void;
    /**
    Display and optionally set altImage
    @param image path to the image file
     */
    displayImage(image: any): void;
    /** Displays altImage if available, altText otherwise  */
    displayAlt(): void;
    /**
    Display video from given device, used for own avatar.
     */
    displayVideo(deviceId: any): Promise<void>;
    /**
    Create and display VideoTexture from given MediaStream.
     */
    displayStream(mediaStream: any): void;
    /**
    Rescale own avatar and attach to current camera at given position
    @param position where to put the avatar, by default it goes to the top left corner
     */
    attachToCamera(position: any): void;
    windowResized: () => void;
    /**
     * @private
     */
    private moveToCorner;
    /** Rescale own avatar and detach from camera */
    detachFromCamera(): void;
    /** Called when active camera changes/avatar attaches to camera */
    cameraChanged(): void;
    camera: any;
    getUrl(): string;
    basePosition(): any;
    baseMesh(): any;
    /** Remote emoji event routed by WorldManager. Video avatar looks the oposite way, so this just blows the particles to the opposite direction */
    emoji(client: any, direction?: number): Promise<void>;
    /**
     * Handles name change network event
     */
    setName(name: any): void;
}
import { Avatar } from './avatar.js';
