import { BigNumberish, Contract } 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 { GetDefinitionsParams, DefaultContractPositionDefinition, GetTokenDefinitionsParams, UnderlyingTokenDefinition, GetDisplayPropsParams, GetTokenBalancesParams } from '../../../position/template/contract-position.template.types';
import { VerseContractFactory, VerseFarm } from '../contracts';
export declare class EthereumVerseFarmContractPositionFetcher extends ContractPositionTemplatePositionFetcher<VerseFarm> {
    protected readonly appToolkit: IAppToolkit;
    protected readonly contractFactory: VerseContractFactory;
    groupLabel: string;
    constructor(appToolkit: IAppToolkit, contractFactory: VerseContractFactory);
    getContract(address: string): VerseFarm;
    getDefinitions(_params: GetDefinitionsParams): Promise<DefaultContractPositionDefinition[]>;
    getTokenDefinitions({ contract, }: GetTokenDefinitionsParams<VerseFarm, DefaultContractPositionDefinition>): Promise<UnderlyingTokenDefinition[] | null>;
    getLabel({ contractPosition, }: GetDisplayPropsParams<VerseFarm, DefaultDataProps, DefaultContractPositionDefinition>): Promise<string>;
    getTokenBalancesPerPosition({ address, contract, }: GetTokenBalancesParams<Contract, DefaultDataProps>): Promise<BigNumberish[]>;
}
