///
import { EventEmitter } from 'events';
import PeerInfo from './peer-info';
interface PeerQueueOptions {
requeue?: Array;
forget?: {
unresponsive?: number;
banned?: number;
};
multiplex?: boolean;
}
export default class PeerQueue extends EventEmitter {
destroyed: boolean;
private _infos;
private _queue;
private _multiplex;
private _requeue;
private _remove;
private _dedup;
constructor(opts?: PeerQueueOptions);
get prioritised(): number;
get length(): any;
deduplicate(localId: Buffer, remoteId: Buffer, peer: PeerInfo): boolean;
private _ondedupclose;
private _release;
private _push;
requeue(info: any): boolean;
shift(): any;
add(peer: any): void;
remove(peer: PeerInfo): void;
destroy(): void;
}
export {};