Introducing Socket Firewall: Free, Proactive Protection for Your Software Supply Chain.Learn More
Socket
Book a DemoInstallSign in
Socket

@flowx-finance/sdk

Package Overview
Dependencies
Maintainers
1
Versions
82
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@flowx-finance/sdk

An FlowX Typescript SDK is a software development kit that allows developers to interact with FlowX protocols using the Typescript programming language.

npmnpm
Version
1.10.20
Version published
Maintainers
1
Created
Source

Official FlowX Finance TypeScript SDK for Sui

An FlowX Typescript SDK is a software development kit that allows developers to interact with FlowX protocols using the Typescript programming language.

Features

  • Retrieve coin
  • Retrieve transaction block liquidity management V2 (add,remove)
  • Retrieve transaction block for swap aggregator

Getting Started

npm i @flowx-finance/sdk

Retrieve coin

Get instance of Coin[]

const coins = await coinProvider.getCoins({
  coinTypes: ['0x2::sui::SUI'],
});

Swap Aggregator

Get Swap Route

WARNING: amountOut FROM QUOTE WHEN USE WITH COMMISSION ONLY FOR DISPLAY, NOT FOR CALCULATE ONCHAIN.

To find best route for swap

const quoter = new AggregatorQuoter('mainnet');
const params: AggregatorQuoterQueryParams = {
  tokenIn: '0x2::sui::SUI',
  tokenOut: '0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf::coin::COIN',
  amountIn: '1000000000',
  includeSources: null, //optional
  excludeSources: null, //optional
  commission: null, //optional, and will be explain later
};

const routes = await quoter.getRoutes(params);

Use function getRoutes in instance AggregatorQuoter with it's arguments to create a Route

ArgumentsDescriptionTypeExample
tokenInToken to be swapped fromstring'0x2::sui::SUI'
tokenOutToken to be receivedstring'0x5d....f::coin::COIN'
amountInAmount of tokenIn to be swappedstring'1000000000'
includeSourcesOptional: Sources to include in aggregationnull | Protocol[]null
excludeSourcesOptional: Sources to exclude in aggregationnull | Protocol[]null
commissionOptional: Commission amount for the transaction, use when you want calculate commission with partner feenull | Commissionnull

Build Transaction for aggregator swap

Build transaction that you can use with SuiClient or Dapp-kit

const tradeBuilder = new TradeBuilder(NETWORK.MAINNET, routes); //routes get from quoter
const trade = tradeBuilder
  .sender('0xSenderAddress') //Optional if you want pass coin later
  .amountIn('1000000000')
  .slippage((1 / 100) * 1e6) // Slippage 1%
  .deadline(Date.now() + 3600) // 1 hour from now
  .commission(null) // Optional: commission will be explain later
  .amountOut('500000000000000000') //Deprecated in next version: Estimate amount out, be careful when use with Commission, usually should not be used, because we always calculate amount out from routes
  .build();
console.log(trade); // Output: Trade object with configured parameters
const txb = trade.swap({ client }) // You can also pass coinIn and exist TractionBlock if you want

Find route and build transaction with commission

The Commission class represents a commission configuration for transactions, defining the partner, commission type, and value. It includes methods for computing the commission amount based on the specified type.

const commission = new Commission('0xPartnerAddress', new Coin('0x2::sui:SUI'), CommissionType.PERCENTAGE, '500', true);

if CommissionType.PERCENTAGE then value should be input 1/100 * 1e6 it is example of 1% if CommissionType.FLAT then value should be the amount of token you want to fee include decimals Then you should pass commission variable to both tradeBuilder and getRoutes for exact values

FAQs

Package last updated on 29 May 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts