libp2p
Version:
JavaScript implementation of libp2p, a modular peer to peer network stack
28 lines • 1.04 kB
TypeScript
import { TypedEventEmitter } from 'main-event';
import type { AbortOptions, ComponentLogger, PeerInfo, PeerRouting, Startable } from '@libp2p/interface';
import type { RandomWalk as RandomWalkInterface } from '@libp2p/interface-internal';
export interface RandomWalkComponents {
peerRouting: PeerRouting;
logger: ComponentLogger;
}
interface RandomWalkEvents {
'walk:peer': CustomEvent<PeerInfo>;
'walk:error': CustomEvent<Error>;
}
export declare class RandomWalk extends TypedEventEmitter<RandomWalkEvents> implements RandomWalkInterface, Startable {
private readonly peerRouting;
private readonly log;
private walking;
private walkers;
private shutdownController;
private walkController?;
private needNext?;
constructor(components: RandomWalkComponents);
readonly [Symbol.toStringTag] = "@libp2p/random-walk";
start(): void;
stop(): void;
walk(options?: AbortOptions): AsyncGenerator<PeerInfo>;
private startWalk;
}
export {};
//# sourceMappingURL=random-walk.d.ts.map