import { Web3Client } from '../clients/Web3Client'; export declare class BlockDateResolver { client: Web3Client; private AVG_INITIAL; private _known; private _requestedDate; constructor(client: Web3Client); getDate(blockNumber: number): Promise; getBlockNumberFor(date: Date): Promise; getBlockInfoFor(date: Date): Promise<{ block: number; timestamp: number; }>; private moveNext; /** * Returns the index of the known block nearest to the specified date. It can be before or after the specified date */ private getClosest; private checkPoint; /** Adds a known block to the set */ private push; /** Loads the block and returns its date */ private getBlockDate; /** Returns the signed time in milliseconds between two dates. Values are negative when t2 < t1 */ private diffTime; /** Returns the absolute time in milliseconds between two dates */ private diffTimeAbs; /** Returns the average block count between two dates */ private getAvgBlockCountBetween; /** With N > 1 blocks, we can better estimate the average block time */ private refineAvg; private getBlock; }