import { NodeStreamableHTTPServerTransport } from '@modelcontextprotocol/node'; import { StdioServerTransport } from '@modelcontextprotocol/server/stdio'; import { McpServer } from '@modelcontextprotocol/server'; import { type EnvConfig } from '../config/env.js'; import { ToolRegistry } from '../tools/registry.js'; import { type ToolContext } from '../tools/types.js'; import { Storage } from '../storage/index.js'; import { type HttpTransportInstance } from './transports/http.js'; import { BridgeManager } from '../bridge/manager.js'; import { CdpBridgeManager } from '../bridge/cdp-manager.js'; import { RemoteGateway } from '../remote/gateway.js'; export interface CreateServerOptions { remoteGateway?: RemoteGateway; } export interface McpServerInstance { server: McpServer; registry: ToolRegistry; transport: StdioServerTransport | NodeStreamableHTTPServerTransport; httpTransport?: HttpTransportInstance; context: ToolContext; storage?: Storage; bridge: BridgeManager | CdpBridgeManager; createSessionServer: () => McpServer; shutdown: () => Promise; } export declare function createServer(config: EnvConfig, options?: CreateServerOptions): Promise;