import type { Server } from 'node:http'; import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'; import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js'; import express from 'express'; import type { McpTransport, TransportMode, WalletMode } from './types.js'; export type StreamableServerFactory = () => Promise; export type StreamableTransportFactory = () => StreamableHTTPServerTransport; export type StreamableListenFactory = (app: express.Application, port: number, host: string) => Server; export declare const DEFAULT_MAX_STREAMABLE_REQUESTS = 100; export interface StreamableHttpTransportOptions { port?: number; host?: string; path?: string; walletMode?: WalletMode; maxActiveRequests?: number; } export interface StreamableHttpTransportDependencies { serverFactory?: StreamableServerFactory; transportFactory?: StreamableTransportFactory; listenFactory?: StreamableListenFactory; } export declare class StreamableHttpTransport implements McpTransport { readonly mode: TransportMode; private app?; private httpServer?; private readonly activeRequests; private readonly sockets; private state; private startPromise; private stopPromise; private rejectStartup; private cleanupStartupListeners; private runtimeErrorHandler; private connectionHandler; private activeRequestSlots; private readonly port; private readonly host; private readonly path; private readonly walletMode; private readonly serverFactory; private readonly transportFactory; private readonly listenFactory; private readonly maxActiveRequests; constructor(options?: StreamableHttpTransportOptions, dependencies?: StreamableHttpTransportDependencies); private closeRequest; getListeningPort(): number | undefined; start(_server?: McpServer): Promise; stop(): Promise; }