import { Agent, AgentService, AISettingsService, AIVariableService, FrontendLanguageModelRegistry, ParsedCapability, PromptService, NotificationType, GenericCapabilitySelections, ServerToolDescriptor, ToolInvocationRegistry } from '@theia/ai-core/lib/common'; import { CommandService } from '@theia/core/lib/common/command'; import { ILogger } from '@theia/core'; import { AiSettingsRowService } from '@theia/ai-core-ui/lib/browser/ai-configuration/components/ai-settings-row-service'; /** The services the agent detail page needs; injected into the owning category and passed down. */ export interface AgentDetailServices { readonly agentService: AgentService; readonly aiSettingsService: AISettingsService; readonly variableService: AIVariableService; readonly promptService: PromptService; readonly languageModelRegistry: FrontendLanguageModelRegistry; readonly toolInvocationRegistry: ToolInvocationRegistry; readonly commandService: CommandService; readonly settingsRowService: AiSettingsRowService; readonly logger: ILogger; } export interface ParsedPrompt { functions: string[]; globalVariables: string[]; agentSpecificVariables: string[]; capabilities: ParsedCapability[]; } export interface AgentDetailState { parsed: ParsedPrompt; showInChat: boolean; completionNotification?: NotificationType; capabilityOverrides?: Record; genericCapabilitySelections?: GenericCapabilitySelections; /** Server tools the agent's model offers, if it declares any; empty/absent hides that section. */ serverTools?: ServerToolDescriptor[]; /** Vendor the server tool selections are keyed by, i.e. the vendor of the model offering them. */ serverToolVendor?: string; /** Enabled server tool ids per vendor, as stored for this agent. */ serverToolSelections?: Record; } export declare function loadAgentDetail(agent: Agent, services: AgentDetailServices): Promise; //# sourceMappingURL=agent-detail-model.d.ts.map