0.1.10 • Published 7 months ago

astra-universal-router-sdk v0.1.10

Weekly downloads
-
License
MIT
Repository
github
Last release
7 months ago

universal-router-sdk

This SDK facilitates interactions with the contracts in Universal Router

Usage

Install latest version of universal-router-sdk. Then import the corresponding Trade class and Data object for each protocol you'd like to interact with.

Trading on Uniswap

warning: swapERC20CallParameters() to be deprecated in favor of swapCallParameters()

import { TradeType } from 'astra-sdk-core'
import { Trade as V2TradeSDK } from 'astra-classic-sdk'
import { Trade as V3TradeSDK } from 'astra-cl-sdk-dev'
import { MixedRouteTrade, MixedRouteSDK, Trade as RouterTrade } from 'astra-router-sdk'

const options = { slippageTolerance, recipient }
const routerTrade = new RouterTrade({
  v2Routes: classicRoutes,
  v3Routes: clRoutes,
  mixedRoutes,
  tradeType: TradeType.EXACT_INPUT
})
// Use the raw calldata and value returned to call into Universal Swap Router contracts
const { calldata, value } = SwapRouter.swapCallParameters(routerTrade, options)

Running this package

Make sure you are running node v18 Install dependencies and run typescript unit tests

yarn install
yarn test:hardhat

Run forge integration tests

forge install
yarn test:forge