import { LEVEL_ENUM, Vertex, DataNode, EnumItem, Service, ActionOptions } from '..';
/**
 * 枚举类型
 */
export declare class Enum extends Vertex {
    /**
     * 概念类型
     */
    readonly level: LEVEL_ENUM;
    /**
     * 枚举 Id
     */
    readonly id: string;
    /**
     * dataTypes 中的唯一标识
     */
    readonly schemaRef: string;
    /**
     * 枚举名称
     */
    readonly name: string;
    /**
     * 枚举标题
     */
    readonly label: string;
    /**
     * 枚举描述
     */
    readonly description: string;
    /**
     * 枚举类型
     * @deprecated 兼容老版
     */
    readonly type: 'enum';
    /**
     * 枚举项
     */
    readonly enumItemList: Array<EnumItem>;
    /**
     * 所属服务 Id
     */
    readonly serviceId: string;
    /**
     * 所属服务类型
     */
    readonly serviceType: string;
    /**
     * 所属服务
     */
    readonly service: Service;
    /**
     * 父节点
     */
    readonly dataNode: DataNode;
    existingNames: Array<string>;
    /**
     * @param source 需要合并的部分参数
     */
    constructor(source?: Partial<Enum>);
    /**
     * 添加枚举
     */
    create(none?: void, actionOptions?: ActionOptions): Promise<this>;
    /**
     * 删除枚举
     */
    delete(none?: void, actionOptions?: ActionOptions): Promise<void>;
    /**
     * 修改枚举
     */
    update(none?: void, actionOptions?: ActionOptions, then?: () => Promise<any>): Promise<this>;
    /**
     * 设置枚举名称
     * @param name 名称
     */
    setName(name: string): Promise<void>;
    /**
     * 设置枚举标题
     * @param name 标题
     */
    setLabel(label: string): Promise<void>;
    /**
     * 设置枚举描述
     * @param description 描述
     */
    setDescription(description: string): Promise<void>;
    /**
     * 从后端 JSON 生成规范的 Enum 对象
     */
    static from(source: any, service: Service): Enum;
}
export default Enum;
