UNPKG

@symmetry-hq/liquidity-sdk

Version:

Exchange functionality using symmetry funds liquidity

17 lines (16 loc) 1.31 kB
/// <reference types="node" /> import { Program } from "@coral-xyz/anchor"; import { AccountInfo, PublicKey, TransactionSignature } from "@solana/web3.js"; import { FundsIDL } from "./fundsIDL"; import { CurveChainData, TokenPriceData, TokenSettings } from "./types"; export declare class FundError extends Error { txId: TransactionSignature; constructor(message: string, txId?: TransactionSignature); } export declare function asciiToString(coingeckoIdAscii: number[]): string; export declare function decodeTokenList(program: Program<FundsIDL>, tokenListAccountInfo: AccountInfo<Buffer>): TokenSettings[]; export declare function decodeCurveData(program: Program<FundsIDL>, curveDataAccountInfo: AccountInfo<Buffer>): CurveChainData; export declare function findTokenId(tokenListData: TokenSettings[], tokenMint: PublicKey): number | undefined; export declare function calculateOutputAmountForBuyingAsset(currentAmount: number, targetAmount: number, pyth: number, amountValue: number, curveData: TokenPriceData, decimals: number): number; export declare function calculateOutputValueForSellingAsset(currentAmount: number, targetAmount: number, pyth: number, amount: number, curveData: TokenPriceData, decimals: number): number; export declare function mulDiv(a: number, b: number, c: number): number;