import { LEVEL_ENUM, Vertex, Element, Attr, ExpressionNode, ActionOptions } from '..';
/**
 * 前端指令
 * 去除了 v-model
 */
export declare class Directive extends Vertex {
    /**
     * 概念类型
     */
    readonly level: LEVEL_ENUM;
    /**
     * 指令类型
     */
    readonly type: 'string' | 'static' | 'dynamic';
    /**
     * Id
     */
    readonly id: string;
    /**
     * 指令名
     */
    readonly name: string;
    /**
     * 指令名
     */
    readonly rawName: string;
    /**
     * 指令值
     */
    readonly value: string;
    /**
     * 参数
     */
    readonly arg: string;
    /**
     * 修饰符
     */
    readonly modifiers: {
        [key: string]: boolean;
    };
    /**
     * 关联的动态表达式
     */
    readonly expression?: ExpressionNode;
    /**
     * 所在元素 Id
     */
    readonly elementId: string;
    /**
     * 所在元素
     */
    readonly element: Element;
    /**
     * @param source 需要合并的部分参数
     */
    constructor(source?: Partial<Directive>);
    /**
     * 转换成 Vue 的模板格式
     */
    toVue(placeholder?: any, finalCode?: boolean): string;
    /**
     * 从后端 JSON 生成规范的 Directive 对象
     */
    static from(source: any, element: Element): Directive;
    /**
     * 添加组件指令
     */
    create(none?: void, actionOptions?: ActionOptions): Promise<this>;
    /**
     * 删除组件指令
     */
    delete(none?: void, actionOptions?: ActionOptions): Promise<void>;
    /**
     * 修改组件指令
     */
    update(data: Attr, actionOptions?: ActionOptions): Promise<this>;
}
export default Directive;
