import { BigNumberish } from 'ethers';
import { IAppToolkit } from '../../../app-toolkit/app-toolkit.interface';
import { IMulticallWrapper } from '../../../multicall';
import { ContractPositionBalance } from '../../../position/position-balance.interface';
import { TokenDependencySelector } from '../../../position/selectors/token-dependency-selector.interface';
import { Network } from '../../../types/network.interface';
import { KyberswapElasticContractFactory } from '../contracts';
import { KyberswapElasticLiquidityPositionDataProps } from './kyberswap-elastic.liquidity.contract-position-fetcher';
declare type KyberswapElasticLiquidityContractPositionHelperParams = {
    multicall: IMulticallWrapper;
    tokenLoader: TokenDependencySelector;
    positionId: BigNumberish;
    poolId: BigNumberish;
    network: Network;
    collapseClaimable?: boolean;
    kyberswapElasticLmAddress: string;
};
export declare class KyberswapElasticFarmContractPositionBuilder {
    protected readonly appToolkit: IAppToolkit;
    protected readonly contractFactory: KyberswapElasticContractFactory;
    managerAddress: string;
    factoryAddress: string;
    constructor(appToolkit: IAppToolkit, contractFactory: KyberswapElasticContractFactory);
    buildPosition({ multicall, positionId, poolId, tokenLoader, network, collapseClaimable, kyberswapElasticLmAddress, }: KyberswapElasticLiquidityContractPositionHelperParams): Promise<ContractPositionBalance<KyberswapElasticLiquidityPositionDataProps> | null>;
}
export {};
