import { EventDispatcher } from "@robotlegsjs/core";
import { SceneManagerBinding } from "./SceneManagerBinding";
/**
 * @private
 */
export declare class SceneRegistry extends EventDispatcher {
    private _rootBindings;
    private _bindings;
    private _bindingBySceneManager;
    /**
     * @private
     */
    get rootBindings(): SceneManagerBinding[];
    /**
     * @private
     */
    get bindings(): SceneManagerBinding[];
    /**
     * @private
     */
    addSceneManager(sceneManager: Phaser.Scenes.SceneManager): SceneManagerBinding;
    /**
     * @private
     */
    removeSceneManager(sceneManager: Phaser.Scenes.SceneManager): SceneManagerBinding;
    /**
     * Finds the closest parent binding for a given display object
     *
     * @private
     */
    findParentBinding(target: Phaser.Scenes.SceneManager): SceneManagerBinding;
    /**
     * @private
     */
    getBinding(sceneManager: Phaser.Scenes.SceneManager): SceneManagerBinding;
    private _createBinding;
    private _removeBinding;
    private _addRootBinding;
    private _removeRootBinding;
    private _onBindingEmpty;
}
