import { ObjectAbstract } from '../../../common/object-abstract';
import { ModelerRiverPolylineAtomType, ModelerRiverAtomType, ModelerRiverType, IGenerate } from '../../../common/interface/modeler-river';
import { ObjectController } from '../../../common/object-controller';
/**
 * @public
 * @class ModelerRiver
 * @extends ObjectController
 * @implements ObjectAbstract
 */
declare class ModelerRiver extends ObjectController implements ObjectAbstract {
    className: string;
    private ModelerRiverPolylineAtom;
    private ModelerRiverAtom;
    /**
     * @constructor
     * @param {ModelerRiverType} opt (optional)
     */
    constructor(opt?: ModelerRiverType);
    /**
     * @public
     * @function GetScheme
     * @returns {{ModelerRiverAtom: ModelerRiverAtomType, ModelerRiverPolylineAtom: ModelerRiverPolylineAtomType}}
     */
    GetScheme(): {
        ModelerRiverAtom: ModelerRiverAtomType;
        ModelerRiverPolylineAtom: ModelerRiverPolylineAtomType;
    };
    /**
     * @public
     * @function GetData
     * @returns {ModelerRiverType}
     */
    GetData(): ModelerRiverType;
    /**
     * @public
     * @function SetData
     * @param {ModelerRiverType} opt
     * @returns {void}
     */
    SetData(opt: ModelerRiverType): void;
    /**
     * @public
     * @function generateAtomData
     * @param {ModelerRiverType} opt
     * @returns {IGenerate}
     */
    generateAtomData(opt: ModelerRiverType): IGenerate;
    /**
     * @public
     * @function GetValidateRules
     * @returns {ModelerRiverType}
     */
    GetValidateRules(): ModelerRiverType;
    /**
     * @public
     * @function Validate
     * @param {ModelerRiverType} opt
     * @returns {void}
     */
    Validate(opt: ModelerRiverType): void;
}
export default ModelerRiver;
