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 { GetDisplayPropsParams, GetTokenBalancesParams, GetTokenDefinitionsParams } from '../../../position/template/contract-position.template.types';
import { EthereumStakingContractFactory, EthereumStakingDeposit } from '../contracts';
export declare class EthereumEthereumStakingDepositContractPositionFetcher extends ContractPositionTemplatePositionFetcher<EthereumStakingDeposit> {
    protected readonly appToolkit: IAppToolkit;
    protected readonly contractFactory: EthereumStakingContractFactory;
    groupLabel: string;
    constructor(appToolkit: IAppToolkit, contractFactory: EthereumStakingContractFactory);
    getContract(address: string): EthereumStakingDeposit;
    getDefinitions(): Promise<{
        address: string;
    }[]>;
    getTokenDefinitions(_params: GetTokenDefinitionsParams<EthereumStakingDeposit>): Promise<{
        metaType: MetaType;
        address: string;
        network: import("../../../types").Network;
    }[]>;
    getLabel({ contractPosition }: GetDisplayPropsParams<EthereumStakingDeposit>): Promise<string>;
    getTokenBalancesPerPosition({ address }: GetTokenBalancesParams<EthereumStakingDeposit>): Promise<string[] | number[]>;
    private getDepositsCountFromSubgraph;
    private getAllIndices;
    private getTotalBalanceForIndices;
    private getAxiosInstance;
}
