/// <reference types="ws" />
/// <reference types="node" />
import { createServer, IncomingMessage } from 'http';
/**
 * Creates a WebSocket handler attached to the existing server instance
 * that proxies all socket connections and messages to the target host and port and back.
 * @param server The server instance
 * @param targetPort The target port to which to proxy the messages
 * @param targetHost The target host to which to proxy the messages
 * @returns The websocket server instance
 */
export declare const startWebSocketProxy: (server: ReturnType<typeof createServer>, targetPort?: number, targetHost?: string) => import("ws").Server<typeof import("ws"), typeof IncomingMessage>;
/**
 * Initializes the runtime, server
 * and immediately starts listening on the given port and host.
 * @param port The port on which to listen
 * @param host The host on which to listen
 * @param signalForHandler When set to true it will output unique string to signal the
 * handler.ts that the server is ready, otherwise it will output the human readable ready message
 * @returns The server instance
 */
export declare const startServer: (port?: number, host?: string, signalForHandler?: boolean) => import("http").Server<typeof IncomingMessage, typeof import("http").ServerResponse>;
