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 { IAgentHostService } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/agentService.service"; import type { ResolveSessionConfigResult } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/commands"; import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service"; import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service"; import { IWorkbenchEnvironmentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/environment/common/environmentService.service"; import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service"; import { IAgentHostUntitledProvisionalSessionService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.service"; export declare class AgentHostUntitledProvisionalSessionService extends Disposable implements IAgentHostUntitledProvisionalSessionService { private readonly _agentHostService; private readonly _logService; private readonly _configurationService; private readonly _environmentService; readonly _serviceBrand: undefined; private readonly _entries; private readonly _pending; private readonly _rebound; private readonly _sequencer; private readonly _onDidChange; readonly onDidChange: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event; constructor(_agentHostService: IAgentHostService, _logService: ILogService, chatService: IChatService, _configurationService: IConfigurationService, _environmentService: IWorkbenchEnvironmentService); get(sessionResource: URI): URI | undefined; waitForPending(sessionResource: URI): Promise; getOrCreate(sessionResource: URI, provider: string, workingDirectory: URI | undefined): Promise; tryRebind(oldSessionResource: URI, newSessionResource: URI, provider: string, workingDirectory: URI | undefined): Promise; disposeSession(sessionResource: URI): Promise; dispose(): void; /** * Convert the chat-input UI session URI (`agent-host-PROVIDER:/`) * to the agent-host backend URI (`PROVIDER:/`). */ private _toBackendUri; getResolvedConfig(sessionResource: URI): ResolveSessionConfigResult | undefined; applyConfigChange(sessionResource: URI, provider: string, workingDirectory: URI | undefined, partial: Record): Promise; /** * Workbench-side initial config seed sent at `createSession` time so the * agent's own server-side defaults don't fill `state.config.values` for * keys the workbench wants to control. Without this, the merge filter in * `agentHostSessionHandler` sees those agent defaults as "user-set" and * drops the workbench defaults. * * - `isolation`: workbench has no isolation picker, so always `'folder'`. * - `autoApprove`: seeded from `chat.permissions.default`, clamped to * `'default'` when the `chat.tools.global.autoApprove` policy is off. * * Skipped entirely in the Agents window, where the sessions provider * supplies config via `request.agentHostSessionConfig` instead. */ private _getInitialConfig; }