The estimateItem() function takes a token address and a token amount and estimates the value based on a logic that is defined by the type of token it was built to estimate. At it's most basic, it is simply consulting a ProtocolOracle (such as UniswapV3 or Chainlink) to get the value of the token. But for other DeFi protocols it will estimate the token value by doing recursive estimating of the underlying tokens that are held by that token.