import { Basic } from '../common/basic';
import { ResultType } from '../common/data-type';
/**
 * @public
 * @class NodeSelectionController
 * @extends Basic
 */
declare class NodeSelectionController extends Basic {
    private apiClassName;
    private NodeSelectionValidate;
    /**
     * @constructor
     * @param {any} obj
     */
    constructor(obj: any);
    /**
     * @public
     * @async
     * @function Add
     * @param {Record<string, any>} obj
     * @param {Array<string>} nodeIds
     * @returns {Promise<ResultType>}
     */
    Add(obj: Record<string, any>, nodeIds: Array<string>): Promise<ResultType>;
    /**
     * @public
     * @async
     * @function Remove
     * @param {Record<string, any>} obj
     * @param {Array<string>} nodeIds
     * @returns {Promise<ResultType>}
     */
    Remove(obj: Record<string, any>, nodeIds: Array<string>): Promise<ResultType>;
    /**
     * @public
     * @async
     * @function Draw
     * @returns {Promise<ResultType>}
     */
    Draw(): Promise<ResultType>;
    /**
     * @public
     * @async
     * @function Clear
     * @returns {Promise<ResultType>}
     */
    Clear(): Promise<ResultType>;
    /**
     * @public
     * @async
     * @function AddDraw
     * @param {Record<string, any>} obj
     * @param {Array<string>} nodeIds
     * @returns {Promise<ResultType>}
     */
    AddDraw(obj: Record<string, any>, nodeIds: Array<string>): Promise<ResultType>;
    /**
     * @public
     * @async
     * @function RemoveDraw
     * @param {Record<string, any>} obj
     * @param {Array<string>} nodeIds
     * @returns {Promise<ResultType>}
     */
    RemoveDraw(obj: Record<string, any>, nodeIds: Array<string>): Promise<ResultType>;
    /**
     * @public
     * @async
     * @function ClearDraw
     * @returns {Promise<ResultType>}
     */
    ClearDraw(): Promise<ResultType>;
}
export default NodeSelectionController;
