import { Scene, Engine, DefaultRenderingPipeline, AbstractMesh } from '@babylonjs/core';
declare const _sfc_main: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    basicOption: {
        type: any;
        required: true;
    };
    basicEvents: {
        type: any;
        required: true;
    };
    useEvents: {
        type: ArrayConstructor;
        required: true;
    };
}>, {
    emit: (event: "on-load-success" | "on-play-animation", ...args: any[]) => void;
    props: any;
    useBabylonScene: (basicOption: any, basicEvents: any) => {
        canvasRef: import("vue").Ref<any, any>;
        babylon: import("vue").Ref<{
            scene: Scene;
            engine: Engine;
            meshe: AbstractMesh[];
            defaultPipeline: DefaultRenderingPipeline;
            canvas: HTMLCanvasElement;
            option: any;
            events: any;
            createScene(): Scene;
            updateScenePipeline(pipelineOption: any): void;
            updateScene(sceneOption: any): void;
            createCamera(cameraOption: any, scene: Scene): void;
            updateCamera(cameraOption: any): void;
            createLights(lightOption: any[], scene: Scene): void;
            createMeshs(scene: Scene): void;
            setMeshSize(optionMeshs: any): void;
            run(): any;
            dispose(): void;
            playAnimation(name: string, option?: {
                loop: boolean;
                speedRatio: number;
            }): void;
        }, {
            scene: Scene;
            engine: Engine;
            meshe: AbstractMesh[];
            defaultPipeline: DefaultRenderingPipeline;
            canvas: HTMLCanvasElement;
            option: any;
            events: any;
            createScene(): Scene;
            updateScenePipeline(pipelineOption: any): void;
            updateScene(sceneOption: any): void;
            createCamera(cameraOption: any, scene: Scene): void;
            updateCamera(cameraOption: any): void;
            createLights(lightOption: any[], scene: Scene): void;
            createMeshs(scene: Scene): void;
            setMeshSize(optionMeshs: any): void;
            run(): any;
            dispose(): void;
            playAnimation(name: string, option?: {
                loop: boolean;
                speedRatio: number;
            }): void;
        }>;
        Babylon: {
            new (canvas: HTMLCanvasElement, option: any, events: any): {
                scene: Scene;
                engine: Engine;
                meshe: AbstractMesh[];
                defaultPipeline: DefaultRenderingPipeline;
                canvas: HTMLCanvasElement;
                option: any;
                events: any;
                createScene(): Scene;
                updateScenePipeline(pipelineOption: any): void;
                updateScene(sceneOption: any): void;
                createCamera(cameraOption: any, scene: Scene): void;
                updateCamera(cameraOption: any): void;
                createLights(lightOption: any[], scene: Scene): void;
                createMeshs(scene: Scene): void;
                setMeshSize(optionMeshs: any): void;
                run(): any;
                dispose(): void;
                playAnimation(name: string, option?: {
                    loop: boolean;
                    speedRatio: number;
                }): void;
            };
        };
        babylonLoadingStatus: import("vue").Ref<boolean, boolean>;
        babylonLoadingTitle: import("vue").Ref<any, any>;
    };
    canvasRef: import("vue").Ref<any, any>;
    babylon: import("vue").Ref<{
        scene: Scene;
        engine: Engine;
        meshe: AbstractMesh[];
        defaultPipeline: DefaultRenderingPipeline;
        canvas: HTMLCanvasElement;
        option: any;
        events: any;
        createScene(): Scene;
        updateScenePipeline(pipelineOption: any): void;
        updateScene(sceneOption: any): void;
        createCamera(cameraOption: any, scene: Scene): void;
        updateCamera(cameraOption: any): void;
        createLights(lightOption: any[], scene: Scene): void;
        createMeshs(scene: Scene): void;
        setMeshSize(optionMeshs: any): void;
        run(): any;
        dispose(): void;
        playAnimation(name: string, option?: {
            loop: boolean;
            speedRatio: number;
        }): void;
    }, {
        scene: Scene;
        engine: Engine;
        meshe: AbstractMesh[];
        defaultPipeline: DefaultRenderingPipeline;
        canvas: HTMLCanvasElement;
        option: any;
        events: any;
        createScene(): Scene;
        updateScenePipeline(pipelineOption: any): void;
        updateScene(sceneOption: any): void;
        createCamera(cameraOption: any, scene: Scene): void;
        updateCamera(cameraOption: any): void;
        createLights(lightOption: any[], scene: Scene): void;
        createMeshs(scene: Scene): void;
        setMeshSize(optionMeshs: any): void;
        run(): any;
        dispose(): void;
        playAnimation(name: string, option?: {
            loop: boolean;
            speedRatio: number;
        }): void;
    }>;
    Babylon: {
        new (canvas: HTMLCanvasElement, option: any, events: any): {
            scene: Scene;
            engine: Engine;
            meshe: AbstractMesh[];
            defaultPipeline: DefaultRenderingPipeline;
            canvas: HTMLCanvasElement;
            option: any;
            events: any;
            createScene(): Scene;
            updateScenePipeline(pipelineOption: any): void;
            updateScene(sceneOption: any): void;
            createCamera(cameraOption: any, scene: Scene): void;
            updateCamera(cameraOption: any): void;
            createLights(lightOption: any[], scene: Scene): void;
            createMeshs(scene: Scene): void;
            setMeshSize(optionMeshs: any): void;
            run(): any;
            dispose(): void;
            playAnimation(name: string, option?: {
                loop: boolean;
                speedRatio: number;
            }): void;
        };
    };
    babylonLoadingStatus: import("vue").Ref<boolean, boolean>;
    babylonLoadingTitle: import("vue").Ref<any, any>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("on-load-success" | "on-play-animation")[], "on-load-success" | "on-play-animation", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    basicOption: {
        type: any;
        required: true;
    };
    basicEvents: {
        type: any;
        required: true;
    };
    useEvents: {
        type: ArrayConstructor;
        required: true;
    };
}>> & Readonly<{
    "onOn-load-success"?: (...args: any[]) => any;
    "onOn-play-animation"?: (...args: any[]) => any;
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _sfc_main;
