import { Server } from '@modelcontextprotocol/sdk/server/index.js'; import cors from 'cors'; import { SAPClient } from '../sap/client.js'; export interface StreamingHttpTransportOptions { port?: number; host?: string; cors?: boolean; corsOptions?: cors.CorsOptions; apiKey?: string; requireApiKey?: boolean; } export declare class StreamingHttpTransport { private server; private app; private httpServer; private options; private connections; private messageHandlers; private sapClient; private authHandler; private masterDataHandler; private documentHandler; private queryHandler; constructor(server: Server, sapClient: SAPClient, options?: StreamingHttpTransportOptions); private generateApiKey; private initializeHandlers; private setupMiddleware; private authenticateApiKey; private setupRoutes; private handleSSEConnection; private handleMCPConnect; private handleMCPMessage; /** * Forward MCP request to the actual MCP server */ private forwardToMCPServer; private handleToolsList; private handleToolCall; private handleLogLevelSet; private sendSSEMessage; private broadcastToSSEConnections; private setupMCPHandlers; private startConnectionCleanup; /** * Start the streaming HTTP transport */ start(): Promise; /** * Stop the streaming HTTP transport */ stop(): Promise; /** * Get the server URL */ getUrl(): string; /** * Get the MCP connection URL for clients */ getMCPUrl(): string; /** * Get the API key */ getApiKey(): string; /** * Get connection statistics */ getConnectionStats(): any; }