UNPKG

navi-sdk

Version:

The NAVI SDK Client provides tools for interacting with the Sui blockchain networks, designed for handling transactions, accounts, and smart contracts efficiently. This documentation covers the setup, account management, and transaction handling within th

1,252 lines (1,204 loc) 65.1 kB
import { Pool, CoinInfo, PoolConfig } from "./types"; import { getLatestProtocolPackageId } from "./libs/PoolInfo/index"; let globalPackageId: string; let globalPackageIdExpireAt: number; let cacheUpdatePromise: Promise<void> | null = null; export const AddressMap: Record<string, string> = { "0x2::sui::SUI": "Sui", "0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5::navx::NAVX": "NAVX", "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT": "vSui", "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdc::USDC": "wUSDC", //test usdc "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdt::USDT": "USDT", //test usdt "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::weth::WETH": "WETH", //test weth "0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI": "AFSUI", //test afsui "0xa45fa952a312a0a504fafb9bf3fc95faaccdfe613a740190c511663600d39010::usdys::USDYS": "USDYs", //test usdy "0x6775698681ebe5a3bd931f80c71eda65941d92ce1b8ee17b6fe59aacc2c489b6::tdai::TDAI": "TDAI", //test tdai "0x0ae6b3b3117ab4d524eaa16d74483324eb1885888ef0370803b331e1b04ee65c::ausd::AUSD": "AUSDS", //test ausd "0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS": "CETUS", "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI": "haSui", "0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN": "WBTC", "0x2053d08c1e2bd02791056171aab0fd12bd7cd7efad2ab8f6b9c8902f14df2ff2::ausd::AUSD": "AUSD", "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC": "nUSDC", "0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::eth::ETH": "ETH", // native eth "0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb::usdy::USDY": "USDY", "0x5145494a5f5100e645e4b0aa950fa6b68f614e8c59e17bc5ded3495123a79178::ns::NS": "NS", "0x5f496ed5d9d045c5b788dc1bb85f54100f2ede11e46f6a232c29daada4c5bdb6::coin::COIN": "stBTC", "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP": "DEEP", "0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a::fdusd::FDUSD": "FDUSD", "0xe1b45a0e641b9955a20aa0ad1c1f4ad86aad8afb07296d4085e349a50e90bdca::blue::BLUE": "BLUE", "0xce7ff77a83ea0cb6fd39bd8748e2ec89a3f41e8efdc3f4eb123e0ca37b184db2::buck::BUCK": "BUCK", "0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068::usdt::USDT": "suiUSDT", "0xd1b72982e40348d069bb1ff701e634c117bb5f741f44dff91e472d3b01461e55::stsui::STSUI": "stSUI", "0xaafb102dd0902f5055cadecd687fb5b71ca82ef0e0285d90afde828ec58ca96b::btc::BTC": "suiBTC", "0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN": "WSOL", "0x3e8e9423d80e1774a7ca128fccd8bf5f1f7753be658c5e645929037f7c819040::lbtc::LBTC": "LBTC", "0x93b6e3432bdf986099feee41910b0dcc8d1db9040e2d3c27ccf20330c18a79ca::wal_test::WAL_TEST": "WAL", "0x3a304c7feba2d819ea57c3542d68439ca2c386ba02159c740f7b406e592c62ea::haedal::HAEDAL": "HAEDAL", "0x876a4b7bce8aeaef60464c11f4026903e9afacab79b9b142686158aa86560b50::xbtc::XBTC": "XBTC", }; export function getPackageCache(): string | undefined { return globalPackageId; } export function isPackageCacheExpired(): boolean { if (!globalPackageIdExpireAt || globalPackageIdExpireAt < Date.now()) { return true; } return false; } export async function setPackageCache( expirationLength: number = 3600 ): Promise<void> { const id = await getLatestProtocolPackageId(); if (!id) { return; } globalPackageId = id; globalPackageIdExpireAt = Date.now() + expirationLength * 1000; // Convert seconds to milliseconds } async function updateCacheIfNeeded() { if (isPackageCacheExpired() && !cacheUpdatePromise) { cacheUpdatePromise = setPackageCache(); await cacheUpdatePromise; cacheUpdatePromise = null; } else if (cacheUpdatePromise) { await cacheUpdatePromise; } } export const getConfig = async () => { await updateCacheIfNeeded(); // const protocolPackage = getPackageCache(); const protocolPackage = "0x8200ce83e1bc0894b641f0a466694b4f6e25d3f9cc3093915a887ec9e7f3395e"; return { ProtocolPackage: protocolPackage, StorageId: "0x111b9d70174462646e7e47e6fec5da9eb50cea14e6c5a55a910c8b0e44cd2913", IncentiveV2: "0x952b6726bbcc08eb14f38a3632a3f98b823f301468d7de36f1d05faaef1bdd2a", IncentiveV3: "0x5db4063954356f37ebdc791ec30f4cfd39734feff18820ee44dc2d2de96db899", PriceOracle: "0x25c718f494ff63021f75642ecaaeda826f44b2d9d59859a8ad45ef0fba9626f2", ReserveParentId: "0x287399b936f75e810e460f3d70ddb21d804d2224f16d04e9f3be12fe80115175", // get it from storage object id. storage.reserves uiGetter: "0xa37cf08e27973bc437d1adc77d910aa7dc908f263a3378163fb929f7146a2973", flashloanConfig: "0x3672b2bf471a60c30a03325f104f92fb195c9d337ba58072dce764fe2aa5e2dc", flashloanSupportedAssets: "0x6c8fc404b4f22443302bbcc50ee593e5b898cc1e6755d72af0a6aab5a7a6f6d3", }; }; export const pool: { [key: string]: PoolConfig } = { Sui: { name: "SUI", assetId: 0, poolId: "0x68b420259e3adcdadf165350984f59dfdaf677c3d639aaa54c1d907dae2dd1a3", type: "0x2::sui::SUI", reserveObjectId: "0x278cec0691f79d7ba7a4dfef5490d9419eb4e7a48d6cab88d9fa187952ee5462", borrowBalanceParentId: "0x040ee0bd51ff0adc3fff41d51a9b4d8e55213fee9b97324ee2ecfa76af1cdc55", supplyBalanceParentId: "0x0864aabbdcab5da56964b70fe6ad8fc592b01dfbb6254cb9bc2a965e517c1029", rewardFundId: "0x5fdbd4ae16b58784bc898d81c732815c46f92b915ba3a188a520424482b6bdd9", }, wUSDC: { name: "wUSDC", assetId: 1, poolId: "0x8bf81e96302d4307d8da07e49328875e1f2e205dc0c4d457bffe6a8c1740ba25", type: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdc::USDC", reserveObjectId: "0x4ae60e09f6b326b2c29054f1381a74e6cb7688220a1dad5cead3b2ab3decf029", borrowBalanceParentId: "0xd41bd348dd5a2a6ed42ecccf296dcf8c0fcb49880d3d07958352269e68cc6648", supplyBalanceParentId: "0xa3c613f37db324f30947230761bc5980a6d682bdc9027bb75656452d0d44bebc", rewardFundId: "", }, USDT: { name: "USDT", assetId: 2, poolId: "0x8c07168a57d3734e6fa710e734d228507159b567f8bee9becf2847cd5c5954ec", type: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdt::USDT", reserveObjectId: "0x4d712e2acea9339b4613a31501fafd03cb2987285da25e8254c731d29c8f11e8", borrowBalanceParentId: "0x035e3d850b52de17115ee95f1841bdca045d0040ff6681bfac57a46dbea61646", supplyBalanceParentId: "0x2eeb81b66f58670b497bde60bfb5b5cab07e0b7971f7b9add981f8c714100c41", rewardFundId: "0x619cc3b88a0901e972ae88bdfb51f901170a4b6276bde101e20b7eb852b92632", }, WETH: { name: "WETH", assetId: 3, poolId: "0x459f8732415859e4fba362e372db4b3a474d1d18ec54176ac401a2a2ee21f29b", type: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::weth::WETH", reserveObjectId: "0x06b658f63902ffe866787d5dfa8b5335d57a26b186cbdb60aeddeea75e1701a3", borrowBalanceParentId: "0xafdeaaaf8cff53acfa116687489dd2a86abb07e3142d57a9743b57241fa691d5", supplyBalanceParentId: "0x9a0a58a85f515f65ff05272ae48d0e7e3a38d8e7f26fd7e71e74f125624eedd9", rewardFundId: "0xfb0de07cd39509ecb312464daa9442fac0eb4487d7a9b984cdfc39c1fb7d2791", }, vSui: { name: "VoloSui", assetId: 4, poolId: "0xd386c359fd6295254d92022e902319e85c552bc5a8bd7af003ebe3074bd7f155", type: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT", reserveObjectId: "0x5bb709497addd45ad3c56e03feebaac002d854b3037243dcf7927018a0b797d4", borrowBalanceParentId: "0xedec31e75c912133fcd6865efbab331fac9c799d800e28ace77f0930c31ad41f", supplyBalanceParentId: "0x20f5f360d7efd835dbda0a14de00a72579b77ef3e30c6c6b70ff850b92fe9fab", rewardFundId: "0x4a1bf763bdf03c1fae15d7329db115ed37b8bf3c323938a3ddaa6b6e31a89789", }, AFSUI: { name: "AFSUI", assetId: 5, poolId: "0x3131b488d328d12869f0e32d0d3f20b0613963c795f8197f118fe2d6561adde7", type: "0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI", reserveObjectId: "0xaa7f15b7f2bfce2d6d50dfbe16ab712c6d855e60e406098f6e34ee4a5de5bc2f", borrowBalanceParentId: "0x272a678d94b099aa7a3bbd99825b124fc606fa609ea18db6a2b3405f592dd137", supplyBalanceParentId: "0x19807c58a9ba177673e7950208059c7bfe158943fc12a5f015a6e4a2625ac8a9", rewardFundId: "", }, haSui: { name: "HASUI", assetId: 6, poolId: "0x2e2fe883402d0b077fc000ab947192fc8c055ad9213bc6d4e8ebc73aaf315f5a", type: "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI", reserveObjectId: "0xd2e0865bb361e21109ace6569625804c988b7a7865b57ef3dba25f445dbb1b5a", borrowBalanceParentId: "0x10680695eee60fde8fb2ca8fbe91c61feee8a83850b51143725b40821f8e82b0", supplyBalanceParentId: "0x180055b8cb7ce9b032e3383f5719bad5d56caf98ce0648f29efffb1d3cde7da5", rewardFundId: "", }, CETUS: { name: "CETUS", assetId: 7, poolId: "0xf6a2e1d9fd7c788f1e0763fc8fe277da8b21805d66aa31ea54e56f85a0f32f86", type: "0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS", reserveObjectId: "0x0b9180b5ce4654a31a58bdbdba4df5f4e6c44db606a665f33732177577b3feba", borrowBalanceParentId: "0x0ebffa79684eca608c72914e0dd0bdc94819de83aff755be9d31e0bb2296b99c", supplyBalanceParentId: "0x277683ed790d0a8b18e27fb1a731ae279be2f60e0c559b593605318d002c9a83", rewardFundId: "", }, NAVX: { name: "NAVX", assetId: 8, poolId: "0x521451b6329a41b7c49395e93cd718d821a6bb803ef9c8087d31d6056fe67819", type: "0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5::navx::NAVX", reserveObjectId: "0x239b1026413181a1e78b8b187bc9954e8f488f0d62c33246bd4bfb3af3382341", borrowBalanceParentId: "0x2a5e8d1c0e6c9c35d6be4b415a29eb0ff08ed2c425f826f571e287dbf4d9c210", supplyBalanceParentId: "0xa28b2b2ffb3b3c611b272fa6877d00fd9352746557b758b54d03825b7dac4058", rewardFundId: "0x96945c944a7263ad6631c0ec4ef31adcf611563ef951d3b420bf0480338174ba", }, USDYS: { name: "USDYS", assetId: 9, poolId: "0xf76c7a424142c14da26659cd623e154b0a54c3952f2a684cc9a1fde8e766150a", type: "0xa45fa952a312a0a504fafb9bf3fc95faaccdfe613a740190c511663600d39010::usdys::USDYS", reserveObjectId: "0x44dbd23ca122eda5bb982371ffb5deb24daf31e42befa66bedc111f626d8de37", borrowBalanceParentId: "0x0fc4b6cc252579b6349b70d2f080a091d97ab6f944dbb395f5e56c0d484f6bdf", supplyBalanceParentId: "0xa1aaf010c20c32a716fbc52dfe4ddcbcf3cee1ba5a0c806147a2cc576fa0bcac", rewardFundId: "", }, USDY: { name: "USDY", assetId: 10, poolId: "0x8a08b94bb4ba4564446eb051cbab9e0438d8c2dd8ccf9bb29281e220973e3a61", type: "0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb::usdy::USDY", reserveObjectId: "0xe1fdcbad49a6c094c9434a77b0ea8d3cc68dd9966926aa6fcd7251c16f7e5897", borrowBalanceParentId: "0x2d92220d0d99c235acc8041f6c9b25e14085eee230b5bb38b38832493a307142", supplyBalanceParentId: "0x4a5637d4461378a0a048d970bc34f3c93b40e1b2decb538782966dd671e2636f", rewardFundId: "", }, BUCK: { name: "BUCK", assetId: 11, poolId: "0x33f07c409f427c3c898a386bf8e15b52b5a0ecd287e30cba0ef9904e97e76ed8", type: "0xce7ff77a83ea0cb6fd39bd8748e2ec89a3f41e8efdc3f4eb123e0ca37b184db2::buck::BUCK", reserveObjectId: "0x61ab088159c9ac868e5292869190b72185ab7ea28839f74184b81d0546c66fa5", borrowBalanceParentId: "0x91343bd0358e508e5a3a47f471996750d3453f28f959d1f2fc7b6c10ed319125", supplyBalanceParentId: "0x9e394fb34811396b80bb9bec3156c7d8e97f99584624cf27720ce0d8cf0a8b20", rewardFundId: "", }, FDUSD: { name: "FDUSD", assetId: 12, poolId: "0xae84d70b04ef658231d88639ab7186da88a3328a4638752944a2ad3a2d2efa31", type: "0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a::fdusd::FDUSD", reserveObjectId: "0xd81096867c2177b61134df549a282c80f207380f581a52bf7b0789a4d984f6cf", borrowBalanceParentId: "0x8f061998eb6030ec626a84761f5d0762516c8f32e49eafd6d07cd85630eb4331", supplyBalanceParentId: "0xfee9f9f94995e5af4e8c1441b01fede684c96d370665bcb7633cb51569f7f744", rewardFundId: "", }, TDAI: { name: "TDAI", assetId: 13, poolId: "0xdd0f01b3483e99d51455541d1744e4aade22721d3e89d83bd6b681134ed17cc3", type: "0x6775698681ebe5a3bd931f80c71eda65941d92ce1b8ee17b6fe59aacc2c489b6::tdai::TDAI", reserveObjectId: "0x19218b90c7a219497fa4050eaf94c5e76a911b059b97f99466a38db9ec625e5b", borrowBalanceParentId: "0x16dacabb682d0ff050b7cb038ae07af4925d0f0022ef740e8dba4489c18fe836", supplyBalanceParentId: "0x47693490df9ce025217eacecad302b79308c68edf8d6bfa54ab62aadd9f0c611", rewardFundId: "", }, AUSDs: { name: "AUSDs", assetId: 14, poolId: "0x83579779b30fdd43a1d302e43974b992a24ee5eb7fedf35717f86219577996a9", type: "0x0ae6b3b3117ab4d524eaa16d74483324eb1885888ef0370803b331e1b04ee65c::ausd::AUSD", reserveObjectId: "0x95e25ef72ab7b1613dcbbb0aa2554cb7ae9f9048aa09a99b96d3ccaf1213a0d3", borrowBalanceParentId: "0xce71078dff569c43069c552d843ec57b7207e6f6374e6c0916243b824246c6c5", supplyBalanceParentId: "0x3dd645e67697dc68beb07ef97d6a22d80602544a2efb5ff2e75f78e5862792ef", rewardFundId: "", }, WBTC: { name: "WBTC", assetId: 15, poolId: "0x45d56b57c3d9015ea8a3f017414116ab428f9c97a0db00fb418f83c003d2a09c", type: "0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN", reserveObjectId: "0x85023c9a57a95c5c08d37e275e8be6b40f12a2eb09bfb4cc258f3576523b4d4f", borrowBalanceParentId: "0x919efa3099cac69f39f971a4943e2ed211d5339f8ddf25b14555211418093875", supplyBalanceParentId: "0x6422fd09a988e27e2d2fb48461ea5e74224185e9e3528275d923f2f53522fb41", rewardFundId: "", }, AUSD: { name: "AUSD", assetId: 16, poolId: "0x90b4d0f180692203316d047825c19a66a53c9938ddd1ed1acc3e05a8438e813c", type: "0x2053d08c1e2bd02791056171aab0fd12bd7cd7efad2ab8f6b9c8902f14df2ff2::ausd::AUSD", reserveObjectId: "0x95e25ef72ab7b1613dcbbb0aa2554cb7ae9f9048aa09a99b96d3ccaf1213a0d3", borrowBalanceParentId: "0xce71078dff569c43069c552d843ec57b7207e6f6374e6c0916243b824246c6c5", supplyBalanceParentId: "0x3dd645e67697dc68beb07ef97d6a22d80602544a2efb5ff2e75f78e5862792ef", rewardFundId: "", }, ETH: { name: "ETH", assetId: 17, poolId: "0xc0dd8dc69de288c37d531cbca6098ded14d06d21e595053759435d68e12fe434", type: "0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::weth::WETH", reserveObjectId: "0x5e89d2f1efeceed394e5feca32ccb873afa3ac494124d3d5247e706c12214870", borrowBalanceParentId: "0xda2f2cc0a1d83f5ccda12a7c2b317f69cb8b8b04a6de50ad4b8c44079a5233b6", supplyBalanceParentId: "0xc9608a574fffe857cde6b1e26ac2e544a3cdc564f829a228667722417dad9b12", rewardFundId: "", }, NS: { name: "NS", assetId: 18, poolId: "0x9560bd8276ec2a2dce85e53c4fd6c541fa383b802fa49c8e6fd4555a2a964eb4", type: "0x5145494a5f5100e645e4b0aa950fa6b68f614e8c59e17bc5ded3495123a79178::ns::NS", reserveObjectId: "0x3321b80228ac92e9f6d3c58be1a859053f513bbfb340d4527f1cc0000bd68c42", borrowBalanceParentId: "0x69d878fe4f5eb3083ff7b2ca71a009924c0857f2984ea0b3b982eff5fa84ef33", supplyBalanceParentId: "0xfaf7e58bb35c565f58ca479ef0bdb74ac9a8352f85310b68185e97d788fdf9a8", rewardFundId: "", }, LorenzoBTC: { name: "stBTC", assetId: 19, poolId: "0xb7b48430bfeb7f30ec9fbc8c2d67b0188aa19ff0f03e6b39193bae01fb19489b", type: "0x5f496ed5d9d045c5b788dc1bb85f54100f2ede11e46f6a232c29daada4c5bdb6::coin::COIN", reserveObjectId: "0x5ed96cb34c2005f6be120bac670760f673062236d5215c05569a003d73b50e2e", borrowBalanceParentId: "0x34b1fa39bc329f82ef24f05f8e67e3e77f67ca2d44a9f90427338505680a2263", supplyBalanceParentId: "0x66eaae717f228f798f3177ec5587319621ba077bfd1151ae40d9992f6e573fe8", rewardFundId: "", }, DEEP: { name: "DEEP", assetId: 20, poolId: "0x9582044bd2a7682c6c6c7e0028c79cdb7c9452a9a7600b0653051649ef93e8eb", type: "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP", reserveObjectId: "0x61da4ef8555558997b4428a34d8ba1bc9335041f4c3cfc3260e8523e5859fdb0", borrowBalanceParentId: "0x5842c5e448220155d414a44d4c8e0e47170b3b3df56492bf264995038cfe5170", supplyBalanceParentId: "0xfc61d47b3f8ffbed926fd1f6f5374ccf81bdc70fbfbab06489c4806314db6a10", rewardFundId: "", }, stSUI: { name: "stSUI", assetId: 21, poolId: "0xf6ab1d1838a64e3684161e3b958a4f2bb7bb4edb0ba79480796ecd149673b3de", type: "0xd1b72982e40348d069bb1ff701e634c117bb5f741f44dff91e472d3b01461e55::stsui::STSUI", reserveObjectId: "0x09072667183f8f634f75656fd7b065e3f96d14bcdc5d95eaed3303974baa0ec1", borrowBalanceParentId: "0x871f55514a0b37672e4435e32c61cc921e176006d85c9a07823ced3e8cdfaf00", supplyBalanceParentId: "0x7d53c267d7727ea48488620f1ae1afe49d6fdacfd8ed23d4c55c2bb3189d4e9e", rewardFundId: "", }, BLUE: { name: "BLUE", assetId: 22, poolId: "0xa07495c10a08a16848d23c31ce28d6f29d2e15cb7570f43c574efe8523ef548e", type: "0xe1b45a0e641b9955a20aa0ad1c1f4ad86aad8afb07296d4085e349a50e90bdca::blue::BLUE", reserveObjectId: "0xbf20842ec67af28c3cf30e65a95890b0b78057b14e1297d8c4aa2c7453639555", borrowBalanceParentId: "0xf8599cce8d8bc326112f0a2c77f2616f2b587411df3ec9ca308132abcd92e954", supplyBalanceParentId: "0xb1126323a5f349cb4699d34dcf019b173787d288f621ab9a8046eaa4296bf05c", rewardFundId: "", }, suiUSDT: { name: "suiUSDT", assetId: 23, poolId: "0x35410660a4dad5f8a036d8a3cfe1cd81ae8152acea9615855e1e8a6f32c50085", type: "0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068::usdt::USDT", reserveObjectId: "0xcffbf7ce9a1766b9cd109bd42b14e364c078c07f43c2bbae47ecd7dc9bca2d46", borrowBalanceParentId: "0x68dfa0a7a25e1b9bff3fb64d33e739fce92dd85c19970a48bd943e9c97f365b5", supplyBalanceParentId: "0xd4aa50314bfba95cba658890c73efc618668916df7a8f37ece2769c31e935070", rewardFundId: "", }, suiBTC: { name: "suiBTC", assetId: 24, poolId: "0x599aeb1f69a24262e5f13bae2960ba10f928c75888d3de7ab3940567fa52108a", type: "0xaafb102dd0902f5055cadecd687fb5b71ca82ef0e0285d90afde828ec58ca96b::btc::BTC", reserveObjectId: "0xadceed70c7c83a390e200854ef399a9cf895c9e09843e053db21308079eb2ff4", borrowBalanceParentId: "0xf233de5c743da3f20722570846cb1832a2f5c1c26c939f1b4031a8a39592c11e", supplyBalanceParentId: "0x0e2717209650d4eb7b3a0cf85e014840982c6605c4772310fdead9e858bf5375", rewardFundId: "", }, WSOL: { name: "WSOL", assetId: 25, poolId: "0x026d8c51bbdbbc0438148ab8a21570f47cc4a5e1087014648af03fa2981936a1", type: "0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN", reserveObjectId: "0xcf020fdd93f47c63c2d8e853492b442f792d2203a51034ecea22e325e7ea8206", borrowBalanceParentId: "0x9ead83e3c40c81d41892d9196bf0a7ca83a9114b4f0c77c9cd4a796bc536edd6", supplyBalanceParentId: "0xdbb2f6a5503195d7c113321702d1d1d389c84ce1a0413eb440ca20a35af7cdf9", rewardFundId: "", }, LBTC: { name: "LBTC", assetId: 26, poolId: "0x79bbc465a041d13cf82c33567d6b6e5ad3a09743145b6cc418700506c07717e5", type: "0x3e8e9423d80e1774a7ca128fccd8bf5f1f7753be658c5e645929037f7c819040::lbtc::LBTC", reserveObjectId: "0xe4ceb4a1ff88768f0efeef0c3867adff577e593f6b4c78a8b5530456f36d8ffd", borrowBalanceParentId: "0x9a29792a2c3bb22000da2640c9a9903fdc8ac76f0f170447c945639c05b00536", supplyBalanceParentId: "0x017c91c2a61152ebdc135c0574d286911308166d08c2934bb94fa9f693682346", rewardFundId: "", }, WAL: { name: "WAL", assetId: 27, poolId: "0x464e5d31faad52217a72f70aa547f0c76d951215a643f1127c0a50f3e1e1465e", type: "0x93b6e3432bdf986099feee41910b0dcc8d1db9040e2d3c27ccf20330c18a79ca::wal_test::WAL_TEST", reserveObjectId: "0xf33a49d855b51f118f4d5f30e23b739b19f7c00d5211ec543ea45494483e9e94", borrowBalanceParentId: "0x70a5bfe9bac87dd52143797c9c35b80749f79064f1e169aba486e3f98e2fb67f", supplyBalanceParentId: "0xe185780cd3aa7ab792b7e4a032bd10351df20e4377050d3dea00de7d965c6118", rewardFundId: "", }, HAEDAL: { name: "HAEDAL", assetId: 28, poolId: "0x1c1a32850593c77b92eac4dcb8cefefb338118e6af030b400180f9d8d36357fb", type: "0x3a304c7feba2d819ea57c3542d68439ca2c386ba02159c740f7b406e592c62ea::haedal::HAEDAL", reserveObjectId: "0xe368e392a53da9ede3e4a48cd90723a7fd2160e9dfb6740ae768f6ffb15694dd", borrowBalanceParentId: "0x3d65233aec5f488cacdfdbcb4cd00e728e0f3f74970a2623cf6e41f5e6417fd2", supplyBalanceParentId: "0xd74ae98a59f5bbbe8779856b063c0344cd6cab179c78685e697fac154f0c42f2", rewardFundId: "", }, XBTC: { name: "XBTC", assetId: 29, poolId: "0x49e911df8f378001ea29445d1a688dae6e6f3d43d704647f29e1ca870195df74", type: "0x876a4b7bce8aeaef60464c11f4026903e9afacab79b9b142686158aa86560b50::xbtc::XBTC", reserveObjectId: "0xda2688e419988284723993987aa2b2ebf7009ab62e353c80725a033846f9435c", borrowBalanceParentId: "0xd1e5741f6db1f507fbbc8913ec739755b874584114ab1e33b61bdac2dbe08fae", supplyBalanceParentId: "0x0cf9f62b259ca38f95c236db4f55a84e0cb0e5bd7865ccd6ebf327da426bd8c1", rewardFundId: "", }, HIPPO: { name: "HIPPO", assetId: 88, poolId: "0x464e5d31faad52217a72f70aa547f0c76d951215a643f1127c0a50f3e1e1465e", type: "0x8993129d72e733985f7f1a00396cbd055bad6f817fee36576ce483c8bbb8b87b::sudeng::SUDENG", reserveObjectId: "0xf33a49d855b51f118f4d5f30e23b739b19f7c00d5211ec543ea45494483e9e94", borrowBalanceParentId: "0x70a5bfe9bac87dd52143797c9c35b80749f79064f1e169aba486e3f98e2fb67f", supplyBalanceParentId: "0xe185780cd3aa7ab792b7e4a032bd10351df20e4377050d3dea00de7d965c6118", rewardFundId: "", }, }; export const flashloanConfig = { id: "0x3672b2bf471a60c30a03325f104f92fb195c9d337ba58072dce764fe2aa5e2dc", }; export const Sui: CoinInfo = { symbol: "Sui", address: "0x2::sui::SUI", decimal: 9, }; export const wUSDC: CoinInfo = { symbol: "wUSDC", address: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdc::USDC", decimal: 6, }; export const USDT: CoinInfo = { symbol: "USDT", address: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdt::USDT", decimal: 6, }; export const WETH: CoinInfo = { symbol: "WETH", address: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::weth::WETH", decimal: 8, }; export const vSui: CoinInfo = { symbol: "vSui", address: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT", decimal: 9, }; export const AFSUI: CoinInfo = { symbol: "AFSUI", address: "0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI", decimal: 9, }; export const haSui: CoinInfo = { symbol: "haSui", address: "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI", decimal: 9, }; export const CETUS: CoinInfo = { symbol: "CETUS", address: "0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS", decimal: 9, }; export const NAVX: CoinInfo = { symbol: "NAVX", address: "0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5::navx::NAVX", decimal: 9, }; export const USDYS: CoinInfo = { symbol: "USDYS", address: "0xa45fa952a312a0a504fafb9bf3fc95faaccdfe613a740190c511663600d39010::usdys::USDYS", decimal: 6, }; export const USDY: CoinInfo = { symbol: "USDY", address: "0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb::usdy::USDY", decimal: 6, }; export const BUCK: CoinInfo = { symbol: "BUCK", address: "0xce7ff77a83ea0cb6fd39bd8748e2ec89a3f41e8efdc3f4eb123e0ca37b184db2::buck::BUCK", decimal: 9, }; export const FDUSD: CoinInfo = { symbol: "FDUSD", address: "0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a::fdusd::FDUSD", decimal: 6, }; export const TDAI: CoinInfo = { symbol: "TDAI", address: "0x6775698681ebe5a3bd931f80c71eda65941d92ce1b8ee17b6fe59aacc2c489b6::tdai::TDAI", decimal: 6, }; export const AUSDS: CoinInfo = { symbol: "AUSD", address: "0x0ae6b3b3117ab4d524eaa16d74483324eb1885888ef0370803b331e1b04ee65c::ausd::AUSD", decimal: 6, }; export const WBTC: CoinInfo = { symbol: "WBTC", address: "0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN", decimal: 8, }; export const AUSD: CoinInfo = { symbol: "AUSD", address: "0x2053d08c1e2bd02791056171aab0fd12bd7cd7efad2ab8f6b9c8902f14df2ff2::ausd::AUSD", decimal: 6, }; export const ETH: CoinInfo = { symbol: "ETH", address: "0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::eth::ETH", decimal: 8, }; export const NS: CoinInfo = { symbol: "NS", address: "0x5145494a5f5100e645e4b0aa950fa6b68f614e8c59e17bc5ded3495123a79178::ns::NS", decimal: 6, }; export const LorenzoBTC: CoinInfo = { symbol: "stBTC", address: "0x5f496ed5d9d045c5b788dc1bb85f54100f2ede11e46f6a232c29daada4c5bdb6::coin::COIN", decimal: 8, }; export const DEEP: CoinInfo = { symbol: "DEEP", address: "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP", decimal: 6, }; export const stSUI: CoinInfo = { symbol: "stSUI", address: "0xd1b72982e40348d069bb1ff701e634c117bb5f741f44dff91e472d3b01461e55::stsui::STSUI", decimal: 9, }; export const BLUE: CoinInfo = { symbol: "BLUE", address: "0xe1b45a0e641b9955a20aa0ad1c1f4ad86aad8afb07296d4085e349a50e90bdca::blue::BLUE", decimal: 9, }; export const suiUSDT: CoinInfo = { symbol: "suiUSDT", address: "0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068::usdt::USDT", decimal: 6, }; export const suiBTC: CoinInfo = { symbol: "suiBTC", address: "0xaafb102dd0902f5055cadecd687fb5b71ca82ef0e0285d90afde828ec58ca96b::btc::BTC", decimal: 8, }; export const nUSDC: CoinInfo = { symbol: "nUSDC", address: "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC", decimal: 6, }; export const WSOL: CoinInfo = { symbol: "WSOL", address: "0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN", decimal: 8, }; export const LBTC: CoinInfo = { symbol: "LBTC", address: "0x3e8e9423d80e1774a7ca128fccd8bf5f1f7753be658c5e645929037f7c819040::lbtc::LBTC", decimal: 8, }; export const WAL: CoinInfo = { symbol: "WAL", address: "0x93b6e3432bdf986099feee41910b0dcc8d1db9040e2d3c27ccf20330c18a79ca::wal_test::WAL_TEST", decimal: 9, }; export const HAEDAL: CoinInfo = { symbol: "HAEDAL", address: "0x3a304c7feba2d819ea57c3542d68439ca2c386ba02159c740f7b406e592c62ea::haedal::HAEDAL", decimal: 9, }; export const XBTC: CoinInfo = { symbol: "XBTC", address: "0x876a4b7bce8aeaef60464c11f4026903e9afacab79b9b142686158aa86560b50::xbtc::XBTC", decimal: 8, }; export const HIPPO: CoinInfo = { symbol: "HIPPO", address: "0x8993129d72e733985f7f1a00396cbd055bad6f817fee36576ce483c8bbb8b87b::sudeng::SUDENG", decimal: 9, }; export const vSuiConfig = { ProtocolPackage: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55", pool: "0x7fa2faa111b8c65bea48a23049bfd81ca8f971a262d981dcd9a17c3825cb5baf", metadata: "0x680cd26af32b2bde8d3361e804c53ec1d1cfe24c7f039eb7f549e8dfde389a60", wrapper: "0x05", }; export interface IPriceFeed { oracleId: number; maxTimestampDiff: number; priceDiffThreshold1: number; priceDiffThreshold2: number; maxDurationWithinThresholds: number; maximumAllowedSpanPercentage: number; maximumEffectivePrice: number; minimumEffectivePrice: number; historicalPriceTTL: number; coinType: string; feedId: string; supraPairId: number; pythPriceFeedId: string; pythPriceInfoObject: string; priceDecimal: number; expiration: number; } export const PriceFeedConfig: { [key: string]: IPriceFeed } = { SUI: { oracleId: 0, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 3000000000, // 3 = 3 * 1e9 = 3000000000 minimumEffectivePrice: 100000000, // 0.1 = 0.1 * 1e9 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI", feedId: "0x2cab9b151ca1721624b09b421cc57d0bb26a1feb5da1f821492204b098ec35c9", // TODO: value supraPairId: 90, // SUI_USDT -> 90, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Under%20Supervision-,SUI_USDT,-90 pythPriceFeedId: "0x23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744", // **fixed value: Crypto.SUI/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37", priceDecimal: 9, expiration: 30, }, WUSDC: { oracleId: 1, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 100000, // 0.1 = 0.1 * 1e6 = 100000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdc::USDC", feedId: "0x70a79226dda5c080378b639d1bb540ddea64761629aa4ad7355d79266d55af61", // TODO: value supraPairId: 47, // USDC_USDT -> 47, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Standard-,USDC_USDT,-47 pythPriceFeedId: "0xeaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a", // **fixed value: Crypto.USDC/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x5dec622733a204ca27f5a90d8c2fad453cc6665186fd5dff13a83d0b6c9027ab", priceDecimal: 6, expiration: 30, }, USDT: { oracleId: 2, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 100000, // 0.1 = 0.1 * 1e6 = 100000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::usdt::USDT", feedId: "0xf72d8933873bb4e5bfa1edbfa9ff6443ec5fac25c1d99ba2ef37f50a125826f3", // TODO: value supraPairId: 48, // USDT_USD -> 48, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Premium-,USDT_USD,-48 pythPriceFeedId: "0x2b89b9dc8fdf9f34709a5b106b472f0f39bb6ca9ce04b0fd7f2e971688e2e53b", // **fixed value: Crypto.USDT/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x985e3db9f93f76ee8bace7c3dd5cc676a096accd5d9e09e9ae0fb6e492b14572", priceDecimal: 6, expiration: 30, }, WETH: { oracleId: 3, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 600000000000, // 6000 = 6000 * 1e8 = 600000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x0eedc3857f39f5e44b5786ebcd790317902ffca9960f44fcea5b7589cfc7a784::weth::WETH", feedId: "0x44d92366eba1f1652ec81f34585406726bef267565a2db1664ffd5ef18e21693", // TODO: value supraPairId: 1, // ETH_USDT -> 1, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Premium-,ETH_USDT,-1 pythPriceFeedId: "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace", // **fixed value: Crypto.ETH/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab", priceDecimal: 8, expiration: 30, }, CERT: { oracleId: 4, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 3000000000, // 3 = 3 * 1e9 = 3000000000 minimumEffectivePrice: 100000000, // 0.1 = 0.1 * 1e9 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT", feedId: "0x086bb5540047b3c77ae5e2f9b811c7ef085517a73510f776753c8ee83d19e62c", // TODO: value supraPairId: 90, // SUI_USDT -> 90, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Under%20Supervision-,SUI_USDT,-90 pythPriceFeedId: "0x23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744", // **fixed value: Crypto.SUI/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37", priceDecimal: 9, expiration: 30, }, AFSUI: { oracleId: 5, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 3000000000, // 3 = 3 * 1e9 = 3000000000 minimumEffectivePrice: 100000000, // 0.1 = 0.1 * 1e9 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI", feedId: "0x086bb5540047b3c77ae5e2f9b811c7ef085517a73510f776753c8ee83d19e62c", // TODO: value supraPairId: 90, // SUI_USDT -> 90, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Under%20Supervision-,SUI_USDT,-90 pythPriceFeedId: "0x23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744", // **fixed value: Crypto.SUI/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37", priceDecimal: 9, expiration: 30, }, HASUI: { oracleId: 6, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 3000000000, // 3 = 3 * 1e9 = 3000000000 minimumEffectivePrice: 100000000, // 0.1 = 0.1 * 1e9 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI", feedId: "0xac934a2a2d406085e7f73b460221fe1b11935864605ba58cdbb8e21c15f12acd", // TODO: value supraPairId: 90, // SUI_USDT -> 90, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Under%20Supervision-,SUI_USDT,-90 pythPriceFeedId: "0x23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744", // **fixed value: Crypto.SUI/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37", priceDecimal: 9, expiration: 30, }, CETUS: { oracleId: 7, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 200, // x1: 2% = 0.02 * 10000 = 200 priceDiffThreshold2: 400, // x2: 4% = 0.04 * 10000 = 400 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 1000000000, // 1 = 1 * 1e9 = 1000000000 minimumEffectivePrice: 1000000, // 0.001 = 0.001 * 1e9 = 1000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x6864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS", feedId: "0x5ac98fc1e6723af2a6d9a68a5d771654a6043f9c4d2b836b2d5fb4832a3be4f2", // TODO: value supraPairId: 93, // CETUS_USDT -> 93, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Premium-,CETUS_USDT,-93 pythPriceFeedId: "0xe5b274b2611143df055d6e7cd8d93fe1961716bcd4dca1cad87a83bc1e78c1ef", // **fixed value: Crypto.CETUS/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x24c0247fb22457a719efac7f670cdc79be321b521460bd6bd2ccfa9f80713b14", priceDecimal: 9, expiration: 30, }, NAVX: { oracleId: 8, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 200, // x1: 2% = 0.02 * 10000 = 200 priceDiffThreshold2: 400, // x2: 4% = 0.04 * 10000 = 400 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 1000000000, // 1 = 1 * 1e9 = 1000000000 minimumEffectivePrice: 1000000, // 0.001 = 0.001 * 1e9 = 1000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0xa99b8952d4f7d947ea77fe0ecdcc9e5fc0bcab2841d6e2a5aa00c3044e5544b5::navx::NAVX", feedId: "0x4324c797d2f19eff517c24adec8b92aa2d282e44f3a5cafb36d6c4b30d7f2dca", // TODO: value supraPairId: 408, // NAVX_USDT -> 408, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Premium-,NAVX_USDT,-408 pythPriceFeedId: "0x88250f854c019ef4f88a5c073d52a18bb1c6ac437033f5932cd017d24917ab46", // **fixed value: Crypto.NAVX/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x5b117a6a2de70796bffe36495bad576b788a34c33ca0648bd57852ead3f41e32", priceDecimal: 9, expiration: 30, }, USDYS: { oracleId: 9, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "a45fa952a312a0a504fafb9bf3fc95faaccdfe613a740190c511663600d39010::usdys::USDYS", feedId: "0x11ddf2ac1868d493e2487deeb2a0c2791bb7ca69632c8c5fefe85e09390be093", // TODO: values supraPairId: 185, pythPriceFeedId: "0xe393449f6aff8a4b6d3e1165a7c9ebec103685f3b41e60db4277b5b6d10e7326", pythPriceInfoObject: "0x62e15c2fd1437a4d0e111dbd8a193f244878ba25cc7caa9120d0ee41ac151ea5", priceDecimal: 6, expiration: 30, }, USDY: { oracleId: 10, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x960b531667636f39e85867775f52f6b1f220a058c4de786905bdf761e06a56bb::usdy::USDY", feedId: "0x11ddf2ac1868d493e2487deeb2a0c2791bb7ca69632c8c5fefe85e09390be093", // TODO: values supraPairId: 185, pythPriceFeedId: "0xe393449f6aff8a4b6d3e1165a7c9ebec103685f3b41e60db4277b5b6d10e7326", pythPriceInfoObject: "0x62e15c2fd1437a4d0e111dbd8a193f244878ba25cc7caa9120d0ee41ac151ea5", priceDecimal: 6, expiration: 30, }, BUCK: { oracleId: 11, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 80, priceDiffThreshold2: 150, maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000000, minimumEffectivePrice: 1000000, historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0xce7ff77a83ea0cb6fd39bd8748e2ec89a3f41e8efdc3f4eb123e0ca37b184db2::buck::BUCK", feedId: "0x93c1b815f64ef7c4311d74ff7c0ca1e47739c3ac31fdee0068c30887633ba2fb", supraPairId: 161, pythPriceFeedId: "0xfdf28a46570252b25fd31cb257973f865afc5ca2f320439e45d95e0394bc7382", pythPriceInfoObject: "0x3ef821a54dbdfe3f211b2ff7261dea0f0330c72fd292422ce586e21f43809a56", priceDecimal: 9, expiration: 30, }, FDUSD: { oracleId: 12, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a::fdusd::FDUSD", feedId: "0x843b39829166bd97d61843b8967405f13d443e066ce2f4fa0685f187974d34bd", supraPairId: 474, pythPriceFeedId: "0xccdc1a08923e2e4f4b1e6ea89de6acbc5fe1948e9706f5604b8cb50bc1ed3979", pythPriceInfoObject: "0x5f6583b2b0fe1ecf94aaffeaab8a838794693960cea48c0da282d5f4a24be027", priceDecimal: 6, expiration: 30, }, TDAI: { oracleId: 13, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0x6775698681ebe5a3bd931f80c71eda65941d92ce1b8ee17b6fe59aacc2c489b6::tdai::TDAI", feedId: "0x843b39829166bd97d61843b8967405f13d443e066ce2f4fa0685f187974d34bd", supraPairId: 474, pythPriceFeedId: "0xccdc1a08923e2e4f4b1e6ea89de6acbc5fe1948e9706f5604b8cb50bc1ed3979", pythPriceInfoObject: "0x5f6583b2b0fe1ecf94aaffeaab8a838794693960cea48c0da282d5f4a24be027", priceDecimal: 6, expiration: 30, }, AUSDS: { oracleId: 14, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x0ae6b3b3117ab4d524eaa16d74483324eb1885888ef0370803b331e1b04ee65c::ausd::AUSD", feedId: "0x9a0656e1e10a0cdf3f03dce9db9ad931f51dc6eac2e52ebfbf535dfbcf8100ef", // TODO: values supraPairId: 99999, pythPriceFeedId: "0xd9912df360b5b7f21a122f15bdd5e27f62ce5e72bd316c291f7c86620e07fb2a", pythPriceInfoObject: "0x94ef89923e7beccd4a52043a9451a87c614684b847426fb5fd76faa8cb1e907f", priceDecimal: 6, expiration: 30, }, WBTC: { oracleId: 15, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 10000000000000, // 100000 = 100000 * 1e8 = 10000000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN", feedId: "0x1bf4727242a61d892feef6616d3e40a3bd24b64b5deb884054e86cb9360556c4", // TODO: value supraPairId: 0, // BTC_USDT -> 0, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Pair%20Category-,BTC_USDT,-0 pythPriceFeedId: "0xe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43", // Crypto.BTC/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2", priceDecimal: 8, expiration: 30, }, AUSD: { oracleId: 16, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 10000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0x2053d08c1e2bd02791056171aab0fd12bd7cd7efad2ab8f6b9c8902f14df2ff2::ausd::AUSD", feedId: "0x9a0656e1e10a0cdf3f03dce9db9ad931f51dc6eac2e52ebfbf535dfbcf8100ef", // TODO: values supraPairId: 99999, pythPriceFeedId: "0xd9912df360b5b7f21a122f15bdd5e27f62ce5e72bd316c291f7c86620e07fb2a", pythPriceInfoObject: "0x94ef89923e7beccd4a52043a9451a87c614684b847426fb5fd76faa8cb1e907f", priceDecimal: 6, expiration: 30, }, ETH: { oracleId: 18, maxTimestampDiff: 30 * 1000, // 30s(millisecond) priceDiffThreshold1: 100, // x1: 1% = 0.01 * 10000 = 100 priceDiffThreshold2: 300, // x2: 3% = 0.03 * 10000 = 300 maxDurationWithinThresholds: 30 * 1000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 600000000000, // 6000 = 6000 * 1e8 = 600000000000 minimumEffectivePrice: 100000000, // 1 = 1 * 1e8 = 100000000 historicalPriceTTL: 5 * 60 * 1000, // 5min(millisecond) coinType: "0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::weth::WETH", feedId: "0x9a6ffc707270286e98e8d0f654ce38f69efbc302ac98e2deb11fbad2211600f0", // TODO: value supraPairId: 1, // ETH_USDT -> 1, https://supra.com/docs/data-feeds/data-feeds-index/#:~:text=Supra%20Premium-,ETH_USDT,-1 pythPriceFeedId: "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace", // **fixed value: Crypto.ETH/USD -> https://pyth.network/developers/price-feed-ids pythPriceInfoObject: "0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab", priceDecimal: 8, expiration: 30, }, NS: { oracleId: 20, maxTimestampDiff: 30000, // 30s(millisecond) priceDiffThreshold1: 80, // x1: 0.8% = 0.008 * 10000 = 80 priceDiffThreshold2: 150, // x2: 1.5% = 0.015 * 10000 = 150 maxDurationWithinThresholds: 30000, // 30s(millisecond) maximumAllowedSpanPercentage: 700, // 7% = 0.07 * 10000 = 700 maximumEffectivePrice: 2000000, // 2 = 2 * 1e6 = 2000000 minimumEffectivePrice: 100000, // 0.01 = 0.01 * 1e6 = 10000 historicalPriceTTL: 300000, // 5min(millisecond) coinType: "0x5145494a5f5100e645e4b0aa950fa6b68f614e8c59e17bc5ded3495123a79178::ns::NS", feedId: "0xc771ec0ca245857f30195ce05197a7b3ab41c58c1e8abe0661919d90675ad63d", supraPairId: 99999, // ignore for now pythPriceFeedId: "0xbb5ff26e47a3a6cc7ec2fce1db996c2a145300edc5acaabe43bf9ff7c5dd5d32", pythPriceInfoObject: "0xc6352e1ea55d7b5acc3ed690cc3cdf8007978071d7bfd6a189445018cfb366e0", priceDecimal: 6, expiration: 30, }, LORENZOBTC: { oracleId: 21, maxTimestampDiff: 30000, // 30s(millisecond)