@lcap/asl
Version:
NetEase Application Specific Language
79 lines (78 loc) • 1.67 kB
TypeScript
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;