@libp2p/tcp
Version:
A TCP transport for libp2p
38 lines • 1.35 kB
TypeScript
import { TypedEventEmitter } from 'main-event';
import type { CloseServerOnMaxConnectionsOpts, TCPCreateListenerOptions } from './index.js';
import type { ComponentLogger, Metrics, Listener, ListenerEvents, Upgrader } from '@libp2p/interface';
import type { Multiaddr } from '@multiformats/multiaddr';
interface Context extends TCPCreateListenerOptions {
upgrader: Upgrader;
socketInactivityTimeout?: number;
socketCloseTimeout?: number;
maxConnections?: number;
backlog?: number;
metrics?: Metrics;
closeServerOnMaxConnections?: CloseServerOnMaxConnectionsOpts;
logger: ComponentLogger;
}
export declare class TCPListener extends TypedEventEmitter<ListenerEvents> implements Listener {
private readonly context;
private readonly server;
/** Keep track of open sockets to destroy in case of timeout */
private readonly sockets;
private status;
private metrics;
private addr;
private readonly log;
private readonly shutdownController;
constructor(context: Context);
private onSocket;
getAddrs(): Multiaddr[];
updateAnnounceAddrs(): void;
listen(ma: Multiaddr): Promise<void>;
close(): Promise<void>;
/**
* Can resume a stopped or start an inert server
*/
private resume;
private pause;
}
export {};
//# sourceMappingURL=listener.d.ts.map