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; 'walk:error': CustomEvent; } export declare class RandomWalk extends TypedEventEmitter 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; private startWalk; } export {}; //# sourceMappingURL=random-walk.d.ts.map