import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; import { ConfigurationTarget } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration"; import { IEnvironmentService } from "@codingame/monaco-vscode-api/vscode/vs/platform/environment/common/environment.service"; import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service"; import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service"; import { IMcpResourceScannerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/mcp/common/mcpResourceScannerService.service"; import { IRemoteAgentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/remote/common/remoteAgentService.service"; import { IMcpSandboxConfiguration } from "@codingame/monaco-vscode-api/vscode/vs/platform/mcp/common/mcpPlatformTypes"; import { IMcpPotentialSandboxBlock, McpServerDefinition, McpServerLaunch } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypes"; import { IMcpSandboxService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpSandboxService.service"; export type SandboxConfigSuggestionResult = { message: string; sandboxConfig: IMcpSandboxConfiguration; }; export declare class McpSandboxService extends Disposable implements IMcpSandboxService { private readonly _fileService; private readonly _environmentService; private readonly _logService; private readonly _mcpResourceScannerService; private readonly _remoteAgentService; readonly _serviceBrand: undefined; private _sandboxSettingsId; private _remoteEnvDetailsPromise; private readonly _defaultAllowedDomains; private _defaultAllowWritePaths; private _sandboxConfigPerConfigurationTarget; constructor(_fileService: IFileService, _environmentService: IEnvironmentService, _logService: ILogService, _mcpResourceScannerService: IMcpResourceScannerService, _remoteAgentService: IRemoteAgentService); isEnabled(serverDef: McpServerDefinition, remoteAuthority?: string): Promise; launchInSandboxIfEnabled(serverDef: McpServerDefinition, launch: McpServerLaunch, remoteAuthority: string | undefined, configTarget: ConfigurationTarget): Promise; getSandboxConfigSuggestionMessage(serverLabel: string, potentialBlocks: readonly IMcpPotentialSandboxBlock[], existingSandboxConfig?: IMcpSandboxConfiguration): SandboxConfigSuggestionResult | undefined; applySandboxConfigSuggestion(serverDef: McpServerDefinition, mcpResource: URI, configTarget: ConfigurationTarget, potentialBlocks: readonly IMcpPotentialSandboxBlock[], suggestedSandboxConfig?: IMcpSandboxConfiguration): Promise; private _getSandboxConfigSuggestions; private _toMcpResourceTarget; private _resolveSandboxLaunchDetails; private _getExecPath; private _getSandboxEnvVariables; private _getSandboxCommandArgs; private _getRemoteEnv; private _getOperatingSystem; private _getAppRoot; private _getTempDir; private _updateSandboxConfig; private _withDefaultSandboxConfig; private _getDefaultAllowWrite; private _pathJoin; private _getPathDelimiter; private _quoteShellArgument; }