@metamask-previews/core-backend 12.0.1-preview-105d14e7e → 12.0.1-preview-23d340d

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/CHANGELOG.md CHANGED
@@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ### Added
11
+
12
+ - Add `occurrenceFloor`, `includeNativeAssets`, and `includeRwaData` query options to `TokenApiClient.fetchTokenList` (`GET /tokens/{chainId}`) ([#10672](https://github.com/MetaMask/core/pull/10672))
13
+ - Add `TokenApiClient.fetchV2SupportedNetworks` for Token API `GET /v2/supportedNetworks` ([#10672](https://github.com/MetaMask/core/pull/10672))
14
+
15
+ ### Changed
16
+
17
+ - Bump `@metamask/profile-sync-controller` from `^34.0.0` to `^34.0.1` ([#10752](https://github.com/MetaMask/core/pull/10752))
18
+
10
19
  ## [12.0.1]
11
20
 
12
21
  ### Changed
@@ -9,7 +9,7 @@ export type { V5BalanceItem, V5BalancesResponse, V2BalanceItem, V2BalancesRespon
9
9
  export { PricesApiClient } from './prices/index.js';
10
10
  export type { V3SpotPricesResponse, CoinGeckoSpotPrice, ExchangeRateInfo, V1ExchangeRatesResponse, PriceSupportedNetworksResponse, PriceV1SupportedNetworksResponse, PriceV2SupportedNetworksResponse, V1HistoricalPricesResponse, V3HistoricalPricesResponse, } from './prices/index.js';
11
11
  export { TokenApiClient } from './token/index.js';
12
- export type { TokenMetadata, V1TokenDescriptionResponse, NetworkInfo, TopAsset, TrendingSortBy, TrendingToken, TopGainersSortOption, TrendingSortOption, V1SuggestedOccurrenceFloorsResponse, } from './token/index.js';
12
+ export type { TokenMetadata, TokenListQueryOptions, TokenV2SupportedNetworksResponse, V1TokenDescriptionResponse, NetworkInfo, TopAsset, TrendingSortBy, TrendingToken, TopGainersSortOption, TrendingSortOption, V1SuggestedOccurrenceFloorsResponse, } from './token/index.js';
13
13
  export { TokensApiClient } from './tokens/index.js';
14
14
  export type { V1TokenSupportedNetworksResponse, V2TokenSupportedNetworksResponse, V3AssetResponse, } from './tokens/index.js';
15
15
  export { BaseApiClient } from './base-client.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,YAAY,EACV,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EACxB,OAAO,EACP,YAAY,GACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,0BAA0B,EAC1B,YAAY,EACZ,mBAAmB,EACnB,wBAAwB,EACxB,WAAW,EACX,SAAS,GACV,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAChF,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,6BAA6B,EAC7B,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,2BAA2B,EAC3B,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,6BAA6B,EAC7B,kCAAkC,EAClC,aAAa,EACb,2BAA2B,EAC3B,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,uBAAuB,EACvB,8BAA8B,EAC9B,gCAAgC,EAChC,gCAAgC,EAChC,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EACV,aAAa,EACb,0BAA0B,EAC1B,WAAW,EACX,QAAQ,EACR,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,mCAAmC,GACpC,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EACV,gCAAgC,EAChC,gCAAgC,EAChC,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAG7D,OAAO,EACL,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,YAAY,EACV,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EACxB,OAAO,EACP,YAAY,GACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,0BAA0B,EAC1B,YAAY,EACZ,mBAAmB,EACnB,wBAAwB,EACxB,WAAW,EACX,SAAS,GACV,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAChF,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,6BAA6B,EAC7B,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,2BAA2B,EAC3B,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,6BAA6B,EAC7B,kCAAkC,EAClC,aAAa,EACb,2BAA2B,EAC3B,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,uBAAuB,EACvB,8BAA8B,EAC9B,gCAAgC,EAChC,gCAAgC,EAChC,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EACV,aAAa,EACb,qBAAqB,EACrB,gCAAgC,EAChC,0BAA0B,EAC1B,WAAW,EACX,QAAQ,EACR,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,mCAAmC,GACpC,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EACV,gCAAgC,EAChC,gCAAgC,EAChC,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAG7D,OAAO,EACL,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH,OAAO,EACL,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,0BAA0B,EAC1B,YAAY,EACZ,mBAAmB,EACnB,wBAAwB,EACxB,WAAW,EACX,SAAS,GACV,MAAM,mBAAmB,CAAC;AAE3B,eAAe;AACf,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AA4BhF,aAAa;AACb,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAapD,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAalD,aAAa;AACb,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAOpD,cAAc;AACd,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,uCAAuC;AACvC,OAAO,EACL,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC","sourcesContent":["/**\n * API barrel export.\n * Re-exports all types and clients from the API folder.\n */\n\n// Shared types and utilities\nexport type {\n PageInfo,\n SupportedCurrency,\n MarketDataDetails,\n ApiPlatformClientOptions,\n ApiUrls,\n FetchOptions,\n} from './shared-types.js';\nexport {\n API_URLS,\n STALE_TIMES,\n GC_TIMES,\n DEFAULT_AUTH_TOKEN_TIMEOUT,\n RETRY_CONFIG,\n calculateRetryDelay,\n getQueryOptionsOverrides,\n shouldRetry,\n HttpError,\n} from './shared-types.js';\n\n// Accounts API\nexport { AccountsApiClient, V6_DEFI_POSITION_TYPES } from './accounts/index.js';\nexport type {\n V5BalanceItem,\n V5BalancesResponse,\n V2BalanceItem,\n V2BalancesResponse,\n V4BalancesResponse,\n V6VsCurrency,\n V6DeFiPositionType,\n V6BalanceMetadata,\n V6StellarTokenBalanceMetadata,\n V6TokenBalanceMetadata,\n V6BalanceItem,\n V6BalancesResponse,\n V1SupportedNetworksResponse,\n V2SupportedNetworksResponse,\n V2ActiveNetworksResponse,\n V1TransactionByHashResponse,\n V1AccountTransactionsResponse,\n V4MultiAccountTransactionsResponse,\n ValueTransfer,\n V1AccountRelationshipResult,\n NftItem,\n V2NftsResponse,\n TokenDiscoveryItem,\n V2TokensResponse,\n} from './accounts/index.js';\n\n// Prices API\nexport { PricesApiClient } from './prices/index.js';\nexport type {\n V3SpotPricesResponse,\n CoinGeckoSpotPrice,\n ExchangeRateInfo,\n V1ExchangeRatesResponse,\n PriceSupportedNetworksResponse,\n PriceV1SupportedNetworksResponse,\n PriceV2SupportedNetworksResponse,\n V1HistoricalPricesResponse,\n V3HistoricalPricesResponse,\n} from './prices/index.js';\n\n// Token API\nexport { TokenApiClient } from './token/index.js';\nexport type {\n TokenMetadata,\n V1TokenDescriptionResponse,\n NetworkInfo,\n TopAsset,\n TrendingSortBy,\n TrendingToken,\n TopGainersSortOption,\n TrendingSortOption,\n V1SuggestedOccurrenceFloorsResponse,\n} from './token/index.js';\n\n// Tokens API\nexport { TokensApiClient } from './tokens/index.js';\nexport type {\n V1TokenSupportedNetworksResponse,\n V2TokenSupportedNetworksResponse,\n V3AssetResponse,\n} from './tokens/index.js';\n\n// Base client\nexport { BaseApiClient } from './base-client.js';\nexport type { InternalFetchOptions } from './base-client.js';\n\n// API Platform Client (unified client)\nexport {\n ApiPlatformClient,\n createApiPlatformClient,\n} from './ApiPlatformClient.js';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH,OAAO,EACL,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,0BAA0B,EAC1B,YAAY,EACZ,mBAAmB,EACnB,wBAAwB,EACxB,WAAW,EACX,SAAS,GACV,MAAM,mBAAmB,CAAC;AAE3B,eAAe;AACf,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AA4BhF,aAAa;AACb,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAapD,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAelD,aAAa;AACb,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAOpD,cAAc;AACd,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,uCAAuC;AACvC,OAAO,EACL,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC","sourcesContent":["/**\n * API barrel export.\n * Re-exports all types and clients from the API folder.\n */\n\n// Shared types and utilities\nexport type {\n PageInfo,\n SupportedCurrency,\n MarketDataDetails,\n ApiPlatformClientOptions,\n ApiUrls,\n FetchOptions,\n} from './shared-types.js';\nexport {\n API_URLS,\n STALE_TIMES,\n GC_TIMES,\n DEFAULT_AUTH_TOKEN_TIMEOUT,\n RETRY_CONFIG,\n calculateRetryDelay,\n getQueryOptionsOverrides,\n shouldRetry,\n HttpError,\n} from './shared-types.js';\n\n// Accounts API\nexport { AccountsApiClient, V6_DEFI_POSITION_TYPES } from './accounts/index.js';\nexport type {\n V5BalanceItem,\n V5BalancesResponse,\n V2BalanceItem,\n V2BalancesResponse,\n V4BalancesResponse,\n V6VsCurrency,\n V6DeFiPositionType,\n V6BalanceMetadata,\n V6StellarTokenBalanceMetadata,\n V6TokenBalanceMetadata,\n V6BalanceItem,\n V6BalancesResponse,\n V1SupportedNetworksResponse,\n V2SupportedNetworksResponse,\n V2ActiveNetworksResponse,\n V1TransactionByHashResponse,\n V1AccountTransactionsResponse,\n V4MultiAccountTransactionsResponse,\n ValueTransfer,\n V1AccountRelationshipResult,\n NftItem,\n V2NftsResponse,\n TokenDiscoveryItem,\n V2TokensResponse,\n} from './accounts/index.js';\n\n// Prices API\nexport { PricesApiClient } from './prices/index.js';\nexport type {\n V3SpotPricesResponse,\n CoinGeckoSpotPrice,\n ExchangeRateInfo,\n V1ExchangeRatesResponse,\n PriceSupportedNetworksResponse,\n PriceV1SupportedNetworksResponse,\n PriceV2SupportedNetworksResponse,\n V1HistoricalPricesResponse,\n V3HistoricalPricesResponse,\n} from './prices/index.js';\n\n// Token API\nexport { TokenApiClient } from './token/index.js';\nexport type {\n TokenMetadata,\n TokenListQueryOptions,\n TokenV2SupportedNetworksResponse,\n V1TokenDescriptionResponse,\n NetworkInfo,\n TopAsset,\n TrendingSortBy,\n TrendingToken,\n TopGainersSortOption,\n TrendingSortOption,\n V1SuggestedOccurrenceFloorsResponse,\n} from './token/index.js';\n\n// Tokens API\nexport { TokensApiClient } from './tokens/index.js';\nexport type {\n V1TokenSupportedNetworksResponse,\n V2TokenSupportedNetworksResponse,\n V3AssetResponse,\n} from './tokens/index.js';\n\n// Base client\nexport { BaseApiClient } from './base-client.js';\nexport type { InternalFetchOptions } from './base-client.js';\n\n// API Platform Client (unified client)\nexport {\n ApiPlatformClient,\n createApiPlatformClient,\n} from './ApiPlatformClient.js';\n"]}
@@ -14,7 +14,7 @@
14
14
  import type { FetchQueryOptions } from '@tanstack/query-core';
15
15
  import { BaseApiClient } from '../base-client.js';
16
16
  import type { FetchOptions } from '../shared-types.js';
17
- import type { TokenMetadata, V1TokenDescriptionResponse, NetworkInfo, TopAsset, TrendingToken, TrendingSortOption, TopGainersSortOption, V1SuggestedOccurrenceFloorsResponse } from './types.js';
17
+ import type { TokenMetadata, TokenListQueryOptions, TokenV2SupportedNetworksResponse, V1TokenDescriptionResponse, NetworkInfo, TopAsset, TrendingToken, TrendingSortOption, TopGainersSortOption, V1SuggestedOccurrenceFloorsResponse } from './types.js';
18
18
  /**
19
19
  * Token API Client.
20
20
  * Provides methods for interacting with the Token API.
@@ -60,58 +60,34 @@ export declare class TokenApiClient extends BaseApiClient {
60
60
  * Returns the TanStack Query options object for token list.
61
61
  *
62
62
  * @param chainId - The chain ID.
63
- * @param queryOptions - Query options.
64
- * @param queryOptions.includeTokenFees - Whether to include token fees.
65
- * @param queryOptions.includeAssetType - Whether to include asset type.
66
- * @param queryOptions.includeAggregators - Whether to include aggregators.
67
- * @param queryOptions.includeERC20Permit - Whether to include ERC20 permit.
68
- * @param queryOptions.includeOccurrences - Whether to include occurrences.
69
- * @param queryOptions.includeStorage - Whether to include storage.
70
- * @param queryOptions.includeIconUrl - Whether to include icon URL.
71
- * @param queryOptions.includeAddress - Whether to include address.
72
- * @param queryOptions.includeName - Whether to include name.
63
+ * @param queryOptions - Query options forwarded to `GET /tokens/{chainId}`.
73
64
  * @param options - Fetch options including cache settings.
74
65
  * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.
75
66
  */
76
- getTokenListQueryOptions(chainId: number, queryOptions?: {
77
- includeTokenFees?: boolean;
78
- includeAssetType?: boolean;
79
- includeAggregators?: boolean;
80
- includeERC20Permit?: boolean;
81
- includeOccurrences?: boolean;
82
- includeStorage?: boolean;
83
- includeIconUrl?: boolean;
84
- includeAddress?: boolean;
85
- includeName?: boolean;
86
- }, options?: FetchOptions): FetchQueryOptions<TokenMetadata[]>;
67
+ getTokenListQueryOptions(chainId: number, queryOptions?: TokenListQueryOptions, options?: FetchOptions): FetchQueryOptions<TokenMetadata[]>;
87
68
  /**
88
69
  * Get token list for a chain.
89
70
  *
90
71
  * @param chainId - The chain ID.
91
- * @param queryOptions - Query options.
92
- * @param queryOptions.includeTokenFees - Include token fees data.
93
- * @param queryOptions.includeAssetType - Include asset type data.
94
- * @param queryOptions.includeAggregators - Include aggregators data.
95
- * @param queryOptions.includeERC20Permit - Include ERC20 permit data.
96
- * @param queryOptions.includeOccurrences - Include occurrences data.
97
- * @param queryOptions.includeStorage - Include storage data.
98
- * @param queryOptions.includeIconUrl - Include icon URL.
99
- * @param queryOptions.includeAddress - Include address.
100
- * @param queryOptions.includeName - Include name.
72
+ * @param queryOptions - Query options forwarded to `GET /tokens/{chainId}`.
101
73
  * @param options - Fetch options including cache settings.
102
74
  * @returns Array of token metadata.
103
75
  */
104
- fetchTokenList(chainId: number, queryOptions?: {
105
- includeTokenFees?: boolean;
106
- includeAssetType?: boolean;
107
- includeAggregators?: boolean;
108
- includeERC20Permit?: boolean;
109
- includeOccurrences?: boolean;
110
- includeStorage?: boolean;
111
- includeIconUrl?: boolean;
112
- includeAddress?: boolean;
113
- includeName?: boolean;
114
- }, options?: FetchOptions): Promise<TokenMetadata[]>;
76
+ fetchTokenList(chainId: number, queryOptions?: TokenListQueryOptions, options?: FetchOptions): Promise<TokenMetadata[]>;
77
+ /**
78
+ * Returns the TanStack Query options object for v2 supported networks.
79
+ *
80
+ * @param options - Fetch options including cache settings.
81
+ * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.
82
+ */
83
+ getV2SupportedNetworksQueryOptions(options?: FetchOptions): FetchQueryOptions<TokenV2SupportedNetworksResponse>;
84
+ /**
85
+ * Get CAIP chain IDs supported by the Token API (`GET /v2/supportedNetworks`).
86
+ *
87
+ * @param options - Fetch options including cache settings.
88
+ * @returns Full and partial support chain IDs.
89
+ */
90
+ fetchV2SupportedNetworks(options?: FetchOptions): Promise<TokenV2SupportedNetworksResponse>;
115
91
  /**
116
92
  * Returns the TanStack Query options object for v1 token metadata.
117
93
  *
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/api/token/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/api/token/client.ts"],"names":[],"mappings":"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"}
@@ -93,16 +93,7 @@ export class TokenApiClient extends BaseApiClient {
93
93
  * Returns the TanStack Query options object for token list.
94
94
  *
95
95
  * @param chainId - The chain ID.
96
- * @param queryOptions - Query options.
97
- * @param queryOptions.includeTokenFees - Whether to include token fees.
98
- * @param queryOptions.includeAssetType - Whether to include asset type.
99
- * @param queryOptions.includeAggregators - Whether to include aggregators.
100
- * @param queryOptions.includeERC20Permit - Whether to include ERC20 permit.
101
- * @param queryOptions.includeOccurrences - Whether to include occurrences.
102
- * @param queryOptions.includeStorage - Whether to include storage.
103
- * @param queryOptions.includeIconUrl - Whether to include icon URL.
104
- * @param queryOptions.includeAddress - Whether to include address.
105
- * @param queryOptions.includeName - Whether to include name.
96
+ * @param queryOptions - Query options forwarded to `GET /tokens/{chainId}`.
106
97
  * @param options - Fetch options including cache settings.
107
98
  * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.
108
99
  */
@@ -112,6 +103,8 @@ export class TokenApiClient extends BaseApiClient {
112
103
  queryFn: ({ signal }) => this.fetch(this.apiUrls.TOKEN, `/tokens/${chainId}`, {
113
104
  signal,
114
105
  params: {
106
+ occurrenceFloor: queryOptions?.occurrenceFloor,
107
+ includeNativeAssets: queryOptions?.includeNativeAssets,
115
108
  includeTokenFees: queryOptions?.includeTokenFees,
116
109
  includeAssetType: queryOptions?.includeAssetType,
117
110
  includeAggregators: queryOptions?.includeAggregators,
@@ -121,6 +114,7 @@ export class TokenApiClient extends BaseApiClient {
121
114
  includeIconUrl: queryOptions?.includeIconUrl,
122
115
  includeAddress: queryOptions?.includeAddress,
123
116
  includeName: queryOptions?.includeName,
117
+ includeRwaData: queryOptions?.includeRwaData,
124
118
  },
125
119
  }),
126
120
  ...getQueryOptionsOverrides(options),
@@ -132,22 +126,37 @@ export class TokenApiClient extends BaseApiClient {
132
126
  * Get token list for a chain.
133
127
  *
134
128
  * @param chainId - The chain ID.
135
- * @param queryOptions - Query options.
136
- * @param queryOptions.includeTokenFees - Include token fees data.
137
- * @param queryOptions.includeAssetType - Include asset type data.
138
- * @param queryOptions.includeAggregators - Include aggregators data.
139
- * @param queryOptions.includeERC20Permit - Include ERC20 permit data.
140
- * @param queryOptions.includeOccurrences - Include occurrences data.
141
- * @param queryOptions.includeStorage - Include storage data.
142
- * @param queryOptions.includeIconUrl - Include icon URL.
143
- * @param queryOptions.includeAddress - Include address.
144
- * @param queryOptions.includeName - Include name.
129
+ * @param queryOptions - Query options forwarded to `GET /tokens/{chainId}`.
145
130
  * @param options - Fetch options including cache settings.
146
131
  * @returns Array of token metadata.
147
132
  */
148
133
  async fetchTokenList(chainId, queryOptions, options) {
149
134
  return this.queryClient.fetchQuery(this.getTokenListQueryOptions(chainId, queryOptions, options));
150
135
  }
136
+ /**
137
+ * Returns the TanStack Query options object for v2 supported networks.
138
+ *
139
+ * @param options - Fetch options including cache settings.
140
+ * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.
141
+ */
142
+ getV2SupportedNetworksQueryOptions(options) {
143
+ return {
144
+ queryKey: ['token', 'v2SupportedNetworks'],
145
+ queryFn: ({ signal }) => this.fetch(this.apiUrls.TOKEN, '/v2/supportedNetworks', { signal }),
146
+ ...getQueryOptionsOverrides(options),
147
+ staleTime: options?.staleTime ?? STALE_TIMES.SUPPORTED_NETWORKS,
148
+ gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,
149
+ };
150
+ }
151
+ /**
152
+ * Get CAIP chain IDs supported by the Token API (`GET /v2/supportedNetworks`).
153
+ *
154
+ * @param options - Fetch options including cache settings.
155
+ * @returns Full and partial support chain IDs.
156
+ */
157
+ async fetchV2SupportedNetworks(options) {
158
+ return this.queryClient.fetchQuery(this.getV2SupportedNetworksQueryOptions(options));
159
+ }
151
160
  // ==========================================================================
152
161
  // TOKEN METADATA
153
162
  // ==========================================================================
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/api/token/client.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Token API Client - token.api.cx.metamask.io\n *\n * Handles all token-related API calls including:\n * - Networks\n * - Token lists\n * - Token metadata\n * - Token descriptions\n * - Trending tokens\n * - Top gainers/popular tokens\n * - Top assets\n * - Occurrence floors\n */\n\nimport type {\n FetchQueryOptions,\n QueryFunctionContext,\n} from '@tanstack/query-core';\n\nimport { BaseApiClient, STALE_TIMES, GC_TIMES } from '../base-client.js';\nimport { getQueryOptionsOverrides } from '../shared-types.js';\nimport type { FetchOptions } from '../shared-types.js';\nimport type {\n TokenMetadata,\n V1TokenDescriptionResponse,\n NetworkInfo,\n TopAsset,\n TrendingToken,\n TrendingSortOption,\n TopGainersSortOption,\n V1SuggestedOccurrenceFloorsResponse,\n} from './types.js';\n\n/**\n * Token API Client.\n * Provides methods for interacting with the Token API.\n */\nexport class TokenApiClient extends BaseApiClient {\n // ==========================================================================\n // CACHE MANAGEMENT\n // ==========================================================================\n\n /**\n * Invalidate all token API queries.\n * Note: This only invalidates queries from token.api.cx.metamask.io,\n * not from tokens.api.cx.metamask.io (use TokensApiClient.invalidateTokens() for that).\n */\n async invalidateToken(): Promise<void> {\n await this.queryClient.invalidateQueries({\n queryKey: ['token'],\n });\n }\n\n // ==========================================================================\n // NETWORKS\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for networks.\n *\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getNetworksQueryOptions(\n options?: FetchOptions,\n ): FetchQueryOptions<NetworkInfo[]> {\n return {\n queryKey: ['token', 'networks'],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<NetworkInfo[]>(this.apiUrls.TOKEN, '/networks', { signal }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.SUPPORTED_NETWORKS,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get all networks.\n *\n * @param options - Fetch options including cache settings.\n * @returns Array of network info.\n */\n async fetchNetworks(options?: FetchOptions): Promise<NetworkInfo[]> {\n return this.queryClient.fetchQuery(this.getNetworksQueryOptions(options));\n }\n\n /**\n * Returns the TanStack Query options object for network by chain ID.\n *\n * @param chainId - The chain ID.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getNetworkByChainIdQueryOptions(\n chainId: number,\n options?: FetchOptions,\n ): FetchQueryOptions<NetworkInfo> {\n return {\n queryKey: ['token', 'networkByChainId', chainId],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<NetworkInfo>(this.apiUrls.TOKEN, `/networks/${chainId}`, {\n signal,\n }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.SUPPORTED_NETWORKS,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get network by chain ID.\n *\n * @param chainId - The chain ID.\n * @param options - Fetch options including cache settings.\n * @returns The network info.\n */\n async fetchNetworkByChainId(\n chainId: number,\n options?: FetchOptions,\n ): Promise<NetworkInfo> {\n return this.queryClient.fetchQuery(\n this.getNetworkByChainIdQueryOptions(chainId, options),\n );\n }\n\n // ==========================================================================\n // TOKEN LIST\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for token list.\n *\n * @param chainId - The chain ID.\n * @param queryOptions - Query options.\n * @param queryOptions.includeTokenFees - Whether to include token fees.\n * @param queryOptions.includeAssetType - Whether to include asset type.\n * @param queryOptions.includeAggregators - Whether to include aggregators.\n * @param queryOptions.includeERC20Permit - Whether to include ERC20 permit.\n * @param queryOptions.includeOccurrences - Whether to include occurrences.\n * @param queryOptions.includeStorage - Whether to include storage.\n * @param queryOptions.includeIconUrl - Whether to include icon URL.\n * @param queryOptions.includeAddress - Whether to include address.\n * @param queryOptions.includeName - Whether to include name.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getTokenListQueryOptions(\n chainId: number,\n queryOptions?: {\n includeTokenFees?: boolean;\n includeAssetType?: boolean;\n includeAggregators?: boolean;\n includeERC20Permit?: boolean;\n includeOccurrences?: boolean;\n includeStorage?: boolean;\n includeIconUrl?: boolean;\n includeAddress?: boolean;\n includeName?: boolean;\n },\n options?: FetchOptions,\n ): FetchQueryOptions<TokenMetadata[]> {\n return {\n queryKey: ['token', 'tokenList', { chainId, options: queryOptions }],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<TokenMetadata[]>(this.apiUrls.TOKEN, `/tokens/${chainId}`, {\n signal,\n params: {\n includeTokenFees: queryOptions?.includeTokenFees,\n includeAssetType: queryOptions?.includeAssetType,\n includeAggregators: queryOptions?.includeAggregators,\n includeERC20Permit: queryOptions?.includeERC20Permit,\n includeOccurrences: queryOptions?.includeOccurrences,\n includeStorage: queryOptions?.includeStorage,\n includeIconUrl: queryOptions?.includeIconUrl,\n includeAddress: queryOptions?.includeAddress,\n includeName: queryOptions?.includeName,\n },\n }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TOKEN_LIST,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get token list for a chain.\n *\n * @param chainId - The chain ID.\n * @param queryOptions - Query options.\n * @param queryOptions.includeTokenFees - Include token fees data.\n * @param queryOptions.includeAssetType - Include asset type data.\n * @param queryOptions.includeAggregators - Include aggregators data.\n * @param queryOptions.includeERC20Permit - Include ERC20 permit data.\n * @param queryOptions.includeOccurrences - Include occurrences data.\n * @param queryOptions.includeStorage - Include storage data.\n * @param queryOptions.includeIconUrl - Include icon URL.\n * @param queryOptions.includeAddress - Include address.\n * @param queryOptions.includeName - Include name.\n * @param options - Fetch options including cache settings.\n * @returns Array of token metadata.\n */\n async fetchTokenList(\n chainId: number,\n queryOptions?: {\n includeTokenFees?: boolean;\n includeAssetType?: boolean;\n includeAggregators?: boolean;\n includeERC20Permit?: boolean;\n includeOccurrences?: boolean;\n includeStorage?: boolean;\n includeIconUrl?: boolean;\n includeAddress?: boolean;\n includeName?: boolean;\n },\n options?: FetchOptions,\n ): Promise<TokenMetadata[]> {\n return this.queryClient.fetchQuery(\n this.getTokenListQueryOptions(chainId, queryOptions, options),\n );\n }\n\n // ==========================================================================\n // TOKEN METADATA\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for v1 token metadata.\n *\n * @param chainId - The chain ID.\n * @param tokenAddress - The token address.\n * @param queryOptions - Query options.\n * @param queryOptions.includeTokenFees - Whether to include token fees.\n * @param queryOptions.includeAssetType - Whether to include asset type.\n * @param queryOptions.includeAggregators - Whether to include aggregators.\n * @param queryOptions.includeERC20Permit - Whether to include ERC20 permit.\n * @param queryOptions.includeOccurrences - Whether to include occurrences.\n * @param queryOptions.includeStorage - Whether to include storage.\n * @param queryOptions.includeIconUrl - Whether to include icon URL.\n * @param queryOptions.includeAddress - Whether to include address.\n * @param queryOptions.includeName - Whether to include name.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getV1TokenMetadataQueryOptions(\n chainId: number,\n tokenAddress: string,\n queryOptions?: {\n includeTokenFees?: boolean;\n includeAssetType?: boolean;\n includeAggregators?: boolean;\n includeERC20Permit?: boolean;\n includeOccurrences?: boolean;\n includeStorage?: boolean;\n includeIconUrl?: boolean;\n includeAddress?: boolean;\n includeName?: boolean;\n },\n options?: FetchOptions,\n ): FetchQueryOptions<TokenMetadata> {\n return {\n queryKey: [\n 'token',\n 'v1Metadata',\n { chainId, tokenAddress, options: queryOptions },\n ],\n queryFn: async ({\n signal,\n }: QueryFunctionContext): Promise<TokenMetadata> => {\n return this.fetch<TokenMetadata>(\n this.apiUrls.TOKEN,\n `/token/${chainId}`,\n {\n signal,\n params: {\n address: tokenAddress,\n includeTokenFees: queryOptions?.includeTokenFees,\n includeAssetType: queryOptions?.includeAssetType,\n includeAggregators: queryOptions?.includeAggregators,\n includeERC20Permit: queryOptions?.includeERC20Permit,\n includeOccurrences: queryOptions?.includeOccurrences,\n includeStorage: queryOptions?.includeStorage,\n includeIconUrl: queryOptions?.includeIconUrl,\n includeAddress: queryOptions?.includeAddress,\n includeName: queryOptions?.includeName,\n },\n },\n );\n },\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TOKEN_METADATA,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get token metadata by address.\n *\n * @param chainId - The chain ID.\n * @param tokenAddress - The token address.\n * @param queryOptions - Query options.\n * @param queryOptions.includeTokenFees - Include token fees data.\n * @param queryOptions.includeAssetType - Include asset type data.\n * @param queryOptions.includeAggregators - Include aggregators data.\n * @param queryOptions.includeERC20Permit - Include ERC20 permit data.\n * @param queryOptions.includeOccurrences - Include occurrences data.\n * @param queryOptions.includeStorage - Include storage data.\n * @param queryOptions.includeIconUrl - Include icon URL.\n * @param queryOptions.includeAddress - Include address.\n * @param queryOptions.includeName - Include name.\n * @param options - Fetch options including cache settings.\n * @returns The token metadata or undefined.\n */\n async fetchV1TokenMetadata(\n chainId: number,\n tokenAddress: string,\n queryOptions?: {\n includeTokenFees?: boolean;\n includeAssetType?: boolean;\n includeAggregators?: boolean;\n includeERC20Permit?: boolean;\n includeOccurrences?: boolean;\n includeStorage?: boolean;\n includeIconUrl?: boolean;\n includeAddress?: boolean;\n includeName?: boolean;\n },\n options?: FetchOptions,\n ): Promise<TokenMetadata | undefined> {\n try {\n return await this.queryClient.fetchQuery(\n this.getV1TokenMetadataQueryOptions(\n chainId,\n tokenAddress,\n queryOptions,\n options,\n ),\n );\n } catch {\n return undefined;\n }\n }\n\n /**\n * Returns the TanStack Query options object for token description.\n *\n * @param chainId - The chain ID.\n * @param tokenAddress - The token address.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getTokenDescriptionQueryOptions(\n chainId: number,\n tokenAddress: string,\n options?: FetchOptions,\n ): FetchQueryOptions<V1TokenDescriptionResponse> {\n return {\n queryKey: ['token', 'tokenDescription', chainId, tokenAddress],\n queryFn: async ({\n signal,\n }: QueryFunctionContext): Promise<V1TokenDescriptionResponse> =>\n this.fetch<V1TokenDescriptionResponse>(\n this.apiUrls.TOKEN,\n `/token/${chainId}/description`,\n {\n signal,\n params: { address: tokenAddress },\n },\n ),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TOKEN_METADATA,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get token description.\n *\n * @param chainId - The chain ID.\n * @param tokenAddress - The token address.\n * @param options - Fetch options including cache settings.\n * @returns The token description or undefined.\n */\n async fetchTokenDescription(\n chainId: number,\n tokenAddress: string,\n options?: FetchOptions,\n ): Promise<V1TokenDescriptionResponse | undefined> {\n try {\n return await this.queryClient.fetchQuery(\n this.getTokenDescriptionQueryOptions(chainId, tokenAddress, options),\n );\n } catch {\n return undefined;\n }\n }\n\n // ==========================================================================\n // TRENDING & TOP TOKENS\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for v3 trending tokens.\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.sortBy - Sort option.\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param queryOptions.includeTokenSecurityData - Whether to include token security data.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getV3TrendingTokensQueryOptions(\n chainIds: string[],\n queryOptions?: {\n sortBy?: TrendingSortOption;\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n includeTokenSecurityData?: boolean;\n },\n options?: FetchOptions,\n ): FetchQueryOptions<TrendingToken[]> {\n return {\n queryKey: [\n 'token',\n 'v3Trending',\n { chainIds: [...chainIds].sort(), options: queryOptions },\n ],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<TrendingToken[]>(this.apiUrls.TOKEN, '/v3/tokens/trending', {\n signal,\n params: {\n chainIds,\n sort: queryOptions?.sortBy,\n minLiquidity: queryOptions?.minLiquidity,\n minVolume24hUsd: queryOptions?.minVolume24hUsd,\n maxVolume24hUsd: queryOptions?.maxVolume24hUsd,\n minMarketCap: queryOptions?.minMarketCap,\n maxMarketCap: queryOptions?.maxMarketCap,\n includeTokenSecurityData: queryOptions?.includeTokenSecurityData,\n },\n }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TRENDING,\n gcTime: options?.gcTime ?? GC_TIMES.SHORT,\n };\n }\n\n /**\n * Get trending tokens (v3 endpoint).\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.sortBy - Sort option.\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param queryOptions.includeTokenSecurityData - Whether to include token security data.\n * @param options - Fetch options including cache settings.\n * @returns Array of trending tokens.\n */\n async fetchV3TrendingTokens(\n chainIds: string[],\n queryOptions?: {\n sortBy?: TrendingSortOption;\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n includeTokenSecurityData?: boolean;\n },\n options?: FetchOptions,\n ): Promise<TrendingToken[]> {\n return this.queryClient.fetchQuery(\n this.getV3TrendingTokensQueryOptions(chainIds, queryOptions, options),\n );\n }\n\n /**\n * Returns the TanStack Query options object for v3 top gainers.\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.sort - Sort option.\n * @param queryOptions.blockRegion - Region filter (global/us).\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getV3TopGainersQueryOptions(\n chainIds: string[],\n queryOptions?: {\n sort?: TopGainersSortOption;\n blockRegion?: 'global' | 'us';\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n },\n options?: FetchOptions,\n ): FetchQueryOptions<TrendingToken[]> {\n return {\n queryKey: [\n 'token',\n 'v3TopGainers',\n { chainIds: [...chainIds].sort(), options: queryOptions },\n ],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<TrendingToken[]>(\n this.apiUrls.TOKEN,\n '/v3/tokens/top-gainers',\n {\n signal,\n params: {\n chainIds,\n sort: queryOptions?.sort,\n blockRegion: queryOptions?.blockRegion,\n minLiquidity: queryOptions?.minLiquidity,\n minVolume24hUsd: queryOptions?.minVolume24hUsd,\n maxVolume24hUsd: queryOptions?.maxVolume24hUsd,\n minMarketCap: queryOptions?.minMarketCap,\n maxMarketCap: queryOptions?.maxMarketCap,\n },\n },\n ),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TRENDING,\n gcTime: options?.gcTime ?? GC_TIMES.SHORT,\n };\n }\n\n /**\n * Get top gainers/losers (v3 endpoint).\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.sort - Sort option.\n * @param queryOptions.blockRegion - Region filter (global/us).\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param options - Fetch options including cache settings.\n * @returns Array of top gainer tokens.\n */\n async fetchV3TopGainers(\n chainIds: string[],\n queryOptions?: {\n sort?: TopGainersSortOption;\n blockRegion?: 'global' | 'us';\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n },\n options?: FetchOptions,\n ): Promise<TrendingToken[]> {\n return this.queryClient.fetchQuery(\n this.getV3TopGainersQueryOptions(chainIds, queryOptions, options),\n );\n }\n\n /**\n * Returns the TanStack Query options object for v3 popular tokens.\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.blockRegion - Region filter (global/us).\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getV3PopularTokensQueryOptions(\n chainIds: string[],\n queryOptions?: {\n blockRegion?: 'global' | 'us';\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n },\n options?: FetchOptions,\n ): FetchQueryOptions<TrendingToken[]> {\n return {\n queryKey: [\n 'token',\n 'v3Popular',\n { chainIds: [...chainIds].sort(), options: queryOptions },\n ],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<TrendingToken[]>(this.apiUrls.TOKEN, '/v3/tokens/popular', {\n signal,\n params: {\n chainIds,\n blockRegion: queryOptions?.blockRegion,\n minLiquidity: queryOptions?.minLiquidity,\n minVolume24hUsd: queryOptions?.minVolume24hUsd,\n maxVolume24hUsd: queryOptions?.maxVolume24hUsd,\n minMarketCap: queryOptions?.minMarketCap,\n maxMarketCap: queryOptions?.maxMarketCap,\n },\n }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TRENDING,\n gcTime: options?.gcTime ?? GC_TIMES.SHORT,\n };\n }\n\n /**\n * Get popular tokens (v3 endpoint).\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.blockRegion - Region filter (global/us).\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param options - Fetch options including cache settings.\n * @returns Array of popular tokens.\n */\n async fetchV3PopularTokens(\n chainIds: string[],\n queryOptions?: {\n blockRegion?: 'global' | 'us';\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n },\n options?: FetchOptions,\n ): Promise<TrendingToken[]> {\n return this.queryClient.fetchQuery(\n this.getV3PopularTokensQueryOptions(chainIds, queryOptions, options),\n );\n }\n\n // ==========================================================================\n // TOP ASSETS\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for top assets.\n *\n * @param chainId - The chain ID.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getTopAssetsQueryOptions(\n chainId: number,\n options?: FetchOptions,\n ): FetchQueryOptions<TopAsset[]> {\n return {\n queryKey: ['token', 'topAssets', chainId],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<TopAsset[]>(this.apiUrls.TOKEN, `/topAssets/${chainId}`, {\n signal,\n }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TRENDING,\n gcTime: options?.gcTime ?? GC_TIMES.SHORT,\n };\n }\n\n /**\n * Get top assets for a chain.\n *\n * @param chainId - The chain ID.\n * @param options - Fetch options including cache settings.\n * @returns Array of top assets.\n */\n async fetchTopAssets(\n chainId: number,\n options?: FetchOptions,\n ): Promise<TopAsset[]> {\n return this.queryClient.fetchQuery(\n this.getTopAssetsQueryOptions(chainId, options),\n );\n }\n\n // ==========================================================================\n // UTILITY\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for v1 suggested occurrence floors.\n *\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getV1SuggestedOccurrenceFloorsQueryOptions(\n options?: FetchOptions,\n ): FetchQueryOptions<V1SuggestedOccurrenceFloorsResponse> {\n return {\n queryKey: ['token', 'v1SuggestedOccurrenceFloors'],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<V1SuggestedOccurrenceFloorsResponse>(\n this.apiUrls.TOKEN,\n '/v1/suggestedOccurrenceFloors',\n { signal },\n ),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.SUPPORTED_NETWORKS,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get suggested occurrence floors for all chains.\n *\n * @param options - Fetch options including cache settings.\n * @returns The suggested occurrence floors response.\n */\n async fetchV1SuggestedOccurrenceFloors(\n options?: FetchOptions,\n ): Promise<V1SuggestedOccurrenceFloorsResponse> {\n return this.queryClient.fetchQuery(\n this.getV1SuggestedOccurrenceFloorsQueryOptions(options),\n );\n }\n}\n"]}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/api/token/client.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Token API Client - token.api.cx.metamask.io\n *\n * Handles all token-related API calls including:\n * - Networks\n * - Token lists\n * - Token metadata\n * - Token descriptions\n * - Trending tokens\n * - Top gainers/popular tokens\n * - Top assets\n * - Occurrence floors\n */\n\nimport type {\n FetchQueryOptions,\n QueryFunctionContext,\n} from '@tanstack/query-core';\n\nimport { BaseApiClient, STALE_TIMES, GC_TIMES } from '../base-client.js';\nimport { getQueryOptionsOverrides } from '../shared-types.js';\nimport type { FetchOptions } from '../shared-types.js';\nimport type {\n TokenMetadata,\n TokenListQueryOptions,\n TokenV2SupportedNetworksResponse,\n V1TokenDescriptionResponse,\n NetworkInfo,\n TopAsset,\n TrendingToken,\n TrendingSortOption,\n TopGainersSortOption,\n V1SuggestedOccurrenceFloorsResponse,\n} from './types.js';\n\n/**\n * Token API Client.\n * Provides methods for interacting with the Token API.\n */\nexport class TokenApiClient extends BaseApiClient {\n // ==========================================================================\n // CACHE MANAGEMENT\n // ==========================================================================\n\n /**\n * Invalidate all token API queries.\n * Note: This only invalidates queries from token.api.cx.metamask.io,\n * not from tokens.api.cx.metamask.io (use TokensApiClient.invalidateTokens() for that).\n */\n async invalidateToken(): Promise<void> {\n await this.queryClient.invalidateQueries({\n queryKey: ['token'],\n });\n }\n\n // ==========================================================================\n // NETWORKS\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for networks.\n *\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getNetworksQueryOptions(\n options?: FetchOptions,\n ): FetchQueryOptions<NetworkInfo[]> {\n return {\n queryKey: ['token', 'networks'],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<NetworkInfo[]>(this.apiUrls.TOKEN, '/networks', { signal }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.SUPPORTED_NETWORKS,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get all networks.\n *\n * @param options - Fetch options including cache settings.\n * @returns Array of network info.\n */\n async fetchNetworks(options?: FetchOptions): Promise<NetworkInfo[]> {\n return this.queryClient.fetchQuery(this.getNetworksQueryOptions(options));\n }\n\n /**\n * Returns the TanStack Query options object for network by chain ID.\n *\n * @param chainId - The chain ID.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getNetworkByChainIdQueryOptions(\n chainId: number,\n options?: FetchOptions,\n ): FetchQueryOptions<NetworkInfo> {\n return {\n queryKey: ['token', 'networkByChainId', chainId],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<NetworkInfo>(this.apiUrls.TOKEN, `/networks/${chainId}`, {\n signal,\n }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.SUPPORTED_NETWORKS,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get network by chain ID.\n *\n * @param chainId - The chain ID.\n * @param options - Fetch options including cache settings.\n * @returns The network info.\n */\n async fetchNetworkByChainId(\n chainId: number,\n options?: FetchOptions,\n ): Promise<NetworkInfo> {\n return this.queryClient.fetchQuery(\n this.getNetworkByChainIdQueryOptions(chainId, options),\n );\n }\n\n // ==========================================================================\n // TOKEN LIST\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for token list.\n *\n * @param chainId - The chain ID.\n * @param queryOptions - Query options forwarded to `GET /tokens/{chainId}`.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getTokenListQueryOptions(\n chainId: number,\n queryOptions?: TokenListQueryOptions,\n options?: FetchOptions,\n ): FetchQueryOptions<TokenMetadata[]> {\n return {\n queryKey: ['token', 'tokenList', { chainId, options: queryOptions }],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<TokenMetadata[]>(this.apiUrls.TOKEN, `/tokens/${chainId}`, {\n signal,\n params: {\n occurrenceFloor: queryOptions?.occurrenceFloor,\n includeNativeAssets: queryOptions?.includeNativeAssets,\n includeTokenFees: queryOptions?.includeTokenFees,\n includeAssetType: queryOptions?.includeAssetType,\n includeAggregators: queryOptions?.includeAggregators,\n includeERC20Permit: queryOptions?.includeERC20Permit,\n includeOccurrences: queryOptions?.includeOccurrences,\n includeStorage: queryOptions?.includeStorage,\n includeIconUrl: queryOptions?.includeIconUrl,\n includeAddress: queryOptions?.includeAddress,\n includeName: queryOptions?.includeName,\n includeRwaData: queryOptions?.includeRwaData,\n },\n }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TOKEN_LIST,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get token list for a chain.\n *\n * @param chainId - The chain ID.\n * @param queryOptions - Query options forwarded to `GET /tokens/{chainId}`.\n * @param options - Fetch options including cache settings.\n * @returns Array of token metadata.\n */\n async fetchTokenList(\n chainId: number,\n queryOptions?: TokenListQueryOptions,\n options?: FetchOptions,\n ): Promise<TokenMetadata[]> {\n return this.queryClient.fetchQuery(\n this.getTokenListQueryOptions(chainId, queryOptions, options),\n );\n }\n\n /**\n * Returns the TanStack Query options object for v2 supported networks.\n *\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getV2SupportedNetworksQueryOptions(\n options?: FetchOptions,\n ): FetchQueryOptions<TokenV2SupportedNetworksResponse> {\n return {\n queryKey: ['token', 'v2SupportedNetworks'],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<TokenV2SupportedNetworksResponse>(\n this.apiUrls.TOKEN,\n '/v2/supportedNetworks',\n { signal },\n ),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.SUPPORTED_NETWORKS,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get CAIP chain IDs supported by the Token API (`GET /v2/supportedNetworks`).\n *\n * @param options - Fetch options including cache settings.\n * @returns Full and partial support chain IDs.\n */\n async fetchV2SupportedNetworks(\n options?: FetchOptions,\n ): Promise<TokenV2SupportedNetworksResponse> {\n return this.queryClient.fetchQuery(\n this.getV2SupportedNetworksQueryOptions(options),\n );\n }\n\n // ==========================================================================\n // TOKEN METADATA\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for v1 token metadata.\n *\n * @param chainId - The chain ID.\n * @param tokenAddress - The token address.\n * @param queryOptions - Query options.\n * @param queryOptions.includeTokenFees - Whether to include token fees.\n * @param queryOptions.includeAssetType - Whether to include asset type.\n * @param queryOptions.includeAggregators - Whether to include aggregators.\n * @param queryOptions.includeERC20Permit - Whether to include ERC20 permit.\n * @param queryOptions.includeOccurrences - Whether to include occurrences.\n * @param queryOptions.includeStorage - Whether to include storage.\n * @param queryOptions.includeIconUrl - Whether to include icon URL.\n * @param queryOptions.includeAddress - Whether to include address.\n * @param queryOptions.includeName - Whether to include name.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getV1TokenMetadataQueryOptions(\n chainId: number,\n tokenAddress: string,\n queryOptions?: {\n includeTokenFees?: boolean;\n includeAssetType?: boolean;\n includeAggregators?: boolean;\n includeERC20Permit?: boolean;\n includeOccurrences?: boolean;\n includeStorage?: boolean;\n includeIconUrl?: boolean;\n includeAddress?: boolean;\n includeName?: boolean;\n },\n options?: FetchOptions,\n ): FetchQueryOptions<TokenMetadata> {\n return {\n queryKey: [\n 'token',\n 'v1Metadata',\n { chainId, tokenAddress, options: queryOptions },\n ],\n queryFn: async ({\n signal,\n }: QueryFunctionContext): Promise<TokenMetadata> => {\n return this.fetch<TokenMetadata>(\n this.apiUrls.TOKEN,\n `/token/${chainId}`,\n {\n signal,\n params: {\n address: tokenAddress,\n includeTokenFees: queryOptions?.includeTokenFees,\n includeAssetType: queryOptions?.includeAssetType,\n includeAggregators: queryOptions?.includeAggregators,\n includeERC20Permit: queryOptions?.includeERC20Permit,\n includeOccurrences: queryOptions?.includeOccurrences,\n includeStorage: queryOptions?.includeStorage,\n includeIconUrl: queryOptions?.includeIconUrl,\n includeAddress: queryOptions?.includeAddress,\n includeName: queryOptions?.includeName,\n },\n },\n );\n },\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TOKEN_METADATA,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get token metadata by address.\n *\n * @param chainId - The chain ID.\n * @param tokenAddress - The token address.\n * @param queryOptions - Query options.\n * @param queryOptions.includeTokenFees - Include token fees data.\n * @param queryOptions.includeAssetType - Include asset type data.\n * @param queryOptions.includeAggregators - Include aggregators data.\n * @param queryOptions.includeERC20Permit - Include ERC20 permit data.\n * @param queryOptions.includeOccurrences - Include occurrences data.\n * @param queryOptions.includeStorage - Include storage data.\n * @param queryOptions.includeIconUrl - Include icon URL.\n * @param queryOptions.includeAddress - Include address.\n * @param queryOptions.includeName - Include name.\n * @param options - Fetch options including cache settings.\n * @returns The token metadata or undefined.\n */\n async fetchV1TokenMetadata(\n chainId: number,\n tokenAddress: string,\n queryOptions?: {\n includeTokenFees?: boolean;\n includeAssetType?: boolean;\n includeAggregators?: boolean;\n includeERC20Permit?: boolean;\n includeOccurrences?: boolean;\n includeStorage?: boolean;\n includeIconUrl?: boolean;\n includeAddress?: boolean;\n includeName?: boolean;\n },\n options?: FetchOptions,\n ): Promise<TokenMetadata | undefined> {\n try {\n return await this.queryClient.fetchQuery(\n this.getV1TokenMetadataQueryOptions(\n chainId,\n tokenAddress,\n queryOptions,\n options,\n ),\n );\n } catch {\n return undefined;\n }\n }\n\n /**\n * Returns the TanStack Query options object for token description.\n *\n * @param chainId - The chain ID.\n * @param tokenAddress - The token address.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getTokenDescriptionQueryOptions(\n chainId: number,\n tokenAddress: string,\n options?: FetchOptions,\n ): FetchQueryOptions<V1TokenDescriptionResponse> {\n return {\n queryKey: ['token', 'tokenDescription', chainId, tokenAddress],\n queryFn: async ({\n signal,\n }: QueryFunctionContext): Promise<V1TokenDescriptionResponse> =>\n this.fetch<V1TokenDescriptionResponse>(\n this.apiUrls.TOKEN,\n `/token/${chainId}/description`,\n {\n signal,\n params: { address: tokenAddress },\n },\n ),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TOKEN_METADATA,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get token description.\n *\n * @param chainId - The chain ID.\n * @param tokenAddress - The token address.\n * @param options - Fetch options including cache settings.\n * @returns The token description or undefined.\n */\n async fetchTokenDescription(\n chainId: number,\n tokenAddress: string,\n options?: FetchOptions,\n ): Promise<V1TokenDescriptionResponse | undefined> {\n try {\n return await this.queryClient.fetchQuery(\n this.getTokenDescriptionQueryOptions(chainId, tokenAddress, options),\n );\n } catch {\n return undefined;\n }\n }\n\n // ==========================================================================\n // TRENDING & TOP TOKENS\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for v3 trending tokens.\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.sortBy - Sort option.\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param queryOptions.includeTokenSecurityData - Whether to include token security data.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getV3TrendingTokensQueryOptions(\n chainIds: string[],\n queryOptions?: {\n sortBy?: TrendingSortOption;\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n includeTokenSecurityData?: boolean;\n },\n options?: FetchOptions,\n ): FetchQueryOptions<TrendingToken[]> {\n return {\n queryKey: [\n 'token',\n 'v3Trending',\n { chainIds: [...chainIds].sort(), options: queryOptions },\n ],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<TrendingToken[]>(this.apiUrls.TOKEN, '/v3/tokens/trending', {\n signal,\n params: {\n chainIds,\n sort: queryOptions?.sortBy,\n minLiquidity: queryOptions?.minLiquidity,\n minVolume24hUsd: queryOptions?.minVolume24hUsd,\n maxVolume24hUsd: queryOptions?.maxVolume24hUsd,\n minMarketCap: queryOptions?.minMarketCap,\n maxMarketCap: queryOptions?.maxMarketCap,\n includeTokenSecurityData: queryOptions?.includeTokenSecurityData,\n },\n }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TRENDING,\n gcTime: options?.gcTime ?? GC_TIMES.SHORT,\n };\n }\n\n /**\n * Get trending tokens (v3 endpoint).\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.sortBy - Sort option.\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param queryOptions.includeTokenSecurityData - Whether to include token security data.\n * @param options - Fetch options including cache settings.\n * @returns Array of trending tokens.\n */\n async fetchV3TrendingTokens(\n chainIds: string[],\n queryOptions?: {\n sortBy?: TrendingSortOption;\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n includeTokenSecurityData?: boolean;\n },\n options?: FetchOptions,\n ): Promise<TrendingToken[]> {\n return this.queryClient.fetchQuery(\n this.getV3TrendingTokensQueryOptions(chainIds, queryOptions, options),\n );\n }\n\n /**\n * Returns the TanStack Query options object for v3 top gainers.\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.sort - Sort option.\n * @param queryOptions.blockRegion - Region filter (global/us).\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getV3TopGainersQueryOptions(\n chainIds: string[],\n queryOptions?: {\n sort?: TopGainersSortOption;\n blockRegion?: 'global' | 'us';\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n },\n options?: FetchOptions,\n ): FetchQueryOptions<TrendingToken[]> {\n return {\n queryKey: [\n 'token',\n 'v3TopGainers',\n { chainIds: [...chainIds].sort(), options: queryOptions },\n ],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<TrendingToken[]>(\n this.apiUrls.TOKEN,\n '/v3/tokens/top-gainers',\n {\n signal,\n params: {\n chainIds,\n sort: queryOptions?.sort,\n blockRegion: queryOptions?.blockRegion,\n minLiquidity: queryOptions?.minLiquidity,\n minVolume24hUsd: queryOptions?.minVolume24hUsd,\n maxVolume24hUsd: queryOptions?.maxVolume24hUsd,\n minMarketCap: queryOptions?.minMarketCap,\n maxMarketCap: queryOptions?.maxMarketCap,\n },\n },\n ),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TRENDING,\n gcTime: options?.gcTime ?? GC_TIMES.SHORT,\n };\n }\n\n /**\n * Get top gainers/losers (v3 endpoint).\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.sort - Sort option.\n * @param queryOptions.blockRegion - Region filter (global/us).\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param options - Fetch options including cache settings.\n * @returns Array of top gainer tokens.\n */\n async fetchV3TopGainers(\n chainIds: string[],\n queryOptions?: {\n sort?: TopGainersSortOption;\n blockRegion?: 'global' | 'us';\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n },\n options?: FetchOptions,\n ): Promise<TrendingToken[]> {\n return this.queryClient.fetchQuery(\n this.getV3TopGainersQueryOptions(chainIds, queryOptions, options),\n );\n }\n\n /**\n * Returns the TanStack Query options object for v3 popular tokens.\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.blockRegion - Region filter (global/us).\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getV3PopularTokensQueryOptions(\n chainIds: string[],\n queryOptions?: {\n blockRegion?: 'global' | 'us';\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n },\n options?: FetchOptions,\n ): FetchQueryOptions<TrendingToken[]> {\n return {\n queryKey: [\n 'token',\n 'v3Popular',\n { chainIds: [...chainIds].sort(), options: queryOptions },\n ],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<TrendingToken[]>(this.apiUrls.TOKEN, '/v3/tokens/popular', {\n signal,\n params: {\n chainIds,\n blockRegion: queryOptions?.blockRegion,\n minLiquidity: queryOptions?.minLiquidity,\n minVolume24hUsd: queryOptions?.minVolume24hUsd,\n maxVolume24hUsd: queryOptions?.maxVolume24hUsd,\n minMarketCap: queryOptions?.minMarketCap,\n maxMarketCap: queryOptions?.maxMarketCap,\n },\n }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TRENDING,\n gcTime: options?.gcTime ?? GC_TIMES.SHORT,\n };\n }\n\n /**\n * Get popular tokens (v3 endpoint).\n *\n * @param chainIds - Array of chain IDs.\n * @param queryOptions - Query options.\n * @param queryOptions.blockRegion - Region filter (global/us).\n * @param queryOptions.minLiquidity - Minimum liquidity filter.\n * @param queryOptions.minVolume24hUsd - Minimum 24h volume filter.\n * @param queryOptions.maxVolume24hUsd - Maximum 24h volume filter.\n * @param queryOptions.minMarketCap - Minimum market cap filter.\n * @param queryOptions.maxMarketCap - Maximum market cap filter.\n * @param options - Fetch options including cache settings.\n * @returns Array of popular tokens.\n */\n async fetchV3PopularTokens(\n chainIds: string[],\n queryOptions?: {\n blockRegion?: 'global' | 'us';\n minLiquidity?: number;\n minVolume24hUsd?: number;\n maxVolume24hUsd?: number;\n minMarketCap?: number;\n maxMarketCap?: number;\n },\n options?: FetchOptions,\n ): Promise<TrendingToken[]> {\n return this.queryClient.fetchQuery(\n this.getV3PopularTokensQueryOptions(chainIds, queryOptions, options),\n );\n }\n\n // ==========================================================================\n // TOP ASSETS\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for top assets.\n *\n * @param chainId - The chain ID.\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getTopAssetsQueryOptions(\n chainId: number,\n options?: FetchOptions,\n ): FetchQueryOptions<TopAsset[]> {\n return {\n queryKey: ['token', 'topAssets', chainId],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<TopAsset[]>(this.apiUrls.TOKEN, `/topAssets/${chainId}`, {\n signal,\n }),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.TRENDING,\n gcTime: options?.gcTime ?? GC_TIMES.SHORT,\n };\n }\n\n /**\n * Get top assets for a chain.\n *\n * @param chainId - The chain ID.\n * @param options - Fetch options including cache settings.\n * @returns Array of top assets.\n */\n async fetchTopAssets(\n chainId: number,\n options?: FetchOptions,\n ): Promise<TopAsset[]> {\n return this.queryClient.fetchQuery(\n this.getTopAssetsQueryOptions(chainId, options),\n );\n }\n\n // ==========================================================================\n // UTILITY\n // ==========================================================================\n\n /**\n * Returns the TanStack Query options object for v1 suggested occurrence floors.\n *\n * @param options - Fetch options including cache settings.\n * @returns TanStack Query options for use with useQuery, useSuspenseQuery, etc.\n */\n getV1SuggestedOccurrenceFloorsQueryOptions(\n options?: FetchOptions,\n ): FetchQueryOptions<V1SuggestedOccurrenceFloorsResponse> {\n return {\n queryKey: ['token', 'v1SuggestedOccurrenceFloors'],\n queryFn: ({ signal }: QueryFunctionContext) =>\n this.fetch<V1SuggestedOccurrenceFloorsResponse>(\n this.apiUrls.TOKEN,\n '/v1/suggestedOccurrenceFloors',\n { signal },\n ),\n ...getQueryOptionsOverrides(options),\n staleTime: options?.staleTime ?? STALE_TIMES.SUPPORTED_NETWORKS,\n gcTime: options?.gcTime ?? GC_TIMES.EXTENDED,\n };\n }\n\n /**\n * Get suggested occurrence floors for all chains.\n *\n * @param options - Fetch options including cache settings.\n * @returns The suggested occurrence floors response.\n */\n async fetchV1SuggestedOccurrenceFloors(\n options?: FetchOptions,\n ): Promise<V1SuggestedOccurrenceFloorsResponse> {\n return this.queryClient.fetchQuery(\n this.getV1SuggestedOccurrenceFloorsQueryOptions(options),\n );\n }\n}\n"]}
@@ -2,5 +2,5 @@
2
2
  * Token API barrel export.
3
3
  */
4
4
  export { TokenApiClient } from './client.js';
5
- export type { TokenMetadata, V1TokenDescriptionResponse, NetworkInfo, TopAsset, TrendingSortBy, TrendingToken, TopGainersSortOption, TrendingSortOption, V1SuggestedOccurrenceFloorsResponse, TokenSecurityData, TokenSecurityFeature, TokenSecurityHolder, TokenSecurityMarket, TokenSecurityFees, TokenSecurityFinancialStats, TokenSecurityMetadata, } from './types.js';
5
+ export type { TokenMetadata, TokenListQueryOptions, TokenV2SupportedNetworksResponse, V1TokenDescriptionResponse, NetworkInfo, TopAsset, TrendingSortBy, TrendingToken, TopGainersSortOption, TrendingSortOption, V1SuggestedOccurrenceFloorsResponse, TokenSecurityData, TokenSecurityFeature, TokenSecurityHolder, TokenSecurityMarket, TokenSecurityFees, TokenSecurityFinancialStats, TokenSecurityMetadata, } from './types.js';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/token/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EACV,aAAa,EACb,0BAA0B,EAC1B,WAAW,EACX,QAAQ,EACR,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,mCAAmC,EACnC,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/token/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EACV,aAAa,EACb,qBAAqB,EACrB,gCAAgC,EAChC,0BAA0B,EAC1B,WAAW,EACX,QAAQ,EACR,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,mCAAmC,EACnC,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/token/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC","sourcesContent":["/**\n * Token API barrel export.\n */\n\nexport { TokenApiClient } from './client.js';\nexport type {\n TokenMetadata,\n V1TokenDescriptionResponse,\n NetworkInfo,\n TopAsset,\n TrendingSortBy,\n TrendingToken,\n TopGainersSortOption,\n TrendingSortOption,\n V1SuggestedOccurrenceFloorsResponse,\n TokenSecurityData,\n TokenSecurityFeature,\n TokenSecurityHolder,\n TokenSecurityMarket,\n TokenSecurityFees,\n TokenSecurityFinancialStats,\n TokenSecurityMetadata,\n} from './types.js';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/token/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC","sourcesContent":["/**\n * Token API barrel export.\n */\n\nexport { TokenApiClient } from './client.js';\nexport type {\n TokenMetadata,\n TokenListQueryOptions,\n TokenV2SupportedNetworksResponse,\n V1TokenDescriptionResponse,\n NetworkInfo,\n TopAsset,\n TrendingSortBy,\n TrendingToken,\n TopGainersSortOption,\n TrendingSortOption,\n V1SuggestedOccurrenceFloorsResponse,\n TokenSecurityData,\n TokenSecurityFeature,\n TokenSecurityHolder,\n TokenSecurityMarket,\n TokenSecurityFees,\n TokenSecurityFinancialStats,\n TokenSecurityMetadata,\n} from './types.js';\n"]}
@@ -14,6 +14,43 @@ export type TokenMetadata = {
14
14
  aggregators?: string[];
15
15
  occurrences?: number;
16
16
  };
17
+ /**
18
+ * Query options for Token API `GET /tokens/{chainId}`.
19
+ */
20
+ export type TokenListQueryOptions = {
21
+ /** Minimum aggregator occurrences required for a token to be returned. */
22
+ occurrenceFloor?: number;
23
+ /** Include the chain's native asset in the list. */
24
+ includeNativeAssets?: boolean;
25
+ /** Include token fee data. */
26
+ includeTokenFees?: boolean;
27
+ /** Include asset type data. */
28
+ includeAssetType?: boolean;
29
+ /** Include aggregator data. */
30
+ includeAggregators?: boolean;
31
+ /** Include ERC-20 permit data. */
32
+ includeERC20Permit?: boolean;
33
+ /** Include occurrence counts. */
34
+ includeOccurrences?: boolean;
35
+ /** Include storage slot data. */
36
+ includeStorage?: boolean;
37
+ /** Include the token icon URL. */
38
+ includeIconUrl?: boolean;
39
+ /** Include the token address. */
40
+ includeAddress?: boolean;
41
+ /** Include the token name. */
42
+ includeName?: boolean;
43
+ /** Include real-world-asset data. */
44
+ includeRwaData?: boolean;
45
+ };
46
+ /**
47
+ * Supported networks from Token API `GET /v2/supportedNetworks`.
48
+ * Chain IDs are CAIP-2 (for example `eip155:1`).
49
+ */
50
+ export type TokenV2SupportedNetworksResponse = {
51
+ fullSupport?: string[];
52
+ partialSupport?: string[];
53
+ };
17
54
  /** Token description response */
18
55
  export type V1TokenDescriptionResponse = {
19
56
  description: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/api/token/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/api/token/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/api/token/types.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/**\n * Token API types for the API Platform Client.\n * API: token.api.cx.metamask.io\n */\n\n// ============================================================================\n// TOKEN METADATA TYPES\n// ============================================================================\n\n/**\n * Token metadata from Token API v1 /tokens/{chainId} endpoint\n */\nexport type TokenMetadata = {\n address: string;\n symbol: string;\n decimals: number;\n name: string;\n iconUrl?: string;\n aggregators?: string[];\n occurrences?: number;\n};\n\n/** Token description response */\nexport type V1TokenDescriptionResponse = {\n description: string;\n};\n\n// ============================================================================\n// NETWORK TYPES\n// ============================================================================\n\n/** Network info */\nexport type NetworkInfo = {\n active: boolean;\n chainId: number;\n chainName: string;\n nativeCurrency: {\n name: string;\n symbol: string;\n decimals: number;\n address: string;\n };\n iconUrl?: string;\n blockExplorerUrl?: string;\n networkType?: string;\n tokenSources?: string[];\n};\n\n// ============================================================================\n// TOP ASSETS TYPES\n// ============================================================================\n\n/** Top asset */\nexport type TopAsset = {\n address: string;\n symbol: string;\n};\n\n// ============================================================================\n// TRENDING TOKENS TYPES\n// ============================================================================\n\n/**\n * Sort options for trending tokens (v3)\n */\nexport type TrendingSortBy =\n | 'm5_trending'\n | 'h1_trending'\n | 'h6_trending'\n | 'h24_trending';\n\n// ============================================================================\n// TOKEN SECURITY TYPES\n// ============================================================================\n\nexport type TokenSecurityFeature = {\n featureId: string;\n type: string;\n description: string;\n};\n\nexport type TokenSecurityHolder = {\n label: string;\n name: string | null;\n address: string;\n holdingPercentage: number;\n};\n\nexport type TokenSecurityMarket = {\n marketType: string;\n marketName: string;\n pairName: string;\n reserveUSD: number;\n};\n\nexport type TokenSecurityFees = {\n transfer: number;\n transferFeeMaxAmount: number | null;\n buy: number;\n sell: number | null;\n};\n\nexport type TokenSecurityFinancialStats = {\n supply: number;\n topHolders: TokenSecurityHolder[];\n holdersCount: number;\n tradeVolume24h: number | null;\n lockedLiquidityPct: number | null;\n markets: TokenSecurityMarket[];\n};\n\nexport type TokenSecurityMetadata = {\n externalLinks: {\n homepage: string | null;\n twitterPage: string | null;\n telegramChannelId: string | null;\n };\n};\n\nexport type TokenSecurityData = {\n resultType: string;\n maliciousScore: string;\n fees: TokenSecurityFees;\n features: TokenSecurityFeature[];\n financialStats: TokenSecurityFinancialStats;\n metadata: TokenSecurityMetadata;\n created: string;\n};\n\n/**\n * Trending token data from Token API v3 /tokens/trending endpoint\n */\nexport type TrendingToken = {\n assetId: string;\n name: string;\n symbol: string;\n decimals: number;\n price: string;\n aggregatedUsdVolume: number;\n marketCap: number;\n priceChangePct?: {\n m5?: string;\n m15?: string;\n m30?: string;\n h1?: string;\n h6?: string;\n h24?: string;\n };\n labels?: string[];\n /** Optional security data for tokens when includeTokenSecurityData is true */\n securityData?: TokenSecurityData;\n};\n\n/** Top gainers sort options */\nexport type TopGainersSortOption =\n | 'm5_price_change_percentage_desc'\n | 'h1_price_change_percentage_desc'\n | 'h6_price_change_percentage_desc'\n | 'h24_price_change_percentage_desc'\n | 'm5_price_change_percentage_asc'\n | 'h1_price_change_percentage_asc'\n | 'h6_price_change_percentage_asc'\n | 'h24_price_change_percentage_asc';\n\n/** Trending sort options */\nexport type TrendingSortOption =\n | 'm5_trending'\n | 'h1_trending'\n | 'h6_trending'\n | 'h24_trending';\n\n// ============================================================================\n// UTILITY TYPES\n// ============================================================================\n\n/** Suggested occurrence floors response */\nexport type V1SuggestedOccurrenceFloorsResponse = {\n [chainId: string]: number;\n};\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/api/token/types.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/**\n * Token API types for the API Platform Client.\n * API: token.api.cx.metamask.io\n */\n\n// ============================================================================\n// TOKEN METADATA TYPES\n// ============================================================================\n\n/**\n * Token metadata from Token API v1 /tokens/{chainId} endpoint\n */\nexport type TokenMetadata = {\n address: string;\n symbol: string;\n decimals: number;\n name: string;\n iconUrl?: string;\n aggregators?: string[];\n occurrences?: number;\n};\n\n/**\n * Query options for Token API `GET /tokens/{chainId}`.\n */\nexport type TokenListQueryOptions = {\n /** Minimum aggregator occurrences required for a token to be returned. */\n occurrenceFloor?: number;\n /** Include the chain's native asset in the list. */\n includeNativeAssets?: boolean;\n /** Include token fee data. */\n includeTokenFees?: boolean;\n /** Include asset type data. */\n includeAssetType?: boolean;\n /** Include aggregator data. */\n includeAggregators?: boolean;\n /** Include ERC-20 permit data. */\n includeERC20Permit?: boolean;\n /** Include occurrence counts. */\n includeOccurrences?: boolean;\n /** Include storage slot data. */\n includeStorage?: boolean;\n /** Include the token icon URL. */\n includeIconUrl?: boolean;\n /** Include the token address. */\n includeAddress?: boolean;\n /** Include the token name. */\n includeName?: boolean;\n /** Include real-world-asset data. */\n includeRwaData?: boolean;\n};\n\n/**\n * Supported networks from Token API `GET /v2/supportedNetworks`.\n * Chain IDs are CAIP-2 (for example `eip155:1`).\n */\nexport type TokenV2SupportedNetworksResponse = {\n fullSupport?: string[];\n partialSupport?: string[];\n};\n\n/** Token description response */\nexport type V1TokenDescriptionResponse = {\n description: string;\n};\n\n// ============================================================================\n// NETWORK TYPES\n// ============================================================================\n\n/** Network info */\nexport type NetworkInfo = {\n active: boolean;\n chainId: number;\n chainName: string;\n nativeCurrency: {\n name: string;\n symbol: string;\n decimals: number;\n address: string;\n };\n iconUrl?: string;\n blockExplorerUrl?: string;\n networkType?: string;\n tokenSources?: string[];\n};\n\n// ============================================================================\n// TOP ASSETS TYPES\n// ============================================================================\n\n/** Top asset */\nexport type TopAsset = {\n address: string;\n symbol: string;\n};\n\n// ============================================================================\n// TRENDING TOKENS TYPES\n// ============================================================================\n\n/**\n * Sort options for trending tokens (v3)\n */\nexport type TrendingSortBy =\n | 'm5_trending'\n | 'h1_trending'\n | 'h6_trending'\n | 'h24_trending';\n\n// ============================================================================\n// TOKEN SECURITY TYPES\n// ============================================================================\n\nexport type TokenSecurityFeature = {\n featureId: string;\n type: string;\n description: string;\n};\n\nexport type TokenSecurityHolder = {\n label: string;\n name: string | null;\n address: string;\n holdingPercentage: number;\n};\n\nexport type TokenSecurityMarket = {\n marketType: string;\n marketName: string;\n pairName: string;\n reserveUSD: number;\n};\n\nexport type TokenSecurityFees = {\n transfer: number;\n transferFeeMaxAmount: number | null;\n buy: number;\n sell: number | null;\n};\n\nexport type TokenSecurityFinancialStats = {\n supply: number;\n topHolders: TokenSecurityHolder[];\n holdersCount: number;\n tradeVolume24h: number | null;\n lockedLiquidityPct: number | null;\n markets: TokenSecurityMarket[];\n};\n\nexport type TokenSecurityMetadata = {\n externalLinks: {\n homepage: string | null;\n twitterPage: string | null;\n telegramChannelId: string | null;\n };\n};\n\nexport type TokenSecurityData = {\n resultType: string;\n maliciousScore: string;\n fees: TokenSecurityFees;\n features: TokenSecurityFeature[];\n financialStats: TokenSecurityFinancialStats;\n metadata: TokenSecurityMetadata;\n created: string;\n};\n\n/**\n * Trending token data from Token API v3 /tokens/trending endpoint\n */\nexport type TrendingToken = {\n assetId: string;\n name: string;\n symbol: string;\n decimals: number;\n price: string;\n aggregatedUsdVolume: number;\n marketCap: number;\n priceChangePct?: {\n m5?: string;\n m15?: string;\n m30?: string;\n h1?: string;\n h6?: string;\n h24?: string;\n };\n labels?: string[];\n /** Optional security data for tokens when includeTokenSecurityData is true */\n securityData?: TokenSecurityData;\n};\n\n/** Top gainers sort options */\nexport type TopGainersSortOption =\n | 'm5_price_change_percentage_desc'\n | 'h1_price_change_percentage_desc'\n | 'h6_price_change_percentage_desc'\n | 'h24_price_change_percentage_desc'\n | 'm5_price_change_percentage_asc'\n | 'h1_price_change_percentage_asc'\n | 'h6_price_change_percentage_asc'\n | 'h24_price_change_percentage_asc';\n\n/** Trending sort options */\nexport type TrendingSortOption =\n | 'm5_trending'\n | 'h1_trending'\n | 'h6_trending'\n | 'h24_trending';\n\n// ============================================================================\n// UTILITY TYPES\n// ============================================================================\n\n/** Suggested occurrence floors response */\nexport type V1SuggestedOccurrenceFloorsResponse = {\n [chainId: string]: number;\n};\n"]}
package/dist/index.d.ts CHANGED
@@ -8,5 +8,5 @@ export type { ApiPlatformClientServiceOptions, ApiPlatformClientServiceActions,
8
8
  export { OHLCVService, OHLCV_SERVICE_ALLOWED_ACTIONS, OHLCV_SERVICE_ALLOWED_EVENTS, } from './ws/ohlcv/index.js';
9
9
  export type { OHLCVBar, OHLCVSubscriptionOptions, OHLCVSystemNotificationData, OHLCVServiceOptions, OHLCVServiceActions, OHLCVServiceAllowedActions, OHLCVServiceBarUpdatedEvent, OHLCVServiceChainStatusChangedEvent, OHLCVServiceSubscriptionErrorEvent, OHLCVServiceEvents, OHLCVServiceAllowedEvents, OHLCVServiceMessenger, } from './ws/ohlcv/index.js';
10
10
  export { ApiPlatformClient, createApiPlatformClient, AccountsApiClient, PricesApiClient, TokenApiClient, TokensApiClient, API_URLS, STALE_TIMES, GC_TIMES, V6_DEFI_POSITION_TYPES, calculateRetryDelay, getQueryOptionsOverrides, shouldRetry, HttpError, } from './api/index.js';
11
- export type { ApiPlatformClientOptions, ApiUrls, FetchOptions, PageInfo, SupportedCurrency, MarketDataDetails, V5BalanceItem, V5BalancesResponse, V2BalanceItem, V2BalancesResponse, V4BalancesResponse, V6VsCurrency, V6DeFiPositionType, V6BalanceMetadata, V6StellarTokenBalanceMetadata, V6TokenBalanceMetadata, V6BalanceItem, V6BalancesResponse, V1SupportedNetworksResponse, V2SupportedNetworksResponse, V2ActiveNetworksResponse, V1TransactionByHashResponse, V1AccountTransactionsResponse, V4MultiAccountTransactionsResponse, ValueTransfer, V1AccountRelationshipResult, NftItem, V2NftsResponse, TokenDiscoveryItem, V2TokensResponse, V3SpotPricesResponse, CoinGeckoSpotPrice, ExchangeRateInfo, V1ExchangeRatesResponse, PriceSupportedNetworksResponse, PriceV1SupportedNetworksResponse, PriceV2SupportedNetworksResponse, V1HistoricalPricesResponse, V3HistoricalPricesResponse, TokenMetadata, V1TokenDescriptionResponse, NetworkInfo, TopAsset, TrendingSortBy, TrendingToken, TopGainersSortOption, TrendingSortOption, V1SuggestedOccurrenceFloorsResponse, V1TokenSupportedNetworksResponse, V2TokenSupportedNetworksResponse, V3AssetResponse, } from './api/index.js';
11
+ export type { ApiPlatformClientOptions, ApiUrls, FetchOptions, PageInfo, SupportedCurrency, MarketDataDetails, V5BalanceItem, V5BalancesResponse, V2BalanceItem, V2BalancesResponse, V4BalancesResponse, V6VsCurrency, V6DeFiPositionType, V6BalanceMetadata, V6StellarTokenBalanceMetadata, V6TokenBalanceMetadata, V6BalanceItem, V6BalancesResponse, V1SupportedNetworksResponse, V2SupportedNetworksResponse, V2ActiveNetworksResponse, V1TransactionByHashResponse, V1AccountTransactionsResponse, V4MultiAccountTransactionsResponse, ValueTransfer, V1AccountRelationshipResult, NftItem, V2NftsResponse, TokenDiscoveryItem, V2TokensResponse, V3SpotPricesResponse, CoinGeckoSpotPrice, ExchangeRateInfo, V1ExchangeRatesResponse, PriceSupportedNetworksResponse, PriceV1SupportedNetworksResponse, PriceV2SupportedNetworksResponse, V1HistoricalPricesResponse, V3HistoricalPricesResponse, TokenMetadata, TokenListQueryOptions, TokenV2SupportedNetworksResponse, V1TokenDescriptionResponse, NetworkInfo, TopAsset, TrendingSortBy, TrendingToken, TopGainersSortOption, TrendingSortOption, V1SuggestedOccurrenceFloorsResponse, V1TokenSupportedNetworksResponse, V2TokenSupportedNetworksResponse, V3AssetResponse, } from './api/index.js';
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,kBAAkB,GACnB,MAAM,iCAAiC,CAAC;AAEzC,YAAY,EACV,8BAA8B,EAC9B,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACvB,8BAA8B,EAC9B,kDAAkD,EAClD,6BAA6B,EAC7B,gCAAgC,GACjC,MAAM,iCAAiC,CAAC;AAMzC,OAAO,EACL,sBAAsB,EACtB,wCAAwC,EACxC,uCAAuC,GACxC,MAAM,gCAAgC,CAAC;AAExC,YAAY,EACV,sBAAsB,EACtB,mBAAmB,EACnB,6BAA6B,EAC7B,6BAA6B,EAC7B,cAAc,IAAI,oCAAoC,EACtD,6CAA6C,EAC7C,yCAAyC,EACzC,4CAA4C,EAC5C,wCAAwC,EACxC,4BAA4B,EAC5B,aAAa,IAAI,mCAAmC,EACpD,+BAA+B,GAChC,MAAM,gCAAgC,CAAC;AAMxC,YAAY,EACV,WAAW,EACX,KAAK,EACL,OAAO,EACP,QAAQ,EACR,aAAa,EACb,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAMpB,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AAEvC,YAAY,EACV,+BAA+B,EAC/B,+BAA+B,EAC/B,8BAA8B,EAC9B,iCAAiC,GAClC,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EACL,YAAY,EACZ,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,QAAQ,EACR,wBAAwB,EACxB,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,0BAA0B,EAC1B,2BAA2B,EAC3B,mCAAmC,EACnC,kCAAkC,EAClC,kBAAkB,EAClB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EAEvB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,eAAe,EAEf,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,sBAAsB,EAEtB,mBAAmB,EACnB,wBAAwB,EACxB,WAAW,EAEX,SAAS,GACV,MAAM,gBAAgB,CAAC;AAMxB,YAAY,EAEV,wBAAwB,EACxB,OAAO,EACP,YAAY,EAEZ,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,EAEjB,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,6BAA6B,EAC7B,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,2BAA2B,EAC3B,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,6BAA6B,EAC7B,kCAAkC,EAClC,aAAa,EACb,2BAA2B,EAC3B,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAEhB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,uBAAuB,EACvB,8BAA8B,EAC9B,gCAAgC,EAChC,gCAAgC,EAChC,0BAA0B,EAC1B,0BAA0B,EAE1B,aAAa,EACb,0BAA0B,EAC1B,WAAW,EACX,QAAQ,EACR,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,mCAAmC,EAEnC,gCAAgC,EAChC,gCAAgC,EAChC,eAAe,GAChB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,kBAAkB,GACnB,MAAM,iCAAiC,CAAC;AAEzC,YAAY,EACV,8BAA8B,EAC9B,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACvB,8BAA8B,EAC9B,kDAAkD,EAClD,6BAA6B,EAC7B,gCAAgC,GACjC,MAAM,iCAAiC,CAAC;AAMzC,OAAO,EACL,sBAAsB,EACtB,wCAAwC,EACxC,uCAAuC,GACxC,MAAM,gCAAgC,CAAC;AAExC,YAAY,EACV,sBAAsB,EACtB,mBAAmB,EACnB,6BAA6B,EAC7B,6BAA6B,EAC7B,cAAc,IAAI,oCAAoC,EACtD,6CAA6C,EAC7C,yCAAyC,EACzC,4CAA4C,EAC5C,wCAAwC,EACxC,4BAA4B,EAC5B,aAAa,IAAI,mCAAmC,EACpD,+BAA+B,GAChC,MAAM,gCAAgC,CAAC;AAMxC,YAAY,EACV,WAAW,EACX,KAAK,EACL,OAAO,EACP,QAAQ,EACR,aAAa,EACb,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAMpB,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AAEvC,YAAY,EACV,+BAA+B,EAC/B,+BAA+B,EAC/B,8BAA8B,EAC9B,iCAAiC,GAClC,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EACL,YAAY,EACZ,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,QAAQ,EACR,wBAAwB,EACxB,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,0BAA0B,EAC1B,2BAA2B,EAC3B,mCAAmC,EACnC,kCAAkC,EAClC,kBAAkB,EAClB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EAEvB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,eAAe,EAEf,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,sBAAsB,EAEtB,mBAAmB,EACnB,wBAAwB,EACxB,WAAW,EAEX,SAAS,GACV,MAAM,gBAAgB,CAAC;AAMxB,YAAY,EAEV,wBAAwB,EACxB,OAAO,EACP,YAAY,EAEZ,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,EAEjB,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,6BAA6B,EAC7B,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,2BAA2B,EAC3B,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,6BAA6B,EAC7B,kCAAkC,EAClC,aAAa,EACb,2BAA2B,EAC3B,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAEhB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,uBAAuB,EACvB,8BAA8B,EAC9B,gCAAgC,EAChC,gCAAgC,EAChC,0BAA0B,EAC1B,0BAA0B,EAE1B,aAAa,EACb,qBAAqB,EACrB,gCAAgC,EAChC,0BAA0B,EAC1B,WAAW,EACX,QAAQ,EACR,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,mCAAmC,EAEnC,gCAAgC,EAChC,gCAAgC,EAChC,eAAe,GAChB,MAAM,gBAAgB,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAE/B,+EAA+E;AAC/E,4BAA4B;AAC5B,+EAA+E;AAE/E,OAAO,EACL,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,kBAAkB,GACnB,MAAM,iCAAiC,CAAC;AAiBzC,+EAA+E;AAC/E,2BAA2B;AAC3B,+EAA+E;AAE/E,OAAO,EACL,sBAAsB,EACtB,wCAAwC,EACxC,uCAAuC,GACxC,MAAM,gCAAgC,CAAC;AA8BxC,+EAA+E;AAC/E,8BAA8B;AAC9B,+EAA+E;AAE/E,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AASvC,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E,OAAO,EACL,YAAY,EACZ,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAiB7B,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E,OAAO,EACL,iBAAiB,EACjB,uBAAuB;AACvB,yBAAyB;AACzB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,eAAe;AACf,YAAY;AACZ,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,sBAAsB;AACtB,UAAU;AACV,mBAAmB,EACnB,wBAAwB,EACxB,WAAW;AACX,SAAS;AACT,SAAS,GACV,MAAM,gBAAgB,CAAC","sourcesContent":["// Core Backend Package Exports\n\n// ============================================================================\n// BACKEND WEBSOCKET SERVICE\n// ============================================================================\n\nexport {\n BackendWebSocketService,\n getCloseReason,\n WebSocketState,\n WebSocketEventType,\n} from './ws/BackendWebSocketService.js';\n\nexport type {\n BackendWebSocketServiceOptions,\n ClientRequestMessage,\n ServerResponseMessage,\n ServerNotificationMessage,\n WebSocketMessage,\n ChannelCallback,\n WebSocketSubscription,\n WebSocketConnectionInfo,\n BackendWebSocketServiceActions,\n BackendWebSocketServiceConnectionStateChangedEvent,\n BackendWebSocketServiceEvents,\n BackendWebSocketServiceMessenger,\n} from './ws/BackendWebSocketService.js';\n\n// ============================================================================\n// ACCOUNT ACTIVITY SERVICE\n// ============================================================================\n\nexport {\n AccountActivityService,\n ACCOUNT_ACTIVITY_SERVICE_ALLOWED_ACTIONS,\n ACCOUNT_ACTIVITY_SERVICE_ALLOWED_EVENTS,\n} from './ws/AccountActivityService.js';\n\nexport type {\n SystemNotificationData,\n SubscriptionOptions,\n AccountActivityServiceOptions,\n AccountActivityServiceActions,\n AllowedActions as AccountActivityServiceAllowedActions,\n AccountActivityServiceTransactionUpdatedEvent,\n AccountActivityServiceBalanceUpdatedEvent,\n AccountActivityServiceSubscriptionErrorEvent,\n AccountActivityServiceStatusChangedEvent,\n AccountActivityServiceEvents,\n AllowedEvents as AccountActivityServiceAllowedEvents,\n AccountActivityServiceMessenger,\n} from './ws/AccountActivityService.js';\n\n// ============================================================================\n// SHARED TYPES\n// ============================================================================\n\nexport type {\n Transaction,\n Asset,\n Balance,\n Transfer,\n BalanceUpdate,\n AccountActivityMessage,\n} from './types.js';\n\n// ============================================================================\n// API PLATFORM CLIENT SERVICE\n// ============================================================================\n\nexport {\n ApiPlatformClientService,\n apiPlatformClientServiceName,\n} from './ApiPlatformClientService.js';\n\nexport type {\n ApiPlatformClientServiceOptions,\n ApiPlatformClientServiceActions,\n ApiPlatformClientServiceEvents,\n ApiPlatformClientServiceMessenger,\n} from './ApiPlatformClientService.js';\n\n// ============================================================================\n// OHLCV SERVICE\n// ============================================================================\n\nexport {\n OHLCVService,\n OHLCV_SERVICE_ALLOWED_ACTIONS,\n OHLCV_SERVICE_ALLOWED_EVENTS,\n} from './ws/ohlcv/index.js';\n\nexport type {\n OHLCVBar,\n OHLCVSubscriptionOptions,\n OHLCVSystemNotificationData,\n OHLCVServiceOptions,\n OHLCVServiceActions,\n OHLCVServiceAllowedActions,\n OHLCVServiceBarUpdatedEvent,\n OHLCVServiceChainStatusChangedEvent,\n OHLCVServiceSubscriptionErrorEvent,\n OHLCVServiceEvents,\n OHLCVServiceAllowedEvents,\n OHLCVServiceMessenger,\n} from './ws/ohlcv/index.js';\n\n// ============================================================================\n// API PLATFORM CLIENT\n// ============================================================================\n\nexport {\n ApiPlatformClient,\n createApiPlatformClient,\n // Individual API clients\n AccountsApiClient,\n PricesApiClient,\n TokenApiClient,\n TokensApiClient,\n // Constants\n API_URLS,\n STALE_TIMES,\n GC_TIMES,\n V6_DEFI_POSITION_TYPES,\n // Helpers\n calculateRetryDelay,\n getQueryOptionsOverrides,\n shouldRetry,\n // Errors\n HttpError,\n} from './api/index.js';\n\n// ============================================================================\n// API PLATFORM CLIENT TYPES\n// ============================================================================\n\nexport type {\n // Client options\n ApiPlatformClientOptions,\n ApiUrls,\n FetchOptions,\n // Shared types\n PageInfo,\n SupportedCurrency,\n MarketDataDetails,\n // Accounts API types\n V5BalanceItem,\n V5BalancesResponse,\n V2BalanceItem,\n V2BalancesResponse,\n V4BalancesResponse,\n V6VsCurrency,\n V6DeFiPositionType,\n V6BalanceMetadata,\n V6StellarTokenBalanceMetadata,\n V6TokenBalanceMetadata,\n V6BalanceItem,\n V6BalancesResponse,\n V1SupportedNetworksResponse,\n V2SupportedNetworksResponse,\n V2ActiveNetworksResponse,\n V1TransactionByHashResponse,\n V1AccountTransactionsResponse,\n V4MultiAccountTransactionsResponse,\n ValueTransfer,\n V1AccountRelationshipResult,\n NftItem,\n V2NftsResponse,\n TokenDiscoveryItem,\n V2TokensResponse,\n // Prices API types\n V3SpotPricesResponse,\n CoinGeckoSpotPrice,\n ExchangeRateInfo,\n V1ExchangeRatesResponse,\n PriceSupportedNetworksResponse,\n PriceV1SupportedNetworksResponse,\n PriceV2SupportedNetworksResponse,\n V1HistoricalPricesResponse,\n V3HistoricalPricesResponse,\n // Token API types\n TokenMetadata,\n V1TokenDescriptionResponse,\n NetworkInfo,\n TopAsset,\n TrendingSortBy,\n TrendingToken,\n TopGainersSortOption,\n TrendingSortOption,\n V1SuggestedOccurrenceFloorsResponse,\n // Tokens API types\n V1TokenSupportedNetworksResponse,\n V2TokenSupportedNetworksResponse,\n V3AssetResponse,\n} from './api/index.js';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAE/B,+EAA+E;AAC/E,4BAA4B;AAC5B,+EAA+E;AAE/E,OAAO,EACL,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,kBAAkB,GACnB,MAAM,iCAAiC,CAAC;AAiBzC,+EAA+E;AAC/E,2BAA2B;AAC3B,+EAA+E;AAE/E,OAAO,EACL,sBAAsB,EACtB,wCAAwC,EACxC,uCAAuC,GACxC,MAAM,gCAAgC,CAAC;AA8BxC,+EAA+E;AAC/E,8BAA8B;AAC9B,+EAA+E;AAE/E,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AASvC,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E,OAAO,EACL,YAAY,EACZ,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAiB7B,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E,OAAO,EACL,iBAAiB,EACjB,uBAAuB;AACvB,yBAAyB;AACzB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,eAAe;AACf,YAAY;AACZ,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,sBAAsB;AACtB,UAAU;AACV,mBAAmB,EACnB,wBAAwB,EACxB,WAAW;AACX,SAAS;AACT,SAAS,GACV,MAAM,gBAAgB,CAAC","sourcesContent":["// Core Backend Package Exports\n\n// ============================================================================\n// BACKEND WEBSOCKET SERVICE\n// ============================================================================\n\nexport {\n BackendWebSocketService,\n getCloseReason,\n WebSocketState,\n WebSocketEventType,\n} from './ws/BackendWebSocketService.js';\n\nexport type {\n BackendWebSocketServiceOptions,\n ClientRequestMessage,\n ServerResponseMessage,\n ServerNotificationMessage,\n WebSocketMessage,\n ChannelCallback,\n WebSocketSubscription,\n WebSocketConnectionInfo,\n BackendWebSocketServiceActions,\n BackendWebSocketServiceConnectionStateChangedEvent,\n BackendWebSocketServiceEvents,\n BackendWebSocketServiceMessenger,\n} from './ws/BackendWebSocketService.js';\n\n// ============================================================================\n// ACCOUNT ACTIVITY SERVICE\n// ============================================================================\n\nexport {\n AccountActivityService,\n ACCOUNT_ACTIVITY_SERVICE_ALLOWED_ACTIONS,\n ACCOUNT_ACTIVITY_SERVICE_ALLOWED_EVENTS,\n} from './ws/AccountActivityService.js';\n\nexport type {\n SystemNotificationData,\n SubscriptionOptions,\n AccountActivityServiceOptions,\n AccountActivityServiceActions,\n AllowedActions as AccountActivityServiceAllowedActions,\n AccountActivityServiceTransactionUpdatedEvent,\n AccountActivityServiceBalanceUpdatedEvent,\n AccountActivityServiceSubscriptionErrorEvent,\n AccountActivityServiceStatusChangedEvent,\n AccountActivityServiceEvents,\n AllowedEvents as AccountActivityServiceAllowedEvents,\n AccountActivityServiceMessenger,\n} from './ws/AccountActivityService.js';\n\n// ============================================================================\n// SHARED TYPES\n// ============================================================================\n\nexport type {\n Transaction,\n Asset,\n Balance,\n Transfer,\n BalanceUpdate,\n AccountActivityMessage,\n} from './types.js';\n\n// ============================================================================\n// API PLATFORM CLIENT SERVICE\n// ============================================================================\n\nexport {\n ApiPlatformClientService,\n apiPlatformClientServiceName,\n} from './ApiPlatformClientService.js';\n\nexport type {\n ApiPlatformClientServiceOptions,\n ApiPlatformClientServiceActions,\n ApiPlatformClientServiceEvents,\n ApiPlatformClientServiceMessenger,\n} from './ApiPlatformClientService.js';\n\n// ============================================================================\n// OHLCV SERVICE\n// ============================================================================\n\nexport {\n OHLCVService,\n OHLCV_SERVICE_ALLOWED_ACTIONS,\n OHLCV_SERVICE_ALLOWED_EVENTS,\n} from './ws/ohlcv/index.js';\n\nexport type {\n OHLCVBar,\n OHLCVSubscriptionOptions,\n OHLCVSystemNotificationData,\n OHLCVServiceOptions,\n OHLCVServiceActions,\n OHLCVServiceAllowedActions,\n OHLCVServiceBarUpdatedEvent,\n OHLCVServiceChainStatusChangedEvent,\n OHLCVServiceSubscriptionErrorEvent,\n OHLCVServiceEvents,\n OHLCVServiceAllowedEvents,\n OHLCVServiceMessenger,\n} from './ws/ohlcv/index.js';\n\n// ============================================================================\n// API PLATFORM CLIENT\n// ============================================================================\n\nexport {\n ApiPlatformClient,\n createApiPlatformClient,\n // Individual API clients\n AccountsApiClient,\n PricesApiClient,\n TokenApiClient,\n TokensApiClient,\n // Constants\n API_URLS,\n STALE_TIMES,\n GC_TIMES,\n V6_DEFI_POSITION_TYPES,\n // Helpers\n calculateRetryDelay,\n getQueryOptionsOverrides,\n shouldRetry,\n // Errors\n HttpError,\n} from './api/index.js';\n\n// ============================================================================\n// API PLATFORM CLIENT TYPES\n// ============================================================================\n\nexport type {\n // Client options\n ApiPlatformClientOptions,\n ApiUrls,\n FetchOptions,\n // Shared types\n PageInfo,\n SupportedCurrency,\n MarketDataDetails,\n // Accounts API types\n V5BalanceItem,\n V5BalancesResponse,\n V2BalanceItem,\n V2BalancesResponse,\n V4BalancesResponse,\n V6VsCurrency,\n V6DeFiPositionType,\n V6BalanceMetadata,\n V6StellarTokenBalanceMetadata,\n V6TokenBalanceMetadata,\n V6BalanceItem,\n V6BalancesResponse,\n V1SupportedNetworksResponse,\n V2SupportedNetworksResponse,\n V2ActiveNetworksResponse,\n V1TransactionByHashResponse,\n V1AccountTransactionsResponse,\n V4MultiAccountTransactionsResponse,\n ValueTransfer,\n V1AccountRelationshipResult,\n NftItem,\n V2NftsResponse,\n TokenDiscoveryItem,\n V2TokensResponse,\n // Prices API types\n V3SpotPricesResponse,\n CoinGeckoSpotPrice,\n ExchangeRateInfo,\n V1ExchangeRatesResponse,\n PriceSupportedNetworksResponse,\n PriceV1SupportedNetworksResponse,\n PriceV2SupportedNetworksResponse,\n V1HistoricalPricesResponse,\n V3HistoricalPricesResponse,\n // Token API types\n TokenMetadata,\n TokenListQueryOptions,\n TokenV2SupportedNetworksResponse,\n V1TokenDescriptionResponse,\n NetworkInfo,\n TopAsset,\n TrendingSortBy,\n TrendingToken,\n TopGainersSortOption,\n TrendingSortOption,\n V1SuggestedOccurrenceFloorsResponse,\n // Tokens API types\n V1TokenSupportedNetworksResponse,\n V2TokenSupportedNetworksResponse,\n V3AssetResponse,\n} from './api/index.js';\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metamask-previews/core-backend",
3
- "version": "12.0.1-preview-105d14e7e",
3
+ "version": "12.0.1-preview-23d340d",
4
4
  "description": "Core backend services for MetaMask",
5
5
  "keywords": [
6
6
  "Ethereum",
@@ -54,7 +54,7 @@
54
54
  "@metamask/controller-utils": "^13.0.0",
55
55
  "@metamask/keyring-controller": "^28.1.0",
56
56
  "@metamask/messenger": "^3.0.0",
57
- "@metamask/profile-sync-controller": "^34.0.0",
57
+ "@metamask/profile-sync-controller": "^34.0.1",
58
58
  "@metamask/remote-feature-flag-controller": "^7.0.0",
59
59
  "@metamask/utils": "^12.0.0",
60
60
  "@tanstack/query-core": "^5.103.2",