import { App } from "../core/App";
import { Entity } from "./Entity";
/**
 * 视频融合
 */
export declare class VideoFusion extends Entity {
    private _width;
    private _height;
    private _mesh;
    private _material;
    private _coverTexture;
    private _opacityTexture;
    private _videoTexture;
    private _smoothing;
    private _visable;
    /**
     * 是否默认隐藏
     */
    defaultHidden: boolean;
    /**
     * 封面贴图ID
     */
    textureId: string;
    /**
     * 透明度贴图ID
     */
    opacityTextureId: string;
    /**
     * 父物体计算包围盒时是否排除此物体
     */
    excludeBoundingBox: boolean;
    /**
     * 实例化一个视频融合对象
     * @param app 应用实例
     */
    constructor(app: App);
    get visable(): boolean;
    set visable(value: boolean);
    /**
     * 获取是否允许被冻结材质
     */
    get canFreezeMaterial(): boolean;
    /**
     * 获取或设置是否平滑
     */
    get smoothing(): boolean;
    set smoothing(value: boolean);
    /**
     * 序列化成JSON对象
     */
    toJson(): any;
    fromJson(json: any): void;
    build(force?: boolean): Promise<void>;
    unbuild(): void;
    dispose(): void;
    /**
     * 设置视频源（需要自行控制播放）
     * @param video 视频源
     */
    setVideoSource(video: HTMLVideoElement | null): void;
}
