import { ToolProvider, ToolRequest } from '@theia/ai-core'; import { ILogger } from '@theia/core'; import { ChatAgentService, ChatService, ChatRequestInvocation } from '../common'; export declare class AgentDelegationTool implements ToolProvider { static ID: string; protected readonly pendingDelegations: Map; protected readonly getChatAgentService: () => ChatAgentService; protected readonly getChatService: () => ChatService; protected readonly logger: ILogger; getTool(): ToolRequest; getDelegation(toolCallId: string): { prompt: string; invocation: ChatRequestInvocation; } | undefined; private delegateToAgent; /** * Makes the given task context the session's task context, replacing a previously set one. * `addVariables` deduplicates on variable id *and* argument, so adding a different task context * id would otherwise leave the session with both in its system prompt. */ private setTaskContext; /** * Sets up all event bubbling from a delegated child session to the parent session: * - Interaction forwarding: child interactionNeeded events are forwarded to the parent response * - ChangeSet bubbling: child changeset changes are forwarded to the parent model */ private setupChildSessionBubbling; } //# sourceMappingURL=agent-delegation-tool.d.ts.map