import { EventDispatcher, IClass } from "@robotlegsjs/core";
import { ISceneHandler } from "../api/ISceneHandler";
import { IViewHandler } from "../api/IViewHandler";
/**
 * @private
 */
export declare class SceneManagerBinding extends EventDispatcher {
    private _parent;
    /**
     * @private
     */
    get parent(): SceneManagerBinding;
    /**
     * @private
     */
    set parent(value: SceneManagerBinding);
    private _sceneManager;
    /**
     * @private
     */
    get sceneManager(): Phaser.Scenes.SceneManager;
    private _sceneHandlers;
    private _viewHandlers;
    /**
     * @private
     */
    constructor(sceneManager: Phaser.Scenes.SceneManager);
    /**
     * @private
     */
    addSceneHandler(handler: ISceneHandler): void;
    /**
     * @private
     */
    removeSceneHandler(handler: ISceneHandler): void;
    /**
     * @private
     */
    addViewHandler(handler: IViewHandler): void;
    /**
     * @private
     */
    removeViewHandler(handler: IViewHandler): void;
    /**
     * @private
     */
    handleScene(scene: Phaser.Scene, type: IClass<any>): void;
    /**
     * @private
     */
    handleView(view: Phaser.GameObjects.Container, type: IClass<any>): void;
    /**
     * @private
     */
    private _dispatchBindingEmpty;
}
