sussudio
Version:
An unofficial VS Code Internal API
46 lines (45 loc) • 2.76 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 { IRemoteTunnelAccount, IRemoteTunnelService, TunnelStatus } from "../common/remoteTunnel.mjs";
import { ITelemetryService } from "../../telemetry/common/telemetry.mjs";
import { INativeEnvironmentService } from "../../environment/common/environment.mjs";
import { Disposable } from "../../../base/common/lifecycle.mjs";
import { ILoggerService } from "../../log/common/log.mjs";
import { IProductService } from "../../product/common/productService.mjs";
import { ISharedProcessLifecycleService } from "../../lifecycle/electron-browser/sharedProcessLifecycleService.mjs";
import { IConfigurationService } from "../../configuration/common/configuration.mjs";
/**
* This service runs on the shared service. It is running the `code-tunnel` command
* to make the current machine available for remote access.
*/
export declare class RemoteTunnelService extends Disposable implements IRemoteTunnelService {
private readonly telemetryService;
private readonly productService;
private readonly environmentService;
private readonly configurationService;
readonly _serviceBrand: undefined;
private readonly _onDidTokenFailedEmitter;
readonly onDidTokenFailed: import("../../../base/common/event.mjs").Event<boolean>;
private readonly _onDidChangeTunnelStatusEmitter;
readonly onDidChangeTunnelStatus: import("../../../base/common/event.mjs").Event<TunnelStatus>;
private readonly _onDidChangeAccountEmitter;
readonly onDidChangeAccount: import("../../../base/common/event.mjs").Event<IRemoteTunnelAccount | undefined>;
private readonly _logger;
private _account;
private _tunnelProcess;
private _tunnelStatus;
private _startTunnelProcessDelayer;
private _tunnelCommand;
constructor(telemetryService: ITelemetryService, productService: IProductService, environmentService: INativeEnvironmentService, loggerService: ILoggerService, sharedProcessLifecycleService: ISharedProcessLifecycleService, configurationService: IConfigurationService);
getAccount(): Promise<IRemoteTunnelAccount | undefined>;
updateAccount(account: IRemoteTunnelAccount | undefined): Promise<TunnelStatus>;
private getTunnelCommandLocation;
private updateTunnelProcess;
getTunnelStatus(): Promise<TunnelStatus>;
private setTunnelStatus;
private runCodeTunneCommand;
getHostName(): Promise<string | undefined>;
private _getHostName;
}