Discover Uniswap V3 and V4 pools for a token pair on a chain, ranked by USD TVL when known (falling back to in-range liquidity L when TVL is unknown). Returns each pool's address/poolId, fee tier, tick spacing, and (for V4) a hash-verified PoolKey ready for v4-add-liquidity. Also returns a top-level `tokens` block with each currency's on-chain decimals + symbol (token0/token1, sorted) so an LP consumer can size raw amounts without a separate decimals lookup. Ideal for: resolving which V4 fee tier or V3 pool to use before adding liquidity.