UNPKG

@libp2p/interface

Version:
35 lines 1.04 kB
import type { TypedEventTarget } from './event-target.js'; import type { PeerInfo } from './peer-info.js'; /** * Any object that implements this Symbol as a property should return a * PeerDiscovery instance as the property value, similar to how * `Symbol.Iterable` can be used to return an `Iterable` from an `Iterator`. * * @example * * ```TypeScript * import { peerDiscovery, PeerDiscovery } from '@libp2p/peer-discovery' * * class MyPeerDiscoverer implements PeerDiscovery { * get [peerDiscovery] () { * return this * } * * // ...other methods * } * ``` */ export declare const peerDiscoverySymbol: unique symbol; /** * Implementers of this interface can provide a PeerDiscovery implementation to * interested callers. */ export interface PeerDiscoveryProvider { [peerDiscoverySymbol]: PeerDiscovery; } export interface PeerDiscoveryEvents { 'peer': CustomEvent<PeerInfo>; } export interface PeerDiscovery extends TypedEventTarget<PeerDiscoveryEvents> { } //# sourceMappingURL=peer-discovery.d.ts.map