import type { BaseToolExecutorPort } from "../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolExecutorPort.js";
import type { BaseToolHandler } from "../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolDefinition.js";
import { type McpInvalidateCacheDependencies, type McpInvalidateCachePracticeProviderName, type McpInvalidateCacheProviderPractice } from "./dependencies.js";
import { mcpInvalidateCacheDescriptor, planMcpCacheInvalidation, type McpInvalidateCacheOutput, type McpInvalidateCacheProvider, type McpInvalidateCacheRequest, type McpInvalidateCacheResult } from "./core.js";
export * from "./core.js";
export type McpInvalidateCacheBestPracticeRequest = McpInvalidateCacheRequest & {
    executor?: BaseToolExecutorPort;
    provider?: McpInvalidateCacheProvider;
    preferredProvider?: McpInvalidateCachePracticeProviderName;
};
export type McpInvalidateCacheHandlerInput = Omit<McpInvalidateCacheBestPracticeRequest, "executor">;
export type McpInvalidateCachePracticeSelection = {
    providerName: McpInvalidateCachePracticeProviderName;
    practice: McpInvalidateCacheProviderPractice;
    provider?: McpInvalidateCacheProvider;
};
export declare const mcpInvalidateCacheProviderPractices: readonly [McpInvalidateCacheProviderPractice, McpInvalidateCacheProviderPractice, McpInvalidateCacheProviderPractice];
export declare const mcpInvalidateCacheBestPracticeDescriptor: {
    readonly toolId: "mcp.invalidateCache";
    readonly bestPractice: "storage-owned-mcp-cache-invalidation-with-runtime-owned-cache-store";
    readonly providerOrder: readonly ["anthropic", "openai", "deepmind"];
    readonly dependencies: readonly import("../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolDefinition.js").BaseToolDependencyDeclaration[];
};
export declare function selectMcpInvalidateCachePractice(dependencies?: McpInvalidateCacheDependencies & {
    preferredProvider?: McpInvalidateCachePracticeProviderName;
}): McpInvalidateCachePracticeSelection;
export declare function executeMcpCacheInvalidation(request?: McpInvalidateCacheBestPracticeRequest | unknown): Promise<McpInvalidateCacheResult>;
export declare const mcpInvalidateCacheBaseToolDefinition: import("../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolDefinition.js").BaseToolDefinition<McpInvalidateCacheHandlerInput, McpInvalidateCacheOutput>;
export declare const mcpInvalidateCacheHandler: BaseToolHandler<McpInvalidateCacheHandlerInput, McpInvalidateCacheOutput>;
export type { McpInvalidateCacheResult };
export { mcpInvalidateCacheDescriptor, planMcpCacheInvalidation };
