/**
 * Smart Defaults for MCPServerInfo Creation
 * Eliminates boilerplate manual object creation
 */
import type { MCPServerInfo, MCPExecutableTool, MCPServerCategory } from "../types/mcpTypes.js";
/**
 * Smart category detection based on context
 */
export declare function detectCategory(context: {
    isCustomTool?: boolean;
    isExternal?: boolean;
    isBuiltIn?: boolean;
    serverId?: string;
    existingCategory?: string;
}): MCPServerCategory;
/**
 * Create MCPServerInfo with smart defaults
 * Eliminates manual boilerplate object creation
 */
export declare function createMCPServerInfo(options: {
    id?: string;
    name: string;
    tool?: MCPExecutableTool;
    tools?: MCPServerInfo["tools"];
    transport?: MCPServerInfo["transport"];
    status?: MCPServerInfo["status"];
    description?: string;
    category?: string;
    isCustomTool?: boolean;
    isExternal?: boolean;
    isBuiltIn?: boolean;
    command?: string;
    args?: string[];
    env?: Record<string, string>;
}): MCPServerInfo;
/**
 * Create MCPServerInfo for custom tool registration
 * Specialized version with smart defaults for registerTool usage
 */
export declare function createCustomToolServerInfo(toolName: string, tool: MCPExecutableTool, timeoutMs?: number, maxRetries?: number): MCPServerInfo;
/**
 * Create MCPServerInfo for external servers
 * Specialized version with smart defaults for external server usage
 */
export declare function createExternalServerInfo(options: {
    id: string;
    name?: string;
    command?: string;
    args?: string[];
    env?: Record<string, string>;
    transport?: MCPServerInfo["transport"];
    description?: string;
    tools?: MCPServerInfo["tools"];
}): MCPServerInfo;
