UNPKG

@blockchainbros/vidar-amm-sdk

Version:
70 lines (69 loc) 2.69 kB
/** --- Helper functions --- */ export async function initializePool(program, accounts, params) { return program.methods .initializePool(params.feeBasisPoints, params.isStable) .accounts(accounts) .transaction(); } export async function initializePosition(program, accounts) { return program.methods.initializePosition().accounts(accounts).transaction(); } export async function createLiquidityPosition(program, accounts) { return program.methods.createLiquidityPosition().accounts(accounts).transaction(); } export async function addLiquidity(program, accounts, params) { return program.methods .addLiquidity(params.amountA, params.amountB) .accounts(accounts) .transaction(); } export async function removeLiquidity(program, accounts, params) { return program.methods .removeLiquidity(params.lpAmount) .accounts(accounts) .transaction(); } export async function swap(program, accounts, args) { return program.methods.swap(args).accounts(accounts).transaction(); } export async function swapReveal(program, accounts, args) { return program.methods.swapReveal(args).accounts(accounts).transaction(); } export async function stake(program, accounts, params) { return program.methods.stake(params.amount).accounts(accounts).transaction(); } export async function initializeStake(program, accounts, params) { return program.methods.initializeStake().accounts(accounts).transaction(); } export async function unstake(program, accounts, params) { return program.methods .unstake(params.amount) .accounts(accounts) .transaction(); } export async function claimRewards(program, accounts) { return program.methods.claimRewards().accounts(accounts).transaction(); } export async function claimStakingFees(program, accounts) { return program.methods.claimStakingFees().accounts(accounts).transaction(); } export async function claimProtocolFees(program, accounts) { return program.methods.claimProtocolFees().accounts(accounts).transaction(); } export async function emergencyWithdraw(program, accounts) { return program.methods.emergencyWithdraw().accounts(accounts).transaction(); } export async function updateInternalOracle(program, accounts, args) { return program.methods .updateInternalOracle(args) .accounts(accounts) .transaction(); } export async function configurePool(program, accounts, feeBasisPoints, isStable, pause) { return program.methods.configurePool(feeBasisPoints, isStable, pause) .accounts({ pool: accounts.pool, admin: accounts.admin, }) .transaction(); }