UNPKG

@hashgraphonline/standards-sdk

Version:

The Hashgraph Online Standards SDK provides a complete implementation of the Hashgraph Consensus Standards (HCS), giving developers all the tools needed to build applications on Hedera.

54 lines 2.04 kB
import { Logger } from './logger'; export type ProgressStage = 'preparing' | 'submitting' | 'confirming' | 'verifying' | 'completed' | 'failed'; export interface ProgressData { stage: ProgressStage; message: string; progressPercent: number; details?: Record<string, any>; } export type ProgressCallback = (data: ProgressData) => void; export interface ProgressReporterOptions { module?: string; callback?: ProgressCallback; logger?: Logger; logProgress?: boolean; minPercent?: number; maxPercent?: number; } /** * ProgressReporter is a singleton class that reports progress of a task. * Can be used in a generalized fashion. */ export declare class ProgressReporter { private static instance; private module; private callback?; private logger; private logProgress; private minPercent; private maxPercent; private lastReportedPercent; private lastReportedTime; private throttleMs; constructor(options?: ProgressReporterOptions); static getInstance(options?: ProgressReporterOptions): ProgressReporter; setCallback(callback: ProgressCallback): void; setModule(module: string): void; setLogger(logger: Logger): void; setMinPercent(minPercent: number): void; setMaxPercent(maxPercent: number): void; createSubProgress(options: { minPercent: number; maxPercent: number; logPrefix?: string; }): ProgressReporter; report(data: ProgressData): void; private scalePercent; preparing(message: string, percent: number, details?: Record<string, any>): void; submitting(message: string, percent: number, details?: Record<string, any>): void; confirming(message: string, percent: number, details?: Record<string, any>): void; verifying(message: string, percent: number, details?: Record<string, any>): void; completed(message: string, details?: Record<string, any>): void; failed(message: string, details?: Record<string, any>): void; } //# sourceMappingURL=progress-reporter.d.ts.map