import { Chain, ChainToken, Currency } from "@chipi-stack/backend";
async function quotePurchase(sdk, externalUserId, skuId) {
const [balance, sku] = await Promise.all([
sdk.getTokenBalance({
externalUserId,
chainToken: ChainToken.USDC,
chain: Chain.STARKNET,
}),
sdk.getSku(skuId),
]);
const usdQuote = await sdk.getUsdAmount(sku.fixedAmount, sku.currency as Currency);
const balanceHuman = Number(BigInt(balance.balance)) / 10 ** balance.decimals;
return {
balance: balanceHuman, // USDC the user holds
cost: usdQuote, // approx USDC needed
canAfford: balanceHuman >= usdQuote,
};
}