import { getTokenAddress } from '@rhinestone/sdk'
const sourceChain = optimism
const targetChain = base
const publicClient = createPublicClient({
chain: sourceChain,
transport: http(),
})
const usdcBalance = await publicClient.readContract({
address: getTokenAddress('USDC', sourceChain.id),
abi: erc20Abi,
functionName: 'balanceOf',
args: [address],
})
const transaction = await rhinestoneAccount.sendTransaction({
sourceChains: [sourceChain],
targetChain,
sourceAssets: [
{
chain: sourceChain,
address: 'USDC',
amount: usdcBalance,
},
],
tokenRequests: [
{
address: 'USDC',
},
],
})