///
import url from 'url';
import { BrowserWindow, IpcMainEvent } from 'electron';
import { ElectronWindowMap, HOTKEY_SCAN_TYPE, WIN_CONFIG } from "../@types/types";
import ElectronContextWindow from "./ElectronContextWindow";
import { ElectronMenu } from "./menu/ElectronMenu";
export default abstract class ElectronWindow {
[key: string]: any;
config: WIN_CONFIG;
context?: ElectronContextWindow;
preloadedConfig: Array;
menu?: ElectronMenu;
win?: BrowserWindow | null;
parent?: ElectronContextWindow | ElectronWindow;
children: ElectronWindowMap;
id: string;
name: string;
className: string;
protected constructor(_parent?: ElectronContextWindow | ElectronWindow, _config?: WIN_CONFIG);
preloadConfigs(): any[];
hide(): void;
show(): void;
createAndShow(isShow?: boolean): void;
boundTempStorage: any;
onWindowBoundChanged(): void;
startWindowBoundWatcher(): void;
releaseWindowBoundWatcher(bounds?: any, eventType?: string): void;
close: () => void;
parseUri(uri: string | undefined): string | url.UrlObject;
loadUrl(): void;
getChild(id: string): ElectronWindow | null;
abstract event(event: any, param: any): boolean | void;
broadcastEvent(eventKey: string, payout?: any, result?: any, sender?: IpcMainEvent, event?: HOTKEY_SCAN_TYPE): void;
returnSend(eventKey: string, payout?: any, result?: any, sender?: IpcMainEvent): void;
}
//# sourceMappingURL=ElectronWindow.d.ts.map