UNPKG

@levimc-lse/types

Version:

TypeScript declaration files for the Legacy Script Engine.

152 lines (127 loc) 3.75 kB
/** * 身分组实例 */ declare class Role { /** * 创建身分组 * @param name 身份组名称,必须是唯一的并且不能含有@#[]{}<>()/|$%^&*!~`"'+=?\n\t\r\f\v * @param displayName 身份组显示名称(默认和name一样) */ constructor(name: string, displayName?: string) /** 身份组名称 */ name: string /** 身份组显示名称 */ displayName: string /** 身份组优先级,越大越优先 */ priority: number /** 身份组拥有的权限 */ permissions: { name: string; enabled: boolean; extra: object }[] /** 身份组成员的Xuid */ members: string[] /** * 检查身份组实例是否有效 */ isValid(): boolean /** * 检查身份组是否有指定成员 * @param xuid 成员(玩家)的Xuid */ hasMember(xuid: string): boolean /** * 添加成员到身份组 * @param xuid 成员(玩家)的Xuid */ addMember(xuid: string): void /** * 从身份组中移除成员 * @param xuid 成员(玩家)的Xuid */ removeMember(xuid: string): void /** * 检查身份组是否有指定权限 * @param name 权限名称 * @returns 是否有该权限 */ hasPermission(name: string): boolean /** * 设置身份组权限 * @param name 权限名称,必须已经注册在PermInfoList中 * @param enabled 权限是否开启 * @param extraData 权限的额外数据 */ setPermission(name: string, enabled: boolean, extraData?: object): void /** * 移除身份组中的权限 * @param name 权限名称 */ removePermission(name: string): void /** * 检查权限是否存在于身份组中 * @param name 权限是否已经存在于身份组中 * * 注意: 不同于hasPermission,这个方法会返回true只要权限已经存在于身份组,但权限不一定开启。 */ permissionExists(name: string): boolean } declare namespace Permission { /** * Get a role * @param name 身份组名称 * @returns 身份组实例 */ function getRole(name: string): Role /** * Get or create a role * @param name 身份组名称,必须是唯一的并且不能含有@#[]{}<>()/|$%^&*!~`"'+=?\n\t\r\f\v * @returns 身份组实例 */ function getOrCreateRole(name: string): Role /** * 检查身份组是否存在 * @param name 身份组名称 */ function roleExists(name: string): boolean /** * 删除身份组 * @param name 身份组名称 */ function deleteRole(name: string): void /** * 注册权限 * @param name 权限名,唯一且不包含空格或\t\n\r\f\v,形如namespace:name(至少有一个 `:`) * @param desc 权限描述 */ function registerPermission(name: string, desc: string): void /** * 检查权限是否存在 * @param name 权限名称 */ function permissionExists(name: string): boolean /** * 检查玩家是否有指定权限 * @param xuid 玩家Xuid * @param permName 权限名称 */ function checkPermission(xuid: string, permName: string): boolean /** * 检查玩家是否是指定身份组的成员 * @param xuid 玩家Xuid * @param roleName 身份组名称 */ function isMemberOf(xuid: string, roleName: string): boolean /** * 获取玩家的身份组列表 * @param xuid 玩家Xuid * @returns 此玩家的身份组列表 */ function getPlayerRoles(xuid: string): Role[] /** * 获取玩家的权限列表 * @param xuid 玩家Xuid */ function getPlayerPermissions(xuid: string): object[] /** * 保存数据 */ function saveData(): void }