swapnet-sdk-test-1
Version:
TypeScript SDK for SwapNet API.
45 lines (44 loc) • 1.05 kB
TypeScript
export interface LiquidityInfoBase {
protocol: string;
address: string;
}
export interface LimitOrderInfo extends LiquidityInfoBase {
maker: string;
makerToken: string;
takerToken: string;
makerAmount: bigint;
takerAmount: bigint;
nonce: bigint;
deadline: bigint;
signature: string;
}
export interface UniswapV3Info extends LiquidityInfoBase {
fee: bigint;
}
export type LiquidityInfo = LiquidityInfoBase | LimitOrderInfo | UniswapV3Info;
export interface Swap {
fromTokenOp: TokenOperation;
toTokenOp: TokenOperation;
amountIn: bigint;
amountOut: bigint;
liquidityInfo: LiquidityInfo;
}
export interface TokenOperation {
tokenInfo: {
address: string;
name: string;
symbol: string;
decimals: number;
usdPrice?: number;
};
fromSwaps: Swap[];
toSwaps: Swap[];
}
export interface IRoutingPlan {
tokenOps: TokenOperation[];
swaps: Swap[];
fromToken: string;
toToken: string;
amountIn: bigint;
amountOut: bigint;
}