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 { GetDisplayPropsParams, GetTokenBalancesParams, GetTokenDefinitionsParams, UnderlyingTokenDefinition } from '../../../position/template/contract-position.template.types';
import { VaporwaveFinanceContractFactory, VaporwaveLaunchpool } from '../contracts';
export declare type VaporwaveFinanceVaultDefinition = {
    address: string;
    underlyingTokenAddress: string;
    rewardTokenAddress: string;
};
export declare class AuroraVaporwaveFinanceFarmContractPositionFetcher extends ContractPositionTemplatePositionFetcher<VaporwaveLaunchpool, DefaultDataProps, VaporwaveFinanceVaultDefinition> {
    protected readonly appToolkit: IAppToolkit;
    protected readonly contractFactory: VaporwaveFinanceContractFactory;
    groupLabel: string;
    constructor(appToolkit: IAppToolkit, contractFactory: VaporwaveFinanceContractFactory);
    getContract(address: string): VaporwaveLaunchpool;
    getDefinitions(): Promise<VaporwaveFinanceVaultDefinition[]>;
    getTokenDefinitions({ definition, }: GetTokenDefinitionsParams<VaporwaveLaunchpool, VaporwaveFinanceVaultDefinition>): Promise<UnderlyingTokenDefinition[]>;
    getLabel({ contractPosition }: GetDisplayPropsParams<VaporwaveLaunchpool>): Promise<string>;
    getTokenBalancesPerPosition({ address, contract }: GetTokenBalancesParams<VaporwaveLaunchpool>): Promise<import("ethers").BigNumber[]>;
}
