UNPKG

@mamba-le/auth

Version:
65 lines (64 loc) 1.49 kB
import { Subject } from 'rxjs'; export interface IInfoOptions { StorageKey: string; } export declare class InfoController<T = any> { private options; constructor(options?: IInfoOptions); /** * 持久化初始化完成 Subject * @type {Promise<any>} * @memberof ControllerUser */ protected readonly HydrateSubject: Subject<Boolean>; /** * 持久化初始化完成 Promise * @type {Promise<any>} * @memberof ControllerUser */ get HydrateAsync(): Promise<this>; /** * 异步 HydrateSubject 已经完成 * @readonly * @memberof PortalAuthController */ get HydrateisStopped(): boolean; get StorageKey(): string; /** * 数据存储对象 * @protected * @type {T} * @memberof InfoController */ protected _value: T; /** * 最后一次更新 值 HydrateisStopped 未完成前 存储 用于对比变化 * @protected * @memberof AuthController */ protected lastValue: any; /** * 外部可访问对象 * @readonly * @type {T} * @memberof InfoController */ get value(): T; /** * 保存 Token * @param _AccessToken * @returns */ onSave(value: T): void; /** * 清理所有的登录信息 * @return {*} * @memberof AuthController */ onClear(): void; /** * 创建持久化存储 * @memberof BaseModel */ protected createHydrate(): Promise<void>; }