import type { CredentialProvider, McpClient, McpServerConfig } from '@n8n/agents';
import type { AgentJsonMcpServerConfig } from '@n8n/api-types';
import type { CustomFetch } from '@n8n/backend-network';
import type { OauthService } from '../../../oauth/oauth.service';
export declare function mapApprovalToSdk(approval: AgentJsonMcpServerConfig['approval']): McpServerConfig['requireApproval'];
export interface BuildMcpClientDeps {
    credentialProvider: CredentialProvider;
    oauthService: OauthService;
    projectId: string;
    proxyFetch: CustomFetch;
    onConnectionFailed?: (event: {
        server: string;
        error: string;
    }) => void;
    onToolCallSettled?: McpServerConfig['onToolCallSettled'];
}
export declare function buildMcpClientForServer(server: AgentJsonMcpServerConfig, deps: BuildMcpClientDeps): Promise<McpClient>;
