// @sri seems unnesessary // export interface IWindowsMainService { // _serviceBrand: any; // // events // readonly onWindowReady: Event; // readonly onWindowsCountChanged: Event; // readonly onWindowClose: Event; // // methods // ready(initialUserEnv: IProcessEnvironment): void; // reload(win: ICodeWindow, cli?: ParsedArgs): void; // enterWorkspace(win: ICodeWindow, path: URI): Promise; // closeWorkspace(win: ICodeWindow): void; // open(openConfig: IOpenConfiguration): ICodeWindow[]; // openExtensionDevelopmentHostWindow(extensionDevelopmentPath: string | string[], openConfig: IOpenConfiguration): void; // pickFileFolderAndOpen(options: INativeOpenDialogOptions): Promise; // pickFolderAndOpen(options: INativeOpenDialogOptions): Promise; // pickFileAndOpen(options: INativeOpenDialogOptions): Promise; // pickWorkspaceAndOpen(options: INativeOpenDialogOptions): Promise; // showMessageBox(options: Electron.MessageBoxOptions, win?: ICodeWindow): Promise; // showSaveDialog(options: Electron.SaveDialogOptions, win?: ICodeWindow): Promise; // showOpenDialog(options: Electron.OpenDialogOptions, win?: ICodeWindow): Promise; // focusLastActive(cli: ParsedArgs, context: OpenContext): ICodeWindow; // getLastActiveWindow(): ICodeWindow | undefined; // waitForWindowCloseOrLoad(windowId: number): Promise; // openNewWindow(context: OpenContext, options?: INewWindowOptions): ICodeWindow[]; // openNewTabbedWindow(context: OpenContext): ICodeWindow[]; // sendToFocused(channel: string, ...args: any[]): void; // sendToAll(channel: string, payload: any, windowIdsToIgnore?: number[]): void; // getFocusedWindow(): ICodeWindow | undefined; // getWindowById(windowId: number): ICodeWindow | undefined; // getWindows(): ICodeWindow[]; // getWindowCount(): number; // quit(): void; // }