import type { CodeServerManager } from './code-server-manager.js'; export interface RelayMessageSender { send(message: unknown): void; } interface TunnelOpenMessage { tunnelId: string; target: string; } interface TunnelDataMessage { tunnelId: string; data: string; } interface TunnelCloseMessage { tunnelId: string; reason?: string; } export declare class TunnelHandler { private readonly relaySend; private readonly codeServerManager; private readonly allowedTarget; private readonly tunnels; constructor(relaySend: RelayMessageSender, codeServerManager: CodeServerManager, allowedTarget?: string); handleOpen(msg: TunnelOpenMessage): Promise; handleData(msg: TunnelDataMessage): void; handleClose(msg: TunnelCloseMessage): void; cleanup(): void; private connectWithTimeout; } export {}; //# sourceMappingURL=tunnel-handler.d.ts.map