electron.ts 1.1 KB
Newer Older
1 2 3 4 5
/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/

6
import { MessageBoxOptions, MessageBoxReturnValue, OpenDevToolsOptions } from 'electron';
7 8 9 10 11 12 13 14
import { createDecorator } from 'vs/platform/instantiation/common/instantiation';

export const IElectronService = createDecorator<IElectronService>('electronService');

export interface IElectronService {

	_serviceBrand: undefined;

15 16
	// Window
	windowCount(): Promise<number>;
17
	openEmptyWindow(options?: { reuse?: boolean }): Promise<void>;
18

19 20
	// Dialogs
	showMessageBox(options: MessageBoxOptions): Promise<MessageBoxReturnValue>;
21 22 23

	// OS
	showItemInFolder(path: string): Promise<void>;
24
	relaunch(options?: { addArgs?: string[], removeArgs?: string[] }): Promise<void>;
25 26 27 28

	// Development
	openDevTools(options?: OpenDevToolsOptions): Promise<void>;
	toggleDevTools(): Promise<void>;
29
}