@symmetry-hq/liquidity-sdk
Version:
Exchange functionality using symmetry funds liquidity
17 lines (16 loc) • 1.31 kB
TypeScript
/// <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;