airgap-coin-lib
Version:
The airgap-coin-lib is a protocol agnostic library to prepare, sign and broadcast cryptocurrency transactions.
38 lines (37 loc) • 2.03 kB
TypeScript
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<void>;
calculateRewards(bakerAddress: string, cycle: number, breakdownRewards?: boolean, currentCycleIn?: number): Promise<TezosRewards>;
private calculatePastRewards;
private calculateFutureRewards;
private fetchEndorsementOperations;
private fetchFrozenBalances;
protected computeBakingRewards(bakingRights: {
level: number;
priority: number;
}[], isFutureCycle: boolean): Promise<TezosBakingRewards>;
protected computeEndorsingRewards(endorsingRights: TezosEndorsingRight[], isFutureCycle: boolean): Promise<TezosEndorsingRewards>;
protected specificEndorsingCalculation(priority: number, number_of_slots: number): BigNumber;
private computeSnapshotBlockLevel;
private fetchBakerInfo;
private fetchBlocksForBaker;
private blockLevelFieldNameMap;
private fetchBlockLevelFieldPromise?;
private fetchBlockLevelFieldName;
protected fetchBakingRights(bakerAddress: string, cycle: number): Promise<TezosBakingRight[]>;
protected fetchEndorsingRights(bakerAddress: string, cycle: number): Promise<TezosEndorsingRight[]>;
protected fetchEndorsementOperationCountAndTotalFees(blockLevels: number[]): Promise<Map<number, {
sum_number_of_slots: string;
block_level: number;
sum_fee: number;
}>>;
protected fetchBlockPriorities(blockLevels: number[]): Promise<{
priority: number;
level: number;
}[]>;
private cycleToBlockLevel;
}