import { IAlgebraPool, IArrakisV2, IERC20 } from '../../typechain';
import { IChain } from '../../utils';
export interface IToken {
    contract?: IERC20 | null | undefined;
    address?: string | null | undefined;
    symbol?: string | null | undefined;
    decimals?: number | null | undefined;
    isBase?: boolean;
}
export interface usePoolTokensReturn {
    base: IToken;
    quote: IToken;
    token0: IToken;
    token1: IToken;
    t0IsBase: boolean | undefined;
}
export declare function usePoolTokens(chain: IChain | null, vaultAddress: string, contract: IArrakisV2 | IAlgebraPool | undefined, // either pool, or arrakis vault
forceUseContract?: boolean): usePoolTokensReturn;
