import { IAppToolkit } from '../../../app-toolkit/app-toolkit.interface';
import { GetMasterChefV2ExtraRewardTokenBalancesParams, GetMasterChefV2ExtraRewardTokenRewardRates, MasterChefV2TemplateContractPositionFetcher } from '../../../position/template/master-chef-v2.template.contract-position-fetcher';
import { GetMasterChefDataPropsParams, GetMasterChefTokenBalancesParams } from '../../../position/template/master-chef.template.contract-position-fetcher';
import { TraderJoeChefBoosted, TraderJoeContractFactory } from '../contracts';
import { TraderJoeChefBoostedRewarder } from '../contracts/ethers/TraderJoeChefBoostedRewarder';
export declare class AvalancheTraderJoeChefBoostedFarmContractPositionFetcher extends MasterChefV2TemplateContractPositionFetcher<TraderJoeChefBoosted, TraderJoeChefBoostedRewarder> {
    protected readonly appToolkit: IAppToolkit;
    protected readonly traderJoeContractFactory: TraderJoeContractFactory;
    groupLabel: string;
    chefAddress: string;
    constructor(appToolkit: IAppToolkit, traderJoeContractFactory: TraderJoeContractFactory);
    getContract(address: string): TraderJoeChefBoosted;
    getExtraRewarderContract(address: string): TraderJoeChefBoostedRewarder;
    getPoolLength(contract: TraderJoeChefBoosted): Promise<import("ethers").BigNumber>;
    getStakedTokenAddress(contract: TraderJoeChefBoosted, poolIndex: number): Promise<string>;
    getRewardTokenAddress(contract: TraderJoeChefBoosted): Promise<string>;
    getTotalAllocPoints({ contract }: GetMasterChefDataPropsParams<TraderJoeChefBoosted>): Promise<import("ethers").BigNumber>;
    getTotalRewardRate({ contract }: GetMasterChefDataPropsParams<TraderJoeChefBoosted>): Promise<import("ethers").BigNumber>;
    getPoolAllocPoints({ contract, definition }: GetMasterChefDataPropsParams<TraderJoeChefBoosted>): Promise<import("ethers").BigNumber>;
    getExtraRewarder(contract: TraderJoeChefBoosted, poolIndex: number): Promise<string>;
    getExtraRewardTokenAddresses(contract: TraderJoeChefBoostedRewarder): Promise<string[]>;
    getExtraRewardTokenRewardRates({ rewarderContract, }: GetMasterChefV2ExtraRewardTokenRewardRates<TraderJoeChefBoosted, TraderJoeChefBoostedRewarder>): Promise<import("ethers").BigNumber[]>;
    getStakedTokenBalance({ address, contract, contractPosition, }: GetMasterChefTokenBalancesParams<TraderJoeChefBoosted>): Promise<import("ethers").BigNumber>;
    getRewardTokenBalance({ address, contract, contractPosition, }: GetMasterChefTokenBalancesParams<TraderJoeChefBoosted>): Promise<import("ethers").BigNumber>;
    getExtraRewardTokenBalances({ address, contract, contractPosition, }: GetMasterChefV2ExtraRewardTokenBalancesParams<TraderJoeChefBoosted, TraderJoeChefBoostedRewarder>): Promise<import("ethers").BigNumber>;
}
