import { PromiEvent, TransactionReceipt } from "web3-core"; export type TRewardsContractSettings = { maxDelegatorsStakingRewardsPercent: number; defaultDelegatorsStakingRewardsPercent: number; }; export type TGuardianRewardsSettings = { delegatorsStakingRewardsPercent: number; isUsingDefaultRewardsPercent: boolean; }; export interface IStakingRewardsService { setFromAccount: (address: string) => void; // Setting reading readContractRewardsSettings: () => Promise; readGuardianRewardsSettings: ( address: string ) => Promise; // Reading readDelegatorsCutPercentage: (address: string) => Promise; /** * Reads the balance in full orbs */ readRewardsBalanceFullOrbs: (address: string) => Promise; /** * Reads the amount of claimed rewards in full orbs */ readClaimedRewardsFullOrbs: (address: string) => Promise; estimateFutureRewardsFullOrbs(address: string, durationInSeconds: number) : Promise; // Writing setDelegatorsCutPercentage: ( delegatorsCutPercentage: number ) => PromiEvent; // Actions claimRewards: (address: string) => PromiEvent; }