@liberfi.io/types 0.1.12 → 0.1.15

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.
package/dist/index.d.mts CHANGED
@@ -811,6 +811,30 @@ interface Portfolio {
811
811
  amountInUsd: string;
812
812
  pnl?: PortfolioPnl;
813
813
  }
814
+ /**
815
+ * Wallet PnL summary
816
+ */
817
+ interface WalletPnl {
818
+ chain: Chain;
819
+ address: string;
820
+ tokens?: number;
821
+ buys?: number;
822
+ sells?: number;
823
+ totalTrades?: number;
824
+ wins?: number;
825
+ losses?: number;
826
+ winRate?: string;
827
+ buyAmountInUsd?: string;
828
+ sellAmountInUsd?: string;
829
+ totalCostInUsd?: string;
830
+ realizedProfitInUsd?: string;
831
+ realizedProfitRatio?: string;
832
+ unrealizedProfitInUsd?: string;
833
+ unrealizedProfitRatio?: string;
834
+ totalProfitInUsd?: string;
835
+ totalProfitRatio?: string;
836
+ avgProfitPerTradeInUsd?: string;
837
+ }
814
838
  /**
815
839
  * Wallet portfolios
816
840
  */
@@ -1063,6 +1087,27 @@ interface IClient {
1063
1087
  * @returns wallet portfolios
1064
1088
  */
1065
1089
  getWalletPortfolios(chain: Chain, address: string): Promise<WalletPortfolios>;
1090
+ /**
1091
+ * fetch wallet PnL summary
1092
+ * @param chain chain id
1093
+ * @param address wallet address
1094
+ * @param resolution pnl resolution (e.g. "7d", "30d")
1095
+ * @returns wallet pnl summary
1096
+ */
1097
+ getWalletPnl(chain: Chain, address: string, resolution?: string): Promise<WalletPnl>;
1098
+ /**
1099
+ * fetch wallet portfolio PnL details (per-token)
1100
+ * @param chain chain id
1101
+ * @param address wallet address
1102
+ * @param options optional query options
1103
+ * @returns portfolio pnl list with summary
1104
+ */
1105
+ getWalletPortfolioPnls(chain: Chain, address: string, options?: {
1106
+ cursor?: string;
1107
+ limit?: number;
1108
+ }): Promise<CursorList$1<Portfolio> & {
1109
+ summary: WalletPnl;
1110
+ }>;
1066
1111
  /**
1067
1112
  * fetch wallet's trade activities
1068
1113
  * @param chain chain id
@@ -1116,6 +1161,11 @@ type PortfolioPnlSubscribed = PortfolioPnl & {
1116
1161
  chain: Chain;
1117
1162
  address: string;
1118
1163
  };
1164
+ interface TokenDataSubscribed {
1165
+ address: string;
1166
+ stats: TokenStats;
1167
+ marketData: TokenMarketData;
1168
+ }
1119
1169
  /**
1120
1170
  * Subscribe client interface
1121
1171
  */
@@ -1221,6 +1271,27 @@ interface ISubscribeClient {
1221
1271
  * @returns subscription
1222
1272
  */
1223
1273
  subscribeNewTokensStats(chain: Chain, callback: (stats: Array<TokenStats>) => void): ISubscription;
1274
+ /**
1275
+ * Subscribe `New` token list's combined stats & market data changes
1276
+ * @param chain chain id
1277
+ * @param callback callback function
1278
+ * @returns subscription
1279
+ */
1280
+ subscribeNewTokensData(chain: Chain, callback: (data: Array<TokenDataSubscribed>) => void): ISubscription;
1281
+ /**
1282
+ * Subscribe `Migrated` token list's combined stats & market data changes
1283
+ * @param chain chain id
1284
+ * @param callback callback function
1285
+ * @returns subscription
1286
+ */
1287
+ subscribeMigratedTokensData(chain: Chain, callback: (data: Array<TokenDataSubscribed>) => void): ISubscription;
1288
+ /**
1289
+ * Subscribe `FinalStretch` token list's combined stats & market data changes
1290
+ * @param chain chain id
1291
+ * @param callback callback function
1292
+ * @returns subscription
1293
+ */
1294
+ subscribeFinalStretchTokensData(chain: Chain, callback: (data: Array<TokenDataSubscribed>) => void): ISubscription;
1224
1295
  }
1225
1296
 
1226
1297
  /**
@@ -1541,6 +1612,25 @@ interface ListChannelEventsOptions {
1541
1612
  }
1542
1613
  type ChannelsList = PageList<Channel>;
1543
1614
  type ChannelEventsList = CursorList<ChannelEvent>;
1615
+ /**
1616
+ * X (Twitter) Eligibility Information
1617
+ */
1618
+ interface XEligibilityInfo {
1619
+ /** Authorization status: "not_authorized" | "authorized" | "auth_failed" */
1620
+ status: string;
1621
+ /** Status message */
1622
+ message?: string;
1623
+ /** Twitter user ID */
1624
+ twitter_id?: string;
1625
+ /** Twitter username */
1626
+ twitter_name?: string;
1627
+ /** Follower count */
1628
+ follower_count?: string;
1629
+ /** Account age in days */
1630
+ account_age_days?: string;
1631
+ /** Whether account has violations */
1632
+ has_violations?: boolean;
1633
+ }
1544
1634
  interface IChannelsClient {
1545
1635
  get(id: string): Promise<Channel>;
1546
1636
  getChannels(options?: ListChannelsOptions): Promise<ChannelsList>;
@@ -1553,6 +1643,17 @@ interface IChannelsClient {
1553
1643
  update(options: UpdateChannelOptions): Promise<Channel>;
1554
1644
  updateSources(options: UpdateChannelSourcesOptions): Promise<Array<ChannelSource>>;
1555
1645
  getSources(channelId: string): Promise<Array<ChannelSource>>;
1646
+ /**
1647
+ * Check X (Twitter) eligibility status
1648
+ * @returns X eligibility information including authorization status
1649
+ */
1650
+ checkXEligibility(): Promise<XEligibilityInfo>;
1651
+ /**
1652
+ * Get X (Twitter) OAuth authorization URL
1653
+ * @param returnUrl - Optional return URL after authorization
1654
+ * @returns Authorization URL
1655
+ */
1656
+ getXAuthorizeUrl(returnUrl?: string): Promise<string>;
1556
1657
  }
1557
1658
 
1558
1659
  type index_ChannelEventsList = ChannelEventsList;
@@ -1583,14 +1684,16 @@ declare const index_SwapMode: typeof SwapMode;
1583
1684
  type index_SwapParams = SwapParams;
1584
1685
  type index_SwapRoute = SwapRoute;
1585
1686
  type index_SwapRoutePlan = SwapRoutePlan;
1687
+ type index_TokenDataSubscribed = TokenDataSubscribed;
1586
1688
  type index_TokenFieldOption = TokenFieldOption;
1587
1689
  type index_TokenFilterOption = TokenFilterOption;
1588
1690
  type index_TokenSubscribed = TokenSubscribed;
1589
1691
  type index_UpdateChannelOptions = UpdateChannelOptions;
1590
1692
  type index_UpdateChannelSourcesOptions = UpdateChannelSourcesOptions;
1591
1693
  type index_WalletPnlSubscribed = WalletPnlSubscribed;
1694
+ type index_XEligibilityInfo = XEligibilityInfo;
1592
1695
  declare namespace index {
1593
- export { type index_ChannelEventsList as ChannelEventsList, type index_ChannelSourceOption as ChannelSourceOption, type index_ChannelsList as ChannelsList, type index_CreateChannelOptions as CreateChannelOptions, type CursorList$1 as CursorList, type index_CursorListOptions as CursorListOptions, type index_GeneratedMemeInfo as GeneratedMemeInfo, type index_GetTokenCandlesOptions as GetTokenCandlesOptions, type index_GetTokenListOptions as GetTokenListOptions, type index_GetTradeActivitiesOptions as GetTradeActivitiesOptions, type index_IChannelsClient as IChannelsClient, type index_IClient as IClient, type index_IMediaTrackClient as IMediaTrackClient, type index_ISubscribeClient as ISubscribeClient, type index_ISubscription as ISubscription, type index_ListChannelEventsOptions as ListChannelEventsOptions, type index_ListChannelsOptions as ListChannelsOptions, type index_PortfolioPnlSubscribed as PortfolioPnlSubscribed, type index_PortfolioSubscribed as PortfolioSubscribed, type index_SearchTokenCursorList as SearchTokenCursorList, type index_SearchTokensOptions as SearchTokensOptions, type index_SendTxParams as SendTxParams, type index_SendTxResult as SendTxResult, type index_SubscribeTweetMediasOptions as SubscribeTweetMediasOptions, index_SwapMode as SwapMode, type index_SwapParams as SwapParams, type index_SwapRoute as SwapRoute, type index_SwapRoutePlan as SwapRoutePlan, type index_TokenFieldOption as TokenFieldOption, type index_TokenFilterOption as TokenFilterOption, type index_TokenSubscribed as TokenSubscribed, type index_UpdateChannelOptions as UpdateChannelOptions, type index_UpdateChannelSourcesOptions as UpdateChannelSourcesOptions, type index_WalletPnlSubscribed as WalletPnlSubscribed };
1696
+ export { type index_ChannelEventsList as ChannelEventsList, type index_ChannelSourceOption as ChannelSourceOption, type index_ChannelsList as ChannelsList, type index_CreateChannelOptions as CreateChannelOptions, type CursorList$1 as CursorList, type index_CursorListOptions as CursorListOptions, type index_GeneratedMemeInfo as GeneratedMemeInfo, type index_GetTokenCandlesOptions as GetTokenCandlesOptions, type index_GetTokenListOptions as GetTokenListOptions, type index_GetTradeActivitiesOptions as GetTradeActivitiesOptions, type index_IChannelsClient as IChannelsClient, type index_IClient as IClient, type index_IMediaTrackClient as IMediaTrackClient, type index_ISubscribeClient as ISubscribeClient, type index_ISubscription as ISubscription, type index_ListChannelEventsOptions as ListChannelEventsOptions, type index_ListChannelsOptions as ListChannelsOptions, type index_PortfolioPnlSubscribed as PortfolioPnlSubscribed, type index_PortfolioSubscribed as PortfolioSubscribed, type index_SearchTokenCursorList as SearchTokenCursorList, type index_SearchTokensOptions as SearchTokensOptions, type index_SendTxParams as SendTxParams, type index_SendTxResult as SendTxResult, type index_SubscribeTweetMediasOptions as SubscribeTweetMediasOptions, index_SwapMode as SwapMode, type index_SwapParams as SwapParams, type index_SwapRoute as SwapRoute, type index_SwapRoutePlan as SwapRoutePlan, type index_TokenDataSubscribed as TokenDataSubscribed, type index_TokenFieldOption as TokenFieldOption, type index_TokenFilterOption as TokenFilterOption, type index_TokenSubscribed as TokenSubscribed, type index_UpdateChannelOptions as UpdateChannelOptions, type index_UpdateChannelSourcesOptions as UpdateChannelSourcesOptions, type index_WalletPnlSubscribed as WalletPnlSubscribed, type index_XEligibilityInfo as XEligibilityInfo };
1594
1697
  }
1595
1698
 
1596
1699
  declare global {
@@ -1600,7 +1703,7 @@ declare global {
1600
1703
  };
1601
1704
  }
1602
1705
  }
1603
- declare const _default: "0.1.11";
1706
+ declare const _default: "0.1.15";
1604
1707
 
1605
1708
  type NetworkId = "testnet" | "mainnet";
1606
1709
 
@@ -1630,4 +1733,4 @@ declare enum SolanaTokenProtocol {
1630
1733
  type TokenProtocol = keyof typeof SolanaTokenProtocol | (string & {});
1631
1734
  declare const SOLANA_TOKEN_PROTOCOLS: SolanaTokenProtocol[];
1632
1735
 
1633
- export { index as API, ApiError, type BaseChannelEvent, Chain, ChainNamespace, type Channel, type ChannelEvent, type ChannelEventsList, type ChannelSink, type ChannelSource, type ChannelSourceOption, type ChannelTradeEvent, type ChannelsList, type CreateChannelOptions, type CursorList$1 as CursorList, type CursorListOptions, type GeneratedMemeInfo, type GetTokenCandlesOptions, type GetTokenListOptions, type GetTradeActivitiesOptions, type IChannelsClient, type IClient, type IMedia, type IMediaTrackClient, type ISubscribeClient, type ISubscription, type ListChannelEventsOptions, type ListChannelsOptions, type MediaToken, type NetworkId, type Portfolio, type PortfolioPnl, type PortfolioPnlSubscribed, type PortfolioSubscribed, SOLANA_TOKEN_PROTOCOLS, type SearchTokenCursorList, type SearchTokensOptions, type SendTxParams, type SendTxResult, SolanaTokenProtocol, type SourceTweet, type SubscribeTweetMediasOptions, SwapMode, type SwapParams, type SwapRoute, type SwapRoutePlan, type Token, type TokenCandle, type TokenCreator, type TokenFieldOption, type TokenFilterOption, type TokenHistoryPriceObject, type TokenHolder, type TokenLaunchedFrom, type TokenLiquidity, type TokenMarketData, type TokenMigratedTo, type TokenProtocol, type TokenResolution, type TokenSecurity, type TokenSocialMedias, type TokenStats, type TokenStatsByResolution, type TokenSubscribed, type TradeActivity, type TradeDex, type TradeToken, type Tweet, type TweetContent, type TweetContentMedia, type TweetMedia, type TweetUser, type UpdateChannelOptions, type UpdateChannelSourcesOptions, type WalletPnlSubscribed, type WalletPortfolios, _default as version };
1736
+ export { index as API, ApiError, type BaseChannelEvent, Chain, ChainNamespace, type Channel, type ChannelEvent, type ChannelEventsList, type ChannelSink, type ChannelSource, type ChannelSourceOption, type ChannelTradeEvent, type ChannelsList, type CreateChannelOptions, type CursorList$1 as CursorList, type CursorListOptions, type GeneratedMemeInfo, type GetTokenCandlesOptions, type GetTokenListOptions, type GetTradeActivitiesOptions, type IChannelsClient, type IClient, type IMedia, type IMediaTrackClient, type ISubscribeClient, type ISubscription, type ListChannelEventsOptions, type ListChannelsOptions, type MediaToken, type NetworkId, type Portfolio, type PortfolioPnl, type PortfolioPnlSubscribed, type PortfolioSubscribed, SOLANA_TOKEN_PROTOCOLS, type SearchTokenCursorList, type SearchTokensOptions, type SendTxParams, type SendTxResult, SolanaTokenProtocol, type SourceTweet, type SubscribeTweetMediasOptions, SwapMode, type SwapParams, type SwapRoute, type SwapRoutePlan, type Token, type TokenCandle, type TokenCreator, type TokenDataSubscribed, type TokenFieldOption, type TokenFilterOption, type TokenHistoryPriceObject, type TokenHolder, type TokenLaunchedFrom, type TokenLiquidity, type TokenMarketData, type TokenMigratedTo, type TokenProtocol, type TokenResolution, type TokenSecurity, type TokenSocialMedias, type TokenStats, type TokenStatsByResolution, type TokenSubscribed, type TradeActivity, type TradeDex, type TradeToken, type Tweet, type TweetContent, type TweetContentMedia, type TweetMedia, type TweetUser, type UpdateChannelOptions, type UpdateChannelSourcesOptions, type WalletPnl, type WalletPnlSubscribed, type WalletPortfolios, type XEligibilityInfo, _default as version };
package/dist/index.d.ts CHANGED
@@ -811,6 +811,30 @@ interface Portfolio {
811
811
  amountInUsd: string;
812
812
  pnl?: PortfolioPnl;
813
813
  }
814
+ /**
815
+ * Wallet PnL summary
816
+ */
817
+ interface WalletPnl {
818
+ chain: Chain;
819
+ address: string;
820
+ tokens?: number;
821
+ buys?: number;
822
+ sells?: number;
823
+ totalTrades?: number;
824
+ wins?: number;
825
+ losses?: number;
826
+ winRate?: string;
827
+ buyAmountInUsd?: string;
828
+ sellAmountInUsd?: string;
829
+ totalCostInUsd?: string;
830
+ realizedProfitInUsd?: string;
831
+ realizedProfitRatio?: string;
832
+ unrealizedProfitInUsd?: string;
833
+ unrealizedProfitRatio?: string;
834
+ totalProfitInUsd?: string;
835
+ totalProfitRatio?: string;
836
+ avgProfitPerTradeInUsd?: string;
837
+ }
814
838
  /**
815
839
  * Wallet portfolios
816
840
  */
@@ -1063,6 +1087,27 @@ interface IClient {
1063
1087
  * @returns wallet portfolios
1064
1088
  */
1065
1089
  getWalletPortfolios(chain: Chain, address: string): Promise<WalletPortfolios>;
1090
+ /**
1091
+ * fetch wallet PnL summary
1092
+ * @param chain chain id
1093
+ * @param address wallet address
1094
+ * @param resolution pnl resolution (e.g. "7d", "30d")
1095
+ * @returns wallet pnl summary
1096
+ */
1097
+ getWalletPnl(chain: Chain, address: string, resolution?: string): Promise<WalletPnl>;
1098
+ /**
1099
+ * fetch wallet portfolio PnL details (per-token)
1100
+ * @param chain chain id
1101
+ * @param address wallet address
1102
+ * @param options optional query options
1103
+ * @returns portfolio pnl list with summary
1104
+ */
1105
+ getWalletPortfolioPnls(chain: Chain, address: string, options?: {
1106
+ cursor?: string;
1107
+ limit?: number;
1108
+ }): Promise<CursorList$1<Portfolio> & {
1109
+ summary: WalletPnl;
1110
+ }>;
1066
1111
  /**
1067
1112
  * fetch wallet's trade activities
1068
1113
  * @param chain chain id
@@ -1116,6 +1161,11 @@ type PortfolioPnlSubscribed = PortfolioPnl & {
1116
1161
  chain: Chain;
1117
1162
  address: string;
1118
1163
  };
1164
+ interface TokenDataSubscribed {
1165
+ address: string;
1166
+ stats: TokenStats;
1167
+ marketData: TokenMarketData;
1168
+ }
1119
1169
  /**
1120
1170
  * Subscribe client interface
1121
1171
  */
@@ -1221,6 +1271,27 @@ interface ISubscribeClient {
1221
1271
  * @returns subscription
1222
1272
  */
1223
1273
  subscribeNewTokensStats(chain: Chain, callback: (stats: Array<TokenStats>) => void): ISubscription;
1274
+ /**
1275
+ * Subscribe `New` token list's combined stats & market data changes
1276
+ * @param chain chain id
1277
+ * @param callback callback function
1278
+ * @returns subscription
1279
+ */
1280
+ subscribeNewTokensData(chain: Chain, callback: (data: Array<TokenDataSubscribed>) => void): ISubscription;
1281
+ /**
1282
+ * Subscribe `Migrated` token list's combined stats & market data changes
1283
+ * @param chain chain id
1284
+ * @param callback callback function
1285
+ * @returns subscription
1286
+ */
1287
+ subscribeMigratedTokensData(chain: Chain, callback: (data: Array<TokenDataSubscribed>) => void): ISubscription;
1288
+ /**
1289
+ * Subscribe `FinalStretch` token list's combined stats & market data changes
1290
+ * @param chain chain id
1291
+ * @param callback callback function
1292
+ * @returns subscription
1293
+ */
1294
+ subscribeFinalStretchTokensData(chain: Chain, callback: (data: Array<TokenDataSubscribed>) => void): ISubscription;
1224
1295
  }
1225
1296
 
1226
1297
  /**
@@ -1541,6 +1612,25 @@ interface ListChannelEventsOptions {
1541
1612
  }
1542
1613
  type ChannelsList = PageList<Channel>;
1543
1614
  type ChannelEventsList = CursorList<ChannelEvent>;
1615
+ /**
1616
+ * X (Twitter) Eligibility Information
1617
+ */
1618
+ interface XEligibilityInfo {
1619
+ /** Authorization status: "not_authorized" | "authorized" | "auth_failed" */
1620
+ status: string;
1621
+ /** Status message */
1622
+ message?: string;
1623
+ /** Twitter user ID */
1624
+ twitter_id?: string;
1625
+ /** Twitter username */
1626
+ twitter_name?: string;
1627
+ /** Follower count */
1628
+ follower_count?: string;
1629
+ /** Account age in days */
1630
+ account_age_days?: string;
1631
+ /** Whether account has violations */
1632
+ has_violations?: boolean;
1633
+ }
1544
1634
  interface IChannelsClient {
1545
1635
  get(id: string): Promise<Channel>;
1546
1636
  getChannels(options?: ListChannelsOptions): Promise<ChannelsList>;
@@ -1553,6 +1643,17 @@ interface IChannelsClient {
1553
1643
  update(options: UpdateChannelOptions): Promise<Channel>;
1554
1644
  updateSources(options: UpdateChannelSourcesOptions): Promise<Array<ChannelSource>>;
1555
1645
  getSources(channelId: string): Promise<Array<ChannelSource>>;
1646
+ /**
1647
+ * Check X (Twitter) eligibility status
1648
+ * @returns X eligibility information including authorization status
1649
+ */
1650
+ checkXEligibility(): Promise<XEligibilityInfo>;
1651
+ /**
1652
+ * Get X (Twitter) OAuth authorization URL
1653
+ * @param returnUrl - Optional return URL after authorization
1654
+ * @returns Authorization URL
1655
+ */
1656
+ getXAuthorizeUrl(returnUrl?: string): Promise<string>;
1556
1657
  }
1557
1658
 
1558
1659
  type index_ChannelEventsList = ChannelEventsList;
@@ -1583,14 +1684,16 @@ declare const index_SwapMode: typeof SwapMode;
1583
1684
  type index_SwapParams = SwapParams;
1584
1685
  type index_SwapRoute = SwapRoute;
1585
1686
  type index_SwapRoutePlan = SwapRoutePlan;
1687
+ type index_TokenDataSubscribed = TokenDataSubscribed;
1586
1688
  type index_TokenFieldOption = TokenFieldOption;
1587
1689
  type index_TokenFilterOption = TokenFilterOption;
1588
1690
  type index_TokenSubscribed = TokenSubscribed;
1589
1691
  type index_UpdateChannelOptions = UpdateChannelOptions;
1590
1692
  type index_UpdateChannelSourcesOptions = UpdateChannelSourcesOptions;
1591
1693
  type index_WalletPnlSubscribed = WalletPnlSubscribed;
1694
+ type index_XEligibilityInfo = XEligibilityInfo;
1592
1695
  declare namespace index {
1593
- export { type index_ChannelEventsList as ChannelEventsList, type index_ChannelSourceOption as ChannelSourceOption, type index_ChannelsList as ChannelsList, type index_CreateChannelOptions as CreateChannelOptions, type CursorList$1 as CursorList, type index_CursorListOptions as CursorListOptions, type index_GeneratedMemeInfo as GeneratedMemeInfo, type index_GetTokenCandlesOptions as GetTokenCandlesOptions, type index_GetTokenListOptions as GetTokenListOptions, type index_GetTradeActivitiesOptions as GetTradeActivitiesOptions, type index_IChannelsClient as IChannelsClient, type index_IClient as IClient, type index_IMediaTrackClient as IMediaTrackClient, type index_ISubscribeClient as ISubscribeClient, type index_ISubscription as ISubscription, type index_ListChannelEventsOptions as ListChannelEventsOptions, type index_ListChannelsOptions as ListChannelsOptions, type index_PortfolioPnlSubscribed as PortfolioPnlSubscribed, type index_PortfolioSubscribed as PortfolioSubscribed, type index_SearchTokenCursorList as SearchTokenCursorList, type index_SearchTokensOptions as SearchTokensOptions, type index_SendTxParams as SendTxParams, type index_SendTxResult as SendTxResult, type index_SubscribeTweetMediasOptions as SubscribeTweetMediasOptions, index_SwapMode as SwapMode, type index_SwapParams as SwapParams, type index_SwapRoute as SwapRoute, type index_SwapRoutePlan as SwapRoutePlan, type index_TokenFieldOption as TokenFieldOption, type index_TokenFilterOption as TokenFilterOption, type index_TokenSubscribed as TokenSubscribed, type index_UpdateChannelOptions as UpdateChannelOptions, type index_UpdateChannelSourcesOptions as UpdateChannelSourcesOptions, type index_WalletPnlSubscribed as WalletPnlSubscribed };
1696
+ export { type index_ChannelEventsList as ChannelEventsList, type index_ChannelSourceOption as ChannelSourceOption, type index_ChannelsList as ChannelsList, type index_CreateChannelOptions as CreateChannelOptions, type CursorList$1 as CursorList, type index_CursorListOptions as CursorListOptions, type index_GeneratedMemeInfo as GeneratedMemeInfo, type index_GetTokenCandlesOptions as GetTokenCandlesOptions, type index_GetTokenListOptions as GetTokenListOptions, type index_GetTradeActivitiesOptions as GetTradeActivitiesOptions, type index_IChannelsClient as IChannelsClient, type index_IClient as IClient, type index_IMediaTrackClient as IMediaTrackClient, type index_ISubscribeClient as ISubscribeClient, type index_ISubscription as ISubscription, type index_ListChannelEventsOptions as ListChannelEventsOptions, type index_ListChannelsOptions as ListChannelsOptions, type index_PortfolioPnlSubscribed as PortfolioPnlSubscribed, type index_PortfolioSubscribed as PortfolioSubscribed, type index_SearchTokenCursorList as SearchTokenCursorList, type index_SearchTokensOptions as SearchTokensOptions, type index_SendTxParams as SendTxParams, type index_SendTxResult as SendTxResult, type index_SubscribeTweetMediasOptions as SubscribeTweetMediasOptions, index_SwapMode as SwapMode, type index_SwapParams as SwapParams, type index_SwapRoute as SwapRoute, type index_SwapRoutePlan as SwapRoutePlan, type index_TokenDataSubscribed as TokenDataSubscribed, type index_TokenFieldOption as TokenFieldOption, type index_TokenFilterOption as TokenFilterOption, type index_TokenSubscribed as TokenSubscribed, type index_UpdateChannelOptions as UpdateChannelOptions, type index_UpdateChannelSourcesOptions as UpdateChannelSourcesOptions, type index_WalletPnlSubscribed as WalletPnlSubscribed, type index_XEligibilityInfo as XEligibilityInfo };
1594
1697
  }
1595
1698
 
1596
1699
  declare global {
@@ -1600,7 +1703,7 @@ declare global {
1600
1703
  };
1601
1704
  }
1602
1705
  }
1603
- declare const _default: "0.1.11";
1706
+ declare const _default: "0.1.15";
1604
1707
 
1605
1708
  type NetworkId = "testnet" | "mainnet";
1606
1709
 
@@ -1630,4 +1733,4 @@ declare enum SolanaTokenProtocol {
1630
1733
  type TokenProtocol = keyof typeof SolanaTokenProtocol | (string & {});
1631
1734
  declare const SOLANA_TOKEN_PROTOCOLS: SolanaTokenProtocol[];
1632
1735
 
1633
- export { index as API, ApiError, type BaseChannelEvent, Chain, ChainNamespace, type Channel, type ChannelEvent, type ChannelEventsList, type ChannelSink, type ChannelSource, type ChannelSourceOption, type ChannelTradeEvent, type ChannelsList, type CreateChannelOptions, type CursorList$1 as CursorList, type CursorListOptions, type GeneratedMemeInfo, type GetTokenCandlesOptions, type GetTokenListOptions, type GetTradeActivitiesOptions, type IChannelsClient, type IClient, type IMedia, type IMediaTrackClient, type ISubscribeClient, type ISubscription, type ListChannelEventsOptions, type ListChannelsOptions, type MediaToken, type NetworkId, type Portfolio, type PortfolioPnl, type PortfolioPnlSubscribed, type PortfolioSubscribed, SOLANA_TOKEN_PROTOCOLS, type SearchTokenCursorList, type SearchTokensOptions, type SendTxParams, type SendTxResult, SolanaTokenProtocol, type SourceTweet, type SubscribeTweetMediasOptions, SwapMode, type SwapParams, type SwapRoute, type SwapRoutePlan, type Token, type TokenCandle, type TokenCreator, type TokenFieldOption, type TokenFilterOption, type TokenHistoryPriceObject, type TokenHolder, type TokenLaunchedFrom, type TokenLiquidity, type TokenMarketData, type TokenMigratedTo, type TokenProtocol, type TokenResolution, type TokenSecurity, type TokenSocialMedias, type TokenStats, type TokenStatsByResolution, type TokenSubscribed, type TradeActivity, type TradeDex, type TradeToken, type Tweet, type TweetContent, type TweetContentMedia, type TweetMedia, type TweetUser, type UpdateChannelOptions, type UpdateChannelSourcesOptions, type WalletPnlSubscribed, type WalletPortfolios, _default as version };
1736
+ export { index as API, ApiError, type BaseChannelEvent, Chain, ChainNamespace, type Channel, type ChannelEvent, type ChannelEventsList, type ChannelSink, type ChannelSource, type ChannelSourceOption, type ChannelTradeEvent, type ChannelsList, type CreateChannelOptions, type CursorList$1 as CursorList, type CursorListOptions, type GeneratedMemeInfo, type GetTokenCandlesOptions, type GetTokenListOptions, type GetTradeActivitiesOptions, type IChannelsClient, type IClient, type IMedia, type IMediaTrackClient, type ISubscribeClient, type ISubscription, type ListChannelEventsOptions, type ListChannelsOptions, type MediaToken, type NetworkId, type Portfolio, type PortfolioPnl, type PortfolioPnlSubscribed, type PortfolioSubscribed, SOLANA_TOKEN_PROTOCOLS, type SearchTokenCursorList, type SearchTokensOptions, type SendTxParams, type SendTxResult, SolanaTokenProtocol, type SourceTweet, type SubscribeTweetMediasOptions, SwapMode, type SwapParams, type SwapRoute, type SwapRoutePlan, type Token, type TokenCandle, type TokenCreator, type TokenDataSubscribed, type TokenFieldOption, type TokenFilterOption, type TokenHistoryPriceObject, type TokenHolder, type TokenLaunchedFrom, type TokenLiquidity, type TokenMarketData, type TokenMigratedTo, type TokenProtocol, type TokenResolution, type TokenSecurity, type TokenSocialMedias, type TokenStats, type TokenStatsByResolution, type TokenSubscribed, type TradeActivity, type TradeDex, type TradeToken, type Tweet, type TweetContent, type TweetContentMedia, type TweetMedia, type TweetUser, type UpdateChannelOptions, type UpdateChannelSourcesOptions, type WalletPnl, type WalletPnlSubscribed, type WalletPortfolios, type XEligibilityInfo, _default as version };
package/dist/index.js CHANGED
@@ -47,9 +47,9 @@ var SwapMode = /* @__PURE__ */ ((SwapMode2) => {
47
47
  // src/version.ts
48
48
  if (typeof window !== "undefined") {
49
49
  window.__LIBERFI_VERSION__ = window.__LIBERFI_VERSION__ || {};
50
- window.__LIBERFI_VERSION__["@liberfi.io/types"] = "0.1.11";
50
+ window.__LIBERFI_VERSION__["@liberfi.io/types"] = "0.1.15";
51
51
  }
52
- var version_default = "0.1.11";
52
+ var version_default = "0.1.15";
53
53
 
54
54
  // src/chains.ts
55
55
  var Chain = /* @__PURE__ */ ((Chain2) => {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/api/index.ts","../src/api/dex.ts","../src/version.ts","../src/chains.ts","../src/errors.ts","../src/tokenProtocols.ts"],"sourcesContent":["import * as API from \"./api\";\n\nexport { default as version } from \"./version\";\nexport * from \"./api\";\nexport * from \"./activities\";\nexport * from \"./chains\";\nexport * from \"./channels\";\nexport * from \"./constants\";\nexport * from \"./errors\";\nexport * from \"./mediaTrack\";\nexport * from \"./token\";\nexport * from \"./tokenProtocols\";\nexport * from \"./wallet\";\n\n// Re-export as API namespace for backward compatibility\nexport { API };\n","export * from \"./dex\";\nexport * from \"./mediaTrack\";\nexport * from \"./channels\";\n","import { TradeActivity } from \"../activities\";\nimport { Chain } from \"../chains\";\nimport {\n Token,\n TokenCandle,\n TokenHolder,\n TokenLaunchedFrom,\n TokenMarketData,\n TokenMigratedTo,\n TokenResolution,\n TokenSecurity,\n TokenSocialMedias,\n TokenStats,\n} from \"../token\";\nimport { PortfolioPnl, WalletPortfolios } from \"../wallet\";\n\n/**\n * Cursor list result data\n */\nexport interface CursorList<T> {\n startCursor?: string;\n endCursor?: string;\n hasPrev?: boolean;\n hasNext?: boolean;\n data: Array<T>;\n}\n\n/**\n * Cursor list query options\n */\nexport interface CursorListOptions {\n // query cursor\n cursor?: string;\n // return limit\n limit?: number;\n // query direction\n direction?: \"next\" | \"prev\";\n}\n\n/**\n * Options for getting token candles\n */\nexport interface GetTokenCandlesOptions {\n // query candles after this timestamp\n after?: Date;\n // query candles before this timestamp\n before?: Date;\n // return limit\n limit?: number;\n}\n\n/**\n * Token field for filtering\n */\nexport type TokenFieldOption =\n | \"price\"\n | \"priceChange1m\"\n | \"priceChange5m\"\n | \"priceChange15m\"\n | \"priceChange30m\"\n | \"priceChange1h\"\n | \"priceChange4h\"\n | \"priceChange24h\"\n | \"marketCap\"\n | \"tvl\"\n | \"top10Holdings\"\n | \"top10Ratio\"\n | \"top100Holdings\"\n | \"top100Ratio\"\n | \"holders\"\n | \"creatorsHoldings\"\n | \"creatorsRatio\"\n | \"buys1m\"\n | \"buys5m\"\n | \"buys15m\"\n | \"buys30m\"\n | \"buys1h\"\n | \"buys4h\"\n | \"buys24h\"\n | \"sells1m\"\n | \"sells5m\"\n | \"sells15m\"\n | \"sells30m\"\n | \"sells1h\"\n | \"sells4h\"\n | \"sells24h\"\n | \"trades1m\"\n | \"trades5m\"\n | \"trades15m\"\n | \"trades30m\"\n | \"trades1h\"\n | \"trades4h\"\n | \"trades24h\"\n | \"traders1m\"\n | \"traders5m\"\n | \"traders15m\"\n | \"traders30m\"\n | \"traders1h\"\n | \"traders4h\"\n | \"traders24h\"\n | \"volumes1m\"\n | \"volumes5m\"\n | \"volumes15m\"\n | \"volumes30m\"\n | \"volumes1h\"\n | \"volumes4h\"\n | \"volumes24h\"\n | \"launchedFromProtocolFamily\"\n | \"migratedToProtocolFamily\"\n | \"tag\"\n | \"createdAt\"\n | (string & {});\n\n/**\n * Token filter option\n */\nexport interface TokenFilterOption {\n field: TokenFieldOption;\n operator:\n | \"eq\"\n | \"ne\"\n | \"gt\"\n | \"gte\"\n | \"lt\"\n | \"lte\"\n | \"between\"\n | \"in\"\n | \"nin\"\n | \"contains\"\n | \"notContains\"\n | \"startsWith\"\n | \"endsWith\"\n | \"isNotNull\"\n | \"isNull\";\n value?: string | number | boolean | Array<string | number | boolean>;\n}\n\n/**\n * Options for getting token list\n */\nexport interface GetTokenListOptions {\n // sort field\n sortBy?: TokenFieldOption;\n // sort direction\n sortDirection?: \"asc\" | \"desc\";\n // filters\n filters?: Array<TokenFilterOption>;\n // search keywords\n keywords?: Array<string>;\n // exclude keywords\n excludeKeywords?: Array<string>;\n}\n\n/**\n * Options for searching tokens\n */\nexport interface SearchTokensOptions extends CursorListOptions {\n // chains\n chains?: Array<Chain>;\n // search keyword\n keyword?: string;\n // filters\n filters?: Array<TokenFilterOption>;\n // sort field\n sortBy?: TokenFieldOption;\n // sort direction\n sortDirection?: \"asc\" | \"desc\";\n}\n\n/**\n * Search token cursor list\n */\nexport interface SearchTokenCursorList extends CursorList<Token> {\n // total count\n total?: number;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport enum SwapMode {\n EXACT_IN = \"ExactIn\",\n EXACT_OUT = \"ExactOut\",\n}\n\nexport interface SwapParams {\n // chain id\n chain: Chain;\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}\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 // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SwapRoute {\n // unsigned tx in base64 format\n serializedTx: string;\n // swap plans\n plans: Array<SwapRoutePlan>;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SendTxParams {\n // chain id\n chain: Chain;\n // signed tx in base64 format\n serializedTx: string;\n // extra infos needed by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SendTxResult {\n // tx hash\n txHash: string;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\n/**\n * Options for getting trade activities\n */\nexport interface GetTradeActivitiesOptions extends CursorListOptions {\n // filter activities that are before this timestamp\n before?: Date;\n // filter activities that are after this timestamp\n after?: Date;\n // filter activities that are before this block height\n beforeBlockHeight?: number;\n // filter activities that are after this block height\n afterBlockHeight?: number;\n // filter activities by type\n type?: \"buy\" | \"sell\";\n // filter activities by pool address\n poolAddress?: string;\n}\n\n/**\n * API client interface\n */\nexport interface IClient {\n /**\n * fetch token info\n * @param chain chain id\n * @param address token address\n * @returns token info\n */\n getToken(chain: Chain, address: string): Promise<Token>;\n\n /**\n * fetch token infos in batch\n * @param chain chain id\n * @param addresses token addresses\n * @returns token infos\n */\n getTokens(chain: Chain, addresses: Array<string>): Promise<Array<Token>>;\n\n /**\n * fetch token candles\n * @param chain chain id\n * @param address token address\n * @param resolution token resolution\n * @param options optional query options\n * @returns token candles\n */\n getTokenCandles(\n chain: Chain,\n address: string,\n resolution: TokenResolution,\n options?: GetTokenCandlesOptions,\n ): Promise<Array<TokenCandle>>;\n\n /**\n * fetch token security\n * @param chain chain id\n * @param address token address\n * @returns token security\n */\n getTokenSecurity(chain: Chain, address: string): Promise<TokenSecurity>;\n\n /**\n * fetch token stats\n * @param chain chain id\n * @param address token address\n * @returns token stats\n */\n getTokenStats(chain: Chain, address: string): Promise<TokenStats>;\n\n /**\n * fetch token holders\n * @param chain chain id\n * @param address token address\n * @param options optional query options\n * @returns token holders\n */\n getTokenHolders(\n chain: Chain,\n address: string,\n options?: CursorListOptions,\n ): Promise<CursorList<TokenHolder>>;\n\n /**\n * fetch token market data\n * @param chain chain id\n * @param address token address\n * @returns token market data\n */\n getTokenMarketData(chain: Chain, address: string): Promise<TokenMarketData>;\n\n /**\n * fetch `New` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `New` token list\n */\n getNewTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Final Stretch` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Final Stretch` token list\n */\n getFinalStretchTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Migrated` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Migrated` token list\n */\n getMigratedTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Trending` token list\n * @param chain chain id\n * @param resolution query resolution, e.g. \"1m\", \"5m\", \"1h\", \"4h\", \"24h\"\n * @param options optional query options\n * @returns `Trending` token list\n */\n getTrendingTokens(\n chain: Chain,\n resolution: \"1m\" | \"5m\" | \"1h\" | \"4h\" | \"24h\",\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Stock` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Stock` token list\n */\n getStockTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * search tokens\n * @param options optional query options\n * @returns search token cursor list\n */\n searchTokens(options?: SearchTokensOptions): Promise<SearchTokenCursorList>;\n\n /**\n * fetch swap route plans\n * @param params swap params\n * @returns swap route plans\n */\n swapRoute(params: SwapParams): Promise<SwapRoute>;\n\n /**\n * send tx\n * @param params send tx params\n * @returns send tx result\n */\n sendTx(params: SendTxParams): Promise<SendTxResult>;\n\n /**\n * check if tx is successful\n * @param chain chain id\n * @param txHash tx hash\n * @param timeout timeout in milliseconds\n * @returns true if tx is successful, false otherwise\n */\n checkTxSuccess(\n chain: Chain,\n txHash: string,\n timeout?: number,\n ): Promise<boolean>;\n\n /**\n * fetch wallet portfolios\n * @param chain chain id\n * @param address wallet address\n * @returns wallet portfolios\n */\n getWalletPortfolios(chain: Chain, address: string): Promise<WalletPortfolios>;\n\n /**\n * fetch wallet's trade activities\n * @param chain chain id\n * @param address wallet address\n * @param options optional query options\n * @returns wallet's trade activities\n */\n getWalletTradeActivities(\n chain: Chain,\n address: string,\n options?: GetTradeActivitiesOptions,\n ): Promise<CursorList<TradeActivity>>;\n\n /**\n * fetch token's trade activities\n * @param chain chain id\n * @param address token address\n * @param options optional query options\n * @returns token's trade activities\n */\n getTokenTradeActivities(\n chain: Chain,\n address: string,\n options?: GetTradeActivitiesOptions,\n ): Promise<CursorList<TradeActivity>>;\n\n /**\n * get presigned upload url\n * @returns presigned upload url\n */\n getPresignedUploadUrl(): Promise<string>;\n}\n\nexport interface ISubscription {\n unsubscribe(): void;\n}\n\nexport interface TokenSubscribed {\n // chain id\n chain: Chain;\n // token address.\n address: string;\n // token name, e.g. \"Ethereum\", \"Solana\", etc.\n name?: string;\n // token symbol, e.g. \"ETH\", \"SOL\", etc.\n symbol?: string;\n // token decimals.\n decimals?: number;\n // token avatar image url.\n image?: string;\n // token description.\n description?: string;\n // token social medias.\n socialMedias?: TokenSocialMedias;\n // token launch info.\n launchedFrom?: TokenLaunchedFrom;\n // token migrate info.\n migratedTo?: TokenMigratedTo;\n // token create time.\n createdAt: Date;\n}\n\nexport interface WalletPnlSubscribed {\n // chain id\n chain: Chain;\n // wallet address\n address: string;\n // wallet total balance in usd\n balanceInUsd?: string;\n // wallet total profit in usd (including both realized and unrealized profit)\n profitInUsd?: string;\n}\n\nexport interface PortfolioSubscribed {\n // chain id\n chain: Chain;\n // token address\n address: string;\n // holding token amount\n amount?: string;\n}\n\nexport type PortfolioPnlSubscribed = PortfolioPnl & {\n // chain id\n chain: Chain;\n // token address\n address: string;\n};\n\n/**\n * Subscribe client interface\n */\nexport interface ISubscribeClient {\n /**\n * Subscribe token's basic info changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenBasic(\n chain: Chain,\n address: string,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's market data changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenMarketData(\n chain: Chain,\n address: string,\n callback: (marketDatas: Array<TokenMarketData>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's stats changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenStats(\n chain: Chain,\n address: string,\n callback: (stats: Array<TokenStats>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token new candles\n * @param chain chain id\n * @param address token address\n * @param resolution token resolution\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenCandles(\n chain: Chain,\n address: string,\n resolution: TokenResolution,\n callback: (candles: Array<TokenCandle>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's pnl changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPnl(\n chain: Chain,\n address: string,\n callback: (pnls: Array<WalletPnlSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's portfolio changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPortfolios(\n chain: Chain,\n address: string,\n callback: (portfolios: Array<PortfolioSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's portfolio pnl changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPortfolioPnls(\n chain: Chain,\n address: string,\n callback: (portfolioPnls: Array<PortfolioPnlSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's new trade activities\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletTradeActivities(\n chain: Chain,\n address: string,\n callback: (trades: Array<TradeActivity>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's new trade activities\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenTradeActivities(\n chain: Chain,\n address: string,\n callback: (trades: Array<TradeActivity>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokens(\n chain: Chain,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's basic info changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensBasic(\n chain: Chain,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's market data changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensMarketData(\n chain: Chain,\n callback: (marketDatas: Array<TokenMarketData>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's stats changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensStats(\n chain: Chain,\n callback: (stats: Array<TokenStats>) => void,\n ): ISubscription;\n}\n","declare global {\n interface Window {\n __LIBERFI_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif (typeof window !== \"undefined\") {\n window.__LIBERFI_VERSION__ = window.__LIBERFI_VERSION__ || {};\n window.__LIBERFI_VERSION__[\"@liberfi.io/types\"] = \"0.1.11\";\n}\n\nexport default \"0.1.11\";\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","export class ApiError extends Error {\n constructor(\n message: string,\n public readonly code: number,\n ) {\n super(message);\n this.name = \"ApiError\";\n }\n}\n","export 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 = keyof typeof SolanaTokenProtocol | (string & {});\n\nexport const SOLANA_TOKEN_PROTOCOLS = Object.values(SolanaTokenProtocol);\n"],"mappings":"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","names":["SwapMode","Chain","ChainNamespace","SolanaTokenProtocol"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/api/index.ts","../src/api/dex.ts","../src/version.ts","../src/chains.ts","../src/errors.ts","../src/tokenProtocols.ts"],"sourcesContent":["import * as API from \"./api\";\n\nexport { default as version } from \"./version\";\nexport * from \"./api\";\nexport * from \"./activities\";\nexport * from \"./chains\";\nexport * from \"./channels\";\nexport * from \"./constants\";\nexport * from \"./errors\";\nexport * from \"./mediaTrack\";\nexport * from \"./token\";\nexport * from \"./tokenProtocols\";\nexport * from \"./wallet\";\n\n// Re-export as API namespace for backward compatibility\nexport { API };\n","export * from \"./dex\";\nexport * from \"./mediaTrack\";\nexport * from \"./channels\";\n","import { TradeActivity } from \"../activities\";\nimport { Chain } from \"../chains\";\nimport {\n Token,\n TokenCandle,\n TokenHolder,\n TokenLaunchedFrom,\n TokenMarketData,\n TokenMigratedTo,\n TokenResolution,\n TokenSecurity,\n TokenSocialMedias,\n TokenStats,\n} from \"../token\";\nimport {\n Portfolio,\n PortfolioPnl,\n WalletPnl,\n WalletPortfolios,\n} from \"../wallet\";\n\n/**\n * Cursor list result data\n */\nexport interface CursorList<T> {\n startCursor?: string;\n endCursor?: string;\n hasPrev?: boolean;\n hasNext?: boolean;\n data: Array<T>;\n}\n\n/**\n * Cursor list query options\n */\nexport interface CursorListOptions {\n // query cursor\n cursor?: string;\n // return limit\n limit?: number;\n // query direction\n direction?: \"next\" | \"prev\";\n}\n\n/**\n * Options for getting token candles\n */\nexport interface GetTokenCandlesOptions {\n // query candles after this timestamp\n after?: Date;\n // query candles before this timestamp\n before?: Date;\n // return limit\n limit?: number;\n}\n\n/**\n * Token field for filtering\n */\nexport type TokenFieldOption =\n | \"price\"\n | \"priceChange1m\"\n | \"priceChange5m\"\n | \"priceChange15m\"\n | \"priceChange30m\"\n | \"priceChange1h\"\n | \"priceChange4h\"\n | \"priceChange24h\"\n | \"marketCap\"\n | \"tvl\"\n | \"top10Holdings\"\n | \"top10Ratio\"\n | \"top100Holdings\"\n | \"top100Ratio\"\n | \"holders\"\n | \"creatorsHoldings\"\n | \"creatorsRatio\"\n | \"buys1m\"\n | \"buys5m\"\n | \"buys15m\"\n | \"buys30m\"\n | \"buys1h\"\n | \"buys4h\"\n | \"buys24h\"\n | \"sells1m\"\n | \"sells5m\"\n | \"sells15m\"\n | \"sells30m\"\n | \"sells1h\"\n | \"sells4h\"\n | \"sells24h\"\n | \"trades1m\"\n | \"trades5m\"\n | \"trades15m\"\n | \"trades30m\"\n | \"trades1h\"\n | \"trades4h\"\n | \"trades24h\"\n | \"traders1m\"\n | \"traders5m\"\n | \"traders15m\"\n | \"traders30m\"\n | \"traders1h\"\n | \"traders4h\"\n | \"traders24h\"\n | \"volumes1m\"\n | \"volumes5m\"\n | \"volumes15m\"\n | \"volumes30m\"\n | \"volumes1h\"\n | \"volumes4h\"\n | \"volumes24h\"\n | \"launchedFromProtocolFamily\"\n | \"migratedToProtocolFamily\"\n | \"tag\"\n | \"createdAt\"\n | (string & {});\n\n/**\n * Token filter option\n */\nexport interface TokenFilterOption {\n field: TokenFieldOption;\n operator:\n | \"eq\"\n | \"ne\"\n | \"gt\"\n | \"gte\"\n | \"lt\"\n | \"lte\"\n | \"between\"\n | \"in\"\n | \"nin\"\n | \"contains\"\n | \"notContains\"\n | \"startsWith\"\n | \"endsWith\"\n | \"isNotNull\"\n | \"isNull\";\n value?: string | number | boolean | Array<string | number | boolean>;\n}\n\n/**\n * Options for getting token list\n */\nexport interface GetTokenListOptions {\n // sort field\n sortBy?: TokenFieldOption;\n // sort direction\n sortDirection?: \"asc\" | \"desc\";\n // filters\n filters?: Array<TokenFilterOption>;\n // search keywords\n keywords?: Array<string>;\n // exclude keywords\n excludeKeywords?: Array<string>;\n}\n\n/**\n * Options for searching tokens\n */\nexport interface SearchTokensOptions extends CursorListOptions {\n // chains\n chains?: Array<Chain>;\n // search keyword\n keyword?: string;\n // filters\n filters?: Array<TokenFilterOption>;\n // sort field\n sortBy?: TokenFieldOption;\n // sort direction\n sortDirection?: \"asc\" | \"desc\";\n}\n\n/**\n * Search token cursor list\n */\nexport interface SearchTokenCursorList extends CursorList<Token> {\n // total count\n total?: number;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport enum SwapMode {\n EXACT_IN = \"ExactIn\",\n EXACT_OUT = \"ExactOut\",\n}\n\nexport interface SwapParams {\n // chain id\n chain: Chain;\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}\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 // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SwapRoute {\n // unsigned tx in base64 format\n serializedTx: string;\n // swap plans\n plans: Array<SwapRoutePlan>;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SendTxParams {\n // chain id\n chain: Chain;\n // signed tx in base64 format\n serializedTx: string;\n // extra infos needed by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SendTxResult {\n // tx hash\n txHash: string;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\n/**\n * Options for getting trade activities\n */\nexport interface GetTradeActivitiesOptions extends CursorListOptions {\n // filter activities that are before this timestamp\n before?: Date;\n // filter activities that are after this timestamp\n after?: Date;\n // filter activities that are before this block height\n beforeBlockHeight?: number;\n // filter activities that are after this block height\n afterBlockHeight?: number;\n // filter activities by type\n type?: \"buy\" | \"sell\";\n // filter activities by pool address\n poolAddress?: string;\n}\n\n/**\n * API client interface\n */\nexport interface IClient {\n /**\n * fetch token info\n * @param chain chain id\n * @param address token address\n * @returns token info\n */\n getToken(chain: Chain, address: string): Promise<Token>;\n\n /**\n * fetch token infos in batch\n * @param chain chain id\n * @param addresses token addresses\n * @returns token infos\n */\n getTokens(chain: Chain, addresses: Array<string>): Promise<Array<Token>>;\n\n /**\n * fetch token candles\n * @param chain chain id\n * @param address token address\n * @param resolution token resolution\n * @param options optional query options\n * @returns token candles\n */\n getTokenCandles(\n chain: Chain,\n address: string,\n resolution: TokenResolution,\n options?: GetTokenCandlesOptions,\n ): Promise<Array<TokenCandle>>;\n\n /**\n * fetch token security\n * @param chain chain id\n * @param address token address\n * @returns token security\n */\n getTokenSecurity(chain: Chain, address: string): Promise<TokenSecurity>;\n\n /**\n * fetch token stats\n * @param chain chain id\n * @param address token address\n * @returns token stats\n */\n getTokenStats(chain: Chain, address: string): Promise<TokenStats>;\n\n /**\n * fetch token holders\n * @param chain chain id\n * @param address token address\n * @param options optional query options\n * @returns token holders\n */\n getTokenHolders(\n chain: Chain,\n address: string,\n options?: CursorListOptions,\n ): Promise<CursorList<TokenHolder>>;\n\n /**\n * fetch token market data\n * @param chain chain id\n * @param address token address\n * @returns token market data\n */\n getTokenMarketData(chain: Chain, address: string): Promise<TokenMarketData>;\n\n /**\n * fetch `New` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `New` token list\n */\n getNewTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Final Stretch` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Final Stretch` token list\n */\n getFinalStretchTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Migrated` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Migrated` token list\n */\n getMigratedTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Trending` token list\n * @param chain chain id\n * @param resolution query resolution, e.g. \"1m\", \"5m\", \"1h\", \"4h\", \"24h\"\n * @param options optional query options\n * @returns `Trending` token list\n */\n getTrendingTokens(\n chain: Chain,\n resolution: \"1m\" | \"5m\" | \"1h\" | \"4h\" | \"24h\",\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Stock` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Stock` token list\n */\n getStockTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * search tokens\n * @param options optional query options\n * @returns search token cursor list\n */\n searchTokens(options?: SearchTokensOptions): Promise<SearchTokenCursorList>;\n\n /**\n * fetch swap route plans\n * @param params swap params\n * @returns swap route plans\n */\n swapRoute(params: SwapParams): Promise<SwapRoute>;\n\n /**\n * send tx\n * @param params send tx params\n * @returns send tx result\n */\n sendTx(params: SendTxParams): Promise<SendTxResult>;\n\n /**\n * check if tx is successful\n * @param chain chain id\n * @param txHash tx hash\n * @param timeout timeout in milliseconds\n * @returns true if tx is successful, false otherwise\n */\n checkTxSuccess(\n chain: Chain,\n txHash: string,\n timeout?: number,\n ): Promise<boolean>;\n\n /**\n * fetch wallet portfolios\n * @param chain chain id\n * @param address wallet address\n * @returns wallet portfolios\n */\n getWalletPortfolios(chain: Chain, address: string): Promise<WalletPortfolios>;\n\n /**\n * fetch wallet PnL summary\n * @param chain chain id\n * @param address wallet address\n * @param resolution pnl resolution (e.g. \"7d\", \"30d\")\n * @returns wallet pnl summary\n */\n getWalletPnl(\n chain: Chain,\n address: string,\n resolution?: string,\n ): Promise<WalletPnl>;\n\n /**\n * fetch wallet portfolio PnL details (per-token)\n * @param chain chain id\n * @param address wallet address\n * @param options optional query options\n * @returns portfolio pnl list with summary\n */\n getWalletPortfolioPnls(\n chain: Chain,\n address: string,\n options?: { cursor?: string; limit?: number },\n ): Promise<CursorList<Portfolio> & { summary: WalletPnl }>;\n\n /**\n * fetch wallet's trade activities\n * @param chain chain id\n * @param address wallet address\n * @param options optional query options\n * @returns wallet's trade activities\n */\n getWalletTradeActivities(\n chain: Chain,\n address: string,\n options?: GetTradeActivitiesOptions,\n ): Promise<CursorList<TradeActivity>>;\n\n /**\n * fetch token's trade activities\n * @param chain chain id\n * @param address token address\n * @param options optional query options\n * @returns token's trade activities\n */\n getTokenTradeActivities(\n chain: Chain,\n address: string,\n options?: GetTradeActivitiesOptions,\n ): Promise<CursorList<TradeActivity>>;\n\n /**\n * get presigned upload url\n * @returns presigned upload url\n */\n getPresignedUploadUrl(): Promise<string>;\n}\n\nexport interface ISubscription {\n unsubscribe(): void;\n}\n\nexport interface TokenSubscribed {\n // chain id\n chain: Chain;\n // token address.\n address: string;\n // token name, e.g. \"Ethereum\", \"Solana\", etc.\n name?: string;\n // token symbol, e.g. \"ETH\", \"SOL\", etc.\n symbol?: string;\n // token decimals.\n decimals?: number;\n // token avatar image url.\n image?: string;\n // token description.\n description?: string;\n // token social medias.\n socialMedias?: TokenSocialMedias;\n // token launch info.\n launchedFrom?: TokenLaunchedFrom;\n // token migrate info.\n migratedTo?: TokenMigratedTo;\n // token create time.\n createdAt: Date;\n}\n\nexport interface WalletPnlSubscribed {\n // chain id\n chain: Chain;\n // wallet address\n address: string;\n // wallet total balance in usd\n balanceInUsd?: string;\n // wallet total profit in usd (including both realized and unrealized profit)\n profitInUsd?: string;\n}\n\nexport interface PortfolioSubscribed {\n // chain id\n chain: Chain;\n // token address\n address: string;\n // holding token amount\n amount?: string;\n}\n\nexport type PortfolioPnlSubscribed = PortfolioPnl & {\n // chain id\n chain: Chain;\n // token address\n address: string;\n};\n\nexport interface TokenDataSubscribed {\n // token address\n address: string;\n // token stats\n stats: TokenStats;\n // token market data\n marketData: TokenMarketData;\n}\n\n/**\n * Subscribe client interface\n */\nexport interface ISubscribeClient {\n /**\n * Subscribe token's basic info changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenBasic(\n chain: Chain,\n address: string,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's market data changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenMarketData(\n chain: Chain,\n address: string,\n callback: (marketDatas: Array<TokenMarketData>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's stats changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenStats(\n chain: Chain,\n address: string,\n callback: (stats: Array<TokenStats>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token new candles\n * @param chain chain id\n * @param address token address\n * @param resolution token resolution\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenCandles(\n chain: Chain,\n address: string,\n resolution: TokenResolution,\n callback: (candles: Array<TokenCandle>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's pnl changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPnl(\n chain: Chain,\n address: string,\n callback: (pnls: Array<WalletPnlSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's portfolio changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPortfolios(\n chain: Chain,\n address: string,\n callback: (portfolios: Array<PortfolioSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's portfolio pnl changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPortfolioPnls(\n chain: Chain,\n address: string,\n callback: (portfolioPnls: Array<PortfolioPnlSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's new trade activities\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletTradeActivities(\n chain: Chain,\n address: string,\n callback: (trades: Array<TradeActivity>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's new trade activities\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenTradeActivities(\n chain: Chain,\n address: string,\n callback: (trades: Array<TradeActivity>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokens(\n chain: Chain,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's basic info changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensBasic(\n chain: Chain,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's market data changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensMarketData(\n chain: Chain,\n callback: (marketDatas: Array<TokenMarketData>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's stats changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensStats(\n chain: Chain,\n callback: (stats: Array<TokenStats>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's combined stats & market data changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensData(\n chain: Chain,\n callback: (data: Array<TokenDataSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `Migrated` token list's combined stats & market data changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeMigratedTokensData(\n chain: Chain,\n callback: (data: Array<TokenDataSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `FinalStretch` token list's combined stats & market data changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeFinalStretchTokensData(\n chain: Chain,\n callback: (data: Array<TokenDataSubscribed>) => void,\n ): ISubscription;\n}\n","declare global {\n interface Window {\n __LIBERFI_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif (typeof window !== \"undefined\") {\n window.__LIBERFI_VERSION__ = window.__LIBERFI_VERSION__ || {};\n window.__LIBERFI_VERSION__[\"@liberfi.io/types\"] = \"0.1.15\";\n}\n\nexport default \"0.1.15\";\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","export class ApiError extends Error {\n constructor(\n message: string,\n public readonly code: number,\n ) {\n super(message);\n this.name = \"ApiError\";\n }\n}\n","export 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 = keyof typeof SolanaTokenProtocol | (string & {});\n\nexport const SOLANA_TOKEN_PROTOCOLS = Object.values(SolanaTokenProtocol);\n"],"mappings":"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","names":["SwapMode","Chain","ChainNamespace","SolanaTokenProtocol"]}
package/dist/index.mjs CHANGED
@@ -20,9 +20,9 @@ var SwapMode = /* @__PURE__ */ ((SwapMode2) => {
20
20
  // src/version.ts
21
21
  if (typeof window !== "undefined") {
22
22
  window.__LIBERFI_VERSION__ = window.__LIBERFI_VERSION__ || {};
23
- window.__LIBERFI_VERSION__["@liberfi.io/types"] = "0.1.11";
23
+ window.__LIBERFI_VERSION__["@liberfi.io/types"] = "0.1.15";
24
24
  }
25
- var version_default = "0.1.11";
25
+ var version_default = "0.1.15";
26
26
 
27
27
  // src/chains.ts
28
28
  var Chain = /* @__PURE__ */ ((Chain2) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/api/index.ts","../src/api/dex.ts","../src/version.ts","../src/chains.ts","../src/errors.ts","../src/tokenProtocols.ts"],"sourcesContent":["export * from \"./dex\";\nexport * from \"./mediaTrack\";\nexport * from \"./channels\";\n","import { TradeActivity } from \"../activities\";\nimport { Chain } from \"../chains\";\nimport {\n Token,\n TokenCandle,\n TokenHolder,\n TokenLaunchedFrom,\n TokenMarketData,\n TokenMigratedTo,\n TokenResolution,\n TokenSecurity,\n TokenSocialMedias,\n TokenStats,\n} from \"../token\";\nimport { PortfolioPnl, WalletPortfolios } from \"../wallet\";\n\n/**\n * Cursor list result data\n */\nexport interface CursorList<T> {\n startCursor?: string;\n endCursor?: string;\n hasPrev?: boolean;\n hasNext?: boolean;\n data: Array<T>;\n}\n\n/**\n * Cursor list query options\n */\nexport interface CursorListOptions {\n // query cursor\n cursor?: string;\n // return limit\n limit?: number;\n // query direction\n direction?: \"next\" | \"prev\";\n}\n\n/**\n * Options for getting token candles\n */\nexport interface GetTokenCandlesOptions {\n // query candles after this timestamp\n after?: Date;\n // query candles before this timestamp\n before?: Date;\n // return limit\n limit?: number;\n}\n\n/**\n * Token field for filtering\n */\nexport type TokenFieldOption =\n | \"price\"\n | \"priceChange1m\"\n | \"priceChange5m\"\n | \"priceChange15m\"\n | \"priceChange30m\"\n | \"priceChange1h\"\n | \"priceChange4h\"\n | \"priceChange24h\"\n | \"marketCap\"\n | \"tvl\"\n | \"top10Holdings\"\n | \"top10Ratio\"\n | \"top100Holdings\"\n | \"top100Ratio\"\n | \"holders\"\n | \"creatorsHoldings\"\n | \"creatorsRatio\"\n | \"buys1m\"\n | \"buys5m\"\n | \"buys15m\"\n | \"buys30m\"\n | \"buys1h\"\n | \"buys4h\"\n | \"buys24h\"\n | \"sells1m\"\n | \"sells5m\"\n | \"sells15m\"\n | \"sells30m\"\n | \"sells1h\"\n | \"sells4h\"\n | \"sells24h\"\n | \"trades1m\"\n | \"trades5m\"\n | \"trades15m\"\n | \"trades30m\"\n | \"trades1h\"\n | \"trades4h\"\n | \"trades24h\"\n | \"traders1m\"\n | \"traders5m\"\n | \"traders15m\"\n | \"traders30m\"\n | \"traders1h\"\n | \"traders4h\"\n | \"traders24h\"\n | \"volumes1m\"\n | \"volumes5m\"\n | \"volumes15m\"\n | \"volumes30m\"\n | \"volumes1h\"\n | \"volumes4h\"\n | \"volumes24h\"\n | \"launchedFromProtocolFamily\"\n | \"migratedToProtocolFamily\"\n | \"tag\"\n | \"createdAt\"\n | (string & {});\n\n/**\n * Token filter option\n */\nexport interface TokenFilterOption {\n field: TokenFieldOption;\n operator:\n | \"eq\"\n | \"ne\"\n | \"gt\"\n | \"gte\"\n | \"lt\"\n | \"lte\"\n | \"between\"\n | \"in\"\n | \"nin\"\n | \"contains\"\n | \"notContains\"\n | \"startsWith\"\n | \"endsWith\"\n | \"isNotNull\"\n | \"isNull\";\n value?: string | number | boolean | Array<string | number | boolean>;\n}\n\n/**\n * Options for getting token list\n */\nexport interface GetTokenListOptions {\n // sort field\n sortBy?: TokenFieldOption;\n // sort direction\n sortDirection?: \"asc\" | \"desc\";\n // filters\n filters?: Array<TokenFilterOption>;\n // search keywords\n keywords?: Array<string>;\n // exclude keywords\n excludeKeywords?: Array<string>;\n}\n\n/**\n * Options for searching tokens\n */\nexport interface SearchTokensOptions extends CursorListOptions {\n // chains\n chains?: Array<Chain>;\n // search keyword\n keyword?: string;\n // filters\n filters?: Array<TokenFilterOption>;\n // sort field\n sortBy?: TokenFieldOption;\n // sort direction\n sortDirection?: \"asc\" | \"desc\";\n}\n\n/**\n * Search token cursor list\n */\nexport interface SearchTokenCursorList extends CursorList<Token> {\n // total count\n total?: number;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport enum SwapMode {\n EXACT_IN = \"ExactIn\",\n EXACT_OUT = \"ExactOut\",\n}\n\nexport interface SwapParams {\n // chain id\n chain: Chain;\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}\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 // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SwapRoute {\n // unsigned tx in base64 format\n serializedTx: string;\n // swap plans\n plans: Array<SwapRoutePlan>;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SendTxParams {\n // chain id\n chain: Chain;\n // signed tx in base64 format\n serializedTx: string;\n // extra infos needed by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SendTxResult {\n // tx hash\n txHash: string;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\n/**\n * Options for getting trade activities\n */\nexport interface GetTradeActivitiesOptions extends CursorListOptions {\n // filter activities that are before this timestamp\n before?: Date;\n // filter activities that are after this timestamp\n after?: Date;\n // filter activities that are before this block height\n beforeBlockHeight?: number;\n // filter activities that are after this block height\n afterBlockHeight?: number;\n // filter activities by type\n type?: \"buy\" | \"sell\";\n // filter activities by pool address\n poolAddress?: string;\n}\n\n/**\n * API client interface\n */\nexport interface IClient {\n /**\n * fetch token info\n * @param chain chain id\n * @param address token address\n * @returns token info\n */\n getToken(chain: Chain, address: string): Promise<Token>;\n\n /**\n * fetch token infos in batch\n * @param chain chain id\n * @param addresses token addresses\n * @returns token infos\n */\n getTokens(chain: Chain, addresses: Array<string>): Promise<Array<Token>>;\n\n /**\n * fetch token candles\n * @param chain chain id\n * @param address token address\n * @param resolution token resolution\n * @param options optional query options\n * @returns token candles\n */\n getTokenCandles(\n chain: Chain,\n address: string,\n resolution: TokenResolution,\n options?: GetTokenCandlesOptions,\n ): Promise<Array<TokenCandle>>;\n\n /**\n * fetch token security\n * @param chain chain id\n * @param address token address\n * @returns token security\n */\n getTokenSecurity(chain: Chain, address: string): Promise<TokenSecurity>;\n\n /**\n * fetch token stats\n * @param chain chain id\n * @param address token address\n * @returns token stats\n */\n getTokenStats(chain: Chain, address: string): Promise<TokenStats>;\n\n /**\n * fetch token holders\n * @param chain chain id\n * @param address token address\n * @param options optional query options\n * @returns token holders\n */\n getTokenHolders(\n chain: Chain,\n address: string,\n options?: CursorListOptions,\n ): Promise<CursorList<TokenHolder>>;\n\n /**\n * fetch token market data\n * @param chain chain id\n * @param address token address\n * @returns token market data\n */\n getTokenMarketData(chain: Chain, address: string): Promise<TokenMarketData>;\n\n /**\n * fetch `New` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `New` token list\n */\n getNewTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Final Stretch` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Final Stretch` token list\n */\n getFinalStretchTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Migrated` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Migrated` token list\n */\n getMigratedTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Trending` token list\n * @param chain chain id\n * @param resolution query resolution, e.g. \"1m\", \"5m\", \"1h\", \"4h\", \"24h\"\n * @param options optional query options\n * @returns `Trending` token list\n */\n getTrendingTokens(\n chain: Chain,\n resolution: \"1m\" | \"5m\" | \"1h\" | \"4h\" | \"24h\",\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Stock` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Stock` token list\n */\n getStockTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * search tokens\n * @param options optional query options\n * @returns search token cursor list\n */\n searchTokens(options?: SearchTokensOptions): Promise<SearchTokenCursorList>;\n\n /**\n * fetch swap route plans\n * @param params swap params\n * @returns swap route plans\n */\n swapRoute(params: SwapParams): Promise<SwapRoute>;\n\n /**\n * send tx\n * @param params send tx params\n * @returns send tx result\n */\n sendTx(params: SendTxParams): Promise<SendTxResult>;\n\n /**\n * check if tx is successful\n * @param chain chain id\n * @param txHash tx hash\n * @param timeout timeout in milliseconds\n * @returns true if tx is successful, false otherwise\n */\n checkTxSuccess(\n chain: Chain,\n txHash: string,\n timeout?: number,\n ): Promise<boolean>;\n\n /**\n * fetch wallet portfolios\n * @param chain chain id\n * @param address wallet address\n * @returns wallet portfolios\n */\n getWalletPortfolios(chain: Chain, address: string): Promise<WalletPortfolios>;\n\n /**\n * fetch wallet's trade activities\n * @param chain chain id\n * @param address wallet address\n * @param options optional query options\n * @returns wallet's trade activities\n */\n getWalletTradeActivities(\n chain: Chain,\n address: string,\n options?: GetTradeActivitiesOptions,\n ): Promise<CursorList<TradeActivity>>;\n\n /**\n * fetch token's trade activities\n * @param chain chain id\n * @param address token address\n * @param options optional query options\n * @returns token's trade activities\n */\n getTokenTradeActivities(\n chain: Chain,\n address: string,\n options?: GetTradeActivitiesOptions,\n ): Promise<CursorList<TradeActivity>>;\n\n /**\n * get presigned upload url\n * @returns presigned upload url\n */\n getPresignedUploadUrl(): Promise<string>;\n}\n\nexport interface ISubscription {\n unsubscribe(): void;\n}\n\nexport interface TokenSubscribed {\n // chain id\n chain: Chain;\n // token address.\n address: string;\n // token name, e.g. \"Ethereum\", \"Solana\", etc.\n name?: string;\n // token symbol, e.g. \"ETH\", \"SOL\", etc.\n symbol?: string;\n // token decimals.\n decimals?: number;\n // token avatar image url.\n image?: string;\n // token description.\n description?: string;\n // token social medias.\n socialMedias?: TokenSocialMedias;\n // token launch info.\n launchedFrom?: TokenLaunchedFrom;\n // token migrate info.\n migratedTo?: TokenMigratedTo;\n // token create time.\n createdAt: Date;\n}\n\nexport interface WalletPnlSubscribed {\n // chain id\n chain: Chain;\n // wallet address\n address: string;\n // wallet total balance in usd\n balanceInUsd?: string;\n // wallet total profit in usd (including both realized and unrealized profit)\n profitInUsd?: string;\n}\n\nexport interface PortfolioSubscribed {\n // chain id\n chain: Chain;\n // token address\n address: string;\n // holding token amount\n amount?: string;\n}\n\nexport type PortfolioPnlSubscribed = PortfolioPnl & {\n // chain id\n chain: Chain;\n // token address\n address: string;\n};\n\n/**\n * Subscribe client interface\n */\nexport interface ISubscribeClient {\n /**\n * Subscribe token's basic info changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenBasic(\n chain: Chain,\n address: string,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's market data changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenMarketData(\n chain: Chain,\n address: string,\n callback: (marketDatas: Array<TokenMarketData>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's stats changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenStats(\n chain: Chain,\n address: string,\n callback: (stats: Array<TokenStats>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token new candles\n * @param chain chain id\n * @param address token address\n * @param resolution token resolution\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenCandles(\n chain: Chain,\n address: string,\n resolution: TokenResolution,\n callback: (candles: Array<TokenCandle>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's pnl changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPnl(\n chain: Chain,\n address: string,\n callback: (pnls: Array<WalletPnlSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's portfolio changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPortfolios(\n chain: Chain,\n address: string,\n callback: (portfolios: Array<PortfolioSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's portfolio pnl changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPortfolioPnls(\n chain: Chain,\n address: string,\n callback: (portfolioPnls: Array<PortfolioPnlSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's new trade activities\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletTradeActivities(\n chain: Chain,\n address: string,\n callback: (trades: Array<TradeActivity>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's new trade activities\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenTradeActivities(\n chain: Chain,\n address: string,\n callback: (trades: Array<TradeActivity>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokens(\n chain: Chain,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's basic info changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensBasic(\n chain: Chain,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's market data changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensMarketData(\n chain: Chain,\n callback: (marketDatas: Array<TokenMarketData>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's stats changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensStats(\n chain: Chain,\n callback: (stats: Array<TokenStats>) => void,\n ): ISubscription;\n}\n","declare global {\n interface Window {\n __LIBERFI_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif (typeof window !== \"undefined\") {\n window.__LIBERFI_VERSION__ = window.__LIBERFI_VERSION__ || {};\n window.__LIBERFI_VERSION__[\"@liberfi.io/types\"] = \"0.1.11\";\n}\n\nexport default \"0.1.11\";\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","export class ApiError extends Error {\n constructor(\n message: string,\n public readonly code: number,\n ) {\n super(message);\n this.name = \"ApiError\";\n }\n}\n","export 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 = keyof typeof SolanaTokenProtocol | (string & {});\n\nexport const SOLANA_TOKEN_PROTOCOLS = Object.values(SolanaTokenProtocol);\n"],"mappings":"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","names":["SwapMode","Chain","ChainNamespace","SolanaTokenProtocol"]}
1
+ {"version":3,"sources":["../src/api/index.ts","../src/api/dex.ts","../src/version.ts","../src/chains.ts","../src/errors.ts","../src/tokenProtocols.ts"],"sourcesContent":["export * from \"./dex\";\nexport * from \"./mediaTrack\";\nexport * from \"./channels\";\n","import { TradeActivity } from \"../activities\";\nimport { Chain } from \"../chains\";\nimport {\n Token,\n TokenCandle,\n TokenHolder,\n TokenLaunchedFrom,\n TokenMarketData,\n TokenMigratedTo,\n TokenResolution,\n TokenSecurity,\n TokenSocialMedias,\n TokenStats,\n} from \"../token\";\nimport {\n Portfolio,\n PortfolioPnl,\n WalletPnl,\n WalletPortfolios,\n} from \"../wallet\";\n\n/**\n * Cursor list result data\n */\nexport interface CursorList<T> {\n startCursor?: string;\n endCursor?: string;\n hasPrev?: boolean;\n hasNext?: boolean;\n data: Array<T>;\n}\n\n/**\n * Cursor list query options\n */\nexport interface CursorListOptions {\n // query cursor\n cursor?: string;\n // return limit\n limit?: number;\n // query direction\n direction?: \"next\" | \"prev\";\n}\n\n/**\n * Options for getting token candles\n */\nexport interface GetTokenCandlesOptions {\n // query candles after this timestamp\n after?: Date;\n // query candles before this timestamp\n before?: Date;\n // return limit\n limit?: number;\n}\n\n/**\n * Token field for filtering\n */\nexport type TokenFieldOption =\n | \"price\"\n | \"priceChange1m\"\n | \"priceChange5m\"\n | \"priceChange15m\"\n | \"priceChange30m\"\n | \"priceChange1h\"\n | \"priceChange4h\"\n | \"priceChange24h\"\n | \"marketCap\"\n | \"tvl\"\n | \"top10Holdings\"\n | \"top10Ratio\"\n | \"top100Holdings\"\n | \"top100Ratio\"\n | \"holders\"\n | \"creatorsHoldings\"\n | \"creatorsRatio\"\n | \"buys1m\"\n | \"buys5m\"\n | \"buys15m\"\n | \"buys30m\"\n | \"buys1h\"\n | \"buys4h\"\n | \"buys24h\"\n | \"sells1m\"\n | \"sells5m\"\n | \"sells15m\"\n | \"sells30m\"\n | \"sells1h\"\n | \"sells4h\"\n | \"sells24h\"\n | \"trades1m\"\n | \"trades5m\"\n | \"trades15m\"\n | \"trades30m\"\n | \"trades1h\"\n | \"trades4h\"\n | \"trades24h\"\n | \"traders1m\"\n | \"traders5m\"\n | \"traders15m\"\n | \"traders30m\"\n | \"traders1h\"\n | \"traders4h\"\n | \"traders24h\"\n | \"volumes1m\"\n | \"volumes5m\"\n | \"volumes15m\"\n | \"volumes30m\"\n | \"volumes1h\"\n | \"volumes4h\"\n | \"volumes24h\"\n | \"launchedFromProtocolFamily\"\n | \"migratedToProtocolFamily\"\n | \"tag\"\n | \"createdAt\"\n | (string & {});\n\n/**\n * Token filter option\n */\nexport interface TokenFilterOption {\n field: TokenFieldOption;\n operator:\n | \"eq\"\n | \"ne\"\n | \"gt\"\n | \"gte\"\n | \"lt\"\n | \"lte\"\n | \"between\"\n | \"in\"\n | \"nin\"\n | \"contains\"\n | \"notContains\"\n | \"startsWith\"\n | \"endsWith\"\n | \"isNotNull\"\n | \"isNull\";\n value?: string | number | boolean | Array<string | number | boolean>;\n}\n\n/**\n * Options for getting token list\n */\nexport interface GetTokenListOptions {\n // sort field\n sortBy?: TokenFieldOption;\n // sort direction\n sortDirection?: \"asc\" | \"desc\";\n // filters\n filters?: Array<TokenFilterOption>;\n // search keywords\n keywords?: Array<string>;\n // exclude keywords\n excludeKeywords?: Array<string>;\n}\n\n/**\n * Options for searching tokens\n */\nexport interface SearchTokensOptions extends CursorListOptions {\n // chains\n chains?: Array<Chain>;\n // search keyword\n keyword?: string;\n // filters\n filters?: Array<TokenFilterOption>;\n // sort field\n sortBy?: TokenFieldOption;\n // sort direction\n sortDirection?: \"asc\" | \"desc\";\n}\n\n/**\n * Search token cursor list\n */\nexport interface SearchTokenCursorList extends CursorList<Token> {\n // total count\n total?: number;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport enum SwapMode {\n EXACT_IN = \"ExactIn\",\n EXACT_OUT = \"ExactOut\",\n}\n\nexport interface SwapParams {\n // chain id\n chain: Chain;\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}\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 // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SwapRoute {\n // unsigned tx in base64 format\n serializedTx: string;\n // swap plans\n plans: Array<SwapRoutePlan>;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SendTxParams {\n // chain id\n chain: Chain;\n // signed tx in base64 format\n serializedTx: string;\n // extra infos needed by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\nexport interface SendTxResult {\n // tx hash\n txHash: string;\n // extra infos by api provider\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n extra?: any;\n}\n\n/**\n * Options for getting trade activities\n */\nexport interface GetTradeActivitiesOptions extends CursorListOptions {\n // filter activities that are before this timestamp\n before?: Date;\n // filter activities that are after this timestamp\n after?: Date;\n // filter activities that are before this block height\n beforeBlockHeight?: number;\n // filter activities that are after this block height\n afterBlockHeight?: number;\n // filter activities by type\n type?: \"buy\" | \"sell\";\n // filter activities by pool address\n poolAddress?: string;\n}\n\n/**\n * API client interface\n */\nexport interface IClient {\n /**\n * fetch token info\n * @param chain chain id\n * @param address token address\n * @returns token info\n */\n getToken(chain: Chain, address: string): Promise<Token>;\n\n /**\n * fetch token infos in batch\n * @param chain chain id\n * @param addresses token addresses\n * @returns token infos\n */\n getTokens(chain: Chain, addresses: Array<string>): Promise<Array<Token>>;\n\n /**\n * fetch token candles\n * @param chain chain id\n * @param address token address\n * @param resolution token resolution\n * @param options optional query options\n * @returns token candles\n */\n getTokenCandles(\n chain: Chain,\n address: string,\n resolution: TokenResolution,\n options?: GetTokenCandlesOptions,\n ): Promise<Array<TokenCandle>>;\n\n /**\n * fetch token security\n * @param chain chain id\n * @param address token address\n * @returns token security\n */\n getTokenSecurity(chain: Chain, address: string): Promise<TokenSecurity>;\n\n /**\n * fetch token stats\n * @param chain chain id\n * @param address token address\n * @returns token stats\n */\n getTokenStats(chain: Chain, address: string): Promise<TokenStats>;\n\n /**\n * fetch token holders\n * @param chain chain id\n * @param address token address\n * @param options optional query options\n * @returns token holders\n */\n getTokenHolders(\n chain: Chain,\n address: string,\n options?: CursorListOptions,\n ): Promise<CursorList<TokenHolder>>;\n\n /**\n * fetch token market data\n * @param chain chain id\n * @param address token address\n * @returns token market data\n */\n getTokenMarketData(chain: Chain, address: string): Promise<TokenMarketData>;\n\n /**\n * fetch `New` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `New` token list\n */\n getNewTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Final Stretch` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Final Stretch` token list\n */\n getFinalStretchTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Migrated` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Migrated` token list\n */\n getMigratedTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Trending` token list\n * @param chain chain id\n * @param resolution query resolution, e.g. \"1m\", \"5m\", \"1h\", \"4h\", \"24h\"\n * @param options optional query options\n * @returns `Trending` token list\n */\n getTrendingTokens(\n chain: Chain,\n resolution: \"1m\" | \"5m\" | \"1h\" | \"4h\" | \"24h\",\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * fetch `Stock` token list\n * @param chain chain id\n * @param options optional query options\n * @returns `Stock` token list\n */\n getStockTokens(\n chain: Chain,\n options?: GetTokenListOptions,\n ): Promise<Array<Token>>;\n\n /**\n * search tokens\n * @param options optional query options\n * @returns search token cursor list\n */\n searchTokens(options?: SearchTokensOptions): Promise<SearchTokenCursorList>;\n\n /**\n * fetch swap route plans\n * @param params swap params\n * @returns swap route plans\n */\n swapRoute(params: SwapParams): Promise<SwapRoute>;\n\n /**\n * send tx\n * @param params send tx params\n * @returns send tx result\n */\n sendTx(params: SendTxParams): Promise<SendTxResult>;\n\n /**\n * check if tx is successful\n * @param chain chain id\n * @param txHash tx hash\n * @param timeout timeout in milliseconds\n * @returns true if tx is successful, false otherwise\n */\n checkTxSuccess(\n chain: Chain,\n txHash: string,\n timeout?: number,\n ): Promise<boolean>;\n\n /**\n * fetch wallet portfolios\n * @param chain chain id\n * @param address wallet address\n * @returns wallet portfolios\n */\n getWalletPortfolios(chain: Chain, address: string): Promise<WalletPortfolios>;\n\n /**\n * fetch wallet PnL summary\n * @param chain chain id\n * @param address wallet address\n * @param resolution pnl resolution (e.g. \"7d\", \"30d\")\n * @returns wallet pnl summary\n */\n getWalletPnl(\n chain: Chain,\n address: string,\n resolution?: string,\n ): Promise<WalletPnl>;\n\n /**\n * fetch wallet portfolio PnL details (per-token)\n * @param chain chain id\n * @param address wallet address\n * @param options optional query options\n * @returns portfolio pnl list with summary\n */\n getWalletPortfolioPnls(\n chain: Chain,\n address: string,\n options?: { cursor?: string; limit?: number },\n ): Promise<CursorList<Portfolio> & { summary: WalletPnl }>;\n\n /**\n * fetch wallet's trade activities\n * @param chain chain id\n * @param address wallet address\n * @param options optional query options\n * @returns wallet's trade activities\n */\n getWalletTradeActivities(\n chain: Chain,\n address: string,\n options?: GetTradeActivitiesOptions,\n ): Promise<CursorList<TradeActivity>>;\n\n /**\n * fetch token's trade activities\n * @param chain chain id\n * @param address token address\n * @param options optional query options\n * @returns token's trade activities\n */\n getTokenTradeActivities(\n chain: Chain,\n address: string,\n options?: GetTradeActivitiesOptions,\n ): Promise<CursorList<TradeActivity>>;\n\n /**\n * get presigned upload url\n * @returns presigned upload url\n */\n getPresignedUploadUrl(): Promise<string>;\n}\n\nexport interface ISubscription {\n unsubscribe(): void;\n}\n\nexport interface TokenSubscribed {\n // chain id\n chain: Chain;\n // token address.\n address: string;\n // token name, e.g. \"Ethereum\", \"Solana\", etc.\n name?: string;\n // token symbol, e.g. \"ETH\", \"SOL\", etc.\n symbol?: string;\n // token decimals.\n decimals?: number;\n // token avatar image url.\n image?: string;\n // token description.\n description?: string;\n // token social medias.\n socialMedias?: TokenSocialMedias;\n // token launch info.\n launchedFrom?: TokenLaunchedFrom;\n // token migrate info.\n migratedTo?: TokenMigratedTo;\n // token create time.\n createdAt: Date;\n}\n\nexport interface WalletPnlSubscribed {\n // chain id\n chain: Chain;\n // wallet address\n address: string;\n // wallet total balance in usd\n balanceInUsd?: string;\n // wallet total profit in usd (including both realized and unrealized profit)\n profitInUsd?: string;\n}\n\nexport interface PortfolioSubscribed {\n // chain id\n chain: Chain;\n // token address\n address: string;\n // holding token amount\n amount?: string;\n}\n\nexport type PortfolioPnlSubscribed = PortfolioPnl & {\n // chain id\n chain: Chain;\n // token address\n address: string;\n};\n\nexport interface TokenDataSubscribed {\n // token address\n address: string;\n // token stats\n stats: TokenStats;\n // token market data\n marketData: TokenMarketData;\n}\n\n/**\n * Subscribe client interface\n */\nexport interface ISubscribeClient {\n /**\n * Subscribe token's basic info changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenBasic(\n chain: Chain,\n address: string,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's market data changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenMarketData(\n chain: Chain,\n address: string,\n callback: (marketDatas: Array<TokenMarketData>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's stats changes\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenStats(\n chain: Chain,\n address: string,\n callback: (stats: Array<TokenStats>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token new candles\n * @param chain chain id\n * @param address token address\n * @param resolution token resolution\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenCandles(\n chain: Chain,\n address: string,\n resolution: TokenResolution,\n callback: (candles: Array<TokenCandle>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's pnl changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPnl(\n chain: Chain,\n address: string,\n callback: (pnls: Array<WalletPnlSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's portfolio changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPortfolios(\n chain: Chain,\n address: string,\n callback: (portfolios: Array<PortfolioSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's portfolio pnl changes\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletPortfolioPnls(\n chain: Chain,\n address: string,\n callback: (portfolioPnls: Array<PortfolioPnlSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe wallet's new trade activities\n * @param chain chain id\n * @param address wallet address\n * @param callback callback function\n * @returns subscription\n */\n subscribeWalletTradeActivities(\n chain: Chain,\n address: string,\n callback: (trades: Array<TradeActivity>) => void,\n ): ISubscription;\n\n /**\n * Subscribe token's new trade activities\n * @param chain chain id\n * @param address token address\n * @param callback callback function\n * @returns subscription\n */\n subscribeTokenTradeActivities(\n chain: Chain,\n address: string,\n callback: (trades: Array<TradeActivity>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokens(\n chain: Chain,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's basic info changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensBasic(\n chain: Chain,\n callback: (tokens: Array<TokenSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's market data changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensMarketData(\n chain: Chain,\n callback: (marketDatas: Array<TokenMarketData>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's stats changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensStats(\n chain: Chain,\n callback: (stats: Array<TokenStats>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `New` token list's combined stats & market data changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeNewTokensData(\n chain: Chain,\n callback: (data: Array<TokenDataSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `Migrated` token list's combined stats & market data changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeMigratedTokensData(\n chain: Chain,\n callback: (data: Array<TokenDataSubscribed>) => void,\n ): ISubscription;\n\n /**\n * Subscribe `FinalStretch` token list's combined stats & market data changes\n * @param chain chain id\n * @param callback callback function\n * @returns subscription\n */\n subscribeFinalStretchTokensData(\n chain: Chain,\n callback: (data: Array<TokenDataSubscribed>) => void,\n ): ISubscription;\n}\n","declare global {\n interface Window {\n __LIBERFI_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif (typeof window !== \"undefined\") {\n window.__LIBERFI_VERSION__ = window.__LIBERFI_VERSION__ || {};\n window.__LIBERFI_VERSION__[\"@liberfi.io/types\"] = \"0.1.15\";\n}\n\nexport default \"0.1.15\";\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","export class ApiError extends Error {\n constructor(\n message: string,\n public readonly code: number,\n ) {\n super(message);\n this.name = \"ApiError\";\n }\n}\n","export 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 = keyof typeof SolanaTokenProtocol | (string & {});\n\nexport const SOLANA_TOKEN_PROTOCOLS = Object.values(SolanaTokenProtocol);\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.1.12",
3
+ "version": "0.1.15",
4
4
  "description": "Liberfi React SDK types",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",