import BigNumber from '../../../dependencies/src/bignumber.js-9.0.0/bignumber'; import { TezosBakingRewards, TezosBakingRight, TezosEndorsingRewards, TezosEndorsingRight, TezosNodeConstants, TezosProtocol, TezosRewards, TezosRewardsCalculations } from '../TezosProtocol'; export declare class TezosRewardsCalculationDefault implements TezosRewardsCalculations { protocol: TezosProtocol; protected tezosNodeConstants: TezosNodeConstants; constructor(protocol: TezosProtocol); protected getConstants(currentLevel: number, useHead: boolean): Promise; calculateRewards(bakerAddress: string, cycle: number, breakdownRewards?: boolean, currentCycleIn?: number): Promise; private calculatePastRewards; private calculateFutureRewards; private fetchEndorsementOperations; private fetchFrozenBalances; protected computeBakingRewards(bakingRights: { level: number; priority: number; }[], isFutureCycle: boolean): Promise; protected computeEndorsingRewards(endorsingRights: TezosEndorsingRight[], isFutureCycle: boolean): Promise; protected specificEndorsingCalculation(priority: number, number_of_slots: number): BigNumber; private computeSnapshotBlockLevel; private fetchBakerInfo; private fetchBlocksForBaker; private readonly blockLevelFieldNameMap; private fetchBlockLevelFieldPromise?; private fetchBlockLevelFieldName; protected fetchBakingRights(bakerAddress: string, cycle: number): Promise; protected fetchEndorsingRights(bakerAddress: string, cycle: number): Promise; protected fetchEndorsementOperationCountAndTotalFees(blockLevels: number[]): Promise>; protected fetchBlockPriorities(blockLevels: number[]): Promise<{ priority: number; level: number; }[]>; }