@lcap/asl
Version:
NetEase Application Specific Language
317 lines (316 loc) • 9.94 kB
TypeScript
import { Entity, Structure, LogicItem, LEVEL_ENUM } from '../..';
import { NameGroup } from './utils';
export declare function genQueryStructure(allEntities: Array<Entity>, nameGroup: NameGroup): {
level: string;
ideVersion: string;
editable: boolean;
name: string;
type: string;
propertyList: {
level: string;
ideVersion: string;
editable: boolean;
name: string;
$ref: string;
_posIndex: number;
typeKey: string;
}[];
serviceId: string;
serviceType: string;
};
export declare function genQueryAssignment(allEntities: Array<Entity>, nameGroup: NameGroup, supportFilter: boolean, supportSort: boolean): {
level: string;
label: string;
folded: boolean;
type: string;
operator: string;
left: {
level: string;
parentAttr: string;
folded: boolean;
type: string;
name: string;
};
right: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
structureRef: string;
select: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
distinct: boolean;
star: boolean;
selectElementList: any[];
};
from: {
level: string;
parentAttr: string;
folded: boolean;
type: string;
entityRef: string;
joinPartList: {
level: string;
parentAttr: string;
folded: boolean;
type: string;
joinType: string;
entityRef: string;
joinPartList: any[];
popupOpened: boolean;
onExpressionList: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
left: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
propertyRef: string;
joinPartRef: string;
};
right: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
propertyRef: string;
joinPartRef: string;
};
operator: string;
}[];
serviceId: string;
}[];
};
where: object[];
groupBy: any[];
having: any[];
orderBy: {
level: string;
type: string;
label: string;
order: {
level: string;
type: string;
name: string;
};
orderElement: {
level: string;
type: string;
name: string;
};
}[];
logicName: string;
serviceId: string;
structureName: string;
limit: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
pageElement: {
level: string;
parentAttr: string;
folded: boolean;
type: string;
name: string;
};
pageSizeElement: {
level: string;
parentAttr: string;
folded: boolean;
type: string;
name: string;
};
};
};
};
export declare function genQueryInterface(allEntities: Array<Entity>, nameGroup: NameGroup, supportFilter: boolean, supportSort: boolean): {
level: LEVEL_ENUM;
name: string;
path: string;
method: string;
description: string;
entityId: string;
serviceType: string;
serviceId: string;
parameters: string;
requestBody: string;
responses: string;
logic: {
level: string;
name: string;
description: string;
moduleId: string;
moduleType: string;
params: {
level: LEVEL_ENUM;
type: string;
name: string;
description: string;
schema: {
type: string;
format: string;
};
required: boolean;
in: string;
}[];
returns: {
level: LEVEL_ENUM;
type: string;
name: string;
description: string;
schema: {
type: string;
typeInstantiation: {
typeName: string;
typeParams: {
typeParamValue: {
$ref: string;
};
type: string;
typeParamName: string;
}[];
};
};
}[];
variables: any[];
body: ({
level: string;
label: string;
folded: boolean;
type: string;
operator: string;
left: {
level: string;
parentAttr: string;
folded: boolean;
type: string;
name: string;
};
right: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
structureRef: string;
select: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
distinct: boolean;
star: boolean;
selectElementList: any[];
};
from: {
level: string;
parentAttr: string;
folded: boolean;
type: string;
entityRef: string;
joinPartList: {
level: string;
parentAttr: string;
folded: boolean;
type: string;
joinType: string;
entityRef: string;
joinPartList: any[];
popupOpened: boolean;
onExpressionList: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
left: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
propertyRef: string;
joinPartRef: string;
};
right: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
propertyRef: string;
joinPartRef: string;
};
operator: string;
}[];
serviceId: string;
}[];
};
where: object[];
groupBy: any[];
having: any[];
orderBy: {
level: string;
type: string;
label: string;
order: {
level: string;
type: string;
name: string;
};
orderElement: {
level: string;
type: string;
name: string;
};
}[];
logicName: string;
serviceId: string;
structureName: string;
limit: {
level: string;
parentAttr: string;
label: string;
folded: boolean;
type: string;
pageElement: {
level: string;
parentAttr: string;
folded: boolean;
type: string;
name: string;
};
pageSizeElement: {
level: string;
parentAttr: string;
folded: boolean;
type: string;
name: string;
};
};
};
} | {
level: string;
label: string;
folded: boolean;
type: string;
})[];
playground: any[];
};
};
export declare function joinEntity(callQueryComponent: LogicItem, entity: Entity, recordStructure: Structure): Promise<void>;
export default genQueryAssignment;