import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable"; import { AgentPluginDiscoveryPriority, IAgentPlugin } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/agentPluginService"; import { CollisionEnablementModel, IEnablementModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/enablement"; export interface IDiscoveredAgentPlugins { readonly plugins: readonly IAgentPlugin[]; readonly priority: AgentPluginDiscoveryPriority; readonly order: number; } export declare class AgentPluginCollisionEnablementModel extends CollisionEnablementModel { constructor(base: IEnablementModel, collisionGroups: IObservable>); } export declare function getSortedAgentPlugins(discoveries: readonly IDiscoveredAgentPlugins[]): readonly IAgentPlugin[]; export declare function getCanonicalAgentPluginCollisionGroups(discoveries: readonly IDiscoveredAgentPlugins[], isBlocked?: (plugin: IAgentPlugin) => boolean): ReadonlyMap; export declare function isAgentPluginBlockedByPolicy(plugin: IAgentPlugin, enabledPluginsPolicy: Record | undefined): boolean; export declare function getAgentPluginPolicyId(plugin: IAgentPlugin): string | undefined;