import { EventEmitter } from 'events';
export interface MCPClientConfig {
    url: string;
    transport: 'http' | 'ws' | 'sse';
    auth?: {
        type: 'bearer' | 'basic';
        credentials: string;
    };
}
export declare class MCPClient extends EventEmitter {
    private config;
    private ws?;
    private axios?;
    private eventSource?;
    private requestId;
    private pendingRequests;
    constructor(config: MCPClientConfig);
    private getAuthHeaders;
    connect(): Promise<void>;
    private connectWebSocket;
    private connectSSE;
    listTools(): Promise<any[]>;
    callTool(name: string, args: any): Promise<any>;
    private callMethod;
    private httpCall;
    private wsCall;
    disconnect(): Promise<void>;
}
//# sourceMappingURL=mcp-client.d.ts.map