UNPKG

@sussudio/platform

Version:

Internal APIs for VS Code's service injection the base services.

69 lines (67 loc) 2.72 kB
/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import { MessagePortMain } from 'electron'; import { Event } from '@sussudio/base/common/event.mjs'; import { Disposable } from '@sussudio/base/common/lifecycle.mjs'; import { IProcessEnvironment } from '@sussudio/base/common/platform.mjs'; import { IEnvironmentMainService } from '../../environment/electron-main/environmentMainService.mjs'; import { ILifecycleMainService } from '../../lifecycle/electron-main/lifecycleMainService.mjs'; import { ILogService } from '../../log/common/log.mjs'; import { IProtocolMainService } from '../../protocol/electron-main/protocol.mjs'; import { ISharedProcess } from '../node/sharedProcess.mjs'; import { IThemeMainService } from '../../theme/electron-main/themeMainService.mjs'; import { WindowError } from '../../window/electron-main/window.mjs'; import { IUserDataProfilesService } from '../../userDataProfile/common/userDataProfile.mjs'; import { IPolicyService } from '../../policy/common/policy.mjs'; export declare class SharedProcess extends Disposable implements ISharedProcess { private readonly machineId; private userEnv; private readonly environmentMainService; private readonly userDataProfilesService; private readonly lifecycleMainService; private readonly logService; private readonly policyService; private readonly themeMainService; private readonly protocolMainService; private readonly firstWindowConnectionBarrier; private window; private windowCloseListener; private readonly _onDidError; readonly onDidError: Event<{ type: WindowError; details?: | { reason: string; exitCode: number; } | undefined; }>; constructor( machineId: string, userEnv: IProcessEnvironment, environmentMainService: IEnvironmentMainService, userDataProfilesService: IUserDataProfilesService, lifecycleMainService: ILifecycleMainService, logService: ILogService, policyService: IPolicyService, themeMainService: IThemeMainService, protocolMainService: IProtocolMainService, ); private registerListeners; private onWindowConnection; private onWorkerConnection; private onWillShutdown; private send; private _whenReady; whenReady(): Promise<void>; private _whenIpcReady; private get whenIpcReady(); private createWindow; private registerWindowListeners; connect(): Promise<MessagePortMain>; toggle(): Promise<void>; isVisible(): boolean; private isAlive; }