/// /// import { EventEmitter } from 'events'; import timestamp = require('monotonic-timestamp'); import { Duplex } from './duplex'; import { Debug } from '@jacobbubu/debug'; import { ScuttlebuttOptions, Sources, Update, Verify, Sign, StreamOptions } from './interfaces'; import { createId, filter, order, sort } from './utils'; declare class Scuttlebutt extends EventEmitter { protected _sign?: Sign; protected _verify?: Verify; protected _clones: number; streams: number; sources: Sources; id: string; accept: any; readonly logger: Debug; constructor(opts?: ScuttlebuttOptions | string); isAccepted(peerAccept: any, update: Update): boolean; applyUpdate(update: Update): boolean | Promise; history(peerSources: Sources, accept?: any): Update[]; _update(update: Update): boolean | Promise; localUpdate(trx: any): boolean | Promise; createStream(opts?: StreamOptions): Duplex; createWriteStream(opts?: StreamOptions): Duplex; createSinkStream(opts?: StreamOptions): Duplex; createReadStream(opts?: StreamOptions): Duplex; createSourceStream(opts?: StreamOptions): Duplex; dispose(): void; setId(id: string | null): this; get clones(): number; clone(): Scuttlebutt; } export default Scuttlebutt; export { Scuttlebutt }; export { createId }; export { filter }; export { order }; export { sort }; export { filter as updateIsRecent }; export { timestamp }; export * from './duplex'; export * from './interfaces'; export * from './model'; export * from './reliable-event'; export * from './async-scuttlebutt'; export * from './async-model';