import { r as AnyAgentTool } from "./common-D30y0_VN.js";
import { ms as NodmixPluginToolContext } from "./params-DGej4EA0.js";
//#region src/plugins/tool-descriptor-cache.d.ts
declare function resetPluginToolDescriptorCache(): void;
//#endregion
//#region src/plugins/tools.d.ts
type PluginToolMeta = {
  pluginId: string;
  optional: boolean;
  trustedLocalMedia?: boolean;
};
declare function setPluginToolMeta(tool: AnyAgentTool, meta: PluginToolMeta): void;
declare function getPluginToolMeta(tool: AnyAgentTool): PluginToolMeta | undefined;
declare function copyPluginToolMeta(source: AnyAgentTool, target: AnyAgentTool): void;
/**
 * Builds a collision-proof key for plugin-owned tool metadata lookups.
 */
declare function buildPluginToolMetadataKey(pluginId: string, toolName: string): string;
declare function ensureStandalonePluginToolRegistryLoaded(params: {
  context: NodmixPluginToolContext;
  toolAllowlist?: string[];
  toolDenylist?: string[];
  allowGatewaySubagentBinding?: boolean;
  hasAuthForProvider?: (providerId: string) => boolean;
  env?: NodeJS.ProcessEnv;
}): void;
declare function resolvePluginTools(params: {
  context: NodmixPluginToolContext;
  existingToolNames?: Set<string>;
  toolAllowlist?: string[];
  toolDenylist?: string[];
  suppressNameConflicts?: boolean;
  allowGatewaySubagentBinding?: boolean;
  hasAuthForProvider?: (providerId: string) => boolean;
  env?: NodeJS.ProcessEnv;
}): AnyAgentTool[];
//#endregion
export { getPluginToolMeta as a, resetPluginToolDescriptorCache as c, ensureStandalonePluginToolRegistryLoaded as i, buildPluginToolMetadataKey as n, resolvePluginTools as o, copyPluginToolMeta as r, setPluginToolMeta as s, PluginToolMeta as t };