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 { UniswapV3ContractFactory } from '../contracts';
import { UniswapV3LiquidityPositionDataProps } from './uniswap-v3.liquidity.contract-position-fetcher';
declare type UniswapV3LiquidityContractPositionHelperParams = {
    multicall: IMulticallWrapper;
    tokenLoader: TokenDependencySelector;
    positionId: BigNumberish;
    network: Network;
    collapseClaimable?: boolean;
};
export declare class UniswapV3LiquidityContractPositionBuilder {
    protected readonly appToolkit: IAppToolkit;
    protected readonly contractFactory: UniswapV3ContractFactory;
    managerAddress: string;
    factoryAddress: string;
    constructor(appToolkit: IAppToolkit, contractFactory: UniswapV3ContractFactory);
    getTokensForPosition({ multicall, positionId, tokenLoader, network, }: UniswapV3LiquidityContractPositionHelperParams): Promise<(import("../../../position/selectors/token-dependency-selector.interface").TokenDependency | null)[]>;
    buildPosition({ multicall, positionId, tokenLoader, network, collapseClaimable, }: UniswapV3LiquidityContractPositionHelperParams): Promise<ContractPositionBalance<UniswapV3LiquidityPositionDataProps> | null>;
}
export {};
