import { BigNumberish } from 'ethers';
import { IAppToolkit } from '../../../app-toolkit/app-toolkit.interface';
import { MetaType } from '../../../position/position.interface';
import { ContractPositionTemplatePositionFetcher } from '../../../position/template/contract-position.template.position-fetcher';
import { DefaultContractPositionDefinition, GetTokenBalancesParams } from '../../../position/template/contract-position.template.types';
import { AmpStakingResolver } from '../common/amp.staking-resolver';
import { AmpContractFactory, AmpStaking } from '../contracts';
export declare class EthereumAmpFarmContractPositionFetcher extends ContractPositionTemplatePositionFetcher<AmpStaking> {
    protected readonly appToolkit: IAppToolkit;
    protected readonly ampStakingResolver: AmpStakingResolver;
    protected readonly contractFactory: AmpContractFactory;
    groupLabel: string;
    constructor(appToolkit: IAppToolkit, ampStakingResolver: AmpStakingResolver, contractFactory: AmpContractFactory);
    getContract(address: string): AmpStaking;
    getDefinitions(): Promise<DefaultContractPositionDefinition[]>;
    getTokenDefinitions(): Promise<{
        metaType: MetaType;
        address: string;
        network: import("../../../types").Network;
    }[]>;
    getTokenBalancesPerPosition({ address }: GetTokenBalancesParams<AmpStaking>): Promise<BigNumberish[]>;
    getLabel(): Promise<string>;
}
