@lcap/asl
Version:
NetEase Application Specific Language
129 lines (128 loc) • 3.54 kB
TypeScript
import { View, Element } from '..';
interface Role {
DomainName: string;
RoleId: string;
RoleName: string;
RoleStatus: number;
}
interface RoleItem extends Role {
permission?: Permission;
checked?: Boolean;
toggling?: Boolean;
}
interface Permission {
DomainName: string;
PermissionId: string;
PermissionValue: string;
}
export declare class Nuims {
/**
* App Name
*/
readonly domainName: string;
/**
* 上报权限后的资源id
*/
readonly resourceId: string;
/**
* view
*/
readonly view: View;
/**
* element
*/
readonly element: Element;
/**
* @param source 需要合并的部分参数
*/
constructor(source?: Partial<Nuims>);
getInitRoles(): Promise<RoleItem[]>;
/**
* 绑定dev权限
* 用于用户创建页面、子页面的时候
* @returns
*/
attachDevRole(): Promise<void>;
handleDefaultPermisssionForRole(): Promise<void>;
/**
* 获取当前资源
*/
getResource(): Promise<any>;
/**
* 创建资源
*/
createResource(): Promise<any>;
/**
* 批量创建资源,创建当前 View / Element 及其子页面/元素关联的所有资源
*/
createResources(): Promise<void>;
/**
* 批量创建资源,创建 Element 及其子元素关联的所有资源
*/
createElementResources(element: Element): void;
/**
* 删除当前 View / Element 及其子页面/元素关联的所有资源
*/
deleteResources(): void;
/**
* 批量删除资源,删除 View 及其子页面关联的所有资源
*/
deleteViewResources(view: View): void;
/**
* 批量删除资源,删除 Element 及其子元素关联的所有资源
*/
deleteElementResources(element: Element): void;
/**
* 根据 resourceValue 获取关联资源
*/
getResourceFromResourceValue(resourceValue: string): Promise<any>;
/**
* 根据 resourceValue 创建关联资源
*/
createResourceFromResourceValue(resourceValue: string): Promise<void>;
/**
* 根据 resourceValue 删除关联资源
*/
deleteResourceFromResourceValue(resourceValue: string): Promise<void>;
/**
* 根据 resourceValue 编辑关联资源
*/
editResourceFromResourceValue(resourceValue: string): Promise<void>;
/**
* 根据 Permission 获取关联资源
*/
getResourcesFromPermission(permission: Permission): Promise<any>;
getResourceValueFromElement(element: Element): string;
getResourceValue(): string;
getDescription(): string;
/**
* 获取角色列表
*/
getRoles(): Promise<any>;
/**
* 1.创建角色
* 2.创建角色的默认权限
* 3.绑定角色和权限
*/
createDefaultRoleFromRoleName(roleName: string): Promise<void>;
getDefaultPermissionForRole(role: Role): Promise<any>;
getPermissionResources(permission: Permission): any;
/**
* 为角色创建默认权限
*/
createDefaultPermission(role: Role): Promise<any>;
/**
* 关联角色和权限
*/
bindRolesAndPermissions(role: Role, permission: Permission): any;
/**
* 绑定权限和资源
*/
attachPermissionResourceAction(): Promise<void>;
/**
* 解绑权限和资源
*/
attachPermissionResource(permissionId: string): Promise<void>;
detachPermissionResource(permissionId: string): Promise<void>;
}
export default Nuims;