import { BigNumberish } from 'ethers';
import { IAppToolkit } from '../../../app-toolkit/app-toolkit.interface';
import { DefaultDataProps } from '../../../position/display.interface';
import { ContractPositionBalance, RawContractPositionBalance } from '../../../position/position-balance.interface';
import { MetaType } from '../../../position/position.interface';
import { DefaultContractPositionDefinition } from '../../../position/template/contract-position.template.types';
import { CustomContractPositionTemplatePositionFetcher } from '../../../position/template/custom-contract-position.template.position-fetcher';
import { ApecoinContractFactory, ApecoinStaking } from '../contracts';
export declare class EthereumApecoinStakingContractPositionFetcher extends CustomContractPositionTemplatePositionFetcher<ApecoinStaking> {
    protected readonly appToolkit: IAppToolkit;
    private readonly contractFactory;
    groupLabel: string;
    constructor(appToolkit: IAppToolkit, contractFactory: ApecoinContractFactory);
    getDefinitions(): Promise<DefaultContractPositionDefinition[]>;
    getTokenDefinitions(): Promise<{
        metaType: MetaType;
        address: string;
        network: import("../../../types").Network;
    }[]>;
    getContract(address: string): ApecoinStaking;
    getLabel(): Promise<string>;
    getTokenBalancesPerPosition(): Promise<BigNumberish[]>;
    getBalances(address: string): Promise<ContractPositionBalance<DefaultDataProps>[]>;
    getRawBalances(address: string): Promise<RawContractPositionBalance[]>;
}
