@liberfi.io/types 0.4.22 → 0.4.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1002,6 +1002,100 @@ interface TokenHolder {
1002
1002
  */
1003
1003
  startHoldingAt?: Date;
1004
1004
  }
1005
+ interface TokenTopTrader {
1006
+ /**
1007
+ * trader wallet address
1008
+ */
1009
+ address: string;
1010
+ /**
1011
+ * current holdings amount in token
1012
+ */
1013
+ amount: string;
1014
+ /**
1015
+ * current holdings amount in usd
1016
+ */
1017
+ amountInUsd: string;
1018
+ /**
1019
+ * Trader classification tags.
1020
+ */
1021
+ tags?: Array<WalletTag>;
1022
+ /**
1023
+ * The last time this wallet was active on-chain.
1024
+ */
1025
+ lastActiveAt?: Date;
1026
+ /**
1027
+ * The first time this wallet started holding this token.
1028
+ */
1029
+ startHoldingAt?: Date;
1030
+ /**
1031
+ * Average buy price in USD per token.
1032
+ */
1033
+ averageBuyPriceInUsd?: string;
1034
+ /**
1035
+ * Average sell price in USD per token.
1036
+ */
1037
+ averageSellPriceInUsd?: string;
1038
+ /**
1039
+ * Cumulative token quantity bought all-time.
1040
+ */
1041
+ buyAmountCur?: string;
1042
+ /**
1043
+ * Cumulative token quantity sold all-time.
1044
+ */
1045
+ sellAmountCur?: string;
1046
+ /**
1047
+ * Total buy volume in USD.
1048
+ */
1049
+ totalBuyAmountInUsd?: string;
1050
+ /**
1051
+ * Total sell volume in USD.
1052
+ */
1053
+ totalSellAmountInUsd?: string;
1054
+ /**
1055
+ * Realized PnL rate.
1056
+ */
1057
+ realizedPnl?: string;
1058
+ /**
1059
+ * Realized PnL in USD.
1060
+ */
1061
+ totalRealizedPnlInUsd?: string;
1062
+ /**
1063
+ * Unrealized PnL rate.
1064
+ */
1065
+ unrealizedPnl?: string;
1066
+ /**
1067
+ * Unrealized PnL in USD.
1068
+ */
1069
+ unrealizedPnlInUsd?: string;
1070
+ /**
1071
+ * Return on investment.
1072
+ */
1073
+ roi?: string;
1074
+ /**
1075
+ * Total PnL in USD.
1076
+ */
1077
+ totalPnlInUsd?: string;
1078
+ /**
1079
+ * Total buy trade count.
1080
+ */
1081
+ totalBuyCount?: number;
1082
+ /**
1083
+ * Total sell trade count.
1084
+ */
1085
+ totalSellCount?: number;
1086
+ /**
1087
+ * Whether position was acquired mainly via transfer.
1088
+ */
1089
+ transferIn?: boolean;
1090
+ /**
1091
+ * All-time transfer-in event count.
1092
+ */
1093
+ transferInCount?: number;
1094
+ /**
1095
+ * All-time transfer-out event count.
1096
+ */
1097
+ transferOutCount?: number;
1098
+ }
1005
1099
 
1006
1100
  /**
1007
1101
  * Portfolio PNL
@@ -1453,10 +1547,6 @@ interface SearchTokenCursorList extends CursorList<Token> {
1453
1547
  * Sort field for token holder list (Phase 3).
1454
1548
  * - `holdingUsd` — order by holding value in USD (default, descending)
1455
1549
  * - `lastActiveAt` — order by wallet's last activity time
1456
- * - `realizedPnl` — order by realized PnL on this token; used by the
1457
- * Top Traders view, which shares the same endpoint but
1458
- * surfaces traders ranked by profit. Server support for
1459
- * this sort key is required by `getTopTokenTraders`.
1460
1550
  */
1461
1551
  type TokenHoldersSortBy = "holdingUsd" | "lastActiveAt" | "realizedPnl";
1462
1552
  /**
@@ -1469,6 +1559,23 @@ interface GetTokenHoldersOptions extends CursorListOptions {
1469
1559
  */
1470
1560
  sortBy?: TokenHoldersSortBy;
1471
1561
  }
1562
+ /**
1563
+ * Sort field for token top-traders query.
1564
+ */
1565
+ type TokenTopTradersSortBy = "profit" | "buyVolume" | "sellVolume" | "lastActiveAt" | "netflowUsd";
1566
+ /**
1567
+ * Options for getting token top traders.
1568
+ */
1569
+ interface GetTokenTopTradersOptions extends CursorListOptions {
1570
+ /**
1571
+ * Sort field. Defaults to `profit` on the server.
1572
+ */
1573
+ sortBy?: TokenTopTradersSortBy;
1574
+ /**
1575
+ * Filter by wallet tag.
1576
+ */
1577
+ tag?: string;
1578
+ }
1472
1579
  /**
1473
1580
  * Resolution subset supported by the trending token list.
1474
1581
  */
@@ -1561,6 +1668,14 @@ interface IClient {
1561
1668
  * @returns token holders
1562
1669
  */
1563
1670
  getTokenHolders(chain: Chain, address: string, options?: GetTokenHoldersOptions): Promise<CursorList<TokenHolder>>;
1671
+ /**
1672
+ * fetch token top traders
1673
+ * @param chain chain id
1674
+ * @param address token address
1675
+ * @param options optional query options
1676
+ * @returns token top traders
1677
+ */
1678
+ getTokenTopTraders(chain: Chain, address: string, options?: GetTokenTopTradersOptions): Promise<CursorList<TokenTopTrader>>;
1564
1679
  /**
1565
1680
  * fetch token market data
1566
1681
  * @param chain chain id
@@ -1889,4 +2004,4 @@ interface ISubscribeClient {
1889
2004
  subscribeStockTokens(chain: Chain, callback: (data: Array<TokenSubscribed>) => void): ISubscription;
1890
2005
  }
1891
2006
 
1892
- export { type ActivityToken as A, type ActivitiesSortBy, type WalletPnl as B, type BlockchainLatestBlock, Chain as C, type CursorList, type CursorListOptions, type CursorPagination, type WalletPortfolioPnls as D, type WalletPortfolios as E, type GetActivitiesOptions, type GetTokenCandlesOptions, type GetTokenHoldersOptions, type GetTokenListOptions, type GetTokensByCreatorOptions, type GetTradesOptions, type GetWalletLimitOrdersOptions, type GetWalletPortfolioPnlsOptions, type IClient, type ISubscribeClient, type ISubscription, type LimitOrderSide as L, type LatestBlockParams, type PoolDex as P, type PortfolioPnlSubscribed, type PortfolioSubscribed, type PositionState, SolanaTokenProtocol as S, type SearchTokenCursorList, type SearchTokensOptions, type SendTxParams, type SendTxResult, type SwapDex, SwapMode, type SwapParams, type SwapRoute, type SwapRoutePlan, type Trade as T, type TokenFieldOption, type TokenFilterOption, type TokenHoldersSortBy, type TokenSubscribed, type TrendingResolution, type WalletTag as W, type WalletPnlResolution, type WalletPnlSortBy, type WalletPnlSubscribed, type ActivityDex as a, type ActivityType as b, type Activity as c, ChainNamespace as d, type LimitOrderState as e, type LimitOrder as f, type PoolBalance as g, type Pool as h, type PoolSubscribed as i, type TokenProtocol as j, SOLANA_TOKEN_PROTOCOLS as k, type Token as l, type TokenCreator as m, type TokenLaunchedFrom as n, type TokenMigratedTo as o, type TokenSocialMedias as p, type TokenStats as q, type TokenStatsByResolution as r, type TokenMarketData as s, type TokenLiquidity as t, type TokenSecurity as u, type TokenResolution as v, type TokenCandle as w, type TokenHolder as x, type PortfolioPnl as y, type Portfolio as z };
2007
+ export { type ActivityToken as A, type ActivitiesSortBy, type Portfolio as B, type BlockchainLatestBlock, Chain as C, type CursorList, type CursorListOptions, type CursorPagination, type WalletPnl as D, type WalletPortfolioPnls as E, type WalletPortfolios as F, type GetActivitiesOptions, type GetTokenCandlesOptions, type GetTokenHoldersOptions, type GetTokenListOptions, type GetTokenTopTradersOptions, type GetTokensByCreatorOptions, type GetTradesOptions, type GetWalletLimitOrdersOptions, type GetWalletPortfolioPnlsOptions, type IClient, type ISubscribeClient, type ISubscription, type LimitOrderSide as L, type LatestBlockParams, type PoolDex as P, type PortfolioPnlSubscribed, type PortfolioSubscribed, type PositionState, SolanaTokenProtocol as S, type SearchTokenCursorList, type SearchTokensOptions, type SendTxParams, type SendTxResult, type SwapDex, SwapMode, type SwapParams, type SwapRoute, type SwapRoutePlan, type Trade as T, type TokenFieldOption, type TokenFilterOption, type TokenHoldersSortBy, type TokenSubscribed, type TokenTopTradersSortBy, type TrendingResolution, type WalletTag as W, type WalletPnlResolution, type WalletPnlSortBy, type WalletPnlSubscribed, type ActivityDex as a, type ActivityType as b, type Activity as c, ChainNamespace as d, type LimitOrderState as e, type LimitOrder as f, type PoolBalance as g, type Pool as h, type PoolSubscribed as i, type TokenProtocol as j, SOLANA_TOKEN_PROTOCOLS as k, type Token as l, type TokenCreator as m, type TokenLaunchedFrom as n, type TokenMigratedTo as o, type TokenSocialMedias as p, type TokenStats as q, type TokenStatsByResolution as r, type TokenMarketData as s, type TokenLiquidity as t, type TokenSecurity as u, type TokenResolution as v, type TokenCandle as w, type TokenHolder as x, type TokenTopTrader as y, type PortfolioPnl as z };
@@ -1002,6 +1002,100 @@ interface TokenHolder {
1002
1002
  */
1003
1003
  startHoldingAt?: Date;
1004
1004
  }
1005
+ interface TokenTopTrader {
1006
+ /**
1007
+ * trader wallet address
1008
+ */
1009
+ address: string;
1010
+ /**
1011
+ * current holdings amount in token
1012
+ */
1013
+ amount: string;
1014
+ /**
1015
+ * current holdings amount in usd
1016
+ */
1017
+ amountInUsd: string;
1018
+ /**
1019
+ * Trader classification tags.
1020
+ */
1021
+ tags?: Array<WalletTag>;
1022
+ /**
1023
+ * The last time this wallet was active on-chain.
1024
+ */
1025
+ lastActiveAt?: Date;
1026
+ /**
1027
+ * The first time this wallet started holding this token.
1028
+ */
1029
+ startHoldingAt?: Date;
1030
+ /**
1031
+ * Average buy price in USD per token.
1032
+ */
1033
+ averageBuyPriceInUsd?: string;
1034
+ /**
1035
+ * Average sell price in USD per token.
1036
+ */
1037
+ averageSellPriceInUsd?: string;
1038
+ /**
1039
+ * Cumulative token quantity bought all-time.
1040
+ */
1041
+ buyAmountCur?: string;
1042
+ /**
1043
+ * Cumulative token quantity sold all-time.
1044
+ */
1045
+ sellAmountCur?: string;
1046
+ /**
1047
+ * Total buy volume in USD.
1048
+ */
1049
+ totalBuyAmountInUsd?: string;
1050
+ /**
1051
+ * Total sell volume in USD.
1052
+ */
1053
+ totalSellAmountInUsd?: string;
1054
+ /**
1055
+ * Realized PnL rate.
1056
+ */
1057
+ realizedPnl?: string;
1058
+ /**
1059
+ * Realized PnL in USD.
1060
+ */
1061
+ totalRealizedPnlInUsd?: string;
1062
+ /**
1063
+ * Unrealized PnL rate.
1064
+ */
1065
+ unrealizedPnl?: string;
1066
+ /**
1067
+ * Unrealized PnL in USD.
1068
+ */
1069
+ unrealizedPnlInUsd?: string;
1070
+ /**
1071
+ * Return on investment.
1072
+ */
1073
+ roi?: string;
1074
+ /**
1075
+ * Total PnL in USD.
1076
+ */
1077
+ totalPnlInUsd?: string;
1078
+ /**
1079
+ * Total buy trade count.
1080
+ */
1081
+ totalBuyCount?: number;
1082
+ /**
1083
+ * Total sell trade count.
1084
+ */
1085
+ totalSellCount?: number;
1086
+ /**
1087
+ * Whether position was acquired mainly via transfer.
1088
+ */
1089
+ transferIn?: boolean;
1090
+ /**
1091
+ * All-time transfer-in event count.
1092
+ */
1093
+ transferInCount?: number;
1094
+ /**
1095
+ * All-time transfer-out event count.
1096
+ */
1097
+ transferOutCount?: number;
1098
+ }
1005
1099
 
1006
1100
  /**
1007
1101
  * Portfolio PNL
@@ -1453,10 +1547,6 @@ interface SearchTokenCursorList extends CursorList<Token> {
1453
1547
  * Sort field for token holder list (Phase 3).
1454
1548
  * - `holdingUsd` — order by holding value in USD (default, descending)
1455
1549
  * - `lastActiveAt` — order by wallet's last activity time
1456
- * - `realizedPnl` — order by realized PnL on this token; used by the
1457
- * Top Traders view, which shares the same endpoint but
1458
- * surfaces traders ranked by profit. Server support for
1459
- * this sort key is required by `getTopTokenTraders`.
1460
1550
  */
1461
1551
  type TokenHoldersSortBy = "holdingUsd" | "lastActiveAt" | "realizedPnl";
1462
1552
  /**
@@ -1469,6 +1559,23 @@ interface GetTokenHoldersOptions extends CursorListOptions {
1469
1559
  */
1470
1560
  sortBy?: TokenHoldersSortBy;
1471
1561
  }
1562
+ /**
1563
+ * Sort field for token top-traders query.
1564
+ */
1565
+ type TokenTopTradersSortBy = "profit" | "buyVolume" | "sellVolume" | "lastActiveAt" | "netflowUsd";
1566
+ /**
1567
+ * Options for getting token top traders.
1568
+ */
1569
+ interface GetTokenTopTradersOptions extends CursorListOptions {
1570
+ /**
1571
+ * Sort field. Defaults to `profit` on the server.
1572
+ */
1573
+ sortBy?: TokenTopTradersSortBy;
1574
+ /**
1575
+ * Filter by wallet tag.
1576
+ */
1577
+ tag?: string;
1578
+ }
1472
1579
  /**
1473
1580
  * Resolution subset supported by the trending token list.
1474
1581
  */
@@ -1561,6 +1668,14 @@ interface IClient {
1561
1668
  * @returns token holders
1562
1669
  */
1563
1670
  getTokenHolders(chain: Chain, address: string, options?: GetTokenHoldersOptions): Promise<CursorList<TokenHolder>>;
1671
+ /**
1672
+ * fetch token top traders
1673
+ * @param chain chain id
1674
+ * @param address token address
1675
+ * @param options optional query options
1676
+ * @returns token top traders
1677
+ */
1678
+ getTokenTopTraders(chain: Chain, address: string, options?: GetTokenTopTradersOptions): Promise<CursorList<TokenTopTrader>>;
1564
1679
  /**
1565
1680
  * fetch token market data
1566
1681
  * @param chain chain id
@@ -1889,4 +2004,4 @@ interface ISubscribeClient {
1889
2004
  subscribeStockTokens(chain: Chain, callback: (data: Array<TokenSubscribed>) => void): ISubscription;
1890
2005
  }
1891
2006
 
1892
- export { type ActivityToken as A, type ActivitiesSortBy, type WalletPnl as B, type BlockchainLatestBlock, Chain as C, type CursorList, type CursorListOptions, type CursorPagination, type WalletPortfolioPnls as D, type WalletPortfolios as E, type GetActivitiesOptions, type GetTokenCandlesOptions, type GetTokenHoldersOptions, type GetTokenListOptions, type GetTokensByCreatorOptions, type GetTradesOptions, type GetWalletLimitOrdersOptions, type GetWalletPortfolioPnlsOptions, type IClient, type ISubscribeClient, type ISubscription, type LimitOrderSide as L, type LatestBlockParams, type PoolDex as P, type PortfolioPnlSubscribed, type PortfolioSubscribed, type PositionState, SolanaTokenProtocol as S, type SearchTokenCursorList, type SearchTokensOptions, type SendTxParams, type SendTxResult, type SwapDex, SwapMode, type SwapParams, type SwapRoute, type SwapRoutePlan, type Trade as T, type TokenFieldOption, type TokenFilterOption, type TokenHoldersSortBy, type TokenSubscribed, type TrendingResolution, type WalletTag as W, type WalletPnlResolution, type WalletPnlSortBy, type WalletPnlSubscribed, type ActivityDex as a, type ActivityType as b, type Activity as c, ChainNamespace as d, type LimitOrderState as e, type LimitOrder as f, type PoolBalance as g, type Pool as h, type PoolSubscribed as i, type TokenProtocol as j, SOLANA_TOKEN_PROTOCOLS as k, type Token as l, type TokenCreator as m, type TokenLaunchedFrom as n, type TokenMigratedTo as o, type TokenSocialMedias as p, type TokenStats as q, type TokenStatsByResolution as r, type TokenMarketData as s, type TokenLiquidity as t, type TokenSecurity as u, type TokenResolution as v, type TokenCandle as w, type TokenHolder as x, type PortfolioPnl as y, type Portfolio as z };
2007
+ export { type ActivityToken as A, type ActivitiesSortBy, type Portfolio as B, type BlockchainLatestBlock, Chain as C, type CursorList, type CursorListOptions, type CursorPagination, type WalletPnl as D, type WalletPortfolioPnls as E, type WalletPortfolios as F, type GetActivitiesOptions, type GetTokenCandlesOptions, type GetTokenHoldersOptions, type GetTokenListOptions, type GetTokenTopTradersOptions, type GetTokensByCreatorOptions, type GetTradesOptions, type GetWalletLimitOrdersOptions, type GetWalletPortfolioPnlsOptions, type IClient, type ISubscribeClient, type ISubscription, type LimitOrderSide as L, type LatestBlockParams, type PoolDex as P, type PortfolioPnlSubscribed, type PortfolioSubscribed, type PositionState, SolanaTokenProtocol as S, type SearchTokenCursorList, type SearchTokensOptions, type SendTxParams, type SendTxResult, type SwapDex, SwapMode, type SwapParams, type SwapRoute, type SwapRoutePlan, type Trade as T, type TokenFieldOption, type TokenFilterOption, type TokenHoldersSortBy, type TokenSubscribed, type TokenTopTradersSortBy, type TrendingResolution, type WalletTag as W, type WalletPnlResolution, type WalletPnlSortBy, type WalletPnlSubscribed, type ActivityDex as a, type ActivityType as b, type Activity as c, ChainNamespace as d, type LimitOrderState as e, type LimitOrder as f, type PoolBalance as g, type Pool as h, type PoolSubscribed as i, type TokenProtocol as j, SOLANA_TOKEN_PROTOCOLS as k, type Token as l, type TokenCreator as m, type TokenLaunchedFrom as n, type TokenMigratedTo as o, type TokenSocialMedias as p, type TokenStats as q, type TokenStatsByResolution as r, type TokenMarketData as s, type TokenLiquidity as t, type TokenSecurity as u, type TokenResolution as v, type TokenCandle as w, type TokenHolder as x, type TokenTopTrader as y, type PortfolioPnl as z };
package/dist/index.d.mts CHANGED
@@ -1 +1 @@
1
- export { ActivitiesSortBy, c as Activity, a as ActivityDex, A as ActivityToken, b as ActivityType, BlockchainLatestBlock, C as Chain, d as ChainNamespace, CursorList, CursorListOptions, CursorPagination, GetActivitiesOptions, GetTokenCandlesOptions, GetTokenHoldersOptions, GetTokenListOptions, GetTokensByCreatorOptions, GetTradesOptions, GetWalletLimitOrdersOptions, GetWalletPortfolioPnlsOptions, IClient, ISubscribeClient, ISubscription, LatestBlockParams, f as LimitOrder, L as LimitOrderSide, e as LimitOrderState, h as Pool, g as PoolBalance, P as PoolDex, i as PoolSubscribed, z as Portfolio, y as PortfolioPnl, PortfolioPnlSubscribed, PortfolioSubscribed, PositionState, k as SOLANA_TOKEN_PROTOCOLS, SearchTokenCursorList, SearchTokensOptions, SendTxParams, SendTxResult, S as SolanaTokenProtocol, SwapDex, SwapMode, SwapParams, SwapRoute, SwapRoutePlan, l as Token, w as TokenCandle, m as TokenCreator, TokenFieldOption, TokenFilterOption, x as TokenHolder, TokenHoldersSortBy, n as TokenLaunchedFrom, t as TokenLiquidity, s as TokenMarketData, o as TokenMigratedTo, j as TokenProtocol, v as TokenResolution, u as TokenSecurity, p as TokenSocialMedias, q as TokenStats, r as TokenStatsByResolution, TokenSubscribed, T as Trade, TrendingResolution, B as WalletPnl, WalletPnlResolution, WalletPnlSortBy, WalletPnlSubscribed, D as WalletPortfolioPnls, E as WalletPortfolios, W as WalletTag } from './api/index.mjs';
1
+ export { ActivitiesSortBy, c as Activity, a as ActivityDex, A as ActivityToken, b as ActivityType, BlockchainLatestBlock, C as Chain, d as ChainNamespace, CursorList, CursorListOptions, CursorPagination, GetActivitiesOptions, GetTokenCandlesOptions, GetTokenHoldersOptions, GetTokenListOptions, GetTokenTopTradersOptions, GetTokensByCreatorOptions, GetTradesOptions, GetWalletLimitOrdersOptions, GetWalletPortfolioPnlsOptions, IClient, ISubscribeClient, ISubscription, LatestBlockParams, f as LimitOrder, L as LimitOrderSide, e as LimitOrderState, h as Pool, g as PoolBalance, P as PoolDex, i as PoolSubscribed, B as Portfolio, z as PortfolioPnl, PortfolioPnlSubscribed, PortfolioSubscribed, PositionState, k as SOLANA_TOKEN_PROTOCOLS, SearchTokenCursorList, SearchTokensOptions, SendTxParams, SendTxResult, S as SolanaTokenProtocol, SwapDex, SwapMode, SwapParams, SwapRoute, SwapRoutePlan, l as Token, w as TokenCandle, m as TokenCreator, TokenFieldOption, TokenFilterOption, x as TokenHolder, TokenHoldersSortBy, n as TokenLaunchedFrom, t as TokenLiquidity, s as TokenMarketData, o as TokenMigratedTo, j as TokenProtocol, v as TokenResolution, u as TokenSecurity, p as TokenSocialMedias, q as TokenStats, r as TokenStatsByResolution, TokenSubscribed, y as TokenTopTrader, TokenTopTradersSortBy, T as Trade, TrendingResolution, D as WalletPnl, WalletPnlResolution, WalletPnlSortBy, WalletPnlSubscribed, E as WalletPortfolioPnls, F as WalletPortfolios, W as WalletTag } from './api/index.mjs';
package/dist/index.d.ts CHANGED
@@ -1 +1 @@
1
- export { ActivitiesSortBy, c as Activity, a as ActivityDex, A as ActivityToken, b as ActivityType, BlockchainLatestBlock, C as Chain, d as ChainNamespace, CursorList, CursorListOptions, CursorPagination, GetActivitiesOptions, GetTokenCandlesOptions, GetTokenHoldersOptions, GetTokenListOptions, GetTokensByCreatorOptions, GetTradesOptions, GetWalletLimitOrdersOptions, GetWalletPortfolioPnlsOptions, IClient, ISubscribeClient, ISubscription, LatestBlockParams, f as LimitOrder, L as LimitOrderSide, e as LimitOrderState, h as Pool, g as PoolBalance, P as PoolDex, i as PoolSubscribed, z as Portfolio, y as PortfolioPnl, PortfolioPnlSubscribed, PortfolioSubscribed, PositionState, k as SOLANA_TOKEN_PROTOCOLS, SearchTokenCursorList, SearchTokensOptions, SendTxParams, SendTxResult, S as SolanaTokenProtocol, SwapDex, SwapMode, SwapParams, SwapRoute, SwapRoutePlan, l as Token, w as TokenCandle, m as TokenCreator, TokenFieldOption, TokenFilterOption, x as TokenHolder, TokenHoldersSortBy, n as TokenLaunchedFrom, t as TokenLiquidity, s as TokenMarketData, o as TokenMigratedTo, j as TokenProtocol, v as TokenResolution, u as TokenSecurity, p as TokenSocialMedias, q as TokenStats, r as TokenStatsByResolution, TokenSubscribed, T as Trade, TrendingResolution, B as WalletPnl, WalletPnlResolution, WalletPnlSortBy, WalletPnlSubscribed, D as WalletPortfolioPnls, E as WalletPortfolios, W as WalletTag } from './api/index.js';
1
+ export { ActivitiesSortBy, c as Activity, a as ActivityDex, A as ActivityToken, b as ActivityType, BlockchainLatestBlock, C as Chain, d as ChainNamespace, CursorList, CursorListOptions, CursorPagination, GetActivitiesOptions, GetTokenCandlesOptions, GetTokenHoldersOptions, GetTokenListOptions, GetTokenTopTradersOptions, GetTokensByCreatorOptions, GetTradesOptions, GetWalletLimitOrdersOptions, GetWalletPortfolioPnlsOptions, IClient, ISubscribeClient, ISubscription, LatestBlockParams, f as LimitOrder, L as LimitOrderSide, e as LimitOrderState, h as Pool, g as PoolBalance, P as PoolDex, i as PoolSubscribed, B as Portfolio, z as PortfolioPnl, PortfolioPnlSubscribed, PortfolioSubscribed, PositionState, k as SOLANA_TOKEN_PROTOCOLS, SearchTokenCursorList, SearchTokensOptions, SendTxParams, SendTxResult, S as SolanaTokenProtocol, SwapDex, SwapMode, SwapParams, SwapRoute, SwapRoutePlan, l as Token, w as TokenCandle, m as TokenCreator, TokenFieldOption, TokenFilterOption, x as TokenHolder, TokenHoldersSortBy, n as TokenLaunchedFrom, t as TokenLiquidity, s as TokenMarketData, o as TokenMigratedTo, j as TokenProtocol, v as TokenResolution, u as TokenSecurity, p as TokenSocialMedias, q as TokenStats, r as TokenStatsByResolution, TokenSubscribed, y as TokenTopTrader, TokenTopTradersSortBy, T as Trade, TrendingResolution, D as WalletPnl, WalletPnlResolution, WalletPnlSortBy, WalletPnlSubscribed, E as WalletPortfolioPnls, F as WalletPortfolios, W as WalletTag } from './api/index.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/api/swap.ts","../src/chains.ts","../src/token.ts"],"sourcesContent":["export * from \"./activity\";\nexport * from \"./api\";\nexport * from \"./chains\";\nexport * from \"./order\";\nexport * from \"./pool\";\nexport * from \"./tag\";\nexport * from \"./token\";\nexport * from \"./wallet\";\n","import { Chain } from \"../chains\";\n\nexport enum SwapMode {\n EXACT_IN = \"exact_in\",\n EXACT_OUT = \"exact_out\",\n}\n\n/**\n * DEX identifier used for route / mint address conversion. Open union — the\n * known values cover today's DEXes; new aggregators can be plugged in without\n * a library update.\n */\nexport type SwapDex = \"jupiter\" | \"kyberswap\" | (string & {});\n\nexport interface SwapParams {\n /** chain id */\n chain: Chain;\n /** DEX to use; if omitted, inferred from chain (Solana → jupiter, EVM → kyberswap). Mint conversion uses this. */\n dex?: SwapDex;\n /** user wallet address */\n userAddress: string;\n /** input token address */\n input: string;\n /** output token address */\n output: string;\n /** swap mode, e.g. ExactIn, ExactOut */\n mode: SwapMode;\n /** input token amount when mode is ExactIn, output token amount when mode is ExactOut */\n amount: string;\n /** slippage, range is 0-100 */\n slippage?: number;\n /** priority fee */\n priorityFee?: string;\n /** tip fee */\n tipFee?: string;\n /** whether to use anti-MEV */\n isAntiMev?: boolean;\n /** EIP-2612 permit data (EVM only, alternative to on-chain approve) */\n permit?: string;\n /** deadline timestamp in ms (EVM only) */\n deadline?: number;\n}\n\nexport interface SwapRoutePlan {\n /** protocol name / dex name etc. */\n name: string;\n /** input token address */\n input: string;\n /** input token amount */\n inputAmount: string;\n /** output token address */\n output: string;\n /** output token amount */\n outputAmount: string;\n /** fee quote token address */\n feeQuote?: string;\n /** fee amount */\n feeAmount?: string;\n /** extra infos by api provider */\n extra?: Record<string, unknown>;\n}\n\nexport interface SwapRoute {\n /** unsigned tx in base64 format */\n serializedTx: string;\n /** recent blockhash embedded in the unsigned Solana transaction */\n recentBlockhash?: string;\n /** last block height at which the embedded Solana blockhash remains valid */\n lastValidBlockHeight?: number;\n /** swap plans */\n plans: Array<SwapRoutePlan>;\n /** extra infos by api provider */\n extra?: Record<string, unknown>;\n}\n","export enum Chain {\n ETHEREUM = \"1\",\n UBIQ = \"8\",\n OPTIMISM = \"10\",\n FLARE = \"14\",\n SONGBIRD = \"19\",\n ELASTOS = \"20\",\n KARDIA = \"24\",\n CRONOS = \"25\",\n RSK = \"30\",\n TELOS = \"40\",\n LUKSO = \"42\",\n CRAB = \"44\",\n DARWINIA = \"46\",\n XDC = \"50\",\n CSC = \"52\",\n ZYX = \"55\",\n BINANCE = \"56\",\n BINANCE_TESTNET = \"97\",\n SYSCOIN = \"57\",\n GOCHAIN = \"60\",\n ETHEREUMCLASSIC = \"61\",\n OKEXCHAIN = \"66\",\n HOO = \"70\",\n METER = \"82\",\n NOVA_NETWORK = \"87\",\n TOMOCHAIN = \"88\",\n BITKUB = \"96\",\n XDAI = \"100\",\n VELAS = \"106\",\n THUNDERCORE = \"108\",\n ENULS = \"119\",\n FUSE = \"122\",\n HECO = \"128\",\n UNICHAIN = \"130\",\n POLYGON = \"137\",\n SONIC = \"146\",\n SHIMMER_EVM = \"148\",\n RBN = \"151\",\n OMNI = \"166\",\n MANTA = \"169\",\n HSK = \"177\",\n WATER = \"181\",\n XLAYER = \"196\",\n XDAIARB = \"200\",\n OP_BNB = \"204\",\n VINUCHAIN = \"207\",\n ENERGYWEB = \"246\",\n OASYS = \"248\",\n FANTOM = \"250\",\n FRAXTAL = \"252\",\n HPB = \"269\",\n BOBA = \"288\",\n OMAX = \"311\",\n FILECOIN = \"314\",\n KUCOIN = \"321\",\n ZKSYNC_ERA = \"324\",\n SHIDEN = \"336\",\n THETA = \"361\",\n PULSE = \"369\",\n CRONOS_ZKEVM = \"388\",\n SX = \"416\",\n AREON = \"463\",\n WC = \"480\",\n CANDLE = \"534\",\n ROLLUX = \"570\",\n ASTAR = \"592\",\n REDSTONE = \"690\",\n MATCHAIN = \"698\",\n CALLISTO = \"820\",\n TARA = \"841\",\n WANCHAIN = \"888\",\n LYRA_CHAIN = \"957\",\n BIFROST = \"996\",\n CONFLUX = \"1030\",\n METIS = \"1088\",\n DYMENSION = \"1100\",\n POLYGON_ZKEVM = \"1101\",\n CORE = \"1116\",\n LISK = \"1135\",\n ULTRON = \"1231\",\n STEP = \"1234\",\n MOONBEAM = \"1284\",\n MOONRIVER = \"1285\",\n SEI = \"1329\",\n LIVING_ASSETS_MAINNET = \"1440\",\n STY = \"1514\",\n TENET = \"1559\",\n GRAVITY = \"1625\",\n REYA_NETWORK = \"1729\",\n SONEIUM = \"1868\",\n SWELLCHAIN = \"1923\",\n ONUS = \"1975\",\n HUBBLENET = \"1992\",\n SANKO = \"1996\",\n DOGECHAIN = \"2000\",\n MILKOMEDA = \"2001\",\n MILKOMEDA_A1 = \"2002\",\n KAVA = \"2222\",\n SOMA = \"2332\",\n KARAK = \"2410\",\n ABSTRACT = \"2741\",\n ABSTRACT_TESTNET = \"11124\",\n MORPH = \"2818\",\n CROSSFI = \"4158\",\n BEAM = \"4337\",\n IOTEX = \"4689\",\n MANTLE = \"5000\",\n XLC = \"5050\",\n NAHMII = \"5551\",\n BOUNCEBIT = \"6001\",\n TOMBCHAIN = \"6969\",\n ZETACHAIN = \"7000\",\n PLANQ = \"7070\",\n BITROCK = \"7171\",\n XSAT = \"7200\",\n CYETH = \"7560\",\n CANTO = \"7700\",\n KLAYTN = \"8217\",\n THAT = \"8428\",\n BASE = \"8453\",\n HELA = \"8668\",\n IOTAEVM = \"8822\",\n JBC = \"8899\",\n EVMOS = \"9001\",\n CARBON = \"9790\",\n SMARTBCH = \"10000\",\n ARTELA = \"11820\",\n IMMUTABLE_ZKEVM = \"13371\",\n LOOP = \"15551\",\n GENESYS = \"16507\",\n EOS_EVM = \"17777\",\n MAP_PROTOCOL = \"22776\",\n SAPPHIRE = \"23294\",\n BITGERT = \"32520\",\n FUSION = \"32659\",\n ZILLIQA = \"32769\",\n APECHAIN = \"33139\",\n EDU_CHAIN = \"41923\",\n ARBITRUM = \"42161\",\n ARBITRUM_TESTNET_GOERLI = \"421613\",\n ARBITRUM_TESTNET_SEPOLIA = \"421614\",\n ARBITRUM_NOVA = \"42170\",\n CELO = \"42220\",\n OASIS = \"42262\",\n ASSETCHAIN = \"42420\",\n ETHERLINK = \"42793\",\n AVALANCHE = \"43114\",\n REI = \"47805\",\n ZIRCUIT = \"48900\",\n SOPHON = \"50104\",\n ETN = \"52014\",\n SUPERPOSITION = \"55244\",\n REICHAIN = \"55555\",\n BOBA_BNB = \"56288\",\n INK = \"57073\",\n LINEA = \"59144\",\n BOB = \"60808\",\n GODWOKEN = \"71402\",\n BERACHAIN = \"80094\",\n BLAST = \"81457\",\n CHILIZ = \"88888\",\n STRATIS = \"105105\",\n REAL = \"111188\",\n ODYSSEY = \"153153\",\n TAIKO = \"167000\",\n BITLAYER = \"200901\",\n HYDRATION = \"222222\",\n PAREX = \"322202\",\n POLIS = \"333999\",\n KEKCHAIN = \"420420\",\n SCROLL = \"534352\",\n ZERO_NETWORK = \"543210\",\n ZKLINK_NOVA = \"810180\",\n VISION = \"888888\",\n SAAKURU = \"7225878\",\n ZORA = \"7777777\",\n CORN = \"21000000\",\n NEON = \"245022934\",\n LUMIA = \"994873017\",\n AURORA = \"1313161554\",\n HARMONY = \"1666600000\",\n PALM = \"11297108109\",\n ZENIQ = \"383414847825\",\n CURIO = \"836542336838601\",\n MODE = \"34443\",\n SOLANA = \"900900900\",\n SOLANA_TESTNET = \"901901901\",\n SOLANA_DEVNET = \"902902902\",\n}\n\nexport enum ChainNamespace {\n EVM = \"EVM\",\n SOLANA = \"SOL\",\n}\n","import { Chain } from \"./chains\";\nimport { WalletTag } from \"./tag\";\n\nexport enum SolanaTokenProtocol {\n BAGS = \"bags\",\n BELIEVE = \"believe\",\n BONK = \"bonk\",\n BOOP = \"boop\",\n HEAVEN = \"heaven\",\n JUPSTUDIO = \"jupstudio\",\n LAUNCHLAB = \"launchlab\",\n METEORA = \"meteora\",\n MOONIT = \"moonit\",\n MOONSHOT = \"moonshot\",\n ORCA = \"orca\",\n PUMP = \"pump\",\n RAYDIUM = \"raydium\",\n SUGAR = \"sugar\",\n VIRTUAL_CURVE = \"virtual-curve\",\n PUMP_AMM = \"pump-amm\",\n}\n\nexport type TokenProtocol = SolanaTokenProtocol | (string & {});\n\nexport const SOLANA_TOKEN_PROTOCOLS = Object.values(SolanaTokenProtocol);\n\nexport interface Token {\n /**\n * chain id.\n */\n chain: Chain;\n /**\n * token name, e.g. \"Ethereum\", \"Solana\", etc.\n */\n name: string;\n /**\n * token symbol, e.g. \"ETH\", \"SOL\", etc.\n */\n symbol: string;\n /**\n * token address.\n */\n address: string;\n /**\n * token decimals.\n */\n decimals: number;\n /**\n * token avatar image url.\n */\n image?: string;\n /**\n * token description.\n */\n description?: string;\n /**\n * token creators.\n */\n creators?: Array<TokenCreator>;\n /**\n * token launch info.\n */\n launchedFrom?: TokenLaunchedFrom;\n /**\n * token migrate progress, range is 0-100.\n */\n migrateProgress?: string;\n /**\n * token migrate info.\n */\n migratedTo?: TokenMigratedTo;\n /**\n * token social medias.\n */\n socialMedias?: TokenSocialMedias;\n /**\n * token stats.\n */\n stats?: TokenStats;\n /**\n * token market data.\n */\n marketData?: TokenMarketData;\n /**\n * token liquidity pools\n */\n liquidities?: Array<TokenLiquidity>;\n /**\n * token security.\n */\n security?: TokenSecurity;\n /**\n * token tags.\n */\n tags?: Array<string>;\n /**\n * token create time.\n */\n createdAt?: Date;\n}\n\nexport interface TokenCreator {\n /**\n * token creator's wallet address.\n */\n address?: string;\n /**\n * token creator's share percentage, range is 0-100.\n */\n share?: number;\n /**\n * whether the token creator is verified.\n */\n isVerified?: boolean;\n}\n\nexport interface TokenLaunchedFrom {\n /**\n * token launch program address.\n */\n programAddress?: string;\n /**\n * token launch protocol family.\n */\n protocolFamily?: string;\n}\n\nexport interface TokenMigratedTo {\n /**\n * token migrate program address.\n */\n programAddress?: string;\n /**\n * token migrate protocol family.\n */\n protocolFamily?: string;\n /**\n * token migrate pool address.\n */\n poolAddress?: string;\n /**\n * token migrate time.\n */\n migratedAt?: Date;\n}\n\nexport interface TokenSocialMedias {\n /**\n * token twitter url.\n */\n twitter?: string;\n /**\n * token telegram url.\n */\n telegram?: string;\n /**\n * token website url.\n */\n website?: string;\n /**\n * token tiktok url.\n */\n tiktok?: string;\n /**\n * token discord url.\n */\n discord?: string;\n /**\n * token facebook url.\n */\n facebook?: string;\n /**\n * token github url.\n */\n github?: string;\n /**\n * token instagram url.\n */\n instagram?: string;\n /**\n * token linkedin url.\n */\n linkedin?: string;\n /**\n * token medium url.\n */\n medium?: string;\n /**\n * token reddit url.\n */\n reddit?: string;\n /**\n * token youtube url.\n */\n youtube?: string;\n /**\n * token bitbucket url.\n */\n bitbucket?: string;\n /**\n * token farcaster url or handle.\n */\n farcaster?: string;\n}\n\nexport interface TokenStats {\n /**\n * token stats by 1m timeframe.\n */\n \"1m\"?: TokenStatsByResolution;\n /**\n * token stats by 5m timeframe.\n */\n \"5m\"?: TokenStatsByResolution;\n /**\n * token stats by 15m timeframe.\n */\n \"15m\"?: TokenStatsByResolution;\n /**\n * token stats by 30m timeframe.\n */\n \"30m\"?: TokenStatsByResolution;\n /**\n * token stats by 1h timeframe.\n */\n \"1h\"?: TokenStatsByResolution;\n /**\n * token stats by 4h timeframe.\n */\n \"4h\"?: TokenStatsByResolution;\n /**\n * token stats by 24h timeframe.\n */\n \"24h\"?: TokenStatsByResolution;\n}\n\nexport interface TokenStatsByResolution {\n /**\n * buy txs count\n */\n buys?: number;\n /**\n * sell txs count\n */\n sells?: number;\n /**\n * txs count\n */\n trades?: number;\n /**\n * buy addresses count\n */\n buyers?: number;\n /**\n * sell addresses count\n */\n sellers?: number;\n /**\n * trade addresses count\n */\n traders?: number;\n /**\n * buy volumes in quote token\n */\n buyVolumes?: string;\n /**\n * sell volumes in quote token\n */\n sellVolumes?: string;\n /**\n * total volumes in quote token\n */\n volumes?: string;\n /**\n * buy volumes in usd\n */\n buyVolumesInUsd?: string;\n /**\n * sell volumes in usd\n */\n sellVolumesInUsd?: string;\n /**\n * total volumes in usd\n */\n volumesInUsd?: string;\n /**\n * open price in usd\n */\n openPriceInUsd?: string;\n /**\n * close price in usd\n */\n closePriceInUsd?: string;\n /**\n * high price in usd\n */\n highPriceInUsd?: string;\n /**\n * low price in usd\n */\n lowPriceInUsd?: string;\n /**\n * price in usd\n */\n priceInUsd?: string;\n /**\n * price change %\n */\n priceChange?: string;\n}\n\nexport interface TokenMarketData {\n /**\n * total supply\n */\n totalSupply?: string;\n /**\n * market cap in quote token\n */\n marketCap?: string;\n /**\n * market cap in usd\n */\n marketCapInUsd?: string;\n /**\n * price in quote token\n */\n price?: string;\n /**\n * price in usd\n */\n priceInUsd?: string;\n /**\n * tvl in quote token\n */\n tvl?: string;\n /**\n * tvl in usd\n */\n tvlInUsd?: string;\n /**\n * holders count\n */\n holders?: number;\n /**\n * top 10 total holdings\n */\n top10Holdings?: string;\n /**\n * top 10 holdings ratio\n */\n top10HoldingsRatio?: string;\n /**\n * top 50 total holdings\n */\n top50Holdings?: string;\n /**\n * top 50 holdings ratio\n */\n top50HoldingsRatio?: string;\n /**\n * top 100 total holdings\n */\n top100Holdings?: string;\n /**\n * top 100 holdings ratio\n */\n top100HoldingsRatio?: string;\n /**\n * Bluechip holders count\n */\n bluechipHolders?: number;\n /**\n * Bluechip total holdings\n */\n bluechipHoldings?: string;\n /**\n * Bluechip holdings ratio\n */\n bluechipHoldingsRatio?: string;\n /**\n * KOL holders count\n */\n kolHolders?: number;\n /**\n * KOL total holdings\n */\n kolHoldings?: string;\n /**\n * KOL holdings ratio\n */\n kolHoldingsRatio?: string;\n /**\n * Sniper holders count\n */\n sniperHolders?: number;\n /**\n * Sniper total holdings\n */\n sniperHoldings?: string;\n /**\n * Sniper holdings ratio\n */\n sniperHoldingsRatio?: string;\n /**\n * Pro holders count\n */\n proHolders?: number;\n /**\n * Pro total holdings\n */\n proHoldings?: string;\n /**\n * Pro holdings ratio\n */\n proHoldingsRatio?: string;\n /**\n * Insider holders count\n */\n insiderHolders?: number;\n /**\n * Insider total holdings\n */\n insiderHoldings?: string;\n /**\n * Insider holdings ratio\n */\n insiderHoldingsRatio?: string;\n /**\n * Sandwich holders count\n */\n sandwichHolders?: number;\n /**\n * Sandwich total holdings\n */\n sandwichHoldings?: string;\n /**\n * Sandwich holdings ratio\n */\n sandwichHoldingsRatio?: string;\n /**\n * Fresh holders count\n */\n freshHolders?: number;\n /**\n * Fresh total holdings\n */\n freshHoldings?: string;\n /**\n * Fresh holdings ratio\n */\n freshHoldingsRatio?: string;\n /**\n * Bundle holders count\n */\n bundleHolders?: number;\n /**\n * Bundle total holdings\n */\n bundleHoldings?: string;\n /**\n * Bundle holdings ratio\n */\n bundleHoldingsRatio?: string;\n /**\n * Dev holders count\n */\n devHolders?: number;\n /**\n * Dev total holdings\n */\n devHoldings?: string;\n /**\n * Dev holdings ratio\n */\n devHoldingsRatio?: string;\n}\n\nexport interface TokenLiquidity {\n /**\n * pool avatar image\n */\n image?: string;\n /**\n * pair token address.\n */\n pairAddress?: string;\n /**\n * pool address.\n */\n poolAddress?: string;\n /**\n * program address.\n */\n programAddress?: string;\n /**\n * protocol name.\n */\n protocolName?: string;\n /**\n * protocol family.\n */\n protocolFamily?: string;\n /**\n * tvl in quote token.\n */\n tvl?: string;\n /**\n * tvl in usd.\n */\n tvlInUsd?: string;\n}\n\n/**\n * Token security flags. Backend currently exposes the five Solana SPL flags\n * below; additional checks may be added in the future as the security service\n * gains coverage of more chains and risk vectors.\n */\nexport interface TokenSecurity {\n /**\n * whether the token has transfer fee.\n */\n hasTransferFee?: boolean;\n /**\n * whether the token transfer fee is upgradable.\n */\n isTransferFeeUpgradable?: boolean;\n /**\n * whether the token is transferable.\n */\n isTransferable?: boolean;\n /**\n * whether the token is freezable.\n */\n isFreezable?: boolean;\n /**\n * whether the token is closable.\n */\n isClosable?: boolean;\n}\n\nexport type TokenResolution =\n | \"1s\"\n | \"15s\"\n | \"30s\"\n | \"1m\"\n | \"5m\"\n | \"15m\"\n | \"30m\"\n | \"1h\"\n | \"4h\"\n | \"12h\"\n | \"24h\";\n\nexport interface TokenCandle {\n /**\n * open price in usd\n */\n open: string;\n /**\n * close price in usd\n */\n close: string;\n /**\n * high price in usd\n */\n high: string;\n /**\n * low price in usd\n */\n low: string;\n /**\n * volume in usd\n */\n volume: string;\n /**\n * volume in token amount\n */\n volumeInTokenAmount?: string;\n /**\n * trades count in this candle\n */\n trades?: number;\n /**\n * resolution\n */\n resolution: TokenResolution;\n /**\n * timestamp\n */\n timestamp: Date;\n}\n\nexport interface TokenHolder {\n /**\n * holder wallet address\n */\n address: string;\n /**\n * holdings amount in token\n */\n amount: string;\n /**\n * holdings amount in usd\n */\n amountInUsd: string;\n /**\n * holdings ratio, range is 0-100\n */\n ratio: string;\n /**\n * Holder classification tags (Phase 3). Sparse — only present when the\n * wallet matches one of the known patterns (kol/smart/sniper/dev/...).\n */\n tags?: Array<WalletTag>;\n /**\n * The last time this wallet was active on-chain (Phase 3).\n * Sparse (~80% fill rate).\n */\n lastActiveAt?: Date;\n /**\n * The first time this wallet started holding this token (Phase 3).\n * Sparse (~60% fill rate).\n */\n startHoldingAt?: Date;\n}\n"],"mappings":"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","names":["SwapMode","Chain","ChainNamespace","SolanaTokenProtocol"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/api/swap.ts","../src/chains.ts","../src/token.ts"],"sourcesContent":["export * from \"./activity\";\nexport * from \"./api\";\nexport * from \"./chains\";\nexport * from \"./order\";\nexport * from \"./pool\";\nexport * from \"./tag\";\nexport * from \"./token\";\nexport * from \"./wallet\";\n","import { Chain } from \"../chains\";\n\nexport enum SwapMode {\n EXACT_IN = \"exact_in\",\n EXACT_OUT = \"exact_out\",\n}\n\n/**\n * DEX identifier used for route / mint address conversion. Open union — the\n * known values cover today's DEXes; new aggregators can be plugged in without\n * a library update.\n */\nexport type SwapDex = \"jupiter\" | \"kyberswap\" | (string & {});\n\nexport interface SwapParams {\n /** chain id */\n chain: Chain;\n /** DEX to use; if omitted, inferred from chain (Solana → jupiter, EVM → kyberswap). Mint conversion uses this. */\n dex?: SwapDex;\n /** user wallet address */\n userAddress: string;\n /** input token address */\n input: string;\n /** output token address */\n output: string;\n /** swap mode, e.g. ExactIn, ExactOut */\n mode: SwapMode;\n /** input token amount when mode is ExactIn, output token amount when mode is ExactOut */\n amount: string;\n /** slippage, range is 0-100 */\n slippage?: number;\n /** priority fee */\n priorityFee?: string;\n /** tip fee */\n tipFee?: string;\n /** whether to use anti-MEV */\n isAntiMev?: boolean;\n /** EIP-2612 permit data (EVM only, alternative to on-chain approve) */\n permit?: string;\n /** deadline timestamp in ms (EVM only) */\n deadline?: number;\n}\n\nexport interface SwapRoutePlan {\n /** protocol name / dex name etc. */\n name: string;\n /** input token address */\n input: string;\n /** input token amount */\n inputAmount: string;\n /** output token address */\n output: string;\n /** output token amount */\n outputAmount: string;\n /** fee quote token address */\n feeQuote?: string;\n /** fee amount */\n feeAmount?: string;\n /** extra infos by api provider */\n extra?: Record<string, unknown>;\n}\n\nexport interface SwapRoute {\n /** unsigned tx in base64 format */\n serializedTx: string;\n /** recent blockhash embedded in the unsigned Solana transaction */\n recentBlockhash?: string;\n /** last block height at which the embedded Solana blockhash remains valid */\n lastValidBlockHeight?: number;\n /** swap plans */\n plans: Array<SwapRoutePlan>;\n /** extra infos by api provider */\n extra?: Record<string, unknown>;\n}\n","export enum Chain {\n ETHEREUM = \"1\",\n UBIQ = \"8\",\n OPTIMISM = \"10\",\n FLARE = \"14\",\n SONGBIRD = \"19\",\n ELASTOS = \"20\",\n KARDIA = \"24\",\n CRONOS = \"25\",\n RSK = \"30\",\n TELOS = \"40\",\n LUKSO = \"42\",\n CRAB = \"44\",\n DARWINIA = \"46\",\n XDC = \"50\",\n CSC = \"52\",\n ZYX = \"55\",\n BINANCE = \"56\",\n BINANCE_TESTNET = \"97\",\n SYSCOIN = \"57\",\n GOCHAIN = \"60\",\n ETHEREUMCLASSIC = \"61\",\n OKEXCHAIN = \"66\",\n HOO = \"70\",\n METER = \"82\",\n NOVA_NETWORK = \"87\",\n TOMOCHAIN = \"88\",\n BITKUB = \"96\",\n XDAI = \"100\",\n VELAS = \"106\",\n THUNDERCORE = \"108\",\n ENULS = \"119\",\n FUSE = \"122\",\n HECO = \"128\",\n UNICHAIN = \"130\",\n POLYGON = \"137\",\n SONIC = \"146\",\n SHIMMER_EVM = \"148\",\n RBN = \"151\",\n OMNI = \"166\",\n MANTA = \"169\",\n HSK = \"177\",\n WATER = \"181\",\n XLAYER = \"196\",\n XDAIARB = \"200\",\n OP_BNB = \"204\",\n VINUCHAIN = \"207\",\n ENERGYWEB = \"246\",\n OASYS = \"248\",\n FANTOM = \"250\",\n FRAXTAL = \"252\",\n HPB = \"269\",\n BOBA = \"288\",\n OMAX = \"311\",\n FILECOIN = \"314\",\n KUCOIN = \"321\",\n ZKSYNC_ERA = \"324\",\n SHIDEN = \"336\",\n THETA = \"361\",\n PULSE = \"369\",\n CRONOS_ZKEVM = \"388\",\n SX = \"416\",\n AREON = \"463\",\n WC = \"480\",\n CANDLE = \"534\",\n ROLLUX = \"570\",\n ASTAR = \"592\",\n REDSTONE = \"690\",\n MATCHAIN = \"698\",\n CALLISTO = \"820\",\n TARA = \"841\",\n WANCHAIN = \"888\",\n LYRA_CHAIN = \"957\",\n BIFROST = \"996\",\n CONFLUX = \"1030\",\n METIS = \"1088\",\n DYMENSION = \"1100\",\n POLYGON_ZKEVM = \"1101\",\n CORE = \"1116\",\n LISK = \"1135\",\n ULTRON = \"1231\",\n STEP = \"1234\",\n MOONBEAM = \"1284\",\n MOONRIVER = \"1285\",\n SEI = \"1329\",\n LIVING_ASSETS_MAINNET = \"1440\",\n STY = \"1514\",\n TENET = \"1559\",\n GRAVITY = \"1625\",\n REYA_NETWORK = \"1729\",\n SONEIUM = \"1868\",\n SWELLCHAIN = \"1923\",\n ONUS = \"1975\",\n HUBBLENET = \"1992\",\n SANKO = \"1996\",\n DOGECHAIN = \"2000\",\n MILKOMEDA = \"2001\",\n MILKOMEDA_A1 = \"2002\",\n KAVA = \"2222\",\n SOMA = \"2332\",\n KARAK = \"2410\",\n ABSTRACT = \"2741\",\n ABSTRACT_TESTNET = \"11124\",\n MORPH = \"2818\",\n CROSSFI = \"4158\",\n BEAM = \"4337\",\n IOTEX = \"4689\",\n MANTLE = \"5000\",\n XLC = \"5050\",\n NAHMII = \"5551\",\n BOUNCEBIT = \"6001\",\n TOMBCHAIN = \"6969\",\n ZETACHAIN = \"7000\",\n PLANQ = \"7070\",\n BITROCK = \"7171\",\n XSAT = \"7200\",\n CYETH = \"7560\",\n CANTO = \"7700\",\n KLAYTN = \"8217\",\n THAT = \"8428\",\n BASE = \"8453\",\n HELA = \"8668\",\n IOTAEVM = \"8822\",\n JBC = \"8899\",\n EVMOS = \"9001\",\n CARBON = \"9790\",\n SMARTBCH = \"10000\",\n ARTELA = \"11820\",\n IMMUTABLE_ZKEVM = \"13371\",\n LOOP = \"15551\",\n GENESYS = \"16507\",\n EOS_EVM = \"17777\",\n MAP_PROTOCOL = \"22776\",\n SAPPHIRE = \"23294\",\n BITGERT = \"32520\",\n FUSION = \"32659\",\n ZILLIQA = \"32769\",\n APECHAIN = \"33139\",\n EDU_CHAIN = \"41923\",\n ARBITRUM = \"42161\",\n ARBITRUM_TESTNET_GOERLI = \"421613\",\n ARBITRUM_TESTNET_SEPOLIA = \"421614\",\n ARBITRUM_NOVA = \"42170\",\n CELO = \"42220\",\n OASIS = \"42262\",\n ASSETCHAIN = \"42420\",\n ETHERLINK = \"42793\",\n AVALANCHE = \"43114\",\n REI = \"47805\",\n ZIRCUIT = \"48900\",\n SOPHON = \"50104\",\n ETN = \"52014\",\n SUPERPOSITION = \"55244\",\n REICHAIN = \"55555\",\n BOBA_BNB = \"56288\",\n INK = \"57073\",\n LINEA = \"59144\",\n BOB = \"60808\",\n GODWOKEN = \"71402\",\n BERACHAIN = \"80094\",\n BLAST = \"81457\",\n CHILIZ = \"88888\",\n STRATIS = \"105105\",\n REAL = \"111188\",\n ODYSSEY = \"153153\",\n TAIKO = \"167000\",\n BITLAYER = \"200901\",\n HYDRATION = \"222222\",\n PAREX = \"322202\",\n POLIS = \"333999\",\n KEKCHAIN = \"420420\",\n SCROLL = \"534352\",\n ZERO_NETWORK = \"543210\",\n ZKLINK_NOVA = \"810180\",\n VISION = \"888888\",\n SAAKURU = \"7225878\",\n ZORA = \"7777777\",\n CORN = \"21000000\",\n NEON = \"245022934\",\n LUMIA = \"994873017\",\n AURORA = \"1313161554\",\n HARMONY = \"1666600000\",\n PALM = \"11297108109\",\n ZENIQ = \"383414847825\",\n CURIO = \"836542336838601\",\n MODE = \"34443\",\n SOLANA = \"900900900\",\n SOLANA_TESTNET = \"901901901\",\n SOLANA_DEVNET = \"902902902\",\n}\n\nexport enum ChainNamespace {\n EVM = \"EVM\",\n SOLANA = \"SOL\",\n}\n","import { Chain } from \"./chains\";\nimport { WalletTag } from \"./tag\";\n\nexport enum SolanaTokenProtocol {\n BAGS = \"bags\",\n BELIEVE = \"believe\",\n BONK = \"bonk\",\n BOOP = \"boop\",\n HEAVEN = \"heaven\",\n JUPSTUDIO = \"jupstudio\",\n LAUNCHLAB = \"launchlab\",\n METEORA = \"meteora\",\n MOONIT = \"moonit\",\n MOONSHOT = \"moonshot\",\n ORCA = \"orca\",\n PUMP = \"pump\",\n RAYDIUM = \"raydium\",\n SUGAR = \"sugar\",\n VIRTUAL_CURVE = \"virtual-curve\",\n PUMP_AMM = \"pump-amm\",\n}\n\nexport type TokenProtocol = SolanaTokenProtocol | (string & {});\n\nexport const SOLANA_TOKEN_PROTOCOLS = Object.values(SolanaTokenProtocol);\n\nexport interface Token {\n /**\n * chain id.\n */\n chain: Chain;\n /**\n * token name, e.g. \"Ethereum\", \"Solana\", etc.\n */\n name: string;\n /**\n * token symbol, e.g. \"ETH\", \"SOL\", etc.\n */\n symbol: string;\n /**\n * token address.\n */\n address: string;\n /**\n * token decimals.\n */\n decimals: number;\n /**\n * token avatar image url.\n */\n image?: string;\n /**\n * token description.\n */\n description?: string;\n /**\n * token creators.\n */\n creators?: Array<TokenCreator>;\n /**\n * token launch info.\n */\n launchedFrom?: TokenLaunchedFrom;\n /**\n * token migrate progress, range is 0-100.\n */\n migrateProgress?: string;\n /**\n * token migrate info.\n */\n migratedTo?: TokenMigratedTo;\n /**\n * token social medias.\n */\n socialMedias?: TokenSocialMedias;\n /**\n * token stats.\n */\n stats?: TokenStats;\n /**\n * token market data.\n */\n marketData?: TokenMarketData;\n /**\n * token liquidity pools\n */\n liquidities?: Array<TokenLiquidity>;\n /**\n * token security.\n */\n security?: TokenSecurity;\n /**\n * token tags.\n */\n tags?: Array<string>;\n /**\n * token create time.\n */\n createdAt?: Date;\n}\n\nexport interface TokenCreator {\n /**\n * token creator's wallet address.\n */\n address?: string;\n /**\n * token creator's share percentage, range is 0-100.\n */\n share?: number;\n /**\n * whether the token creator is verified.\n */\n isVerified?: boolean;\n}\n\nexport interface TokenLaunchedFrom {\n /**\n * token launch program address.\n */\n programAddress?: string;\n /**\n * token launch protocol family.\n */\n protocolFamily?: string;\n}\n\nexport interface TokenMigratedTo {\n /**\n * token migrate program address.\n */\n programAddress?: string;\n /**\n * token migrate protocol family.\n */\n protocolFamily?: string;\n /**\n * token migrate pool address.\n */\n poolAddress?: string;\n /**\n * token migrate time.\n */\n migratedAt?: Date;\n}\n\nexport interface TokenSocialMedias {\n /**\n * token twitter url.\n */\n twitter?: string;\n /**\n * token telegram url.\n */\n telegram?: string;\n /**\n * token website url.\n */\n website?: string;\n /**\n * token tiktok url.\n */\n tiktok?: string;\n /**\n * token discord url.\n */\n discord?: string;\n /**\n * token facebook url.\n */\n facebook?: string;\n /**\n * token github url.\n */\n github?: string;\n /**\n * token instagram url.\n */\n instagram?: string;\n /**\n * token linkedin url.\n */\n linkedin?: string;\n /**\n * token medium url.\n */\n medium?: string;\n /**\n * token reddit url.\n */\n reddit?: string;\n /**\n * token youtube url.\n */\n youtube?: string;\n /**\n * token bitbucket url.\n */\n bitbucket?: string;\n /**\n * token farcaster url or handle.\n */\n farcaster?: string;\n}\n\nexport interface TokenStats {\n /**\n * token stats by 1m timeframe.\n */\n \"1m\"?: TokenStatsByResolution;\n /**\n * token stats by 5m timeframe.\n */\n \"5m\"?: TokenStatsByResolution;\n /**\n * token stats by 15m timeframe.\n */\n \"15m\"?: TokenStatsByResolution;\n /**\n * token stats by 30m timeframe.\n */\n \"30m\"?: TokenStatsByResolution;\n /**\n * token stats by 1h timeframe.\n */\n \"1h\"?: TokenStatsByResolution;\n /**\n * token stats by 4h timeframe.\n */\n \"4h\"?: TokenStatsByResolution;\n /**\n * token stats by 24h timeframe.\n */\n \"24h\"?: TokenStatsByResolution;\n}\n\nexport interface TokenStatsByResolution {\n /**\n * buy txs count\n */\n buys?: number;\n /**\n * sell txs count\n */\n sells?: number;\n /**\n * txs count\n */\n trades?: number;\n /**\n * buy addresses count\n */\n buyers?: number;\n /**\n * sell addresses count\n */\n sellers?: number;\n /**\n * trade addresses count\n */\n traders?: number;\n /**\n * buy volumes in quote token\n */\n buyVolumes?: string;\n /**\n * sell volumes in quote token\n */\n sellVolumes?: string;\n /**\n * total volumes in quote token\n */\n volumes?: string;\n /**\n * buy volumes in usd\n */\n buyVolumesInUsd?: string;\n /**\n * sell volumes in usd\n */\n sellVolumesInUsd?: string;\n /**\n * total volumes in usd\n */\n volumesInUsd?: string;\n /**\n * open price in usd\n */\n openPriceInUsd?: string;\n /**\n * close price in usd\n */\n closePriceInUsd?: string;\n /**\n * high price in usd\n */\n highPriceInUsd?: string;\n /**\n * low price in usd\n */\n lowPriceInUsd?: string;\n /**\n * price in usd\n */\n priceInUsd?: string;\n /**\n * price change %\n */\n priceChange?: string;\n}\n\nexport interface TokenMarketData {\n /**\n * total supply\n */\n totalSupply?: string;\n /**\n * market cap in quote token\n */\n marketCap?: string;\n /**\n * market cap in usd\n */\n marketCapInUsd?: string;\n /**\n * price in quote token\n */\n price?: string;\n /**\n * price in usd\n */\n priceInUsd?: string;\n /**\n * tvl in quote token\n */\n tvl?: string;\n /**\n * tvl in usd\n */\n tvlInUsd?: string;\n /**\n * holders count\n */\n holders?: number;\n /**\n * top 10 total holdings\n */\n top10Holdings?: string;\n /**\n * top 10 holdings ratio\n */\n top10HoldingsRatio?: string;\n /**\n * top 50 total holdings\n */\n top50Holdings?: string;\n /**\n * top 50 holdings ratio\n */\n top50HoldingsRatio?: string;\n /**\n * top 100 total holdings\n */\n top100Holdings?: string;\n /**\n * top 100 holdings ratio\n */\n top100HoldingsRatio?: string;\n /**\n * Bluechip holders count\n */\n bluechipHolders?: number;\n /**\n * Bluechip total holdings\n */\n bluechipHoldings?: string;\n /**\n * Bluechip holdings ratio\n */\n bluechipHoldingsRatio?: string;\n /**\n * KOL holders count\n */\n kolHolders?: number;\n /**\n * KOL total holdings\n */\n kolHoldings?: string;\n /**\n * KOL holdings ratio\n */\n kolHoldingsRatio?: string;\n /**\n * Sniper holders count\n */\n sniperHolders?: number;\n /**\n * Sniper total holdings\n */\n sniperHoldings?: string;\n /**\n * Sniper holdings ratio\n */\n sniperHoldingsRatio?: string;\n /**\n * Pro holders count\n */\n proHolders?: number;\n /**\n * Pro total holdings\n */\n proHoldings?: string;\n /**\n * Pro holdings ratio\n */\n proHoldingsRatio?: string;\n /**\n * Insider holders count\n */\n insiderHolders?: number;\n /**\n * Insider total holdings\n */\n insiderHoldings?: string;\n /**\n * Insider holdings ratio\n */\n insiderHoldingsRatio?: string;\n /**\n * Sandwich holders count\n */\n sandwichHolders?: number;\n /**\n * Sandwich total holdings\n */\n sandwichHoldings?: string;\n /**\n * Sandwich holdings ratio\n */\n sandwichHoldingsRatio?: string;\n /**\n * Fresh holders count\n */\n freshHolders?: number;\n /**\n * Fresh total holdings\n */\n freshHoldings?: string;\n /**\n * Fresh holdings ratio\n */\n freshHoldingsRatio?: string;\n /**\n * Bundle holders count\n */\n bundleHolders?: number;\n /**\n * Bundle total holdings\n */\n bundleHoldings?: string;\n /**\n * Bundle holdings ratio\n */\n bundleHoldingsRatio?: string;\n /**\n * Dev holders count\n */\n devHolders?: number;\n /**\n * Dev total holdings\n */\n devHoldings?: string;\n /**\n * Dev holdings ratio\n */\n devHoldingsRatio?: string;\n}\n\nexport interface TokenLiquidity {\n /**\n * pool avatar image\n */\n image?: string;\n /**\n * pair token address.\n */\n pairAddress?: string;\n /**\n * pool address.\n */\n poolAddress?: string;\n /**\n * program address.\n */\n programAddress?: string;\n /**\n * protocol name.\n */\n protocolName?: string;\n /**\n * protocol family.\n */\n protocolFamily?: string;\n /**\n * tvl in quote token.\n */\n tvl?: string;\n /**\n * tvl in usd.\n */\n tvlInUsd?: string;\n}\n\n/**\n * Token security flags. Backend currently exposes the five Solana SPL flags\n * below; additional checks may be added in the future as the security service\n * gains coverage of more chains and risk vectors.\n */\nexport interface TokenSecurity {\n /**\n * whether the token has transfer fee.\n */\n hasTransferFee?: boolean;\n /**\n * whether the token transfer fee is upgradable.\n */\n isTransferFeeUpgradable?: boolean;\n /**\n * whether the token is transferable.\n */\n isTransferable?: boolean;\n /**\n * whether the token is freezable.\n */\n isFreezable?: boolean;\n /**\n * whether the token is closable.\n */\n isClosable?: boolean;\n}\n\nexport type TokenResolution =\n | \"1s\"\n | \"15s\"\n | \"30s\"\n | \"1m\"\n | \"5m\"\n | \"15m\"\n | \"30m\"\n | \"1h\"\n | \"4h\"\n | \"12h\"\n | \"24h\";\n\nexport interface TokenCandle {\n /**\n * open price in usd\n */\n open: string;\n /**\n * close price in usd\n */\n close: string;\n /**\n * high price in usd\n */\n high: string;\n /**\n * low price in usd\n */\n low: string;\n /**\n * volume in usd\n */\n volume: string;\n /**\n * volume in token amount\n */\n volumeInTokenAmount?: string;\n /**\n * trades count in this candle\n */\n trades?: number;\n /**\n * resolution\n */\n resolution: TokenResolution;\n /**\n * timestamp\n */\n timestamp: Date;\n}\n\nexport interface TokenHolder {\n /**\n * holder wallet address\n */\n address: string;\n /**\n * holdings amount in token\n */\n amount: string;\n /**\n * holdings amount in usd\n */\n amountInUsd: string;\n /**\n * holdings ratio, range is 0-100\n */\n ratio: string;\n /**\n * Holder classification tags (Phase 3). Sparse — only present when the\n * wallet matches one of the known patterns (kol/smart/sniper/dev/...).\n */\n tags?: Array<WalletTag>;\n /**\n * The last time this wallet was active on-chain (Phase 3).\n * Sparse (~80% fill rate).\n */\n lastActiveAt?: Date;\n /**\n * The first time this wallet started holding this token (Phase 3).\n * Sparse (~60% fill rate).\n */\n startHoldingAt?: Date;\n}\n\nexport interface TokenTopTrader {\n /**\n * trader wallet address\n */\n address: string;\n /**\n * current holdings amount in token\n */\n amount: string;\n /**\n * current holdings amount in usd\n */\n amountInUsd: string;\n /**\n * Trader classification tags.\n */\n tags?: Array<WalletTag>;\n /**\n * The last time this wallet was active on-chain.\n */\n lastActiveAt?: Date;\n /**\n * The first time this wallet started holding this token.\n */\n startHoldingAt?: Date;\n /**\n * Average buy price in USD per token.\n */\n averageBuyPriceInUsd?: string;\n /**\n * Average sell price in USD per token.\n */\n averageSellPriceInUsd?: string;\n /**\n * Cumulative token quantity bought all-time.\n */\n buyAmountCur?: string;\n /**\n * Cumulative token quantity sold all-time.\n */\n sellAmountCur?: string;\n /**\n * Total buy volume in USD.\n */\n totalBuyAmountInUsd?: string;\n /**\n * Total sell volume in USD.\n */\n totalSellAmountInUsd?: string;\n /**\n * Realized PnL rate.\n */\n realizedPnl?: string;\n /**\n * Realized PnL in USD.\n */\n totalRealizedPnlInUsd?: string;\n /**\n * Unrealized PnL rate.\n */\n unrealizedPnl?: string;\n /**\n * Unrealized PnL in USD.\n */\n unrealizedPnlInUsd?: string;\n /**\n * Return on investment.\n */\n roi?: string;\n /**\n * Total PnL in USD.\n */\n totalPnlInUsd?: string;\n /**\n * Total buy trade count.\n */\n totalBuyCount?: number;\n /**\n * Total sell trade count.\n */\n totalSellCount?: number;\n /**\n * Whether position was acquired mainly via transfer.\n */\n transferIn?: boolean;\n /**\n * All-time transfer-in event count.\n */\n transferInCount?: number;\n /**\n * All-time transfer-out event count.\n */\n transferOutCount?: number;\n}\n"],"mappings":"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","names":["SwapMode","Chain","ChainNamespace","SolanaTokenProtocol"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/api/swap.ts","../src/chains.ts","../src/token.ts"],"sourcesContent":["import { Chain } from \"../chains\";\n\nexport enum SwapMode {\n EXACT_IN = \"exact_in\",\n EXACT_OUT = \"exact_out\",\n}\n\n/**\n * DEX identifier used for route / mint address conversion. Open union — the\n * known values cover today's DEXes; new aggregators can be plugged in without\n * a library update.\n */\nexport type SwapDex = \"jupiter\" | \"kyberswap\" | (string & {});\n\nexport interface SwapParams {\n /** chain id */\n chain: Chain;\n /** DEX to use; if omitted, inferred from chain (Solana → jupiter, EVM → kyberswap). Mint conversion uses this. */\n dex?: SwapDex;\n /** user wallet address */\n userAddress: string;\n /** input token address */\n input: string;\n /** output token address */\n output: string;\n /** swap mode, e.g. ExactIn, ExactOut */\n mode: SwapMode;\n /** input token amount when mode is ExactIn, output token amount when mode is ExactOut */\n amount: string;\n /** slippage, range is 0-100 */\n slippage?: number;\n /** priority fee */\n priorityFee?: string;\n /** tip fee */\n tipFee?: string;\n /** whether to use anti-MEV */\n isAntiMev?: boolean;\n /** EIP-2612 permit data (EVM only, alternative to on-chain approve) */\n permit?: string;\n /** deadline timestamp in ms (EVM only) */\n deadline?: number;\n}\n\nexport interface SwapRoutePlan {\n /** protocol name / dex name etc. */\n name: string;\n /** input token address */\n input: string;\n /** input token amount */\n inputAmount: string;\n /** output token address */\n output: string;\n /** output token amount */\n outputAmount: string;\n /** fee quote token address */\n feeQuote?: string;\n /** fee amount */\n feeAmount?: string;\n /** extra infos by api provider */\n extra?: Record<string, unknown>;\n}\n\nexport interface SwapRoute {\n /** unsigned tx in base64 format */\n serializedTx: string;\n /** recent blockhash embedded in the unsigned Solana transaction */\n recentBlockhash?: string;\n /** last block height at which the embedded Solana blockhash remains valid */\n lastValidBlockHeight?: number;\n /** swap plans */\n plans: Array<SwapRoutePlan>;\n /** extra infos by api provider */\n extra?: Record<string, unknown>;\n}\n","export enum Chain {\n ETHEREUM = \"1\",\n UBIQ = \"8\",\n OPTIMISM = \"10\",\n FLARE = \"14\",\n SONGBIRD = \"19\",\n ELASTOS = \"20\",\n KARDIA = \"24\",\n CRONOS = \"25\",\n RSK = \"30\",\n TELOS = \"40\",\n LUKSO = \"42\",\n CRAB = \"44\",\n DARWINIA = \"46\",\n XDC = \"50\",\n CSC = \"52\",\n ZYX = \"55\",\n BINANCE = \"56\",\n BINANCE_TESTNET = \"97\",\n SYSCOIN = \"57\",\n GOCHAIN = \"60\",\n ETHEREUMCLASSIC = \"61\",\n OKEXCHAIN = \"66\",\n HOO = \"70\",\n METER = \"82\",\n NOVA_NETWORK = \"87\",\n TOMOCHAIN = \"88\",\n BITKUB = \"96\",\n XDAI = \"100\",\n VELAS = \"106\",\n THUNDERCORE = \"108\",\n ENULS = \"119\",\n FUSE = \"122\",\n HECO = \"128\",\n UNICHAIN = \"130\",\n POLYGON = \"137\",\n SONIC = \"146\",\n SHIMMER_EVM = \"148\",\n RBN = \"151\",\n OMNI = \"166\",\n MANTA = \"169\",\n HSK = \"177\",\n WATER = \"181\",\n XLAYER = \"196\",\n XDAIARB = \"200\",\n OP_BNB = \"204\",\n VINUCHAIN = \"207\",\n ENERGYWEB = \"246\",\n OASYS = \"248\",\n FANTOM = \"250\",\n FRAXTAL = \"252\",\n HPB = \"269\",\n BOBA = \"288\",\n OMAX = \"311\",\n FILECOIN = \"314\",\n KUCOIN = \"321\",\n ZKSYNC_ERA = \"324\",\n SHIDEN = \"336\",\n THETA = \"361\",\n PULSE = \"369\",\n CRONOS_ZKEVM = \"388\",\n SX = \"416\",\n AREON = \"463\",\n WC = \"480\",\n CANDLE = \"534\",\n ROLLUX = \"570\",\n ASTAR = \"592\",\n REDSTONE = \"690\",\n MATCHAIN = \"698\",\n CALLISTO = \"820\",\n TARA = \"841\",\n WANCHAIN = \"888\",\n LYRA_CHAIN = \"957\",\n BIFROST = \"996\",\n CONFLUX = \"1030\",\n METIS = \"1088\",\n DYMENSION = \"1100\",\n POLYGON_ZKEVM = \"1101\",\n CORE = \"1116\",\n LISK = \"1135\",\n ULTRON = \"1231\",\n STEP = \"1234\",\n MOONBEAM = \"1284\",\n MOONRIVER = \"1285\",\n SEI = \"1329\",\n LIVING_ASSETS_MAINNET = \"1440\",\n STY = \"1514\",\n TENET = \"1559\",\n GRAVITY = \"1625\",\n REYA_NETWORK = \"1729\",\n SONEIUM = \"1868\",\n SWELLCHAIN = \"1923\",\n ONUS = \"1975\",\n HUBBLENET = \"1992\",\n SANKO = \"1996\",\n DOGECHAIN = \"2000\",\n MILKOMEDA = \"2001\",\n MILKOMEDA_A1 = \"2002\",\n KAVA = \"2222\",\n SOMA = \"2332\",\n KARAK = \"2410\",\n ABSTRACT = \"2741\",\n ABSTRACT_TESTNET = \"11124\",\n MORPH = \"2818\",\n CROSSFI = \"4158\",\n BEAM = \"4337\",\n IOTEX = \"4689\",\n MANTLE = \"5000\",\n XLC = \"5050\",\n NAHMII = \"5551\",\n BOUNCEBIT = \"6001\",\n TOMBCHAIN = \"6969\",\n ZETACHAIN = \"7000\",\n PLANQ = \"7070\",\n BITROCK = \"7171\",\n XSAT = \"7200\",\n CYETH = \"7560\",\n CANTO = \"7700\",\n KLAYTN = \"8217\",\n THAT = \"8428\",\n BASE = \"8453\",\n HELA = \"8668\",\n IOTAEVM = \"8822\",\n JBC = \"8899\",\n EVMOS = \"9001\",\n CARBON = \"9790\",\n SMARTBCH = \"10000\",\n ARTELA = \"11820\",\n IMMUTABLE_ZKEVM = \"13371\",\n LOOP = \"15551\",\n GENESYS = \"16507\",\n EOS_EVM = \"17777\",\n MAP_PROTOCOL = \"22776\",\n SAPPHIRE = \"23294\",\n BITGERT = \"32520\",\n FUSION = \"32659\",\n ZILLIQA = \"32769\",\n APECHAIN = \"33139\",\n EDU_CHAIN = \"41923\",\n ARBITRUM = \"42161\",\n ARBITRUM_TESTNET_GOERLI = \"421613\",\n ARBITRUM_TESTNET_SEPOLIA = \"421614\",\n ARBITRUM_NOVA = \"42170\",\n CELO = \"42220\",\n OASIS = \"42262\",\n ASSETCHAIN = \"42420\",\n ETHERLINK = \"42793\",\n AVALANCHE = \"43114\",\n REI = \"47805\",\n ZIRCUIT = \"48900\",\n SOPHON = \"50104\",\n ETN = \"52014\",\n SUPERPOSITION = \"55244\",\n REICHAIN = \"55555\",\n BOBA_BNB = \"56288\",\n INK = \"57073\",\n LINEA = \"59144\",\n BOB = \"60808\",\n GODWOKEN = \"71402\",\n BERACHAIN = \"80094\",\n BLAST = \"81457\",\n CHILIZ = \"88888\",\n STRATIS = \"105105\",\n REAL = \"111188\",\n ODYSSEY = \"153153\",\n TAIKO = \"167000\",\n BITLAYER = \"200901\",\n HYDRATION = \"222222\",\n PAREX = \"322202\",\n POLIS = \"333999\",\n KEKCHAIN = \"420420\",\n SCROLL = \"534352\",\n ZERO_NETWORK = \"543210\",\n ZKLINK_NOVA = \"810180\",\n VISION = \"888888\",\n SAAKURU = \"7225878\",\n ZORA = \"7777777\",\n CORN = \"21000000\",\n NEON = \"245022934\",\n LUMIA = \"994873017\",\n AURORA = \"1313161554\",\n HARMONY = \"1666600000\",\n PALM = \"11297108109\",\n ZENIQ = \"383414847825\",\n CURIO = \"836542336838601\",\n MODE = \"34443\",\n SOLANA = \"900900900\",\n SOLANA_TESTNET = \"901901901\",\n SOLANA_DEVNET = \"902902902\",\n}\n\nexport enum ChainNamespace {\n EVM = \"EVM\",\n SOLANA = \"SOL\",\n}\n","import { Chain } from \"./chains\";\nimport { WalletTag } from \"./tag\";\n\nexport enum SolanaTokenProtocol {\n BAGS = \"bags\",\n BELIEVE = \"believe\",\n BONK = \"bonk\",\n BOOP = \"boop\",\n HEAVEN = \"heaven\",\n JUPSTUDIO = \"jupstudio\",\n LAUNCHLAB = \"launchlab\",\n METEORA = \"meteora\",\n MOONIT = \"moonit\",\n MOONSHOT = \"moonshot\",\n ORCA = \"orca\",\n PUMP = \"pump\",\n RAYDIUM = \"raydium\",\n SUGAR = \"sugar\",\n VIRTUAL_CURVE = \"virtual-curve\",\n PUMP_AMM = \"pump-amm\",\n}\n\nexport type TokenProtocol = SolanaTokenProtocol | (string & {});\n\nexport const SOLANA_TOKEN_PROTOCOLS = Object.values(SolanaTokenProtocol);\n\nexport interface Token {\n /**\n * chain id.\n */\n chain: Chain;\n /**\n * token name, e.g. \"Ethereum\", \"Solana\", etc.\n */\n name: string;\n /**\n * token symbol, e.g. \"ETH\", \"SOL\", etc.\n */\n symbol: string;\n /**\n * token address.\n */\n address: string;\n /**\n * token decimals.\n */\n decimals: number;\n /**\n * token avatar image url.\n */\n image?: string;\n /**\n * token description.\n */\n description?: string;\n /**\n * token creators.\n */\n creators?: Array<TokenCreator>;\n /**\n * token launch info.\n */\n launchedFrom?: TokenLaunchedFrom;\n /**\n * token migrate progress, range is 0-100.\n */\n migrateProgress?: string;\n /**\n * token migrate info.\n */\n migratedTo?: TokenMigratedTo;\n /**\n * token social medias.\n */\n socialMedias?: TokenSocialMedias;\n /**\n * token stats.\n */\n stats?: TokenStats;\n /**\n * token market data.\n */\n marketData?: TokenMarketData;\n /**\n * token liquidity pools\n */\n liquidities?: Array<TokenLiquidity>;\n /**\n * token security.\n */\n security?: TokenSecurity;\n /**\n * token tags.\n */\n tags?: Array<string>;\n /**\n * token create time.\n */\n createdAt?: Date;\n}\n\nexport interface TokenCreator {\n /**\n * token creator's wallet address.\n */\n address?: string;\n /**\n * token creator's share percentage, range is 0-100.\n */\n share?: number;\n /**\n * whether the token creator is verified.\n */\n isVerified?: boolean;\n}\n\nexport interface TokenLaunchedFrom {\n /**\n * token launch program address.\n */\n programAddress?: string;\n /**\n * token launch protocol family.\n */\n protocolFamily?: string;\n}\n\nexport interface TokenMigratedTo {\n /**\n * token migrate program address.\n */\n programAddress?: string;\n /**\n * token migrate protocol family.\n */\n protocolFamily?: string;\n /**\n * token migrate pool address.\n */\n poolAddress?: string;\n /**\n * token migrate time.\n */\n migratedAt?: Date;\n}\n\nexport interface TokenSocialMedias {\n /**\n * token twitter url.\n */\n twitter?: string;\n /**\n * token telegram url.\n */\n telegram?: string;\n /**\n * token website url.\n */\n website?: string;\n /**\n * token tiktok url.\n */\n tiktok?: string;\n /**\n * token discord url.\n */\n discord?: string;\n /**\n * token facebook url.\n */\n facebook?: string;\n /**\n * token github url.\n */\n github?: string;\n /**\n * token instagram url.\n */\n instagram?: string;\n /**\n * token linkedin url.\n */\n linkedin?: string;\n /**\n * token medium url.\n */\n medium?: string;\n /**\n * token reddit url.\n */\n reddit?: string;\n /**\n * token youtube url.\n */\n youtube?: string;\n /**\n * token bitbucket url.\n */\n bitbucket?: string;\n /**\n * token farcaster url or handle.\n */\n farcaster?: string;\n}\n\nexport interface TokenStats {\n /**\n * token stats by 1m timeframe.\n */\n \"1m\"?: TokenStatsByResolution;\n /**\n * token stats by 5m timeframe.\n */\n \"5m\"?: TokenStatsByResolution;\n /**\n * token stats by 15m timeframe.\n */\n \"15m\"?: TokenStatsByResolution;\n /**\n * token stats by 30m timeframe.\n */\n \"30m\"?: TokenStatsByResolution;\n /**\n * token stats by 1h timeframe.\n */\n \"1h\"?: TokenStatsByResolution;\n /**\n * token stats by 4h timeframe.\n */\n \"4h\"?: TokenStatsByResolution;\n /**\n * token stats by 24h timeframe.\n */\n \"24h\"?: TokenStatsByResolution;\n}\n\nexport interface TokenStatsByResolution {\n /**\n * buy txs count\n */\n buys?: number;\n /**\n * sell txs count\n */\n sells?: number;\n /**\n * txs count\n */\n trades?: number;\n /**\n * buy addresses count\n */\n buyers?: number;\n /**\n * sell addresses count\n */\n sellers?: number;\n /**\n * trade addresses count\n */\n traders?: number;\n /**\n * buy volumes in quote token\n */\n buyVolumes?: string;\n /**\n * sell volumes in quote token\n */\n sellVolumes?: string;\n /**\n * total volumes in quote token\n */\n volumes?: string;\n /**\n * buy volumes in usd\n */\n buyVolumesInUsd?: string;\n /**\n * sell volumes in usd\n */\n sellVolumesInUsd?: string;\n /**\n * total volumes in usd\n */\n volumesInUsd?: string;\n /**\n * open price in usd\n */\n openPriceInUsd?: string;\n /**\n * close price in usd\n */\n closePriceInUsd?: string;\n /**\n * high price in usd\n */\n highPriceInUsd?: string;\n /**\n * low price in usd\n */\n lowPriceInUsd?: string;\n /**\n * price in usd\n */\n priceInUsd?: string;\n /**\n * price change %\n */\n priceChange?: string;\n}\n\nexport interface TokenMarketData {\n /**\n * total supply\n */\n totalSupply?: string;\n /**\n * market cap in quote token\n */\n marketCap?: string;\n /**\n * market cap in usd\n */\n marketCapInUsd?: string;\n /**\n * price in quote token\n */\n price?: string;\n /**\n * price in usd\n */\n priceInUsd?: string;\n /**\n * tvl in quote token\n */\n tvl?: string;\n /**\n * tvl in usd\n */\n tvlInUsd?: string;\n /**\n * holders count\n */\n holders?: number;\n /**\n * top 10 total holdings\n */\n top10Holdings?: string;\n /**\n * top 10 holdings ratio\n */\n top10HoldingsRatio?: string;\n /**\n * top 50 total holdings\n */\n top50Holdings?: string;\n /**\n * top 50 holdings ratio\n */\n top50HoldingsRatio?: string;\n /**\n * top 100 total holdings\n */\n top100Holdings?: string;\n /**\n * top 100 holdings ratio\n */\n top100HoldingsRatio?: string;\n /**\n * Bluechip holders count\n */\n bluechipHolders?: number;\n /**\n * Bluechip total holdings\n */\n bluechipHoldings?: string;\n /**\n * Bluechip holdings ratio\n */\n bluechipHoldingsRatio?: string;\n /**\n * KOL holders count\n */\n kolHolders?: number;\n /**\n * KOL total holdings\n */\n kolHoldings?: string;\n /**\n * KOL holdings ratio\n */\n kolHoldingsRatio?: string;\n /**\n * Sniper holders count\n */\n sniperHolders?: number;\n /**\n * Sniper total holdings\n */\n sniperHoldings?: string;\n /**\n * Sniper holdings ratio\n */\n sniperHoldingsRatio?: string;\n /**\n * Pro holders count\n */\n proHolders?: number;\n /**\n * Pro total holdings\n */\n proHoldings?: string;\n /**\n * Pro holdings ratio\n */\n proHoldingsRatio?: string;\n /**\n * Insider holders count\n */\n insiderHolders?: number;\n /**\n * Insider total holdings\n */\n insiderHoldings?: string;\n /**\n * Insider holdings ratio\n */\n insiderHoldingsRatio?: string;\n /**\n * Sandwich holders count\n */\n sandwichHolders?: number;\n /**\n * Sandwich total holdings\n */\n sandwichHoldings?: string;\n /**\n * Sandwich holdings ratio\n */\n sandwichHoldingsRatio?: string;\n /**\n * Fresh holders count\n */\n freshHolders?: number;\n /**\n * Fresh total holdings\n */\n freshHoldings?: string;\n /**\n * Fresh holdings ratio\n */\n freshHoldingsRatio?: string;\n /**\n * Bundle holders count\n */\n bundleHolders?: number;\n /**\n * Bundle total holdings\n */\n bundleHoldings?: string;\n /**\n * Bundle holdings ratio\n */\n bundleHoldingsRatio?: string;\n /**\n * Dev holders count\n */\n devHolders?: number;\n /**\n * Dev total holdings\n */\n devHoldings?: string;\n /**\n * Dev holdings ratio\n */\n devHoldingsRatio?: string;\n}\n\nexport interface TokenLiquidity {\n /**\n * pool avatar image\n */\n image?: string;\n /**\n * pair token address.\n */\n pairAddress?: string;\n /**\n * pool address.\n */\n poolAddress?: string;\n /**\n * program address.\n */\n programAddress?: string;\n /**\n * protocol name.\n */\n protocolName?: string;\n /**\n * protocol family.\n */\n protocolFamily?: string;\n /**\n * tvl in quote token.\n */\n tvl?: string;\n /**\n * tvl in usd.\n */\n tvlInUsd?: string;\n}\n\n/**\n * Token security flags. Backend currently exposes the five Solana SPL flags\n * below; additional checks may be added in the future as the security service\n * gains coverage of more chains and risk vectors.\n */\nexport interface TokenSecurity {\n /**\n * whether the token has transfer fee.\n */\n hasTransferFee?: boolean;\n /**\n * whether the token transfer fee is upgradable.\n */\n isTransferFeeUpgradable?: boolean;\n /**\n * whether the token is transferable.\n */\n isTransferable?: boolean;\n /**\n * whether the token is freezable.\n */\n isFreezable?: boolean;\n /**\n * whether the token is closable.\n */\n isClosable?: boolean;\n}\n\nexport type TokenResolution =\n | \"1s\"\n | \"15s\"\n | \"30s\"\n | \"1m\"\n | \"5m\"\n | \"15m\"\n | \"30m\"\n | \"1h\"\n | \"4h\"\n | \"12h\"\n | \"24h\";\n\nexport interface TokenCandle {\n /**\n * open price in usd\n */\n open: string;\n /**\n * close price in usd\n */\n close: string;\n /**\n * high price in usd\n */\n high: string;\n /**\n * low price in usd\n */\n low: string;\n /**\n * volume in usd\n */\n volume: string;\n /**\n * volume in token amount\n */\n volumeInTokenAmount?: string;\n /**\n * trades count in this candle\n */\n trades?: number;\n /**\n * resolution\n */\n resolution: TokenResolution;\n /**\n * timestamp\n */\n timestamp: Date;\n}\n\nexport interface TokenHolder {\n /**\n * holder wallet address\n */\n address: string;\n /**\n * holdings amount in token\n */\n amount: string;\n /**\n * holdings amount in usd\n */\n amountInUsd: string;\n /**\n * holdings ratio, range is 0-100\n */\n ratio: string;\n /**\n * Holder classification tags (Phase 3). Sparse — only present when the\n * wallet matches one of the known patterns (kol/smart/sniper/dev/...).\n */\n tags?: Array<WalletTag>;\n /**\n * The last time this wallet was active on-chain (Phase 3).\n * Sparse (~80% fill rate).\n */\n lastActiveAt?: Date;\n /**\n * The first time this wallet started holding this token (Phase 3).\n * Sparse (~60% fill rate).\n */\n startHoldingAt?: Date;\n}\n"],"mappings":"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","names":["SwapMode","Chain","ChainNamespace","SolanaTokenProtocol"]}
1
+ {"version":3,"sources":["../src/api/swap.ts","../src/chains.ts","../src/token.ts"],"sourcesContent":["import { Chain } from \"../chains\";\n\nexport enum SwapMode {\n EXACT_IN = \"exact_in\",\n EXACT_OUT = \"exact_out\",\n}\n\n/**\n * DEX identifier used for route / mint address conversion. Open union — the\n * known values cover today's DEXes; new aggregators can be plugged in without\n * a library update.\n */\nexport type SwapDex = \"jupiter\" | \"kyberswap\" | (string & {});\n\nexport interface SwapParams {\n /** chain id */\n chain: Chain;\n /** DEX to use; if omitted, inferred from chain (Solana → jupiter, EVM → kyberswap). Mint conversion uses this. */\n dex?: SwapDex;\n /** user wallet address */\n userAddress: string;\n /** input token address */\n input: string;\n /** output token address */\n output: string;\n /** swap mode, e.g. ExactIn, ExactOut */\n mode: SwapMode;\n /** input token amount when mode is ExactIn, output token amount when mode is ExactOut */\n amount: string;\n /** slippage, range is 0-100 */\n slippage?: number;\n /** priority fee */\n priorityFee?: string;\n /** tip fee */\n tipFee?: string;\n /** whether to use anti-MEV */\n isAntiMev?: boolean;\n /** EIP-2612 permit data (EVM only, alternative to on-chain approve) */\n permit?: string;\n /** deadline timestamp in ms (EVM only) */\n deadline?: number;\n}\n\nexport interface SwapRoutePlan {\n /** protocol name / dex name etc. */\n name: string;\n /** input token address */\n input: string;\n /** input token amount */\n inputAmount: string;\n /** output token address */\n output: string;\n /** output token amount */\n outputAmount: string;\n /** fee quote token address */\n feeQuote?: string;\n /** fee amount */\n feeAmount?: string;\n /** extra infos by api provider */\n extra?: Record<string, unknown>;\n}\n\nexport interface SwapRoute {\n /** unsigned tx in base64 format */\n serializedTx: string;\n /** recent blockhash embedded in the unsigned Solana transaction */\n recentBlockhash?: string;\n /** last block height at which the embedded Solana blockhash remains valid */\n lastValidBlockHeight?: number;\n /** swap plans */\n plans: Array<SwapRoutePlan>;\n /** extra infos by api provider */\n extra?: Record<string, unknown>;\n}\n","export enum Chain {\n ETHEREUM = \"1\",\n UBIQ = \"8\",\n OPTIMISM = \"10\",\n FLARE = \"14\",\n SONGBIRD = \"19\",\n ELASTOS = \"20\",\n KARDIA = \"24\",\n CRONOS = \"25\",\n RSK = \"30\",\n TELOS = \"40\",\n LUKSO = \"42\",\n CRAB = \"44\",\n DARWINIA = \"46\",\n XDC = \"50\",\n CSC = \"52\",\n ZYX = \"55\",\n BINANCE = \"56\",\n BINANCE_TESTNET = \"97\",\n SYSCOIN = \"57\",\n GOCHAIN = \"60\",\n ETHEREUMCLASSIC = \"61\",\n OKEXCHAIN = \"66\",\n HOO = \"70\",\n METER = \"82\",\n NOVA_NETWORK = \"87\",\n TOMOCHAIN = \"88\",\n BITKUB = \"96\",\n XDAI = \"100\",\n VELAS = \"106\",\n THUNDERCORE = \"108\",\n ENULS = \"119\",\n FUSE = \"122\",\n HECO = \"128\",\n UNICHAIN = \"130\",\n POLYGON = \"137\",\n SONIC = \"146\",\n SHIMMER_EVM = \"148\",\n RBN = \"151\",\n OMNI = \"166\",\n MANTA = \"169\",\n HSK = \"177\",\n WATER = \"181\",\n XLAYER = \"196\",\n XDAIARB = \"200\",\n OP_BNB = \"204\",\n VINUCHAIN = \"207\",\n ENERGYWEB = \"246\",\n OASYS = \"248\",\n FANTOM = \"250\",\n FRAXTAL = \"252\",\n HPB = \"269\",\n BOBA = \"288\",\n OMAX = \"311\",\n FILECOIN = \"314\",\n KUCOIN = \"321\",\n ZKSYNC_ERA = \"324\",\n SHIDEN = \"336\",\n THETA = \"361\",\n PULSE = \"369\",\n CRONOS_ZKEVM = \"388\",\n SX = \"416\",\n AREON = \"463\",\n WC = \"480\",\n CANDLE = \"534\",\n ROLLUX = \"570\",\n ASTAR = \"592\",\n REDSTONE = \"690\",\n MATCHAIN = \"698\",\n CALLISTO = \"820\",\n TARA = \"841\",\n WANCHAIN = \"888\",\n LYRA_CHAIN = \"957\",\n BIFROST = \"996\",\n CONFLUX = \"1030\",\n METIS = \"1088\",\n DYMENSION = \"1100\",\n POLYGON_ZKEVM = \"1101\",\n CORE = \"1116\",\n LISK = \"1135\",\n ULTRON = \"1231\",\n STEP = \"1234\",\n MOONBEAM = \"1284\",\n MOONRIVER = \"1285\",\n SEI = \"1329\",\n LIVING_ASSETS_MAINNET = \"1440\",\n STY = \"1514\",\n TENET = \"1559\",\n GRAVITY = \"1625\",\n REYA_NETWORK = \"1729\",\n SONEIUM = \"1868\",\n SWELLCHAIN = \"1923\",\n ONUS = \"1975\",\n HUBBLENET = \"1992\",\n SANKO = \"1996\",\n DOGECHAIN = \"2000\",\n MILKOMEDA = \"2001\",\n MILKOMEDA_A1 = \"2002\",\n KAVA = \"2222\",\n SOMA = \"2332\",\n KARAK = \"2410\",\n ABSTRACT = \"2741\",\n ABSTRACT_TESTNET = \"11124\",\n MORPH = \"2818\",\n CROSSFI = \"4158\",\n BEAM = \"4337\",\n IOTEX = \"4689\",\n MANTLE = \"5000\",\n XLC = \"5050\",\n NAHMII = \"5551\",\n BOUNCEBIT = \"6001\",\n TOMBCHAIN = \"6969\",\n ZETACHAIN = \"7000\",\n PLANQ = \"7070\",\n BITROCK = \"7171\",\n XSAT = \"7200\",\n CYETH = \"7560\",\n CANTO = \"7700\",\n KLAYTN = \"8217\",\n THAT = \"8428\",\n BASE = \"8453\",\n HELA = \"8668\",\n IOTAEVM = \"8822\",\n JBC = \"8899\",\n EVMOS = \"9001\",\n CARBON = \"9790\",\n SMARTBCH = \"10000\",\n ARTELA = \"11820\",\n IMMUTABLE_ZKEVM = \"13371\",\n LOOP = \"15551\",\n GENESYS = \"16507\",\n EOS_EVM = \"17777\",\n MAP_PROTOCOL = \"22776\",\n SAPPHIRE = \"23294\",\n BITGERT = \"32520\",\n FUSION = \"32659\",\n ZILLIQA = \"32769\",\n APECHAIN = \"33139\",\n EDU_CHAIN = \"41923\",\n ARBITRUM = \"42161\",\n ARBITRUM_TESTNET_GOERLI = \"421613\",\n ARBITRUM_TESTNET_SEPOLIA = \"421614\",\n ARBITRUM_NOVA = \"42170\",\n CELO = \"42220\",\n OASIS = \"42262\",\n ASSETCHAIN = \"42420\",\n ETHERLINK = \"42793\",\n AVALANCHE = \"43114\",\n REI = \"47805\",\n ZIRCUIT = \"48900\",\n SOPHON = \"50104\",\n ETN = \"52014\",\n SUPERPOSITION = \"55244\",\n REICHAIN = \"55555\",\n BOBA_BNB = \"56288\",\n INK = \"57073\",\n LINEA = \"59144\",\n BOB = \"60808\",\n GODWOKEN = \"71402\",\n BERACHAIN = \"80094\",\n BLAST = \"81457\",\n CHILIZ = \"88888\",\n STRATIS = \"105105\",\n REAL = \"111188\",\n ODYSSEY = \"153153\",\n TAIKO = \"167000\",\n BITLAYER = \"200901\",\n HYDRATION = \"222222\",\n PAREX = \"322202\",\n POLIS = \"333999\",\n KEKCHAIN = \"420420\",\n SCROLL = \"534352\",\n ZERO_NETWORK = \"543210\",\n ZKLINK_NOVA = \"810180\",\n VISION = \"888888\",\n SAAKURU = \"7225878\",\n ZORA = \"7777777\",\n CORN = \"21000000\",\n NEON = \"245022934\",\n LUMIA = \"994873017\",\n AURORA = \"1313161554\",\n HARMONY = \"1666600000\",\n PALM = \"11297108109\",\n ZENIQ = \"383414847825\",\n CURIO = \"836542336838601\",\n MODE = \"34443\",\n SOLANA = \"900900900\",\n SOLANA_TESTNET = \"901901901\",\n SOLANA_DEVNET = \"902902902\",\n}\n\nexport enum ChainNamespace {\n EVM = \"EVM\",\n SOLANA = \"SOL\",\n}\n","import { Chain } from \"./chains\";\nimport { WalletTag } from \"./tag\";\n\nexport enum SolanaTokenProtocol {\n BAGS = \"bags\",\n BELIEVE = \"believe\",\n BONK = \"bonk\",\n BOOP = \"boop\",\n HEAVEN = \"heaven\",\n JUPSTUDIO = \"jupstudio\",\n LAUNCHLAB = \"launchlab\",\n METEORA = \"meteora\",\n MOONIT = \"moonit\",\n MOONSHOT = \"moonshot\",\n ORCA = \"orca\",\n PUMP = \"pump\",\n RAYDIUM = \"raydium\",\n SUGAR = \"sugar\",\n VIRTUAL_CURVE = \"virtual-curve\",\n PUMP_AMM = \"pump-amm\",\n}\n\nexport type TokenProtocol = SolanaTokenProtocol | (string & {});\n\nexport const SOLANA_TOKEN_PROTOCOLS = Object.values(SolanaTokenProtocol);\n\nexport interface Token {\n /**\n * chain id.\n */\n chain: Chain;\n /**\n * token name, e.g. \"Ethereum\", \"Solana\", etc.\n */\n name: string;\n /**\n * token symbol, e.g. \"ETH\", \"SOL\", etc.\n */\n symbol: string;\n /**\n * token address.\n */\n address: string;\n /**\n * token decimals.\n */\n decimals: number;\n /**\n * token avatar image url.\n */\n image?: string;\n /**\n * token description.\n */\n description?: string;\n /**\n * token creators.\n */\n creators?: Array<TokenCreator>;\n /**\n * token launch info.\n */\n launchedFrom?: TokenLaunchedFrom;\n /**\n * token migrate progress, range is 0-100.\n */\n migrateProgress?: string;\n /**\n * token migrate info.\n */\n migratedTo?: TokenMigratedTo;\n /**\n * token social medias.\n */\n socialMedias?: TokenSocialMedias;\n /**\n * token stats.\n */\n stats?: TokenStats;\n /**\n * token market data.\n */\n marketData?: TokenMarketData;\n /**\n * token liquidity pools\n */\n liquidities?: Array<TokenLiquidity>;\n /**\n * token security.\n */\n security?: TokenSecurity;\n /**\n * token tags.\n */\n tags?: Array<string>;\n /**\n * token create time.\n */\n createdAt?: Date;\n}\n\nexport interface TokenCreator {\n /**\n * token creator's wallet address.\n */\n address?: string;\n /**\n * token creator's share percentage, range is 0-100.\n */\n share?: number;\n /**\n * whether the token creator is verified.\n */\n isVerified?: boolean;\n}\n\nexport interface TokenLaunchedFrom {\n /**\n * token launch program address.\n */\n programAddress?: string;\n /**\n * token launch protocol family.\n */\n protocolFamily?: string;\n}\n\nexport interface TokenMigratedTo {\n /**\n * token migrate program address.\n */\n programAddress?: string;\n /**\n * token migrate protocol family.\n */\n protocolFamily?: string;\n /**\n * token migrate pool address.\n */\n poolAddress?: string;\n /**\n * token migrate time.\n */\n migratedAt?: Date;\n}\n\nexport interface TokenSocialMedias {\n /**\n * token twitter url.\n */\n twitter?: string;\n /**\n * token telegram url.\n */\n telegram?: string;\n /**\n * token website url.\n */\n website?: string;\n /**\n * token tiktok url.\n */\n tiktok?: string;\n /**\n * token discord url.\n */\n discord?: string;\n /**\n * token facebook url.\n */\n facebook?: string;\n /**\n * token github url.\n */\n github?: string;\n /**\n * token instagram url.\n */\n instagram?: string;\n /**\n * token linkedin url.\n */\n linkedin?: string;\n /**\n * token medium url.\n */\n medium?: string;\n /**\n * token reddit url.\n */\n reddit?: string;\n /**\n * token youtube url.\n */\n youtube?: string;\n /**\n * token bitbucket url.\n */\n bitbucket?: string;\n /**\n * token farcaster url or handle.\n */\n farcaster?: string;\n}\n\nexport interface TokenStats {\n /**\n * token stats by 1m timeframe.\n */\n \"1m\"?: TokenStatsByResolution;\n /**\n * token stats by 5m timeframe.\n */\n \"5m\"?: TokenStatsByResolution;\n /**\n * token stats by 15m timeframe.\n */\n \"15m\"?: TokenStatsByResolution;\n /**\n * token stats by 30m timeframe.\n */\n \"30m\"?: TokenStatsByResolution;\n /**\n * token stats by 1h timeframe.\n */\n \"1h\"?: TokenStatsByResolution;\n /**\n * token stats by 4h timeframe.\n */\n \"4h\"?: TokenStatsByResolution;\n /**\n * token stats by 24h timeframe.\n */\n \"24h\"?: TokenStatsByResolution;\n}\n\nexport interface TokenStatsByResolution {\n /**\n * buy txs count\n */\n buys?: number;\n /**\n * sell txs count\n */\n sells?: number;\n /**\n * txs count\n */\n trades?: number;\n /**\n * buy addresses count\n */\n buyers?: number;\n /**\n * sell addresses count\n */\n sellers?: number;\n /**\n * trade addresses count\n */\n traders?: number;\n /**\n * buy volumes in quote token\n */\n buyVolumes?: string;\n /**\n * sell volumes in quote token\n */\n sellVolumes?: string;\n /**\n * total volumes in quote token\n */\n volumes?: string;\n /**\n * buy volumes in usd\n */\n buyVolumesInUsd?: string;\n /**\n * sell volumes in usd\n */\n sellVolumesInUsd?: string;\n /**\n * total volumes in usd\n */\n volumesInUsd?: string;\n /**\n * open price in usd\n */\n openPriceInUsd?: string;\n /**\n * close price in usd\n */\n closePriceInUsd?: string;\n /**\n * high price in usd\n */\n highPriceInUsd?: string;\n /**\n * low price in usd\n */\n lowPriceInUsd?: string;\n /**\n * price in usd\n */\n priceInUsd?: string;\n /**\n * price change %\n */\n priceChange?: string;\n}\n\nexport interface TokenMarketData {\n /**\n * total supply\n */\n totalSupply?: string;\n /**\n * market cap in quote token\n */\n marketCap?: string;\n /**\n * market cap in usd\n */\n marketCapInUsd?: string;\n /**\n * price in quote token\n */\n price?: string;\n /**\n * price in usd\n */\n priceInUsd?: string;\n /**\n * tvl in quote token\n */\n tvl?: string;\n /**\n * tvl in usd\n */\n tvlInUsd?: string;\n /**\n * holders count\n */\n holders?: number;\n /**\n * top 10 total holdings\n */\n top10Holdings?: string;\n /**\n * top 10 holdings ratio\n */\n top10HoldingsRatio?: string;\n /**\n * top 50 total holdings\n */\n top50Holdings?: string;\n /**\n * top 50 holdings ratio\n */\n top50HoldingsRatio?: string;\n /**\n * top 100 total holdings\n */\n top100Holdings?: string;\n /**\n * top 100 holdings ratio\n */\n top100HoldingsRatio?: string;\n /**\n * Bluechip holders count\n */\n bluechipHolders?: number;\n /**\n * Bluechip total holdings\n */\n bluechipHoldings?: string;\n /**\n * Bluechip holdings ratio\n */\n bluechipHoldingsRatio?: string;\n /**\n * KOL holders count\n */\n kolHolders?: number;\n /**\n * KOL total holdings\n */\n kolHoldings?: string;\n /**\n * KOL holdings ratio\n */\n kolHoldingsRatio?: string;\n /**\n * Sniper holders count\n */\n sniperHolders?: number;\n /**\n * Sniper total holdings\n */\n sniperHoldings?: string;\n /**\n * Sniper holdings ratio\n */\n sniperHoldingsRatio?: string;\n /**\n * Pro holders count\n */\n proHolders?: number;\n /**\n * Pro total holdings\n */\n proHoldings?: string;\n /**\n * Pro holdings ratio\n */\n proHoldingsRatio?: string;\n /**\n * Insider holders count\n */\n insiderHolders?: number;\n /**\n * Insider total holdings\n */\n insiderHoldings?: string;\n /**\n * Insider holdings ratio\n */\n insiderHoldingsRatio?: string;\n /**\n * Sandwich holders count\n */\n sandwichHolders?: number;\n /**\n * Sandwich total holdings\n */\n sandwichHoldings?: string;\n /**\n * Sandwich holdings ratio\n */\n sandwichHoldingsRatio?: string;\n /**\n * Fresh holders count\n */\n freshHolders?: number;\n /**\n * Fresh total holdings\n */\n freshHoldings?: string;\n /**\n * Fresh holdings ratio\n */\n freshHoldingsRatio?: string;\n /**\n * Bundle holders count\n */\n bundleHolders?: number;\n /**\n * Bundle total holdings\n */\n bundleHoldings?: string;\n /**\n * Bundle holdings ratio\n */\n bundleHoldingsRatio?: string;\n /**\n * Dev holders count\n */\n devHolders?: number;\n /**\n * Dev total holdings\n */\n devHoldings?: string;\n /**\n * Dev holdings ratio\n */\n devHoldingsRatio?: string;\n}\n\nexport interface TokenLiquidity {\n /**\n * pool avatar image\n */\n image?: string;\n /**\n * pair token address.\n */\n pairAddress?: string;\n /**\n * pool address.\n */\n poolAddress?: string;\n /**\n * program address.\n */\n programAddress?: string;\n /**\n * protocol name.\n */\n protocolName?: string;\n /**\n * protocol family.\n */\n protocolFamily?: string;\n /**\n * tvl in quote token.\n */\n tvl?: string;\n /**\n * tvl in usd.\n */\n tvlInUsd?: string;\n}\n\n/**\n * Token security flags. Backend currently exposes the five Solana SPL flags\n * below; additional checks may be added in the future as the security service\n * gains coverage of more chains and risk vectors.\n */\nexport interface TokenSecurity {\n /**\n * whether the token has transfer fee.\n */\n hasTransferFee?: boolean;\n /**\n * whether the token transfer fee is upgradable.\n */\n isTransferFeeUpgradable?: boolean;\n /**\n * whether the token is transferable.\n */\n isTransferable?: boolean;\n /**\n * whether the token is freezable.\n */\n isFreezable?: boolean;\n /**\n * whether the token is closable.\n */\n isClosable?: boolean;\n}\n\nexport type TokenResolution =\n | \"1s\"\n | \"15s\"\n | \"30s\"\n | \"1m\"\n | \"5m\"\n | \"15m\"\n | \"30m\"\n | \"1h\"\n | \"4h\"\n | \"12h\"\n | \"24h\";\n\nexport interface TokenCandle {\n /**\n * open price in usd\n */\n open: string;\n /**\n * close price in usd\n */\n close: string;\n /**\n * high price in usd\n */\n high: string;\n /**\n * low price in usd\n */\n low: string;\n /**\n * volume in usd\n */\n volume: string;\n /**\n * volume in token amount\n */\n volumeInTokenAmount?: string;\n /**\n * trades count in this candle\n */\n trades?: number;\n /**\n * resolution\n */\n resolution: TokenResolution;\n /**\n * timestamp\n */\n timestamp: Date;\n}\n\nexport interface TokenHolder {\n /**\n * holder wallet address\n */\n address: string;\n /**\n * holdings amount in token\n */\n amount: string;\n /**\n * holdings amount in usd\n */\n amountInUsd: string;\n /**\n * holdings ratio, range is 0-100\n */\n ratio: string;\n /**\n * Holder classification tags (Phase 3). Sparse — only present when the\n * wallet matches one of the known patterns (kol/smart/sniper/dev/...).\n */\n tags?: Array<WalletTag>;\n /**\n * The last time this wallet was active on-chain (Phase 3).\n * Sparse (~80% fill rate).\n */\n lastActiveAt?: Date;\n /**\n * The first time this wallet started holding this token (Phase 3).\n * Sparse (~60% fill rate).\n */\n startHoldingAt?: Date;\n}\n\nexport interface TokenTopTrader {\n /**\n * trader wallet address\n */\n address: string;\n /**\n * current holdings amount in token\n */\n amount: string;\n /**\n * current holdings amount in usd\n */\n amountInUsd: string;\n /**\n * Trader classification tags.\n */\n tags?: Array<WalletTag>;\n /**\n * The last time this wallet was active on-chain.\n */\n lastActiveAt?: Date;\n /**\n * The first time this wallet started holding this token.\n */\n startHoldingAt?: Date;\n /**\n * Average buy price in USD per token.\n */\n averageBuyPriceInUsd?: string;\n /**\n * Average sell price in USD per token.\n */\n averageSellPriceInUsd?: string;\n /**\n * Cumulative token quantity bought all-time.\n */\n buyAmountCur?: string;\n /**\n * Cumulative token quantity sold all-time.\n */\n sellAmountCur?: string;\n /**\n * Total buy volume in USD.\n */\n totalBuyAmountInUsd?: string;\n /**\n * Total sell volume in USD.\n */\n totalSellAmountInUsd?: string;\n /**\n * Realized PnL rate.\n */\n realizedPnl?: string;\n /**\n * Realized PnL in USD.\n */\n totalRealizedPnlInUsd?: string;\n /**\n * Unrealized PnL rate.\n */\n unrealizedPnl?: string;\n /**\n * Unrealized PnL in USD.\n */\n unrealizedPnlInUsd?: string;\n /**\n * Return on investment.\n */\n roi?: string;\n /**\n * Total PnL in USD.\n */\n totalPnlInUsd?: string;\n /**\n * Total buy trade count.\n */\n totalBuyCount?: number;\n /**\n * Total sell trade count.\n */\n totalSellCount?: number;\n /**\n * Whether position was acquired mainly via transfer.\n */\n transferIn?: boolean;\n /**\n * All-time transfer-in event count.\n */\n transferInCount?: number;\n /**\n * All-time transfer-out event count.\n */\n transferOutCount?: number;\n}\n"],"mappings":"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","names":["SwapMode","Chain","ChainNamespace","SolanaTokenProtocol"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@liberfi.io/types",
3
- "version": "0.4.22",
3
+ "version": "0.4.24",
4
4
  "description": "Liberfi React SDK types",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -24,7 +24,7 @@
24
24
  "devDependencies": {
25
25
  "tsup": "^8.5.0",
26
26
  "typedoc": "^0.28.12",
27
- "tsconfig": "0.1.205"
27
+ "tsconfig": "0.1.207"
28
28
  },
29
29
  "publishConfig": {
30
30
  "access": "public"