UNPKG

@frakt-protocol/frakt-sdk

Version:

Frakt SDK for interacting with frakt.xyz protocols

31 lines (30 loc) 1.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getOutputAmount = void 0; const raydium_sdk_1 = require("@raydium-io/raydium-sdk"); const getOutputAmount = ({ poolKeys, poolInfo, payToken, payAmount, receiveToken, slippage = new raydium_sdk_1.Percent(1, 100), }) => { try { const amountIn = new raydium_sdk_1.TokenAmount(new raydium_sdk_1.Token(payToken.address, payToken.decimals, payToken.symbol, payToken.name), payAmount, false); const { amountOut, minAmountOut, priceImpact } = raydium_sdk_1.Liquidity.computeAmountOut({ poolKeys, poolInfo, amountIn, currencyOut: receiveToken, slippage, }); return { amountOut: amountOut.toSignificant(), minAmountOut: minAmountOut.toSignificant(), priceImpact: priceImpact.toSignificant(), }; } catch (err) { console.error(err); } return { amountOut: '', minAmountOut: '', priceImpact: '', }; }; exports.getOutputAmount = getOutputAmount;