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 McpUnsubscribeDependencies, type McpUnsubscribePracticeProviderName, type McpUnsubscribeProviderPractice } from "./dependencies.js";
import { mcpUnsubscribeDescriptor, planMcpUnsubscribe, type McpUnsubscribeOutput, type McpUnsubscribeProvider, type McpUnsubscribeRequest, type McpUnsubscribeResult } from "./core.js";
export * from "./core.js";
export type McpUnsubscribeBestPracticeRequest = McpUnsubscribeRequest & {
    executor?: BaseToolExecutorPort;
    provider?: McpUnsubscribeProvider;
    preferredProvider?: McpUnsubscribePracticeProviderName;
};
export type McpUnsubscribeHandlerInput = Omit<McpUnsubscribeBestPracticeRequest, "executor">;
export type McpUnsubscribePracticeSelection = {
    providerName: McpUnsubscribePracticeProviderName;
    practice: McpUnsubscribeProviderPractice;
    provider?: McpUnsubscribeProvider;
};
export declare const mcpUnsubscribeProviderPractices: readonly [McpUnsubscribeProviderPractice, McpUnsubscribeProviderPractice, McpUnsubscribeProviderPractice];
export declare const mcpUnsubscribeBestPracticeDescriptor: {
    readonly toolId: "mcp.unsubscribe";
    readonly bestPractice: "storage-owned-mcp-unsubscribe-with-runtime-owned-client";
    readonly providerOrder: readonly ["anthropic", "openai", "deepmind"];
    readonly dependencies: readonly import("../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolDefinition.js").BaseToolDependencyDeclaration[];
};
export declare function selectMcpUnsubscribePractice(dependencies?: McpUnsubscribeDependencies & {
    preferredProvider?: McpUnsubscribePracticeProviderName;
}): McpUnsubscribePracticeSelection;
export declare function executeMcpUnsubscribe(request?: McpUnsubscribeBestPracticeRequest | unknown): Promise<McpUnsubscribeResult>;
export declare const mcpUnsubscribeBaseToolDefinition: import("../../../../../agentCore/agent_executionEngine/basic_toolLayer/baseTools/baseToolDefinition.js").BaseToolDefinition<McpUnsubscribeHandlerInput, McpUnsubscribeOutput>;
export declare const mcpUnsubscribeHandler: BaseToolHandler<McpUnsubscribeHandlerInput, McpUnsubscribeOutput>;
export type { McpUnsubscribeResult };
export { mcpUnsubscribeDescriptor, planMcpUnsubscribe };
