bunnel-server
Version:
WebSocket reverse tunnel
34 lines (33 loc) • 832 B
TypeScript
export interface TunnelServerOptions {
tunnelPort?: number;
proxyPort?: number;
idleTimeout?: number;
reconnectGrace?: number;
tls?: {
cert: string;
key: string;
ca?: string[];
};
}
declare class TunnelServer {
private tunnels;
private pendingRequests;
private options;
private server?;
private proxyServer?;
private monitorInterval?;
private generateCertificates;
constructor(options?: TunnelServerOptions);
start(): void;
stop(): void;
private monitorTunnels;
private handleRequest;
private handleWebSocketOpen;
private handleWebSocketMessage;
private handleWebSocketClose;
private cleanupTunnel;
private cleanupWebSocket;
private generateSubdomain;
private headersToObject;
}
export default TunnelServer;