@difizen/mana-core
Version:
40 lines • 1.75 kB
TypeScript
import { DebugService, StorageService } from '../common';
import { SlotViewManager } from './slot-view-manager';
import { ViewManager } from './view-manager';
import type { View, ViewOpenOption } from './view-protocol';
interface SavedView {
factoryId: string;
option: any;
slot?: string | undefined;
children?: SavedView[] | undefined;
slots?: SavedView[] | undefined;
state?: any | undefined;
openOption?: ViewOpenOption | undefined;
}
export declare namespace SavedView {
function is(data?: Record<string, any>): data is SavedView;
}
export declare class ViewStorage {
protected storageKey: string;
protected restoreCount: number;
protected readonly viewManager: ViewManager;
protected readonly slotViewManager: SlotViewManager;
protected readonly debugService: DebugService;
protected readonly storageService: StorageService;
protected shouldStoreViews: boolean;
get canStoreView(): boolean;
get onlyRootView(): boolean;
constructor(viewManager: ViewManager, slotViewManager: SlotViewManager, debugService: DebugService, storageService: StorageService);
disableStoreView(): void;
enableStoreView(): void;
resetViews(): void;
saveViews(): Promise<void>;
protected getViewInfo(view: View, slot?: string, openOption?: ViewOpenOption): SavedView | undefined;
protected getViewBaseInfo(view: View, slot?: string): SavedView | undefined;
protected getViewSlotsInfo(parentView: View): SavedView[] | undefined;
protected getViewChildrenInfo(view: View): SavedView[] | undefined;
getSavedView(): Promise<SavedView | undefined>;
restoreView(savedView: SavedView): Promise<View | undefined>;
}
export {};
//# sourceMappingURL=view-storage.d.ts.map