import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event"; import { URI, UriComponents } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; import { IChannel } from "@codingame/monaco-vscode-api/vscode/vs/base/parts/ipc/common/ipc"; import { IWorkbenchConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/configuration/common/configuration.service"; import { IRemoteAuthorityResolverService } from "@codingame/monaco-vscode-api/vscode/vs/platform/remote/common/remoteAuthorityResolver.service"; import { IWorkbenchEnvironmentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/environment/common/environmentService.service"; import { IWorkspaceContextService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service"; import { IConfigurationResolverService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/configurationResolver/common/configurationResolver.service"; import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service"; import { ILabelService } from "@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service"; import { IEnvironmentVariableService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/common/environmentVariable.service"; import { IProcessDataEvent, IRequestResolveVariablesEvent, IShellLaunchConfigDto, ITerminalLaunchError, ITerminalProfile, ITerminalsLayoutInfo, ITerminalsLayoutInfoById, TerminalIcon, IProcessProperty, ProcessPropertyType, IProcessPropertyMap, TitleEventSource, ISerializedTerminalState, IPtyHostController, ITerminalProcessOptions, IProcessReadyEvent, IPtyHostLatencyMeasurement, ITerminalLaunchResult } from "@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal"; import { ITerminalLogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal.service"; import { IProcessDetails } from "@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminalProcess"; import { IProcessEnvironment, OperatingSystem } from "@codingame/monaco-vscode-api/vscode/vs/base/common/platform"; import { ICompleteTerminalConfiguration } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/common/terminal"; import { IPtyHostProcessReplayEvent } from "@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/capabilities/capabilities"; import { ISerializableEnvironmentDescriptionMap, ISerializableEnvironmentVariableCollection } from "@codingame/monaco-vscode-xterm-common/vscode/vs/platform/terminal/common/environmentVariable"; import type * as performance from "@codingame/monaco-vscode-api/vscode/vs/base/common/performance"; export declare const REMOTE_TERMINAL_CHANNEL_NAME = "remoteterminal"; export type ITerminalEnvironmentVariableCollections = [ string, ISerializableEnvironmentVariableCollection, ISerializableEnvironmentDescriptionMap ][]; export interface IWorkspaceFolderData { uri: UriComponents; name: string; index: number; } export interface ICreateTerminalProcessArguments { configuration: ICompleteTerminalConfiguration; resolvedVariables: { [name: string]: string; }; envVariableCollections: ITerminalEnvironmentVariableCollections; shellLaunchConfig: IShellLaunchConfigDto; workspaceId: string; workspaceName: string; workspaceFolders: IWorkspaceFolderData[]; activeWorkspaceFolder: IWorkspaceFolderData | null; activeFileResource: UriComponents | undefined; shouldPersistTerminal: boolean; options: ITerminalProcessOptions; cols: number; rows: number; unicodeVersion: "6" | "11"; resolverEnv: { [key: string]: string | null; } | undefined; } export interface ICreateTerminalProcessResult { persistentTerminalId: number; resolvedShellLaunchConfig: IShellLaunchConfigDto; } export declare class RemoteTerminalChannelClient implements IPtyHostController { private readonly _remoteAuthority; private readonly _channel; private readonly _configurationService; private readonly _workspaceContextService; private readonly _resolverService; private readonly _environmentVariableService; private readonly _remoteAuthorityResolverService; private readonly _logService; private readonly _editorService; private readonly _labelService; private readonly _environmentService; get onPtyHostExit(): Event; get onPtyHostStart(): Event; get onPtyHostUnresponsive(): Event; get onPtyHostResponsive(): Event; get onPtyHostRequestResolveVariables(): Event; get onProcessData(): Event<{ id: number; event: IProcessDataEvent | string; }>; get onProcessExit(): Event<{ id: number; event: number | undefined; }>; get onProcessReady(): Event<{ id: number; event: IProcessReadyEvent; }>; get onProcessReplay(): Event<{ id: number; event: IPtyHostProcessReplayEvent; }>; get onProcessOrphanQuestion(): Event<{ id: number; }>; get onExecuteCommand(): Event<{ reqId: number; persistentProcessId: number; commandId: string; commandArgs: unknown[]; }>; get onDidRequestDetach(): Event<{ requestId: number; workspaceId: string; instanceId: number; }>; get onDidChangeProperty(): Event<{ id: number; property: IProcessProperty; }>; constructor(_remoteAuthority: string, _channel: IChannel, _configurationService: IWorkbenchConfigurationService, _workspaceContextService: IWorkspaceContextService, _resolverService: IConfigurationResolverService, _environmentVariableService: IEnvironmentVariableService, _remoteAuthorityResolverService: IRemoteAuthorityResolverService, _logService: ITerminalLogService, _editorService: IEditorService, _labelService: ILabelService, _environmentService: IWorkbenchEnvironmentService); restartPtyHost(): Promise; createProcess(shellLaunchConfig: IShellLaunchConfigDto, configuration: ICompleteTerminalConfiguration, activeWorkspaceRootUri: URI | undefined, options: ITerminalProcessOptions, shouldPersistTerminal: boolean, cols: number, rows: number, unicodeVersion: "6" | "11"): Promise; requestDetachInstance(workspaceId: string, instanceId: number): Promise; acceptDetachInstanceReply(requestId: number, persistentProcessId: number): Promise; attachToProcess(id: number): Promise; detachFromProcess(id: number, forcePersist?: boolean): Promise; listProcesses(): Promise; getLatency(): Promise; getPerformanceMarks(): Promise; reduceConnectionGraceTime(): Promise; processBinary(id: number, data: string): Promise; start(id: number): Promise; input(id: number, data: string): Promise; sendSignal(id: number, signal: string): Promise; acknowledgeDataEvent(id: number, charCount: number): Promise; setUnicodeVersion(id: number, version: "6" | "11"): Promise; setNextCommandId(id: number, commandLine: string, commandId: string): Promise; shutdown(id: number, immediate: boolean): Promise; resize(id: number, cols: number, rows: number, pixelWidth?: number, pixelHeight?: number): Promise; clearBuffer(id: number): Promise; getInitialCwd(id: number): Promise; getCwd(id: number): Promise; orphanQuestionReply(id: number): Promise; sendCommandResult(reqId: number, isError: boolean, payload: unknown): Promise; freePortKillProcess(port: string): Promise<{ port: string; processId: string; }>; getDefaultSystemShell(osOverride?: OperatingSystem): Promise; getProfiles(profiles: unknown, defaultProfile: unknown, includeDetectedProfiles?: boolean): Promise; acceptPtyHostResolvedVariables(requestId: number, resolved: string[]): Promise; getEnvironment(): Promise; getWslPath(original: string, direction: "unix-to-win" | "win-to-unix"): Promise; setTerminalLayoutInfo(layout?: ITerminalsLayoutInfoById): Promise; updateTitle(id: number, title: string, titleSource: TitleEventSource): Promise; updateIcon(id: number, userInitiated: boolean, icon: TerminalIcon, color?: string): Promise; refreshProperty(id: number, property: T): Promise; updateProperty(id: number, property: T, value: IProcessPropertyMap[T]): Promise; getTerminalLayoutInfo(): Promise; reviveTerminalProcesses(workspaceId: string, state: ISerializedTerminalState[], dateTimeFormatLocate: string): Promise; getRevivedPtyNewId(id: number): Promise; serializeTerminalState(ids: number[]): Promise; installAutoReply(match: string, reply: string): Promise; uninstallAllAutoReplies(): Promise; }