@sussudio/platform
Version:
Internal APIs for VS Code's service injection the base services.
34 lines (32 loc) • 1.49 kB
text/typescript
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { ILogService } from '../../log/common/log.mjs';
import { ISharedProcessTunnel, ISharedProcessTunnelService } from '../../remote/common/sharedProcessTunnelService.mjs';
import { ISharedTunnelsService } from '../common/tunnel.mjs';
import { IAddress } from '../../remote/common/remoteAgentConnection.mjs';
import { Disposable } from '@sussudio/base/common/lifecycle.mjs';
export declare class SharedProcessTunnelService extends Disposable implements ISharedProcessTunnelService {
private readonly _tunnelService;
private readonly _logService;
_serviceBrand: undefined;
private static _lastId;
private readonly _tunnels;
private readonly _disposedTunnels;
constructor(_tunnelService: ISharedTunnelsService, _logService: ILogService);
dispose(): void;
createTunnel(): Promise<{
id: string;
}>;
startTunnel(
authority: string,
id: string,
tunnelRemoteHost: string,
tunnelRemotePort: number,
tunnelLocalPort: number | undefined,
elevateIfNeeded: boolean | undefined,
): Promise<ISharedProcessTunnel>;
setAddress(id: string, address: IAddress): Promise<void>;
destroyTunnel(id: string): Promise<void>;
}