ton-provider-system 0.2.2 → 0.3.0
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/README.md +111 -14
- package/dist/index.cjs +480 -264
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +59 -2
- package/dist/index.d.ts +59 -2
- package/dist/index.js +480 -265
- package/dist/index.js.map +1 -1
- package/package.json +17 -19
package/dist/index.d.cts
CHANGED
|
@@ -875,7 +875,10 @@ declare class TokenBucketRateLimiter {
|
|
|
875
875
|
*/
|
|
876
876
|
release(): void;
|
|
877
877
|
/**
|
|
878
|
-
* Report a successful request (
|
|
878
|
+
* Report a successful request (gradually reduces backoff)
|
|
879
|
+
*
|
|
880
|
+
* Instead of immediately clearing backoff, we gradually reduce it to prevent
|
|
881
|
+
* immediately hitting the rate limit again after a single success.
|
|
879
882
|
*/
|
|
880
883
|
reportSuccess(): void;
|
|
881
884
|
/**
|
|
@@ -989,6 +992,8 @@ declare class HealthChecker {
|
|
|
989
992
|
private logger;
|
|
990
993
|
private results;
|
|
991
994
|
private highestSeqno;
|
|
995
|
+
/** Rolling window of recent valid seqnos per network (for outlier-robust blocksBehind). */
|
|
996
|
+
private seqnoSamples;
|
|
992
997
|
private rateLimiter;
|
|
993
998
|
constructor(config?: Partial<HealthCheckConfig>, logger?: Logger, rateLimiter?: RateLimiterManager);
|
|
994
999
|
/**
|
|
@@ -1004,6 +1009,7 @@ declare class HealthChecker {
|
|
|
1004
1009
|
*
|
|
1005
1010
|
* @param batchSize - Number of providers to test in parallel (default: 2)
|
|
1006
1011
|
* @param batchDelayMs - Delay between batches in milliseconds (default: 500 to avoid rate limits)
|
|
1012
|
+
* If not provided, calculates delay based on lowest RPS in batch
|
|
1007
1013
|
*/
|
|
1008
1014
|
testProviders(providers: ResolvedProvider[], batchSize?: number, batchDelayMs?: number): Promise<ProviderHealthResult[]>;
|
|
1009
1015
|
/**
|
|
@@ -1042,6 +1048,18 @@ declare class HealthChecker {
|
|
|
1042
1048
|
*/
|
|
1043
1049
|
markOffline(providerId: string, network: Network, error?: string): void;
|
|
1044
1050
|
private getResultKey;
|
|
1051
|
+
/**
|
|
1052
|
+
* Record a valid seqno sample and return an outlier-robust freshness baseline
|
|
1053
|
+
* (median of recent samples for the network). Using the median instead of the
|
|
1054
|
+
* raw maximum prevents a single provider that reports an inflated seqno from
|
|
1055
|
+
* poisoning `blocksBehind` for every other (healthy) provider. See P2-2.
|
|
1056
|
+
*/
|
|
1057
|
+
private recordSeqnoAndGetBaseline;
|
|
1058
|
+
/**
|
|
1059
|
+
* Detect a "non-JSON response" error (e.g. an HTML error page returned by a
|
|
1060
|
+
* misbehaving gateway), used to decide whether to re-discover an Orbs endpoint.
|
|
1061
|
+
*/
|
|
1062
|
+
private isNonJsonResponseError;
|
|
1045
1063
|
/**
|
|
1046
1064
|
* Get endpoint URL for a provider (handles dynamic providers like Orbs)
|
|
1047
1065
|
*/
|
|
@@ -1084,6 +1102,8 @@ interface SelectionConfig {
|
|
|
1084
1102
|
freshnessWeight: number;
|
|
1085
1103
|
/** Minimum acceptable provider status */
|
|
1086
1104
|
minStatus: ProviderStatus[];
|
|
1105
|
+
/** Cooldown period (ms) before retrying failed providers (default: 30000) */
|
|
1106
|
+
retryCooldownMs: number;
|
|
1087
1107
|
}
|
|
1088
1108
|
/**
|
|
1089
1109
|
* Provider Selector
|
|
@@ -1196,6 +1216,22 @@ declare class ProviderSelector {
|
|
|
1196
1216
|
* 2. Health check result browserCompatible flag (if health check was performed)
|
|
1197
1217
|
*/
|
|
1198
1218
|
private filterBrowserCompatible;
|
|
1219
|
+
/**
|
|
1220
|
+
* Check if an error is retryable (temporary) or permanent
|
|
1221
|
+
*
|
|
1222
|
+
* Permanent errors (never retry):
|
|
1223
|
+
* - 404 (Not Found) - endpoint doesn't exist
|
|
1224
|
+
* - 401 (Unauthorized) - invalid API key
|
|
1225
|
+
* - Invalid API key errors
|
|
1226
|
+
*
|
|
1227
|
+
* Retryable errors (can retry after cooldown):
|
|
1228
|
+
* - 503 (Service Unavailable) - temporary server issue
|
|
1229
|
+
* - 502 (Bad Gateway) - temporary gateway issue
|
|
1230
|
+
* - Timeout errors - network issues
|
|
1231
|
+
* - Network errors - connection issues
|
|
1232
|
+
* - 429 (Rate Limit) - temporary rate limit (handled separately)
|
|
1233
|
+
*/
|
|
1234
|
+
private isRetryableError;
|
|
1199
1235
|
}
|
|
1200
1236
|
/**
|
|
1201
1237
|
* Create a provider selector
|
|
@@ -1554,18 +1590,26 @@ declare class BrowserAdapter {
|
|
|
1554
1590
|
getEndpointWithRateLimit(timeoutMs?: number): Promise<string>;
|
|
1555
1591
|
/**
|
|
1556
1592
|
* Make a JSON-RPC call to the TON API
|
|
1593
|
+
*
|
|
1594
|
+
* Note: Uses rate limiting to prevent 429 errors.
|
|
1557
1595
|
*/
|
|
1558
1596
|
jsonRpc<T = unknown>(method: string, params?: Record<string, unknown>, timeoutMs?: number): Promise<T>;
|
|
1559
1597
|
/**
|
|
1560
1598
|
* Get address state
|
|
1599
|
+
*
|
|
1600
|
+
* Note: Uses rate limiting to prevent 429 errors.
|
|
1561
1601
|
*/
|
|
1562
1602
|
getAddressState(address: string, timeoutMs?: number): Promise<'uninit' | 'active' | 'frozen'>;
|
|
1563
1603
|
/**
|
|
1564
1604
|
* Get address balance
|
|
1605
|
+
*
|
|
1606
|
+
* Note: Uses rate limiting to prevent 429 errors.
|
|
1565
1607
|
*/
|
|
1566
1608
|
getAddressBalance(address: string, timeoutMs?: number): Promise<bigint>;
|
|
1567
1609
|
/**
|
|
1568
1610
|
* Get address information
|
|
1611
|
+
*
|
|
1612
|
+
* Note: Uses rate limiting to prevent 429 errors.
|
|
1569
1613
|
*/
|
|
1570
1614
|
getAddressInfo(address: string, timeoutMs?: number): Promise<{
|
|
1571
1615
|
state: 'uninit' | 'active' | 'frozen';
|
|
@@ -1575,6 +1619,8 @@ declare class BrowserAdapter {
|
|
|
1575
1619
|
}>;
|
|
1576
1620
|
/**
|
|
1577
1621
|
* Run get method
|
|
1622
|
+
*
|
|
1623
|
+
* Note: Uses rate limiting to prevent 429 errors.
|
|
1578
1624
|
*/
|
|
1579
1625
|
runGetMethod(address: string, method: string, stack?: unknown[], timeoutMs?: number): Promise<{
|
|
1580
1626
|
exit_code: number;
|
|
@@ -1692,6 +1738,17 @@ declare function isValidHttpUrl(str: string): boolean;
|
|
|
1692
1738
|
* Validate that a string is a valid WebSocket URL.
|
|
1693
1739
|
*/
|
|
1694
1740
|
declare function isValidWsUrl(str: string): boolean;
|
|
1741
|
+
/**
|
|
1742
|
+
* Redact credentials from an endpoint URL so it is safe to log.
|
|
1743
|
+
*
|
|
1744
|
+
* Masks (a) sensitive query-param values (`apikey`, `api_key`, `key`, `token`,
|
|
1745
|
+
* `secret`, `password`), (b) credential-like path segments while preserving
|
|
1746
|
+
* structural ones (`api`, `v2`, `v3`, `jsonRPC`, `rpc`, `public`, …), and
|
|
1747
|
+
* (c) a credential-like leading host label (e.g. a QuickNode subdomain key).
|
|
1748
|
+
*
|
|
1749
|
+
* For logging only — never use the result to make requests.
|
|
1750
|
+
*/
|
|
1751
|
+
declare function redactUrl(url: string): string;
|
|
1695
1752
|
|
|
1696
1753
|
/**
|
|
1697
1754
|
* Unified Provider System - Timeout Utilities
|
|
@@ -2027,4 +2084,4 @@ declare class GenericProvider extends BaseProvider {
|
|
|
2027
2084
|
*/
|
|
2028
2085
|
declare function createProvider(provider: ResolvedProvider): BaseProvider;
|
|
2029
2086
|
|
|
2030
|
-
export { type ApiVersion, ApiVersionSchema, BaseProvider, BrowserAdapter, CHAINSTACK_RATE_LIMIT, ChainstackProvider, ConfigError, DEFAULT_CONTRACT_TIMEOUT_MS, DEFAULT_HEALTH_CHECK_TIMEOUT_MS, DEFAULT_PROVIDERS, DEFAULT_PROVIDER_TIMEOUT_MS, DEFAULT_RATE_LIMIT, GenericProvider, GetBlockProvider, type HealthCheckConfig, HealthChecker, type Logger, type MasterchainInfo, type Network, type NetworkDefaults, NetworkSchema, NodeAdapter, ORBS_RATE_LIMIT, OnFinalityProvider, OrbsProvider, type ProviderConfig, ProviderConfigSchema, type ProviderEndpoints, ProviderError, type ProviderHealthResult, ProviderManager, type ProviderManagerOptions, type ProviderManagerState, ProviderRegistry, ProviderSelector, type ProviderState, type ProviderStatus, type ProviderType, ProviderTypeSchema, QUICKNODE_RATE_LIMIT, QuickNodeProvider, type RateLimitConfig, RateLimitError, type RateLimitState, RateLimiterManager, type ResolvedProvider, type RetryOptions, type RpcConfig, RpcConfigSchema, type SelectionConfig, type StateListener, TatumProvider, TimeoutError, TokenBucketRateLimiter, type TonApiResponse, TonCenterProvider, buildGetAddressBalanceUrl, buildGetAddressInfoUrl, buildGetAddressStateUrl, buildRestUrl, createBrowserAdapter, createBrowserAdapterForNetwork, createDefaultConfig, createDefaultRegistry, createEmptyConfig, createHealthChecker, createNodeAdapter, createProvider, createProviderManager, createRateLimiter, createRateLimiterManager, createRegistry, createRegistryFromData, createRegistryFromFile, createSelector, createTimeoutController, detectNetworkFromEndpoint, fetchWithTimeout, getBaseUrl, getDefaultProvidersForNetwork, getEnvVar, getProviderManager, getProvidersForNetwork, getRateLimitForType, getTonClient, getTonClientForNetwork, getTonClientWithRateLimit, isApiVersion, isChainstackUrl, isNetwork, isOrbsUrl, isProviderType, isQuickNodeUrl, isRateLimitError, isTimeoutError, isTonCenterUrl, isValidHttpUrl, isValidWsUrl, loadBuiltinConfig, loadConfig, loadConfigFromData, loadConfigFromUrl, mergeConfigs, mergeWithDefaults, normalizeV2Endpoint, parseProviderConfig, parseRpcConfig, resetNodeAdapter, resolveAllProviders, resolveEndpoints, resolveKeyPlaceholder, resolveProvider, sleep, toV2Base, toV3Base, withRetry, withTimeout, withTimeoutAndRetry, withTimeoutFn };
|
|
2087
|
+
export { type ApiVersion, ApiVersionSchema, BaseProvider, BrowserAdapter, CHAINSTACK_RATE_LIMIT, ChainstackProvider, ConfigError, DEFAULT_CONTRACT_TIMEOUT_MS, DEFAULT_HEALTH_CHECK_TIMEOUT_MS, DEFAULT_PROVIDERS, DEFAULT_PROVIDER_TIMEOUT_MS, DEFAULT_RATE_LIMIT, GenericProvider, GetBlockProvider, type HealthCheckConfig, HealthChecker, type Logger, type MasterchainInfo, type Network, type NetworkDefaults, NetworkSchema, NodeAdapter, ORBS_RATE_LIMIT, OnFinalityProvider, OrbsProvider, type ProviderConfig, ProviderConfigSchema, type ProviderEndpoints, ProviderError, type ProviderHealthResult, ProviderManager, type ProviderManagerOptions, type ProviderManagerState, ProviderRegistry, ProviderSelector, type ProviderState, type ProviderStatus, type ProviderType, ProviderTypeSchema, QUICKNODE_RATE_LIMIT, QuickNodeProvider, type RateLimitConfig, RateLimitError, type RateLimitState, RateLimiterManager, type ResolvedProvider, type RetryOptions, type RpcConfig, RpcConfigSchema, type SelectionConfig, type StateListener, TatumProvider, TimeoutError, TokenBucketRateLimiter, type TonApiResponse, TonCenterProvider, buildGetAddressBalanceUrl, buildGetAddressInfoUrl, buildGetAddressStateUrl, buildRestUrl, createBrowserAdapter, createBrowserAdapterForNetwork, createDefaultConfig, createDefaultRegistry, createEmptyConfig, createHealthChecker, createNodeAdapter, createProvider, createProviderManager, createRateLimiter, createRateLimiterManager, createRegistry, createRegistryFromData, createRegistryFromFile, createSelector, createTimeoutController, detectNetworkFromEndpoint, fetchWithTimeout, getBaseUrl, getDefaultProvidersForNetwork, getEnvVar, getProviderManager, getProvidersForNetwork, getRateLimitForType, getTonClient, getTonClientForNetwork, getTonClientWithRateLimit, isApiVersion, isChainstackUrl, isNetwork, isOrbsUrl, isProviderType, isQuickNodeUrl, isRateLimitError, isTimeoutError, isTonCenterUrl, isValidHttpUrl, isValidWsUrl, loadBuiltinConfig, loadConfig, loadConfigFromData, loadConfigFromUrl, mergeConfigs, mergeWithDefaults, normalizeV2Endpoint, parseProviderConfig, parseRpcConfig, redactUrl, resetNodeAdapter, resolveAllProviders, resolveEndpoints, resolveKeyPlaceholder, resolveProvider, sleep, toV2Base, toV3Base, withRetry, withTimeout, withTimeoutAndRetry, withTimeoutFn };
|
package/dist/index.d.ts
CHANGED
|
@@ -875,7 +875,10 @@ declare class TokenBucketRateLimiter {
|
|
|
875
875
|
*/
|
|
876
876
|
release(): void;
|
|
877
877
|
/**
|
|
878
|
-
* Report a successful request (
|
|
878
|
+
* Report a successful request (gradually reduces backoff)
|
|
879
|
+
*
|
|
880
|
+
* Instead of immediately clearing backoff, we gradually reduce it to prevent
|
|
881
|
+
* immediately hitting the rate limit again after a single success.
|
|
879
882
|
*/
|
|
880
883
|
reportSuccess(): void;
|
|
881
884
|
/**
|
|
@@ -989,6 +992,8 @@ declare class HealthChecker {
|
|
|
989
992
|
private logger;
|
|
990
993
|
private results;
|
|
991
994
|
private highestSeqno;
|
|
995
|
+
/** Rolling window of recent valid seqnos per network (for outlier-robust blocksBehind). */
|
|
996
|
+
private seqnoSamples;
|
|
992
997
|
private rateLimiter;
|
|
993
998
|
constructor(config?: Partial<HealthCheckConfig>, logger?: Logger, rateLimiter?: RateLimiterManager);
|
|
994
999
|
/**
|
|
@@ -1004,6 +1009,7 @@ declare class HealthChecker {
|
|
|
1004
1009
|
*
|
|
1005
1010
|
* @param batchSize - Number of providers to test in parallel (default: 2)
|
|
1006
1011
|
* @param batchDelayMs - Delay between batches in milliseconds (default: 500 to avoid rate limits)
|
|
1012
|
+
* If not provided, calculates delay based on lowest RPS in batch
|
|
1007
1013
|
*/
|
|
1008
1014
|
testProviders(providers: ResolvedProvider[], batchSize?: number, batchDelayMs?: number): Promise<ProviderHealthResult[]>;
|
|
1009
1015
|
/**
|
|
@@ -1042,6 +1048,18 @@ declare class HealthChecker {
|
|
|
1042
1048
|
*/
|
|
1043
1049
|
markOffline(providerId: string, network: Network, error?: string): void;
|
|
1044
1050
|
private getResultKey;
|
|
1051
|
+
/**
|
|
1052
|
+
* Record a valid seqno sample and return an outlier-robust freshness baseline
|
|
1053
|
+
* (median of recent samples for the network). Using the median instead of the
|
|
1054
|
+
* raw maximum prevents a single provider that reports an inflated seqno from
|
|
1055
|
+
* poisoning `blocksBehind` for every other (healthy) provider. See P2-2.
|
|
1056
|
+
*/
|
|
1057
|
+
private recordSeqnoAndGetBaseline;
|
|
1058
|
+
/**
|
|
1059
|
+
* Detect a "non-JSON response" error (e.g. an HTML error page returned by a
|
|
1060
|
+
* misbehaving gateway), used to decide whether to re-discover an Orbs endpoint.
|
|
1061
|
+
*/
|
|
1062
|
+
private isNonJsonResponseError;
|
|
1045
1063
|
/**
|
|
1046
1064
|
* Get endpoint URL for a provider (handles dynamic providers like Orbs)
|
|
1047
1065
|
*/
|
|
@@ -1084,6 +1102,8 @@ interface SelectionConfig {
|
|
|
1084
1102
|
freshnessWeight: number;
|
|
1085
1103
|
/** Minimum acceptable provider status */
|
|
1086
1104
|
minStatus: ProviderStatus[];
|
|
1105
|
+
/** Cooldown period (ms) before retrying failed providers (default: 30000) */
|
|
1106
|
+
retryCooldownMs: number;
|
|
1087
1107
|
}
|
|
1088
1108
|
/**
|
|
1089
1109
|
* Provider Selector
|
|
@@ -1196,6 +1216,22 @@ declare class ProviderSelector {
|
|
|
1196
1216
|
* 2. Health check result browserCompatible flag (if health check was performed)
|
|
1197
1217
|
*/
|
|
1198
1218
|
private filterBrowserCompatible;
|
|
1219
|
+
/**
|
|
1220
|
+
* Check if an error is retryable (temporary) or permanent
|
|
1221
|
+
*
|
|
1222
|
+
* Permanent errors (never retry):
|
|
1223
|
+
* - 404 (Not Found) - endpoint doesn't exist
|
|
1224
|
+
* - 401 (Unauthorized) - invalid API key
|
|
1225
|
+
* - Invalid API key errors
|
|
1226
|
+
*
|
|
1227
|
+
* Retryable errors (can retry after cooldown):
|
|
1228
|
+
* - 503 (Service Unavailable) - temporary server issue
|
|
1229
|
+
* - 502 (Bad Gateway) - temporary gateway issue
|
|
1230
|
+
* - Timeout errors - network issues
|
|
1231
|
+
* - Network errors - connection issues
|
|
1232
|
+
* - 429 (Rate Limit) - temporary rate limit (handled separately)
|
|
1233
|
+
*/
|
|
1234
|
+
private isRetryableError;
|
|
1199
1235
|
}
|
|
1200
1236
|
/**
|
|
1201
1237
|
* Create a provider selector
|
|
@@ -1554,18 +1590,26 @@ declare class BrowserAdapter {
|
|
|
1554
1590
|
getEndpointWithRateLimit(timeoutMs?: number): Promise<string>;
|
|
1555
1591
|
/**
|
|
1556
1592
|
* Make a JSON-RPC call to the TON API
|
|
1593
|
+
*
|
|
1594
|
+
* Note: Uses rate limiting to prevent 429 errors.
|
|
1557
1595
|
*/
|
|
1558
1596
|
jsonRpc<T = unknown>(method: string, params?: Record<string, unknown>, timeoutMs?: number): Promise<T>;
|
|
1559
1597
|
/**
|
|
1560
1598
|
* Get address state
|
|
1599
|
+
*
|
|
1600
|
+
* Note: Uses rate limiting to prevent 429 errors.
|
|
1561
1601
|
*/
|
|
1562
1602
|
getAddressState(address: string, timeoutMs?: number): Promise<'uninit' | 'active' | 'frozen'>;
|
|
1563
1603
|
/**
|
|
1564
1604
|
* Get address balance
|
|
1605
|
+
*
|
|
1606
|
+
* Note: Uses rate limiting to prevent 429 errors.
|
|
1565
1607
|
*/
|
|
1566
1608
|
getAddressBalance(address: string, timeoutMs?: number): Promise<bigint>;
|
|
1567
1609
|
/**
|
|
1568
1610
|
* Get address information
|
|
1611
|
+
*
|
|
1612
|
+
* Note: Uses rate limiting to prevent 429 errors.
|
|
1569
1613
|
*/
|
|
1570
1614
|
getAddressInfo(address: string, timeoutMs?: number): Promise<{
|
|
1571
1615
|
state: 'uninit' | 'active' | 'frozen';
|
|
@@ -1575,6 +1619,8 @@ declare class BrowserAdapter {
|
|
|
1575
1619
|
}>;
|
|
1576
1620
|
/**
|
|
1577
1621
|
* Run get method
|
|
1622
|
+
*
|
|
1623
|
+
* Note: Uses rate limiting to prevent 429 errors.
|
|
1578
1624
|
*/
|
|
1579
1625
|
runGetMethod(address: string, method: string, stack?: unknown[], timeoutMs?: number): Promise<{
|
|
1580
1626
|
exit_code: number;
|
|
@@ -1692,6 +1738,17 @@ declare function isValidHttpUrl(str: string): boolean;
|
|
|
1692
1738
|
* Validate that a string is a valid WebSocket URL.
|
|
1693
1739
|
*/
|
|
1694
1740
|
declare function isValidWsUrl(str: string): boolean;
|
|
1741
|
+
/**
|
|
1742
|
+
* Redact credentials from an endpoint URL so it is safe to log.
|
|
1743
|
+
*
|
|
1744
|
+
* Masks (a) sensitive query-param values (`apikey`, `api_key`, `key`, `token`,
|
|
1745
|
+
* `secret`, `password`), (b) credential-like path segments while preserving
|
|
1746
|
+
* structural ones (`api`, `v2`, `v3`, `jsonRPC`, `rpc`, `public`, …), and
|
|
1747
|
+
* (c) a credential-like leading host label (e.g. a QuickNode subdomain key).
|
|
1748
|
+
*
|
|
1749
|
+
* For logging only — never use the result to make requests.
|
|
1750
|
+
*/
|
|
1751
|
+
declare function redactUrl(url: string): string;
|
|
1695
1752
|
|
|
1696
1753
|
/**
|
|
1697
1754
|
* Unified Provider System - Timeout Utilities
|
|
@@ -2027,4 +2084,4 @@ declare class GenericProvider extends BaseProvider {
|
|
|
2027
2084
|
*/
|
|
2028
2085
|
declare function createProvider(provider: ResolvedProvider): BaseProvider;
|
|
2029
2086
|
|
|
2030
|
-
export { type ApiVersion, ApiVersionSchema, BaseProvider, BrowserAdapter, CHAINSTACK_RATE_LIMIT, ChainstackProvider, ConfigError, DEFAULT_CONTRACT_TIMEOUT_MS, DEFAULT_HEALTH_CHECK_TIMEOUT_MS, DEFAULT_PROVIDERS, DEFAULT_PROVIDER_TIMEOUT_MS, DEFAULT_RATE_LIMIT, GenericProvider, GetBlockProvider, type HealthCheckConfig, HealthChecker, type Logger, type MasterchainInfo, type Network, type NetworkDefaults, NetworkSchema, NodeAdapter, ORBS_RATE_LIMIT, OnFinalityProvider, OrbsProvider, type ProviderConfig, ProviderConfigSchema, type ProviderEndpoints, ProviderError, type ProviderHealthResult, ProviderManager, type ProviderManagerOptions, type ProviderManagerState, ProviderRegistry, ProviderSelector, type ProviderState, type ProviderStatus, type ProviderType, ProviderTypeSchema, QUICKNODE_RATE_LIMIT, QuickNodeProvider, type RateLimitConfig, RateLimitError, type RateLimitState, RateLimiterManager, type ResolvedProvider, type RetryOptions, type RpcConfig, RpcConfigSchema, type SelectionConfig, type StateListener, TatumProvider, TimeoutError, TokenBucketRateLimiter, type TonApiResponse, TonCenterProvider, buildGetAddressBalanceUrl, buildGetAddressInfoUrl, buildGetAddressStateUrl, buildRestUrl, createBrowserAdapter, createBrowserAdapterForNetwork, createDefaultConfig, createDefaultRegistry, createEmptyConfig, createHealthChecker, createNodeAdapter, createProvider, createProviderManager, createRateLimiter, createRateLimiterManager, createRegistry, createRegistryFromData, createRegistryFromFile, createSelector, createTimeoutController, detectNetworkFromEndpoint, fetchWithTimeout, getBaseUrl, getDefaultProvidersForNetwork, getEnvVar, getProviderManager, getProvidersForNetwork, getRateLimitForType, getTonClient, getTonClientForNetwork, getTonClientWithRateLimit, isApiVersion, isChainstackUrl, isNetwork, isOrbsUrl, isProviderType, isQuickNodeUrl, isRateLimitError, isTimeoutError, isTonCenterUrl, isValidHttpUrl, isValidWsUrl, loadBuiltinConfig, loadConfig, loadConfigFromData, loadConfigFromUrl, mergeConfigs, mergeWithDefaults, normalizeV2Endpoint, parseProviderConfig, parseRpcConfig, resetNodeAdapter, resolveAllProviders, resolveEndpoints, resolveKeyPlaceholder, resolveProvider, sleep, toV2Base, toV3Base, withRetry, withTimeout, withTimeoutAndRetry, withTimeoutFn };
|
|
2087
|
+
export { type ApiVersion, ApiVersionSchema, BaseProvider, BrowserAdapter, CHAINSTACK_RATE_LIMIT, ChainstackProvider, ConfigError, DEFAULT_CONTRACT_TIMEOUT_MS, DEFAULT_HEALTH_CHECK_TIMEOUT_MS, DEFAULT_PROVIDERS, DEFAULT_PROVIDER_TIMEOUT_MS, DEFAULT_RATE_LIMIT, GenericProvider, GetBlockProvider, type HealthCheckConfig, HealthChecker, type Logger, type MasterchainInfo, type Network, type NetworkDefaults, NetworkSchema, NodeAdapter, ORBS_RATE_LIMIT, OnFinalityProvider, OrbsProvider, type ProviderConfig, ProviderConfigSchema, type ProviderEndpoints, ProviderError, type ProviderHealthResult, ProviderManager, type ProviderManagerOptions, type ProviderManagerState, ProviderRegistry, ProviderSelector, type ProviderState, type ProviderStatus, type ProviderType, ProviderTypeSchema, QUICKNODE_RATE_LIMIT, QuickNodeProvider, type RateLimitConfig, RateLimitError, type RateLimitState, RateLimiterManager, type ResolvedProvider, type RetryOptions, type RpcConfig, RpcConfigSchema, type SelectionConfig, type StateListener, TatumProvider, TimeoutError, TokenBucketRateLimiter, type TonApiResponse, TonCenterProvider, buildGetAddressBalanceUrl, buildGetAddressInfoUrl, buildGetAddressStateUrl, buildRestUrl, createBrowserAdapter, createBrowserAdapterForNetwork, createDefaultConfig, createDefaultRegistry, createEmptyConfig, createHealthChecker, createNodeAdapter, createProvider, createProviderManager, createRateLimiter, createRateLimiterManager, createRegistry, createRegistryFromData, createRegistryFromFile, createSelector, createTimeoutController, detectNetworkFromEndpoint, fetchWithTimeout, getBaseUrl, getDefaultProvidersForNetwork, getEnvVar, getProviderManager, getProvidersForNetwork, getRateLimitForType, getTonClient, getTonClientForNetwork, getTonClientWithRateLimit, isApiVersion, isChainstackUrl, isNetwork, isOrbsUrl, isProviderType, isQuickNodeUrl, isRateLimitError, isTimeoutError, isTonCenterUrl, isValidHttpUrl, isValidWsUrl, loadBuiltinConfig, loadConfig, loadConfigFromData, loadConfigFromUrl, mergeConfigs, mergeWithDefaults, normalizeV2Endpoint, parseProviderConfig, parseRpcConfig, redactUrl, resetNodeAdapter, resolveAllProviders, resolveEndpoints, resolveKeyPlaceholder, resolveProvider, sleep, toV2Base, toV3Base, withRetry, withTimeout, withTimeoutAndRetry, withTimeoutFn };
|