UNPKG

@lanaqi/rsr

Version:
110 lines (109 loc) 2.18 kB
import type { AccessBlocker } from './blocker'; import type { AccessHandler } from './handler'; /** * 访问管理器 */ export interface AccessManager { /** * 是否已禁用 */ isDisabled(): boolean; /** * 设置已禁用 */ setDisabled(disabled: boolean): void; /** * 获取处理器 */ getHandler(): AccessHandler; /** * 设置处理器 * @param handler 处理器 */ setHandler(handler: AccessHandler): void; /** * 获取阻断器 */ getBlocker(): AccessBlocker; /** * 设置阻断器 * @param blocker 阻断器 */ setBlocker(blocker: AccessBlocker): void; /** * 获取父级 */ getParent(): AccessManager | undefined; /** * 设置父级 * @param parent 父级 */ setParent(parent: AccessManager): void; } /** * 简单管理器 */ export declare class SimpleManager implements AccessManager { /** * 已禁用 * @private */ private disabled; /** * 处理器 * @private */ private handler; /** * 阻断器 * @private */ private blocker; /** * 父级 * @private */ private parent?; /** * 构造函数 * @param disabled 已禁用 * @param handler 处理器 * @param blocker 阻断器 */ constructor(disabled: boolean, handler: AccessHandler, blocker: AccessBlocker); /** * 获取是否已禁用 */ isDisabled(): boolean; /** * 设置是否已禁用 */ setDisabled(disabled: boolean): void; /** * 获取处理器 */ getHandler(): AccessHandler; /** * 设置处理器 * @param handler 处理器 */ setHandler(handler: AccessHandler): void; /** * 获取阻断器 */ getBlocker(): AccessBlocker; /** * 设置阻断器 * @param blocker 阻断器 */ setBlocker(blocker: AccessBlocker): void; /** * 获取父级 */ getParent(): AccessManager | undefined; /** * 设置父级 * @param parent 父级 */ setParent(parent?: AccessManager): void; }