UNPKG

@sussudio/platform

Version:

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

38 lines (36 loc) 1.56 kB
/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import { Event } from '@sussudio/base/common/event.mjs'; import { Disposable, IDisposable } from '@sussudio/base/common/lifecycle.mjs'; import { TerminalShellType } from '../common/terminal.mjs'; export interface IWindowsShellHelper extends IDisposable { readonly onShellNameChanged: Event<string>; readonly onShellTypeChanged: Event<TerminalShellType>; getShellType(title: string): TerminalShellType; getShellName(): Promise<string>; } export declare class WindowsShellHelper extends Disposable implements IWindowsShellHelper { private _rootProcessId; private _isDisposed; private _currentRequest; private _shellType; get shellType(): TerminalShellType | undefined; private _shellTitle; get shellTitle(): string; private readonly _onShellNameChanged; get onShellNameChanged(): Event<string>; private readonly _onShellTypeChanged; get onShellTypeChanged(): Event<TerminalShellType>; constructor(_rootProcessId: number); private _startMonitoringShell; checkShell(): Promise<void>; private traverseTree; dispose(): void; /** * Returns the innermost shell executable running in the terminal */ getShellName(): Promise<string>; getShellType(executable: string): TerminalShellType; }