import { Scene, Engine, DirectionalLight, ShadowGenerator, EnvironmentHelper, DefaultRenderingPipeline } from '@babylonjs/core';
declare const _sfc_main: import("vue").DefineComponent<{
    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>;
        babylon: import("vue").Ref<{
            scene: Scene;
            engine: Engine;
            environmentHelper: EnvironmentHelper;
            shadowsLight: DirectionalLight;
            shadowGenerator: ShadowGenerator;
            defaultPipeline: DefaultRenderingPipeline;
            canvas: HTMLCanvasElement;
            option: any;
            events: any;
            createScene(): Scene;
            updateScenePipeline(pipelineOption: any): void;
            updateScene(sceneOption: any): void;
            updateShadowsLight(shadowOption: any): void;
            updateCamera(cameraOption: any): void;
            updateDefaultEnvironment(environment: any): void;
            updateMeshs(scene: Scene): 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;
                environmentHelper: EnvironmentHelper;
                shadowsLight: DirectionalLight;
                shadowGenerator: ShadowGenerator;
                defaultPipeline: DefaultRenderingPipeline;
                canvas: HTMLCanvasElement;
                option: any;
                events: any;
                createScene(): Scene;
                updateScenePipeline(pipelineOption: any): void;
                updateScene(sceneOption: any): void;
                updateShadowsLight(shadowOption: any): void;
                updateCamera(cameraOption: any): void;
                updateDefaultEnvironment(environment: any): void;
                updateMeshs(scene: Scene): void;
                run(): any;
                dispose(): void;
                playAnimation(name: string, option?: {
                    loop: boolean;
                    speedRatio: number;
                }): void;
            };
        };
        babylonLoadingStatus: import("vue").Ref<boolean>;
        babylonLoadingTitle: import("vue").Ref<any>;
    };
    canvasRef: import("vue").Ref<any>;
    babylon: import("vue").Ref<{
        scene: Scene;
        engine: Engine;
        environmentHelper: EnvironmentHelper;
        shadowsLight: DirectionalLight;
        shadowGenerator: ShadowGenerator;
        defaultPipeline: DefaultRenderingPipeline;
        canvas: HTMLCanvasElement;
        option: any;
        events: any;
        createScene(): Scene;
        updateScenePipeline(pipelineOption: any): void;
        updateScene(sceneOption: any): void;
        updateShadowsLight(shadowOption: any): void;
        updateCamera(cameraOption: any): void;
        updateDefaultEnvironment(environment: any): void;
        updateMeshs(scene: Scene): 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;
            environmentHelper: EnvironmentHelper;
            shadowsLight: DirectionalLight;
            shadowGenerator: ShadowGenerator;
            defaultPipeline: DefaultRenderingPipeline;
            canvas: HTMLCanvasElement;
            option: any;
            events: any;
            createScene(): Scene;
            updateScenePipeline(pipelineOption: any): void;
            updateScene(sceneOption: any): void;
            updateShadowsLight(shadowOption: any): void;
            updateCamera(cameraOption: any): void;
            updateDefaultEnvironment(environment: any): void;
            updateMeshs(scene: Scene): void;
            run(): any;
            dispose(): void;
            playAnimation(name: string, option?: {
                loop: boolean;
                speedRatio: number;
            }): void;
        };
    };
    babylonLoadingStatus: import("vue").Ref<boolean>;
    babylonLoadingTitle: import("vue").Ref<any>;
}, unknown, {}, {}, 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;
    };
}>> & {
    "onOn-load-success"?: (...args: any[]) => any;
    "onOn-play-animation"?: (...args: any[]) => any;
}, {}, {}>;
export default _sfc_main;
