/// import { EventEmitter } from 'events'; import { kConns, kSocket, kState, kServer, kIntervalCheck } from './internal/symbol'; import { ConnectionID } from './internal/protocol'; import { Socket, AddressInfo } from './socket'; import { Session } from './session'; export declare class ServerSession extends Session { [kServer]: Server; constructor(id: ConnectionID, socket: Socket, server: Server); readonly server: Server; } export declare class ServerState { destroyed: boolean; constructor(); } export declare class Server extends EventEmitter { [kSocket]: Socket | null; [kState]: ServerState; localFamily: string; localAddress: string; localPort: number; listening: boolean; private [kConns]; private [kIntervalCheck]; constructor(); address(): AddressInfo; listen(port: number, address?: string): Promise<{}>; _intervalCheck(time: number): void; shutdown(_timeout: number): Promise; close(err?: any): Promise; getConnections(): Promise; ref(): void; unref(): void; }