/// import { EventEmitter } from 'events'; import type { SocketAddress } from '@chainsafe/discv5'; import type { IPMode, ITransportEvents, ITransportService } from '@chainsafe/discv5/lib/transport/types.js'; import type { IPacket } from '@chainsafe/discv5/packet'; import type { ENR } from '@chainsafe/enr'; import type { Multiaddr } from '@multiformats/multiaddr'; import type StrictEventEmitter from 'strict-event-emitter-types/types/src'; interface WebSocketTransportEvents extends ITransportEvents { multiAddr: (src: Multiaddr) => void; } export declare type WSTransportEventEmitter = StrictEventEmitter; declare const WebSocketTransportService_base: new () => WSTransportEventEmitter; /** * This class is responsible for encoding outgoing Packets and decoding incoming Packets over Websockets */ export declare class WebSocketTransportService extends WebSocketTransportService_base implements ITransportService { multiaddr: Multiaddr; private socket; private srcId; private log; ipMode: IPMode; bindAddrs: Multiaddr[]; constructor(multiaddr: Multiaddr, srcId: string, proxyAddress: string); start(): Promise; stop(): Promise; send(to: Multiaddr, toId: string, packet: IPacket): Promise; handleIncoming: (data: Uint8Array) => void; getContactableAddr(enr: ENR): SocketAddress | undefined; } export {}; //# sourceMappingURL=websockets.d.ts.map