import { BigNumberish } from 'ethers';
import { IAppToolkit } from '../../../app-toolkit/app-toolkit.interface';
import { DefaultDataProps } from '../../../position/display.interface';
import { ContractPositionTemplatePositionFetcher } from '../../../position/template/contract-position.template.position-fetcher';
import { GetDisplayPropsParams, GetTokenBalancesParams, GetTokenDefinitionsParams, UnderlyingTokenDefinition } from '../../../position/template/contract-position.template.types';
import { BadgerContractFactory, BadgerTree } from '../contracts';
import { BadgerClaimableRewardsResolver } from './badger.claimable.rewards-resolver';
export declare type BadgerClaimableDefinition = {
    address: string;
    rewardTokenAddress: string;
};
export declare abstract class BadgerClaimableContractPositionFetcher extends ContractPositionTemplatePositionFetcher<BadgerTree, DefaultDataProps, BadgerClaimableDefinition> {
    protected readonly appToolkit: IAppToolkit;
    protected readonly contractFactory: BadgerContractFactory;
    protected readonly badgerClaimableRewardsResolver: BadgerClaimableRewardsResolver;
    diggTokenAddress: string;
    constructor(appToolkit: IAppToolkit, contractFactory: BadgerContractFactory, badgerClaimableRewardsResolver: BadgerClaimableRewardsResolver);
    getContract(address: string): BadgerTree;
    getTokenDefinitions({ definition, }: GetTokenDefinitionsParams<BadgerTree, BadgerClaimableDefinition>): Promise<UnderlyingTokenDefinition[]>;
    getLabel(params: GetDisplayPropsParams<BadgerTree>): Promise<string>;
    getTokenBalancesPerPosition({ address, contractPosition, contract, multicall, }: GetTokenBalancesParams<BadgerTree, DefaultDataProps>): Promise<BigNumberish[]>;
}
