import { LEVEL_ENUM, Vertex, Schema, Structure, ActionOptions } from '..'; /** * 数据结构属性类 */ export declare class StructureProperty extends Vertex implements Schema { /** * 概念类型 */ level: LEVEL_ENUM; /** * Id */ readonly id: string; /** * 名称 */ readonly name: string; /** * 标签 */ readonly label: string; /** * 描述 */ readonly description: string; /** * type */ readonly type: string; /** * 数据格式 */ readonly format: string; /** * generic 数据格式 */ readonly typeInstantiation: Schema; /** * 是否必须 */ readonly required: boolean; /** * 数据类型 */ readonly $ref: string; /** * 是否为数组,老的 Schema 中仍然用这种形式 */ readonly isArray: boolean; /** * 规则列表 */ readonly rules: any; /** * 默认值 */ readonly defaultValue: string | boolean | number; /** * 父级 Id */ readonly structureId: string; /** * 父级引用 */ root: Structure; /** * 节点是否为叶子节点 * 前端 UI 状态 */ isLeaf: boolean; /** * 周边存在的名称 */ existingNames: Array; /** * @param source 需要合并的部分参数 */ constructor(source?: Partial); /** * 添加数据结构属性 */ create(none?: void, actionOptions?: ActionOptions): Promise; /** * 删除数据结构属性 */ delete(none?: void, actionOptions?: ActionOptions): Promise; /** * 修改数据结构属性 */ update(none?: void, actionOptions?: ActionOptions, then?: () => Promise): Promise; /** * 设置数据结构属性名称 * @param name 名称 */ setName(name: string): Promise; /** * 设置数据结构属性标题 * @param label 标题 */ setLabel(label: string): Promise; /** * 设置数据结构属性描述 * @param description 描述 */ setDescription(description: string): Promise; /** * 查找schema 顶点被引用的逻辑顶点列表 */ getSchemaUsage(): Promise; /** * 设置数据结构属性类型 */ setDataType(schema: Schema): Promise; /** * 设置数据结构属性是否为列表 * @param isArray */ setAsList(isArray: boolean): Promise; /** * 设置数据结构属性默认值 */ setDefaultValue(defaultValue: string): Promise; /** * 设置数据结构属性必须 * @param required 必须 */ setRequired(required: boolean): Promise; setRules(rules: any): Promise; /** * 从后端 JSON 生成规范的 StructureProperty 对象 */ static from(source: any, root: Structure): void; } export default StructureProperty;