/// import * as events from "events"; import { P2pCandidate } from "./p2p/p2p-candidate"; export interface Watcher { writeStatus(str: string): void; downloadPercent(pct?: number): number; storagePercent(pct?: number): number; appliedPercent(pct?: number): number; sbxPercent(pct?: number): number; peersPercent(pct?: number): number; end(duration?: number): void; reserveNodes(nodesAvailable: P2pCandidate[]): void; unableToDownloadChunk(chunkIndex: number): void; gettingChunk(chunkIndex: number, candidates: P2pCandidate[]): void; gotChunk(chunkIndex: number, node: P2pCandidate): void; failToGetChunk(chunkIndex: number, node: P2pCandidate): void; wantToDownload(chunkIndex: number): void; addWrongChunkFailure(chunkIndex: number, lastSupplier: P2pCandidate): void; wantToLoad(chunkIndex: number): void; beforeReadyNodes(p2pCandidates: P2pCandidate[]): void; syncFailNoNodeFound(): void; syncFailCannotConnectToRemote(): void; } export declare type EventName = "downloadChange" | "storageChange" | "appliedChange" | "sbxChange" | "peersChange" | "addWrongChunkFailure" | "failToGetChunk" | "gettingChunk" | "gotChunk" | "reserveNodes" | "unableToDownloadChunk" | "wantToDownload" | "wantToLoad" | "beforeReadyNodes" | "syncFailNoNodeFound" | "syncFailCannotConnectToRemote"; export declare class EventWatcher extends events.EventEmitter implements Watcher { private innerWatcher; constructor(innerWatcher: Watcher); writeStatus(str: string): void; downloadPercent(pct?: number): number; storagePercent(pct?: number): number; appliedPercent(pct?: number): number; sbxPercent(pct?: number): number; peersPercent(pct?: number): number; change(changeName: EventName, method: (pct?: number) => number, pct?: number): number; end(syncDuration?: number): void; onEvent(e: EventName, cb: (pct: number) => void): void; getStats(): { download: number; saved: number; applied: number; sandbox: number; peersSync: number; }; /************* P2P DOWNLOAD EVENTS ****************/ addWrongChunkFailure(chunkIndex: number, lastSupplier: P2pCandidate): void; failToGetChunk(chunkIndex: number, node: P2pCandidate): void; gettingChunk(chunkIndex: number, candidates: P2pCandidate[]): void; gotChunk(chunkIndex: number, node: P2pCandidate): void; reserveNodes(nodesAvailable: P2pCandidate[]): void; unableToDownloadChunk(chunkIndex: number): void; wantToDownload(chunkIndex: number): void; wantToLoad(chunkIndex: number): void; beforeReadyNodes(p2pCandidates: P2pCandidate[]): void; syncFailNoNodeFound(): void; syncFailCannotConnectToRemote(): void; } export declare class MultimeterWatcher implements Watcher { private xPos; private yPos; private multi; private charm; private appliedBar; private savedBar; private downloadBar; private sbxBar; private peersBar; private writtens; constructor(); writeStatus(str: string): void; downloadPercent(pct: number): any; storagePercent(pct: number): any; appliedPercent(pct: number): any; sbxPercent(pct: number): any; peersPercent(pct: number): any; end(duration?: number): void; private createBar; /************* NOT IMPLEMENTED ****************/ addWrongChunkFailure(chunkIndex: number, lastSupplier: P2pCandidate): void; failToGetChunk(chunkIndex: number, node: P2pCandidate): void; gettingChunk(chunkIndex: number, candidates: P2pCandidate[]): void; gotChunk(chunkIndex: number, node: P2pCandidate): void; reserveNodes(nodesAvailable: P2pCandidate[]): void; unableToDownloadChunk(chunkIndex: number): void; wantToDownload(chunkIndex: number): void; wantToLoad(chunkIndex: number): void; beforeReadyNodes(p2pCandidates: P2pCandidate[]): void; syncFailNoNodeFound(): void; syncFailCannotConnectToRemote(): void; } export declare class LoggerWatcher implements Watcher { private logger; private downPct; private savedPct; private appliedPct; private sbxPct; private peersPct; private lastMsg; constructor(logger: any); showProgress(): any; writeStatus(str: string): void; downloadPercent(pct: number): number; storagePercent(pct: number): number; appliedPercent(pct: number): number; sbxPercent(pct: number): number; peersPercent(pct: number): number; change(prop: "downPct" | "savedPct" | "appliedPct", pct: number): number; end(): void; /************* NOT IMPLEMENTED ****************/ addWrongChunkFailure(chunkIndex: number, lastSupplier: P2pCandidate): void; failToGetChunk(chunkIndex: number, node: P2pCandidate): void; gettingChunk(chunkIndex: number, candidates: P2pCandidate[]): void; gotChunk(chunkIndex: number, node: P2pCandidate): void; reserveNodes(nodesAvailable: P2pCandidate[]): void; unableToDownloadChunk(chunkIndex: number): void; wantToDownload(chunkIndex: number): void; wantToLoad(chunkIndex: number): void; beforeReadyNodes(p2pCandidates: P2pCandidate[]): void; syncFailNoNodeFound(): void; syncFailCannotConnectToRemote(): void; }