import { ObjectAbstract } from '../../common/object-abstract';
import { ResultType, BasicInfoAtomType } from '../../common/data-type';
import { WdpSceneOutlinerAtomType, SceneOutlinerType } from '../../common/interface/outliner';
import { ObjectController } from '../../common/object-controller';
/**
 * @public
 * @class Outliner
 * @extends ObjectController
 * @implements ObjectAbstract
 */
declare class Outliner extends ObjectController implements ObjectAbstract {
    className: string;
    private WdpSceneOutlinerAtom;
    private entities;
    /**
     * @constructor
     * @param {SceneOutlinerType} opt (optional)
     */
    constructor(opt?: SceneOutlinerType);
    get eids(): {
        [key: string]: {
            eids: Array<string>;
        };
    };
    set eids(eids: {
        [key: string]: {
            eids: Array<string>;
        };
    });
    GetEids(): Promise<ResultType>;
    SetEids(eids: {
        [key: string]: {
            eids: Array<string>;
        };
    }): Promise<ResultType>;
    /**
     * @public
     * @function GetScheme
     * @returns {{WdpSceneOutlinerAtom: WdpSceneOutlinerAtomType}}
     */
    GetScheme(): {
        WdpSceneOutlinerAtom: WdpSceneOutlinerAtomType;
    };
    /**
     * @public
     * @function GetData
     * @returns {SceneOutlinerType}
     */
    GetData(): SceneOutlinerType;
    /**
     * @public
     * @function SetData
     * @param {SceneOutlinerType} opt
     * @returns {void}
     */
    SetData(opt: SceneOutlinerType): void;
    /**
     * @public
     * @function generateAtomData
     * @param {SceneOutlinerType} opt
     * @returns {{WdpSceneOutlinerAtom?: Partial<WdpSceneOutlinerAtomType>, BasicInfoAtom?: Partial<BasicInfoAtomType>}}
     */
    generateAtomData(opt: SceneOutlinerType): {
        WdpSceneOutlinerAtom?: Partial<WdpSceneOutlinerAtomType>;
        BasicInfoAtom?: Partial<BasicInfoAtomType>;
    };
}
export default Outliner;
