import { parseUnits } from "viem";
import {
writeSwapAdapterSwapOut,
addresses,
} from "@camino-treasury/sdk";
const adapter = addresses[mainnet.id].swapAdapter;
const c0 = addresses[mainnet.id].c0;
const usdc = "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48";
const amountIn = parseUnits("100", 6); // 100 C0
const minAmountOut = (amountIn * 9975n) / 10000n; // 0.25% slippage
await writeSwapAdapterSwapOut(config, {
account,
address: adapter,
args: [
c0, // extensionIn (the C0 you're selling)
amountIn, // amountIn
usdc, // tokenOut
minAmountOut, // minAmountOut
account.address, // recipient
"0x", // path (empty bytes → adapter's default Uniswap V3 route)
],
});