@steerprotocol/sdk 1.18.4 → 1.19.1

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.
@@ -0,0 +1,455 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PoolClient = void 0;
4
+ const SubgraphClient_1 = require("./SubgraphClient");
5
+ const const_1 = require("../const");
6
+ const protocol_1 = require("../const/protocol");
7
+ const PoolQueryAdapter_1 = require("../utils/PoolQueryAdapter");
8
+ /**
9
+ * Client for fetching pool data from various DEX protocol subgraphs
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * import { createPublicClient, createWalletClient, http } from 'viem';
14
+ * import { mainnet } from 'viem/chains';
15
+ * import { PoolClient } from '@steerprotocol/sdk';
16
+ *
17
+ * const client = createPublicClient({
18
+ * chain: mainnet,
19
+ * transport: http()
20
+ * }) as PublicClient & WalletClient;
21
+ *
22
+ * const poolClient = new PoolClient(client, 'your-subgraph-studio-key');
23
+ *
24
+ * // Fetch top pools
25
+ * const topPools = await poolClient.getTopPools(100, Protocol.UniswapV3, 1);
26
+ * ```
27
+ *
28
+ * @extends SubgraphClient
29
+ * @group Pool
30
+ */
31
+ class PoolClient extends SubgraphClient_1.SubgraphClient {
32
+ /**
33
+ * Creates a new PoolClient instance
34
+ *
35
+ * @param client - Combined public and wallet client for blockchain interactions
36
+ * @param subgraphStudioKey - Optional Subgraph Studio API key for higher rate limits
37
+ *
38
+ * @example
39
+ * ```typescript
40
+ * const poolClient = new PoolClient(client, 'your-api-key');
41
+ * ```
42
+ */
43
+ constructor(client, subgraphStudioKey = '') {
44
+ super(client);
45
+ /** Default timeout for GraphQL queries in milliseconds */
46
+ this.defaultTimeout = 60000;
47
+ /** Counter for tracking API call metrics */
48
+ this.apiCallCount = 0;
49
+ this.publicClient = client;
50
+ this.subgraphStudioKey = subgraphStudioKey;
51
+ }
52
+ /**
53
+ * Resets the API call counter for metrics tracking
54
+ *
55
+ * @example
56
+ * ```typescript
57
+ * poolClient.resetMetrics();
58
+ * ```
59
+ */
60
+ resetMetrics() {
61
+ this.apiCallCount = 0;
62
+ }
63
+ /**
64
+ * Gets current metrics for monitoring API usage
65
+ *
66
+ * @returns Object containing current metrics
67
+ *
68
+ * @example
69
+ * ```typescript
70
+ * const metrics = poolClient.getMetrics();
71
+ * console.log(`API calls made: ${metrics.apiCallCount}`);
72
+ * ```
73
+ */
74
+ getMetrics() {
75
+ return {
76
+ apiCallCount: this.apiCallCount,
77
+ };
78
+ }
79
+ /**
80
+ * Fetches data from GraphQL endpoint with retry logic for rate limits
81
+ *
82
+ * @param query - GraphQL query string
83
+ * @param variables - Variables for the GraphQL query
84
+ * @param protocol - Protocol to query
85
+ * @param chainId - Chain ID to query
86
+ * @returns Promise containing the response data
87
+ *
88
+ * @throws {Error} When subgraph endpoint is not available
89
+ * @throws {Error} When rate limit is exceeded after max retries
90
+ * @throws {Error} When GraphQL query times out
91
+ *
92
+ * @internal
93
+ */
94
+ async fetchFromGraph(query, variables, protocol, chainId) {
95
+ try {
96
+ const chainName = (0, const_1.chainIdToName)(chainId);
97
+ const endpoint = (0, const_1.getProtocolSubgraphURL)(protocol, chainName, this.subgraphStudioKey);
98
+ if (!endpoint) {
99
+ throw new Error(`No subgraph endpoint available for protocol ${protocol} on chain ${chainName}`);
100
+ }
101
+ const MAX_RETRIES = 3;
102
+ const RETRY_DELAY_MS = 11000;
103
+ const fetchWithRetry = async (retries = 0) => {
104
+ const response = await fetch(endpoint, {
105
+ method: "POST",
106
+ headers: {
107
+ "Content-Type": "application/json",
108
+ },
109
+ body: JSON.stringify({ query, variables }),
110
+ });
111
+ const data = await response.json();
112
+ if (data.error && typeof data.error === "string" && data.error.includes("surpassed your query allowance")) {
113
+ if (retries < MAX_RETRIES) {
114
+ console.warn(`Rate limit hit for ${endpoint}, retrying in ${RETRY_DELAY_MS / 1000}s (attempt ${retries + 1})`);
115
+ await new Promise(res => setTimeout(res, RETRY_DELAY_MS));
116
+ return fetchWithRetry(retries + 1);
117
+ }
118
+ else {
119
+ throw new Error(`Rate limit exceeded after ${MAX_RETRIES} retries: ${data.error}`);
120
+ }
121
+ }
122
+ if (data.error) {
123
+ throw new Error(`GraphQL endpoint error: ${data.error}`);
124
+ }
125
+ if (data.errors) {
126
+ throw new Error(`GraphQL errors: ${JSON.stringify(data.errors)}`);
127
+ }
128
+ return data.data;
129
+ };
130
+ this.apiCallCount++;
131
+ console.log("Total API calls:", this.apiCallCount);
132
+ const timeoutPromise = new Promise((_, reject) => {
133
+ setTimeout(() => reject(new Error("GraphQL query timeout")), this.defaultTimeout);
134
+ });
135
+ const data = await Promise.race([fetchWithRetry(), timeoutPromise]);
136
+ return {
137
+ data: data,
138
+ status: 200,
139
+ success: true,
140
+ };
141
+ }
142
+ catch (error) {
143
+ return {
144
+ data: null,
145
+ status: 500,
146
+ success: false,
147
+ error: error instanceof Error ? error.message : 'Unknown error occurred',
148
+ };
149
+ }
150
+ }
151
+ /**
152
+ * Fetches the top pools for a specific protocol by trading volume
153
+ *
154
+ * @param count - Number of pools to fetch (default: 500)
155
+ * @param protocol - Protocol to fetch pools from
156
+ * @param chainId - Chain ID to fetch pools from
157
+ * @returns Promise containing an array of top pools
158
+ *
159
+ * @example
160
+ * ```typescript
161
+ * // Get top 100 Uniswap V3 pools on Ethereum
162
+ * const topPools = await poolClient.getTopPools(100, Protocol.UniswapV3, 1);
163
+ * if (topPools.success) {
164
+ * console.log(`Found ${topPools.data.length} pools`);
165
+ * }
166
+ * ```
167
+ *
168
+ * @throws {Error} When failed to fetch pools from subgraph
169
+ */
170
+ async getTopPools(count = 500, protocol, chainId) {
171
+ try {
172
+ const isAlgebraPool = (0, protocol_1.isAlgebraProtocol)(protocol);
173
+ const query = (0, PoolQueryAdapter_1.getTopPoolsQuery)(protocol, isAlgebraPool);
174
+ console.log(`[Chain ${chainId}] [Protocol ${protocol}] 📊 Fetching top ${count} pools from the subgraph...`);
175
+ const response = await this.fetchFromGraph(query, { limit: count }, protocol, chainId);
176
+ if (!response.success || !response.data) {
177
+ throw new Error(response.error || 'Failed to fetch pools');
178
+ }
179
+ const pools = response.data.pools || response.data.limitPools || response.data.clPools || [];
180
+ console.log(`[Chain ${chainId}] [Protocol ${protocol}] ✅ Received ${pools.length} pools from the subgraph`);
181
+ // Filter out pools with invalid volumeUSD
182
+ const validPools = pools.filter(pool => {
183
+ const volumeUSD = parseFloat(pool.volumeUSD || pool.volumeUsd || "0");
184
+ return !isNaN(volumeUSD) && volumeUSD > 0;
185
+ });
186
+ console.log(`[Chain ${chainId}] [Protocol ${protocol}] ✅ Found ${validPools.length} valid pools with positive volumeUSD`);
187
+ return {
188
+ data: validPools,
189
+ status: 200,
190
+ success: true,
191
+ };
192
+ }
193
+ catch (error) {
194
+ console.error(`[Chain ${chainId}] [Protocol ${protocol}] Error in getTopPools:`, error);
195
+ return {
196
+ data: null,
197
+ status: 500,
198
+ success: false,
199
+ error: error instanceof Error ? error.message : 'Unknown error occurred',
200
+ };
201
+ }
202
+ }
203
+ /**
204
+ * Fetches detailed information for a specific pool by its ID
205
+ *
206
+ * @param poolId - Pool contract address to fetch
207
+ * @param protocol - Protocol the pool belongs to
208
+ * @param chainId - Chain ID where the pool exists
209
+ * @returns Promise containing pool details or null if not found
210
+ *
211
+ * @example
212
+ * ```typescript
213
+ * // Get specific pool details
214
+ * const poolDetails = await poolClient.getPoolById(
215
+ * '0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640',
216
+ * Protocol.UniswapV3,
217
+ * 1
218
+ * );
219
+ * if (poolDetails.success && poolDetails.data) {
220
+ * console.log(`Pool: ${poolDetails.data.token0.symbol}/${poolDetails.data.token1.symbol}`);
221
+ * }
222
+ * ```
223
+ *
224
+ * @throws {Error} When failed to fetch pool from subgraph
225
+ */
226
+ async getPoolById(poolId, protocol, chainId) {
227
+ try {
228
+ const isAlgebraPool = (0, protocol_1.isAlgebraProtocol)(protocol);
229
+ const query = (0, PoolQueryAdapter_1.getPoolDetailsQuery)(isAlgebraPool, protocol);
230
+ const response = await this.fetchFromGraph(query, { pool: poolId }, protocol, chainId);
231
+ if (!response.success || !response.data) {
232
+ throw new Error(response.error || 'Failed to fetch pool');
233
+ }
234
+ const pool = response.data.pool || response.data.clPool || response.data.limitPool || null;
235
+ return {
236
+ data: pool,
237
+ status: 200,
238
+ success: true,
239
+ };
240
+ }
241
+ catch (error) {
242
+ console.error(`Error fetching pool ${poolId}:`, error);
243
+ return {
244
+ data: null,
245
+ status: 500,
246
+ success: false,
247
+ error: error instanceof Error ? error.message : 'Unknown error occurred',
248
+ };
249
+ }
250
+ }
251
+ /**
252
+ * Fetches pools containing multiple tokens in batches for better performance
253
+ *
254
+ * @param tokenAddresses - Array of token contract addresses
255
+ * @param protocol - Protocol to fetch pools from
256
+ * @param chainId - Chain ID to fetch pools from
257
+ * @param batchSize - Number of tokens to process in each batch (default: 10)
258
+ * @returns Promise containing all pools found for the tokens
259
+ *
260
+ * @example
261
+ * ```typescript
262
+ * // Get pools for multiple tokens
263
+ * const tokenAddresses = [
264
+ * '0xa0b86a33e6f8b07b71c3a39ef77a6b6e8f1b7b7e', // USDC
265
+ * '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2' // WETH
266
+ * ];
267
+ * const pools = await poolClient.fetchPoolsForTokensBatch(
268
+ * tokenAddresses,
269
+ * Protocol.UniswapV3,
270
+ * 1,
271
+ * 5
272
+ * );
273
+ * ```
274
+ *
275
+ * @throws {Error} When batch processing fails
276
+ */
277
+ async fetchPoolsForTokensBatch(tokenAddresses, protocol, chainId, batchSize = 10) {
278
+ try {
279
+ if (tokenAddresses.length === 0) {
280
+ return {
281
+ data: [],
282
+ status: 200,
283
+ success: true,
284
+ };
285
+ }
286
+ console.log(`\n🔍 Batch Pool Fetch Summary:`);
287
+ console.log(`📥 Total tokens to process: ${tokenAddresses.length}`);
288
+ const isAlgebraPool = (0, protocol_1.isAlgebraProtocol)(protocol);
289
+ const normalizedAddresses = tokenAddresses.map(addr => addr.toLowerCase());
290
+ // Split into chunks
291
+ const chunkSize = batchSize;
292
+ const addressChunks = [];
293
+ for (let i = 0; i < normalizedAddresses.length; i += chunkSize) {
294
+ addressChunks.push(normalizedAddresses.slice(i, i + chunkSize));
295
+ }
296
+ console.log(`📦 Processing ${addressChunks.length} chunks of max ${chunkSize} tokens each`);
297
+ const allPools = [];
298
+ // Process chunks in parallel
299
+ const results = await Promise.all(addressChunks.map(async (chunk, chunkIndex) => {
300
+ console.log(`\n🔄 Processing chunk ${chunkIndex + 1}/${addressChunks.length} with ${chunk.length} tokens`);
301
+ const chunkResults = await Promise.all(chunk.map(async (token) => {
302
+ try {
303
+ const query = (0, PoolQueryAdapter_1.getTokenPoolsQueryByAddress)(isAlgebraPool, protocol);
304
+ const queryStartTime = performance.now();
305
+ const response = await this.fetchFromGraph(query, { token }, protocol, chainId);
306
+ const queryTime = performance.now() - queryStartTime;
307
+ console.log(`⏱️ GraphQL query for token ${token.slice(0, 6)}... completed in ${queryTime.toFixed(2)}ms`);
308
+ if (!response.success || !response.data) {
309
+ console.error(`❌ No pools found for token: ${token} on chainId: ${chainId}`);
310
+ return [];
311
+ }
312
+ // Extract pools from different possible response structures
313
+ let pools = [];
314
+ if (response.data.pools) {
315
+ pools = response.data.pools;
316
+ }
317
+ else if (response.data.clPools) {
318
+ pools = response.data.clPools;
319
+ }
320
+ else if (response.data.limitPools) {
321
+ pools = response.data.limitPools;
322
+ }
323
+ else if (response.data.tokenPools) {
324
+ pools = response.data.tokenPools;
325
+ }
326
+ if (pools.length === 0) {
327
+ console.error(`❌ No pools found for token: ${token} on chainId: ${chainId}`);
328
+ return [];
329
+ }
330
+ return pools;
331
+ }
332
+ catch (error) {
333
+ console.error(`❌ Error fetching pools for token: ${token} on chainId: ${chainId}`, error);
334
+ return [];
335
+ }
336
+ }));
337
+ return chunkResults.flat();
338
+ }));
339
+ // Flatten all results
340
+ allPools.push(...results.flat());
341
+ return {
342
+ data: allPools,
343
+ status: 200,
344
+ success: true,
345
+ };
346
+ }
347
+ catch (error) {
348
+ console.error("Error in fetchPoolsForTokensBatch:", error);
349
+ return {
350
+ data: null,
351
+ status: 500,
352
+ success: false,
353
+ error: error instanceof Error ? error.message : 'Unknown error occurred',
354
+ };
355
+ }
356
+ }
357
+ /**
358
+ * Fetches all pools containing a specific token
359
+ *
360
+ * @param tokenAddress - Token contract address
361
+ * @param protocol - Protocol to fetch pools from
362
+ * @param chainId - Chain ID to fetch pools from
363
+ * @returns Promise containing pools that include the specified token
364
+ *
365
+ * @example
366
+ * ```typescript
367
+ * // Get all USDC pools on Uniswap V3
368
+ * const usdcPools = await poolClient.fetchPoolsForToken(
369
+ * '0xa0b86a33e6f8b07b71c3a39ef77a6b6e8f1b7b7e',
370
+ * Protocol.UniswapV3,
371
+ * 1
372
+ * );
373
+ * if (usdcPools.success) {
374
+ * console.log(`Found ${usdcPools.data.length} USDC pools`);
375
+ * }
376
+ * ```
377
+ *
378
+ * @throws {Error} When failed to fetch pools for token
379
+ */
380
+ async fetchPoolsForToken(tokenAddress, protocol, chainId) {
381
+ try {
382
+ const isAlgebraPool = (0, protocol_1.isAlgebraProtocol)(protocol);
383
+ const query = (0, PoolQueryAdapter_1.getTokenPoolsQueryByAddress)(isAlgebraPool, protocol);
384
+ const response = await this.fetchFromGraph(query, { token: tokenAddress.toLowerCase() }, protocol, chainId);
385
+ if (!response.success || !response.data) {
386
+ throw new Error(response.error || 'Failed to fetch pools for token');
387
+ }
388
+ // Extract pools from different possible response structures
389
+ let pools = [];
390
+ if (response.data.pools) {
391
+ pools = response.data.pools;
392
+ }
393
+ else if (response.data.limitPools) {
394
+ pools = response.data.limitPools;
395
+ }
396
+ else if (response.data.tokenPools) {
397
+ pools = response.data.tokenPools;
398
+ }
399
+ else if (response.data.clPools) {
400
+ pools = response.data.clPools;
401
+ }
402
+ return {
403
+ data: pools,
404
+ status: 200,
405
+ success: true,
406
+ };
407
+ }
408
+ catch (error) {
409
+ console.error(`Error fetching pools for token ${tokenAddress}:`, error);
410
+ return {
411
+ data: null,
412
+ status: 500,
413
+ success: false,
414
+ error: error instanceof Error ? error.message : 'Unknown error occurred',
415
+ };
416
+ }
417
+ }
418
+ /**
419
+ * Filters pools based on validity criteria such as tick range and liquidity
420
+ *
421
+ * @param pools - Array of pools to filter
422
+ * @returns Array of valid pools that meet the criteria
423
+ *
424
+ * @example
425
+ * ```typescript
426
+ * const validPools = poolClient.filterValidPools(allPools);
427
+ * console.log(`Filtered down to ${validPools.length} valid pools`);
428
+ * ```
429
+ */
430
+ filterValidPools(pools) {
431
+ return pools.filter(pool => {
432
+ // Check for required fields
433
+ if (!pool.id || !pool.tick || !pool.liquidity) {
434
+ return false;
435
+ }
436
+ // Parse values
437
+ const tick = parseInt(pool.tick);
438
+ const liquidity = parseFloat(pool.liquidity);
439
+ // Check for valid tick range and liquidity
440
+ const TICK_MIN = -887272;
441
+ const TICK_MAX = 887272;
442
+ const TICK_EDGE_THRESHOLD = 1;
443
+ if (isNaN(tick) ||
444
+ isNaN(liquidity) ||
445
+ liquidity <= 0 ||
446
+ tick <= TICK_MIN + TICK_EDGE_THRESHOLD ||
447
+ tick >= TICK_MAX - TICK_EDGE_THRESHOLD) {
448
+ return false;
449
+ }
450
+ return true;
451
+ });
452
+ }
453
+ }
454
+ exports.PoolClient = PoolClient;
455
+ //# sourceMappingURL=PoolClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PoolClient.js","sourceRoot":"","sources":["../../../src/base/PoolClient.ts"],"names":[],"mappings":"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"}
@@ -4,16 +4,17 @@ exports.SteerClient = void 0;
4
4
  const SubgraphClient_1 = require("./base/SubgraphClient");
5
5
  const VaultClient_1 = require("./base/VaultClient");
6
6
  const SmartRewardClient_1 = require("./base/SmartRewardClient");
7
+ const PoolClient_1 = require("./base/PoolClient");
7
8
  const StakingClient_1 = require("./base/StakingClient");
8
9
  /**
9
10
  * The main client for interacting with the Steer Protocol.
10
- * This client provides access to vault operations and smart rewards functionality.
11
+ * This client provides access to vault operations, smart rewards functionality, pool data, and staking.
11
12
  *
12
13
  * @example
13
14
  * ```typescript
14
15
  * import { createPublicClient, createWalletClient, http } from 'viem';
15
16
  * import { mainnet } from 'viem/chains';
16
- * import { SteerClient } from '@steerprotocol/sdk';
17
+ * import { SteerClient, Protocol } from '@steerprotocol/sdk';
17
18
  *
18
19
  * // Create viem clients
19
20
  * const publicClient = createPublicClient({
@@ -30,7 +31,8 @@ const StakingClient_1 = require("./base/StakingClient");
30
31
  * const steerClient = new SteerClient({
31
32
  * environment: 'production',
32
33
  * client: publicClient,
33
- * walletClient: walletClient
34
+ * walletClient: walletClient,
35
+ * subgraphStudioKey: 'your-subgraph-studio-key' // Optional
34
36
  * });
35
37
  *
36
38
  * // Use vault operations
@@ -39,6 +41,13 @@ const StakingClient_1 = require("./base/StakingClient");
39
41
  * // Use rewards functionality
40
42
  * const campaigns = await steerClient.rewards.getCampaigns(1);
41
43
  * const summary = await steerClient.rewards.getRewardSummary(userAddress, chainId);
44
+ *
45
+ * // Use pool data functionality
46
+ * const topPools = await steerClient.pools.getTopPools(100, Protocol.UniswapV3, 1);
47
+ * const poolDetails = await steerClient.pools.getPoolById(poolId, Protocol.UniswapV3, 1);
48
+ *
49
+ * // Use staking functionality
50
+ * const stakingPools = await steerClient.staking.getStakingPools(1);
42
51
  * ```
43
52
  *
44
53
  * @group Client
@@ -46,7 +55,22 @@ const StakingClient_1 = require("./base/StakingClient");
46
55
  class SteerClient extends SubgraphClient_1.SubgraphClient {
47
56
  /**
48
57
  * Creates a new instance of the SteerClient
58
+ *
49
59
  * @param config - The configuration object for the client
60
+ * @param config.environment - The environment to use ('production' or 'development')
61
+ * @param config.client - The viem client for blockchain interactions
62
+ * @param config.walletClient - Optional wallet client for write operations
63
+ * @param config.subgraphStudioKey - Optional Subgraph Studio API key for higher rate limits
64
+ *
65
+ * @example
66
+ * ```typescript
67
+ * const steerClient = new SteerClient({
68
+ * environment: 'production',
69
+ * client: publicClient,
70
+ * walletClient: walletClient,
71
+ * subgraphStudioKey: 'your-key'
72
+ * });
73
+ * ```
50
74
  */
51
75
  constructor(config) {
52
76
  super(config.client);
@@ -54,6 +78,7 @@ class SteerClient extends SubgraphClient_1.SubgraphClient {
54
78
  // Initialize clients based on provided configuration
55
79
  const publicClient = config.client;
56
80
  const walletClient = config.walletClient;
81
+ const subgraphStudioKey = config.subgraphStudioKey || '';
57
82
  // Initialize vault client with both public and wallet clients if available
58
83
  this.vaults = new VaultClient_1.VaultClient(walletClient ?
59
84
  { ...publicClient, ...walletClient } :
@@ -62,6 +87,10 @@ class SteerClient extends SubgraphClient_1.SubgraphClient {
62
87
  this.staking = new StakingClient_1.StakingClient(walletClient ?
63
88
  { ...publicClient, ...walletClient } :
64
89
  publicClient);
90
+ // Initialize pool client with both public and wallet clients if available
91
+ this.pools = new PoolClient_1.PoolClient(walletClient ?
92
+ { ...publicClient, ...walletClient } :
93
+ publicClient, subgraphStudioKey);
65
94
  // Initialize rewards client with both public and wallet clients if available
66
95
  if (walletClient) {
67
96
  this.rewards = new SmartRewardClient_1.SmartRewardsClient(publicClient, walletClient, this.environment === 'production' ? 'production' : 'development');
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":";;;AACA,0DAAuD;AACvD,oDAAiD;AACjD,gEAA8D;AAE9D,wDAAqD;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAa,WAAY,SAAQ,+BAAc;IAc7C;;;OAGG;IACH,YAAY,MAAmB;QAC7B,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,YAAY,CAAC;QAEtD,qDAAqD;QACrD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAsB,CAAC;QACnD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QAEzC,2EAA2E;QAC3E,IAAI,CAAC,MAAM,GAAG,IAAI,yBAAW,CAAC,YAAY,CAAC,CAAC;YAC1C,EAAE,GAAG,YAAY,EAAE,GAAG,YAAY,EAAiC,CAAC,CAAC;YACrE,YAAsD,CACvD,CAAC;QAEF,6EAA6E;QAC7E,IAAI,CAAC,OAAO,GAAG,IAAI,6BAAa,CAAC,YAAY,CAAC,CAAC;YAC7C,EAAE,GAAG,YAAY,EAAE,GAAG,YAAY,EAAiC,CAAC,CAAC;YACrE,YAAsD,CACvD,CAAC;QAEF,6EAA6E;QAC7E,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,GAAG,IAAI,sCAAkB,CACnC,YAAY,EACZ,YAAY,EACZ,IAAI,CAAC,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CACjE,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,0EAA0E;YAC1E,IAAI,CAAC,OAAO,GAAG,IAAI,sCAAkB,CACnC,YAAY,EACZ,YAAuC,EAAE,qCAAqC;YAC9E,IAAI,CAAC,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CACjE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACI,KAAK,CAAC,cAAc;QACzB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QAEhD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO;YACL,IAAI,EAAE,WAA2B;YACjC,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;CACF;AA/ED,kCA+EC"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":";;;AACA,0DAAuD;AACvD,oDAAiD;AACjD,gEAA8D;AAC9D,kDAA+C;AAE/C,wDAAqD;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAa,WAAY,SAAQ,+BAAc;IAiB7C;;;;;;;;;;;;;;;;;;OAkBG;IACH,YAAY,MAAmB;QAC7B,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,YAAY,CAAC;QAEtD,qDAAqD;QACrD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAsB,CAAC;QACnD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACzC,MAAM,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,IAAI,EAAE,CAAC;QAEzD,2EAA2E;QAC3E,IAAI,CAAC,MAAM,GAAG,IAAI,yBAAW,CAAC,YAAY,CAAC,CAAC;YAC1C,EAAE,GAAG,YAAY,EAAE,GAAG,YAAY,EAAiC,CAAC,CAAC;YACrE,YAAsD,CACvD,CAAC;QAEF,6EAA6E;QAC7E,IAAI,CAAC,OAAO,GAAG,IAAI,6BAAa,CAAC,YAAY,CAAC,CAAC;YAC7C,EAAE,GAAG,YAAY,EAAE,GAAG,YAAY,EAAiC,CAAC,CAAC;YACrE,YAAsD,CACvD,CAAC;QAEF,0EAA0E;QAC1E,IAAI,CAAC,KAAK,GAAG,IAAI,uBAAU,CAAC,YAAY,CAAC,CAAC;YACxC,EAAE,GAAG,YAAY,EAAE,GAAG,YAAY,EAAiC,CAAC,CAAC;YACrE,YAAsD,EACtD,iBAAiB,CAClB,CAAC;QAEF,6EAA6E;QAC7E,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,GAAG,IAAI,sCAAkB,CACnC,YAAY,EACZ,YAAY,EACZ,IAAI,CAAC,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CACjE,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,0EAA0E;YAC1E,IAAI,CAAC,OAAO,GAAG,IAAI,sCAAkB,CACnC,YAAY,EACZ,YAAuC,EAAE,qCAAqC;YAC9E,IAAI,CAAC,WAAW,KAAK,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CACjE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACI,KAAK,CAAC,cAAc;QACzB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QAEhD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO;YACL,IAAI,EAAE,WAA2B;YACjC,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;CACF;AAzGD,kCAyGC"}
package/dist/cjs/index.js CHANGED
@@ -20,6 +20,7 @@ __exportStar(require("./types"), exports);
20
20
  __exportStar(require("./base/VaultClient"), exports);
21
21
  __exportStar(require("./base/SubgraphClient"), exports);
22
22
  __exportStar(require("./base/StakingClient"), exports);
23
+ __exportStar(require("./base/PoolClient"), exports);
23
24
  __exportStar(require("./const"), exports);
24
25
  /**
25
26
  * @packageDocumentation
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,2CAAyB;AACzB,0CAAwB;AACxB,qDAAmC;AACnC,wDAAsC;AACtC,uDAAqC;AACrC,0CAAwB;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,2CAAyB;AACzB,0CAAwB;AACxB,qDAAmC;AACnC,wDAAsC;AACtC,uDAAqC;AACrC,oDAAkC;AAClC,0CAAwB;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG"}