@orca-so/whirlpool-sdk
Version:
Whirlpool SDK for the Orca protocol.
18 lines (17 loc) • 969 B
TypeScript
import { WhirlpoolData } from "@orca-so/whirlpool-client-sdk";
import { Address } from "@project-serum/anchor";
import Decimal from "decimal.js";
import { OrcaDAL } from "../dal/orca-dal";
declare type TokenMint = string;
declare type PoolData = Pick<WhirlpoolData, "tokenMintA" | "tokenMintB" | "sqrtPrice">;
export declare type TokenUSDPrices = Record<TokenMint, Decimal>;
/**
* Use on-chain dex data to derive usd prices for tokens.
*
* @param pools pools to be used for price discovery
* @param baseTokenMint a token mint with known stable usd price (e.g. USDC)
* @param baseTokenUSDPrice baseTokenMint's usd price. defaults to 1, assuming `baseTokenMint` is a USD stable coin
* @param otherBaseTokenMints optional list of token mints to prioritize as base
*/
export declare function getTokenUSDPrices(dal: OrcaDAL, pools: PoolData[], baseTokenMint: Address, baseTokenUSDPrice?: Decimal, otherBaseTokenMints?: Address[]): Promise<TokenUSDPrices>;
export {};