slavery-js
Version:
A simple clustering app that allows you to scale an application on multiple thread, containers or machines
44 lines (41 loc) • 1.17 kB
text/typescript
import http from 'http';
import Listener from './types/Listener.cjs';
import Connection from './Connection.cjs';
import 'socket.io';
declare class NetworkServer {
private io;
private host;
private port;
private maxTransferSize;
private clients;
name: string;
isLan: boolean;
connectionCallback: any;
disconnectCallback: any;
listeners: Listener[];
httpServer?: http.Server;
isReady: boolean;
timeout: number;
private ioOptions;
constructor({ name, host, port, listeners }: {
name: string;
host: string;
port: number;
listeners: Listener[];
}, options?: {
timeout: number;
maxTransferSize: number;
});
private handleConnection;
private handleDisconnection;
setListeners(listeners: Listener[]): void;
broadcast(event: string, data: any): void;
addListeners(listeners: Listener[]): void;
getClient(id: string): Connection | null;
getClients(): Connection[];
onConnection(callback: any): void;
onDisconnect(callback: any): void;
getListeners(): any[];
close(): Promise<void>;
}
export { NetworkServer as default };