import type { AddressInfo } from "node:net"; import type { PocodexServerOptions } from "./protocol.js"; export declare class PocodexServer { private readonly options; private readonly httpServer; private readonly wsServer; private readonly pendingBySocket; private readonly sessions; private readonly workerSubscriberCounts; private readonly terminalSessionRoutes; private readonly terminalSessionIdsByConversation; private indexHtmlPromise?; constructor(options: PocodexServerOptions); listen(): Promise; close(): Promise; getAddress(): AddressInfo; notifyStylesheetReload(versionTag: string): void; private handleHttpRequest; private handleUpgrade; private handleConnection; private isAuthorized; private handleSocketMessage; private handleBridgeEnvelope; private handleIpcRequest; private handleRelayBridgeMessage; private handleRelayWorkerMessage; private handleTerminalBridgeEnvelope; private handleTerminalAttachEnvelope; private handleTerminalControlEnvelope; private ensureTerminalRoute; private attachBrowserToTerminal; private handleTargetedTerminalRelayMessage; private handleTerminalStreamRelayMessage; private sendBridgeMessageToSession; private sendTerminalError; private incrementWorkerSubscribers; private decrementWorkerSubscribers; private cleanupSession; private detachBrowserFromTerminal; private deleteTerminalRoute; private refreshTerminalOwner; private isSessionActive; private broadcast; private send; private getIndexHtml; }