UNPKG

@lcap/nasl

Version:

NetEase Application Specific Language

700 lines 17.7 kB
import { App, Module, Entity, EntityProperty, Logic, View, Namespace, TypeAnnotation, BusinessComponent } from '../concepts'; export declare const filterProperty: (key: 'inTable' | 'inFilter' | 'inForm' | 'inDetail') => (property: EntityProperty) => boolean; /** * 生成表达式的代码 * @param property 实体属性 * @param expression 表达式 */ export declare function getExpression(property: EntityProperty, expression: string): string; /** * Logic 中获取变量 * @param resolver * @param paramName */ export declare function getParamFromLogic(logic: Logic, paramName: string): import("node_modules/@lcap/nasl-concepts/out/concepts/Param__").Param; export declare function getFirstDisplayedProperty(entity: Entity): EntityProperty; /** * 生成逻辑 Param * @param paramIdOrName 参数 id 或引用名称 * @param expression 表达式 * @param schemaChildren 数据结构 */ export declare function genLogicParam(paramIdOrName: string, expression: string): { concept: string; name: string; kind: string; keyword: string; expression: any; }; /** * 生成接口 Param * @param paramIdOrName 参数 id 或引用名称 * @param expression 表达式 * @param schemaChildren 数据结构 */ export declare function genMemberExpression(expression: string, schemaRefs?: Array<string>): any; /** * 命名组,主要承载一次 mergeBlock 中的逻辑名称 */ export interface NameGroup { logic?: string; structure?: string; load?: string; remove?: string; modify?: string; submit?: string; lowerEntity?: string; [key: string]: string; } /** * 生成数据查询唯一的命名组 * @param viewName 页面名称 * @param componentName 组件名称 * @param suffix 其它后缀,比如实体名等等 * @param defaultInView 是否在页面逻辑中用 load 简写 */ export declare function genUniqueQueryNameGroup(scope: App | Module | Namespace, view: View | BusinessComponent, componentName?: string, defaultInView?: boolean, suffix?: string): NameGroup; export declare const NaslCoreTypeAnnotation: { Boolean: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; text: string; }; Decimal: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; text: string; }; Long: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; text: string; }; String: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; text: string; }; Binary: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; text: string; }; Date: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; text: string; }; Time: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; text: string; }; DateTime: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; text: string; }; }; export declare const NaslUITypeAnnotation: { DataSourceParams: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; EventTarget: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; MouseEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; FocusEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; ChangeEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; NavigateEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; ChangeItemEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; ChangeItemsEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; CascadeCapsulesEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; CollapseEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; SliderEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; DateEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; OperatorItemEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; ValidateResult: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; PaginationEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; DurationEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; TransferEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; TreeChangeEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; CheckedEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; UploadEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; UploadErrorEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; SortEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; PoiInfo: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; KeyboardEvent: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; Current: (typeArguments: any[]) => { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; typeArguments: any[]; }; DragAndDropEvent: (typeArguments: any[]) => { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; typeArguments: any[]; }; ExpandEvent: (typeArguments: any[]) => { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; typeArguments: any[]; }; ScrollEvent: (typeArguments: any[]) => { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; typeArguments: any[]; }; }; export declare const NaslIOTypeAnnotation: { File: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; FileInfo: { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; }; export declare const NaslTypeAnnotation: { Reference: ({ typeNamespace, typeName }: { typeNamespace: string; typeName: string; }) => { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; }; AnonymousStructure: (properties: any[]) => { concept: string; typeKind: string; typeName: string; typeNamespace: string; typeArguments: { concept: string; typeKind: string; properties: any[]; }[]; }; }; export declare const NaslCollectionTypeAnnotation: { List: (typeArguments: any[]) => { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; typeArguments: any[]; }; PageOf: (typeArguments: any[]) => { concept: string; name: string; typeKind: string; typeNamespace: string; typeName: string; typeArguments: any[]; }; }; export declare const NaslLogicItem: { Start: { concept: string; name: string; label: string; kind: string; }; End: { concept: string; name: string; label: string; kind: string; }; CallLogic: ({ calleeNamespace, calleeName, label, shortcut, arguments: args, }: { calleeNamespace?: string; calleeName: string; label?: string; shortcut?: boolean; arguments: any[]; }) => { concept: string; name: string; label: string; kind: string; shortcut: boolean; calleeNamespace: string; calleeName: string; arguments: any[]; }; CallFunction: ({ calleeNamespace, calleeName, label, shortcut, arguments: args, typeArguments: typeArgs, }: { calleeNamespace?: string; calleeName: string; label?: string; shortcut?: boolean; arguments?: any[]; typeArguments?: any[]; }) => { concept: string; name: string; label: string; kind: string; calleeNamespace: string; calleeName: string; arguments: any[]; typeArguments: any[]; }; Argument: ({ keyword, expression }: { keyword: string; expression: any; }) => { concept: string; name: string; kind: string; keyword: string; expression: any; }; MemberExpression: ({ object, property }: { object: any; property: any; }) => { concept: string; name: string; kind: string; object: any; property: any; }; Identifier: ({ name }: { name: string; }) => { concept: string; kind: string; name: string; }; BooleanLiteral: ({ value }: { value: 'true' | 'false'; }) => { concept: string; value: "true" | "false"; folded: boolean; }; StringLiteral: ({ value }: { value: string; }) => { concept: string; name: string; kind: string; value: string; }; Assignment: ({ left, right }: { left: any; right: any; }) => { concept: string; name: string; label: string; kind: string; left: any; right: any; }; IfStatement: ({ test, consequent, alternate }: { test: any; consequent: any[]; alternate: any[]; }) => { concept: string; name: string; kind: string; test: any; consequent: any[]; alternate: any[]; }; BinaryExpression: ({ operator, left, label, right }: { operator: string; left?: any; right?: any; label?: string; }) => { concept: string; name: string; kind: string; label: string; operator: string; left: any; right: any; }; Paginate: ({ list, page, size }: { list: any; page: any; size: any; }) => { concept: string; name: string; kind: string; label: string; list: any; page: any; size: any; }; }; export declare const NaslQueryExpression: { QueryFieldExpression: ({ label, isDotStar, entityAsName, propertyName, }: { label: string; isDotStar: boolean; entityAsName: string; propertyName?: string; }) => { concept: string; name: string; label: string; kind: string; isDotStar: boolean; entityAsName: string; propertyName: string; }; QueryFromExpression: ({ entityNamespace, entityName, joinParts }: { entityNamespace: string; entityName: string; joinParts: any[]; }) => { concept: string; name: string; kind: string; entityNamespace: string; entityName: string; joinParts: any[]; }; QueryJoinExpression: ({ label, entityNamespace, entityName, joinType, onExpressions, joinParts, }: { label?: string; entityNamespace: string; entityName: string; joinType: string; onExpressions: any[]; joinParts: any[]; }) => { concept: string; label: string; name: string; kind: string; entityNamespace: string; entityName: string; joinType: string; onExpressions: any[]; joinParts: any[]; }; QuerySelectExpression: ({ label, distinct, star, selectElements, }: { label?: string; distinct?: boolean; star?: boolean; selectElements: any[]; }) => { concept: string; name: string; kind: string; label: string; distinct: boolean; star: boolean; selectElements: any[]; }; QueryOrderByExpression: ({ label, order, orderElement }: { label?: string; order: any; orderElement: any; }) => { concept: string; label: string; order: any; orderElement: any; }; QueryLimitExpression: ({ label, pageElement, pageSizeElement }: { label?: string; pageElement: any; pageSizeElement: any; }) => { concept: string; name: string; kind: string; label: string; pageElement: any; pageSizeElement: any; }; CallQueryComponent: ({ label, typeAnnotation, select, from, where, limit, groupBy, having, orderBy, logicName, structureName, ideVersion, }: { label?: string; typeAnnotation: any; select: any; from: any; where: any; limit: any; groupBy: any[]; having: any; orderBy: any[]; logicName: string; structureName: string; ideVersion: string; }) => { concept: string; name: string; label: string; kind: string; typeAnnotation: any; select: any; from: any; where: any; limit: any; groupBy: any[]; having: any; orderBy: any[]; logicName: string; structureName: string; ideVersion: string; }; }; export declare const NaslNode: { Logic: ({ name, params, returns, variables, body, description, playground, }: { name: string; params?: any[]; returns?: any[]; variables?: any[]; body?: any[]; description?: string; playground?: any[]; }) => { concept: string; name: string; params: any[]; returns: any[]; variables: any[]; body: any[]; description: string; playground: any[]; }; Structure: ({ name, properties, origin }: { name: string; properties?: any[]; origin?: 'CallQueryComponent'; }) => { concept: string; name: string; properties: any[]; origin: "CallQueryComponent"; }; StructureProperty: ({ name, typeAnnotation }: { name: string; typeAnnotation?: any; }) => { concept: string; name: string; typeAnnotation: any; }; Variable: ({ name, typeAnnotation }: { name: string; typeAnnotation?: any; }) => { concept: string; name: string; typeAnnotation: any; }; Param: ({ name, typeAnnotation }: { name: string; typeAnnotation?: any; }) => { concept: string; name: string; typeAnnotation: any; }; Return: ({ name, typeAnnotation }: { name: string; typeAnnotation?: any; }) => { concept: string; name: string; typeAnnotation: any; }; }; export declare const getDecimalInfo: (property: any) => { step: number; decimalLength: any; }; export declare function transEntityMetadataTypes(typeAnnotation: TypeAnnotation, app: App): string; //# sourceMappingURL=utils.d.ts.map