import { BigNumber, BigNumberish, BytesLike, Signer } from 'ethers';
import { Address, SignerOrProvider, TransactionOverrides } from '../types';
export declare const getPositionManagerContract: (provider: SignerOrProvider) => import("../types").PositionManager;
export declare function mint(signer: Signer, recipient: Address, poolAddress: Address, poolSubsetHash: BytesLike, overrides?: TransactionOverrides): Promise<import("../types").WrappedTransaction>;
export declare function burn(signer: Signer, tokenId: BigNumberish, poolAddress: Address, overrides?: TransactionOverrides): Promise<import("../types").WrappedTransaction>;
export declare function tokenURI(provider: SignerOrProvider, tokenId: BigNumber): Promise<string>;
export declare function getLP(provider: SignerOrProvider, tokenId: BigNumber, index: BigNumberish): Promise<BigNumber>;
export declare function isIndexInPosition(provider: SignerOrProvider, tokenId: BigNumber, index: BigNumberish): Promise<boolean>;
export declare function poolKey(provider: SignerOrProvider, tokenId: BigNumber): Promise<string>;
export declare function getPositionIndexes(provider: SignerOrProvider, tokenId: BigNumber): Promise<BigNumber[]>;
export declare function getPositionIndexesFiltered(provider: SignerOrProvider, tokenId: BigNumber): Promise<BigNumber[]>;
export declare function memorializePositions(signer: Signer, poolAddress: Address, tokenId: BigNumberish, indexes: Array<number>, overrides?: TransactionOverrides): Promise<import("../types").WrappedTransaction>;
export declare function redeemPositions(signer: Signer, poolAddress: Address, tokenId: BigNumberish, indexes: Array<number>, overrides?: TransactionOverrides): Promise<import("../types").WrappedTransaction>;
export declare function moveLiquidity(signer: Signer, poolAddress: Address, tokenId: BigNumberish, fromIndex: number, toIndex: number, expiry: number, overrides?: TransactionOverrides): Promise<import("../types").WrappedTransaction>;
