@waku/discovery
Version:
Contains various discovery mechanisms: DNS Discovery (EIP-1459, Peer Exchange, Local Peer Cache Discovery.
25 lines (24 loc) • 1.13 kB
TypeScript
import { TypedEventEmitter } from "@libp2p/interface";
import { IdentifyResult, PeerDiscovery, PeerDiscoveryEvents, Startable } from "@libp2p/interface";
import { type Libp2pComponents, Tags } from "@waku/interfaces";
type LocalPeerCacheDiscoveryOptions = {
tagName?: string;
tagValue?: number;
tagTTL?: number;
};
export declare const DEFAULT_LOCAL_TAG_NAME = Tags.LOCAL;
export declare class LocalPeerCacheDiscovery extends TypedEventEmitter<PeerDiscoveryEvents> implements PeerDiscovery, Startable {
private readonly components;
private readonly options?;
private isStarted;
private peers;
constructor(components: Libp2pComponents, options?: LocalPeerCacheDiscoveryOptions | undefined);
get [Symbol.toStringTag](): string;
start(): Promise<void>;
stop(): void | Promise<void>;
handleNewPeers: (event: CustomEvent<IdentifyResult>) => void;
private getPeersFromLocalStorage;
private savePeersToLocalStorage;
}
export declare function wakuLocalPeerCacheDiscovery(): (components: Libp2pComponents, options?: LocalPeerCacheDiscoveryOptions) => LocalPeerCacheDiscovery;
export {};