import type { WindowManager } from '@netless/window-manager'; import type { AppInMainViewPlugin } from './plugin'; import type { AppId, AppInMainViewOptions, AppState, AppStatus, Logger, OperationType, PublicEvent } from './types'; import EventEmitter2, { Listener } from 'eventemitter2'; export declare class EventEmitter extends EventEmitter2 { emit(event: T, ...args: any[]): boolean; on(event: T, listener: (...args: any[]) => void): this | Listener; } export declare class AppInMainViewManager { readonly wm: WindowManager; readonly publicEventEmitter: EventEmitter; readonly logger: Logger; readonly version: string; private readonly pluginOptions; private readonly injectStyleId; private collector; private plugin; private isCurWritable; private originSetBoxState; private originSetMinimized; private appMenuManager; private focueTimer; private titlebarTimer; get isWritable(): boolean; get wmTheme(): "light" | "dark"; constructor(props: { windowManager: WindowManager; options: AppInMainViewOptions; logger: Logger; }); get topBoxId(): string | undefined; get focused(): string | undefined; private init; private initInjectStyle; private removeInjectStyle; bindPlugin(plugin: AppInMainViewPlugin): void; destroy(): void; private onWritableChange; private setTitlebarNodeDisplay; private activeMaximizeBtn; private setAppNodeDisplay; observerFocusAppTimer(): void; observeTitlebarTimer(): void; private observeTitlebarHandler; private observeBoxStateChangeHandler; private getTargetParent; private minimizeBtnClickHandler; private observeAppSetupHandler; private observeBoxCloseHandler; private observeMainViewScenePathChangeHandler; private observeMaxStateMinimizeBtnClickHandler; private restrictedSetBoxState; private bindMaxStateMinimizeBtnClickHandler; private removeMaxStateMinimizeBtnClickHandler; private observeMainViewMountedHandler; private observeMainViewRebindHandler; private checkBoxState; observeWm(): void; unobserveWm(): void; onAppStateChange(operation: OperationType, appId: AppId, value: AppState): void; hideApp(appId: AppId): void; showApp(appId: AppId): void; showCurrentPageApps(): void; hiddenCurrentPageApps(): void; get isCurrentPageAppsAllVisible(): boolean; get isCurrentPageAppsAllHidden(): boolean; getTargetPageVisibleApps(scenePath: string): Set; getTargetPageApps(scenePath: string): Map; getCurrentPageVisibleApps(): Set; getCurrentPageApps(): Map; }