@steerprotocol/sdk 1.3.0 → 1.5.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.
Files changed (70) hide show
  1. package/README.md +54 -0
  2. package/dist/cjs/base/StakingClient.js +328 -10
  3. package/dist/cjs/base/StakingClient.js.map +1 -1
  4. package/dist/cjs/base/VaultClient.js +57 -118
  5. package/dist/cjs/base/VaultClient.js.map +1 -1
  6. package/dist/cjs/base/vault/deposit/index.js +484 -0
  7. package/dist/cjs/base/vault/deposit/index.js.map +1 -0
  8. package/dist/cjs/base/vault/deposit/types.js +3 -0
  9. package/dist/cjs/base/vault/deposit/types.js.map +1 -0
  10. package/dist/cjs/base/vault/utils.js +432 -0
  11. package/dist/cjs/base/vault/utils.js.map +1 -0
  12. package/dist/cjs/base/vault/withdraw/index.js +155 -0
  13. package/dist/cjs/base/vault/withdraw/index.js.map +1 -0
  14. package/dist/cjs/base/vault/withdraw/types.js +3 -0
  15. package/dist/cjs/base/vault/withdraw/types.js.map +1 -0
  16. package/dist/cjs/client.js +5 -0
  17. package/dist/cjs/client.js.map +1 -1
  18. package/dist/cjs/const/chain.js +96 -0
  19. package/dist/cjs/const/chain.js.map +1 -0
  20. package/dist/cjs/const/network.js +801 -0
  21. package/dist/cjs/const/network.js.map +1 -0
  22. package/dist/cjs/const/protocol.js +84 -0
  23. package/dist/cjs/const/protocol.js.map +1 -0
  24. package/dist/esm/base/StakingClient.js +328 -10
  25. package/dist/esm/base/StakingClient.js.map +1 -1
  26. package/dist/esm/base/VaultClient.js +57 -118
  27. package/dist/esm/base/VaultClient.js.map +1 -1
  28. package/dist/esm/base/vault/deposit/index.js +480 -0
  29. package/dist/esm/base/vault/deposit/index.js.map +1 -0
  30. package/dist/esm/base/vault/deposit/types.js +2 -0
  31. package/dist/esm/base/vault/deposit/types.js.map +1 -0
  32. package/dist/esm/base/vault/utils.js +425 -0
  33. package/dist/esm/base/vault/utils.js.map +1 -0
  34. package/dist/esm/base/vault/withdraw/index.js +151 -0
  35. package/dist/esm/base/vault/withdraw/index.js.map +1 -0
  36. package/dist/esm/base/vault/withdraw/types.js +2 -0
  37. package/dist/esm/base/vault/withdraw/types.js.map +1 -0
  38. package/dist/esm/client.js +5 -0
  39. package/dist/esm/client.js.map +1 -1
  40. package/dist/esm/const/chain.js +93 -0
  41. package/dist/esm/const/chain.js.map +1 -0
  42. package/dist/esm/const/network.js +797 -0
  43. package/dist/esm/const/network.js.map +1 -0
  44. package/dist/esm/const/protocol.js +74 -0
  45. package/dist/esm/const/protocol.js.map +1 -0
  46. package/dist/types/base/StakingClient.d.ts +170 -7
  47. package/dist/types/base/StakingClient.d.ts.map +1 -1
  48. package/dist/types/base/VaultClient.d.ts +81 -16
  49. package/dist/types/base/VaultClient.d.ts.map +1 -1
  50. package/dist/types/base/vault/deposit/index.d.ts +74 -0
  51. package/dist/types/base/vault/deposit/index.d.ts.map +1 -0
  52. package/dist/types/base/vault/deposit/types.d.ts +42 -0
  53. package/dist/types/base/vault/deposit/types.d.ts.map +1 -0
  54. package/dist/types/base/vault/utils.d.ts +26 -0
  55. package/dist/types/base/vault/utils.d.ts.map +1 -0
  56. package/dist/types/base/vault/withdraw/index.d.ts +45 -0
  57. package/dist/types/base/vault/withdraw/index.d.ts.map +1 -0
  58. package/dist/types/base/vault/withdraw/types.d.ts +13 -0
  59. package/dist/types/base/vault/withdraw/types.d.ts.map +1 -0
  60. package/dist/types/client.d.ts +3 -0
  61. package/dist/types/client.d.ts.map +1 -1
  62. package/dist/types/const/chain.d.ts +88 -0
  63. package/dist/types/const/chain.d.ts.map +1 -0
  64. package/dist/types/const/network.d.ts +26 -0
  65. package/dist/types/const/network.d.ts.map +1 -0
  66. package/dist/types/const/protocol.d.ts +26 -0
  67. package/dist/types/const/protocol.d.ts.map +1 -0
  68. package/dist/types/types.d.ts +101 -1
  69. package/dist/types/types.d.ts.map +1 -1
  70. package/package.json +14 -13
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network.js","sourceRoot":"","sources":["../../../src/const/network.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ import { Protocol } from './chain';
2
+ export var StakingProtocol;
3
+ (function (StakingProtocol) {
4
+ StakingProtocol["Forge"] = "Forge";
5
+ StakingProtocol["Kinetix"] = "Kinetix";
6
+ StakingProtocol["Uniswap"] = "Uniswap";
7
+ StakingProtocol["SushiSwap"] = "SushiSwap";
8
+ StakingProtocol["QuickSwapV3"] = "QuickSwapV3";
9
+ StakingProtocol["ArthSwap"] = "ArthSwap";
10
+ StakingProtocol["arthswap"] = "arthswap";
11
+ StakingProtocol["Swapsicle"] = "Swapsicle";
12
+ StakingProtocol["Spark"] = "Spark";
13
+ StakingProtocol["Spark32"] = "Spark32";
14
+ })(StakingProtocol || (StakingProtocol = {}));
15
+ // Helper function to check if a string is a valid StakingProtocol
16
+ export function isValidStakingProtocol(protocol) {
17
+ // Convert the input protocol to title case (first letter uppercase, rest lowercase)
18
+ const normalizedProtocol = protocol.charAt(0).toUpperCase() + protocol.slice(1).toLowerCase();
19
+ return Object.values(StakingProtocol).includes(normalizedProtocol);
20
+ }
21
+ // Helper function to normalize protocol string to enum value
22
+ export function normalizeProtocol(protocol) {
23
+ const normalizedProtocol = protocol.charAt(0).toUpperCase() + protocol.slice(1).toLowerCase();
24
+ if (!isValidStakingProtocol(normalizedProtocol)) {
25
+ throw new Error(`Invalid protocol: ${protocol}`);
26
+ }
27
+ return normalizedProtocol;
28
+ }
29
+ export const ALGEBRA_PROTOCOLS = [
30
+ Protocol.QuickSwap,
31
+ Protocol.Beam,
32
+ Protocol.QuickSwapIntegral,
33
+ Protocol.SilverSwap,
34
+ Protocol.Ocelex,
35
+ Protocol.Henjin,
36
+ Protocol.Camelot,
37
+ Protocol.Ocelex,
38
+ Protocol.Lynex,
39
+ Protocol.Thena,
40
+ Protocol.Hercules,
41
+ Protocol.QuickSwapAlgebra,
42
+ Protocol.Kim,
43
+ Protocol.Swapsicle,
44
+ Protocol.Fenix,
45
+ Protocol.StellaSwap,
46
+ ];
47
+ export const DIRECTIONAL_ALGEBRA_PROTOCOLS = [Protocol.Camelot, Protocol.Hercules];
48
+ export const POOLSHARK_PROTOCOLS = [Protocol.PoolShark];
49
+ export const ALGEBRA_INTEGRAL_PROTOCOLS = [
50
+ Protocol.Kim,
51
+ Protocol.Swapsicle,
52
+ Protocol.QuickSwapIntegral,
53
+ Protocol.Fenix,
54
+ Protocol.Henjin,
55
+ Protocol.SilverSwap,
56
+ Protocol.Beam,
57
+ ];
58
+ const THICK_PROTOCOLS = [Protocol.ThickV2];
59
+ export const isAlgebraProtocol = (protocol) => {
60
+ return ALGEBRA_PROTOCOLS.includes(protocol);
61
+ };
62
+ export const isThickV2Protocol = (protocol) => {
63
+ return THICK_PROTOCOLS.includes(protocol);
64
+ };
65
+ export const isAlgebraDirectionProtocol = (protocol) => {
66
+ return DIRECTIONAL_ALGEBRA_PROTOCOLS.includes(protocol);
67
+ };
68
+ export const isAlgebraIntegralProtocol = (protocol) => {
69
+ return ALGEBRA_INTEGRAL_PROTOCOLS.includes(protocol);
70
+ };
71
+ export const isPoolSharkProtocol = (protocol) => {
72
+ return POOLSHARK_PROTOCOLS.includes(protocol);
73
+ };
74
+ //# sourceMappingURL=protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/const/protocol.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,71 @@
1
1
  import type { Address, Hash, PublicClient, WalletClient } from 'viem';
2
2
  import { SteerResponse } from '../types';
3
3
  import { SubgraphClient } from './SubgraphClient';
4
+ import { StakingProtocol } from '../const/protocol';
4
5
  export interface StakingPool {
6
+ allSymbols?: string;
7
+ rewardToken: Address;
8
+ rewardTokenDetail?: Reward;
9
+ rewardTokenA: Address;
10
+ rewardTokenADetail: Reward;
11
+ rewardTokenB?: Address;
12
+ rewardTokenBDetail?: Reward;
13
+ dailyEmissionRewardA: number;
14
+ dailyEmissionRewardB?: number;
5
15
  chainId: number;
6
16
  stakingPool: string;
17
+ stakingToken: string;
7
18
  protocol: string;
8
- isDualFactory: boolean;
9
- dailyEmissionRewardA: number;
10
- dailyEmissionRewardB: number;
11
- rewardTokenA: string;
12
- rewardTokenB: string;
19
+ staking: Staking;
20
+ reward: Reward;
21
+ isSteerVault: boolean;
22
+ beaconName?: string;
23
+ vaultTokens?: VaultTokens;
13
24
  periodFinish: string;
25
+ isDualFactory?: boolean;
26
+ feeTier?: string;
14
27
  rewardsDuration: string;
28
+ strategyId?: string;
29
+ isActive?: boolean;
30
+ postGeneratedTotalStaked?: number;
31
+ postGeneratedApr?: number;
32
+ stakedAmount?: bigint;
33
+ locked?: boolean;
34
+ }
35
+ export interface VaultTokens {
36
+ token0: Token0;
37
+ token1: Token1;
38
+ }
39
+ export interface Token0 {
40
+ name: string;
41
+ address: Address;
42
+ symbol: string;
43
+ }
44
+ export interface Token1 {
45
+ name: string;
46
+ address: Address;
47
+ symbol: string;
48
+ }
49
+ export interface Reward {
50
+ symbol: string;
51
+ name: string;
52
+ address: Address;
53
+ decimals: number;
54
+ }
55
+ export interface Staking {
56
+ symbol: string;
57
+ name: string;
58
+ address: Address;
59
+ decimals: number;
60
+ }
61
+ export interface StakingPoolFilter {
62
+ chainId?: number;
63
+ protocol?: StakingProtocol;
64
+ isLive?: boolean;
65
+ includeExpired?: boolean;
66
+ minDailyEmissionA?: number;
67
+ minDailyEmissionB?: number;
68
+ isDualRewards?: boolean;
15
69
  }
16
70
  export interface StakeParams {
17
71
  stakingPool: Address;
@@ -24,17 +78,53 @@ export interface WithdrawParams {
24
78
  export interface GetRewardParams {
25
79
  stakingPool: Address;
26
80
  }
81
+ export interface TokenValueParams {
82
+ stakingPool: StakingPool;
83
+ amount: bigint;
84
+ token0UsdPrice: number;
85
+ token1UsdPrice: number;
86
+ }
87
+ export interface TokenValueResponse {
88
+ totalValueUsd: number;
89
+ token0Value?: number;
90
+ token1Value?: number;
91
+ tokenValue?: number;
92
+ }
27
93
  export declare class StakingClient extends SubgraphClient {
28
94
  protected readonly publicClient: PublicClient;
29
95
  protected readonly walletClient: WalletClient;
30
96
  private readonly stakingPoolsEndpoint;
97
+ private readonly withdrawClient;
31
98
  constructor(client: PublicClient & WalletClient);
32
99
  /**
33
- * Fetches staking pool data from the API
100
+ * Fetches and filters staking pools based on provided criteria
101
+ * @param filter Optional filter object to filter the pools
102
+ */
103
+ getStakingPools(filter?: StakingPoolFilter): Promise<SteerResponse<StakingPool[]>>;
104
+ /**
105
+ * Gets only currently active staking pools
34
106
  * @param chainId Optional chain ID to filter pools
35
107
  * @param protocol Optional protocol name to filter pools
36
108
  */
37
- getStakingPools(chainId?: number, protocol?: string): Promise<SteerResponse<StakingPool[]>>;
109
+ getLiveStakingPools(chainId?: number, protocol?: StakingProtocol): Promise<SteerResponse<StakingPool[]>>;
110
+ /**
111
+ * Gets all dual rewards staking pools
112
+ * @param chainId Optional chain ID to filter pools
113
+ * @param protocol Optional protocol name to filter pools
114
+ * @param isLive Optional flag to only get live pools
115
+ */
116
+ getDualRewardsStakingPools(chainId?: number, protocol?: StakingProtocol, isLive?: boolean): Promise<SteerResponse<StakingPool[]>>;
117
+ /**
118
+ * Gets high yield staking pools based on minimum daily emissions
119
+ * @param minDailyEmissionA Minimum daily emission for reward A
120
+ * @param minDailyEmissionB Optional minimum daily emission for reward B
121
+ * @param chainId Optional chain ID to filter pools
122
+ */
123
+ getHighYieldStakingPools(minDailyEmissionA: number, minDailyEmissionB?: number, chainId?: number): Promise<SteerResponse<StakingPool[]>>;
124
+ /**
125
+ * Internal helper to filter pools based on criteria
126
+ */
127
+ private filterPools;
38
128
  /**
39
129
  * Stakes tokens in a staking pool
40
130
  * @param params The staking parameters
@@ -77,5 +167,78 @@ export declare class StakingClient extends SubgraphClient {
77
167
  * @param totalStakedUSD The total value staked in USD
78
168
  */
79
169
  calculateAPR(pool: StakingPool, rewardTokenPriceUSD: number, totalStakedUSD: number): number;
170
+ /**
171
+ * Calculates the USD value of tokens in a staking pool
172
+ * Handles both regular staking pools and Steer vaults
173
+ * @param params Parameters for token value calculation
174
+ */
175
+ getSteerLpTokenValue(params: TokenValueParams): Promise<SteerResponse<TokenValueResponse>>;
176
+ /**
177
+ * Gets the total staking amount in USD for a pool
178
+ * @param stakingPool The staking pool
179
+ * @param token0UsdPrice Price of token0 in USD
180
+ * @param token1UsdPrice Price of token1 in USD (required for Steer vaults)
181
+ */
182
+ getTotalStakingAmountInUsd(stakingPool: StakingPool, token0UsdPrice: number, token1UsdPrice?: number): Promise<SteerResponse<number>>;
183
+ /**
184
+ * Prepares the transaction data for staking tokens without executing it
185
+ * @param params The staking parameters
186
+ */
187
+ prepareStakeTx(params: StakeParams): Promise<SteerResponse<{
188
+ address: Address;
189
+ abi: {
190
+ type: string;
191
+ inputs: {
192
+ name: string;
193
+ internalType: string;
194
+ type: string;
195
+ }[];
196
+ name: string;
197
+ outputs: never[];
198
+ stateMutability: string;
199
+ }[];
200
+ functionName: string;
201
+ args: readonly [bigint];
202
+ }>>;
203
+ /**
204
+ * Prepares the transaction data for withdrawing tokens without executing it
205
+ * @param params The withdrawal parameters
206
+ */
207
+ prepareWithdrawTx(params: WithdrawParams): Promise<SteerResponse<{
208
+ address: Address;
209
+ abi: {
210
+ type: string;
211
+ inputs: {
212
+ name: string;
213
+ internalType: string;
214
+ type: string;
215
+ }[];
216
+ name: string;
217
+ outputs: never[];
218
+ stateMutability: string;
219
+ }[];
220
+ functionName: string;
221
+ args: readonly [bigint];
222
+ }>>;
223
+ /**
224
+ * Prepares the transaction data for claiming rewards without executing it
225
+ * @param params The reward claim parameters
226
+ */
227
+ prepareGetRewardTx(params: GetRewardParams): Promise<SteerResponse<{
228
+ address: Address;
229
+ abi: {
230
+ type: string;
231
+ inputs: {
232
+ name: string;
233
+ internalType: string;
234
+ type: string;
235
+ }[];
236
+ name: string;
237
+ outputs: never[];
238
+ stateMutability: string;
239
+ }[];
240
+ functionName: string;
241
+ args: readonly [];
242
+ }>>;
80
243
  }
81
244
  //# sourceMappingURL=StakingClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StakingClient.d.ts","sourceRoot":"","sources":["../../../src/base/StakingClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAGD,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,OAAO,CAAC;CACtB;AAgFD,qBAAa,aAAc,SAAQ,cAAc;IAC/C,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAC9C,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAC9C,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA8E;gBAEvG,MAAM,EAAE,YAAY,GAAG,YAAY;IAM/C;;;;OAIG;IACU,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC;IAgCxG;;;OAGG;IACU,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IA8BrE;;;OAGG;IACU,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IA8B3E;;;OAGG;IACU,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IA8B7E;;;;OAIG;IACU,MAAM,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAiD1H;;;OAGG;IACU,WAAW,CAAC,WAAW,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAuB9E;;;;OAIG;IACU,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAwB9F;;;;;OAKG;IACI,YAAY,CACjB,IAAI,EAAE,WAAW,EACjB,mBAAmB,EAAE,MAAM,EAC3B,cAAc,EAAE,MAAM,GACrB,MAAM;CAeV"}
1
+ {"version":3,"file":"StakingClient.d.ts","sourceRoot":"","sources":["../../../src/base/StakingClient.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,9 @@
1
1
  import type { Address, Hash, PublicClient, WalletClient } from 'viem';
2
- import { SteerResponse } from '../types';
2
+ import { SteerResponse, VaultDetailsResponse } from '../types';
3
3
  import { SubgraphClient } from './SubgraphClient';
4
- export interface VaultDepositParams {
5
- vaultAddress: Address;
6
- amount0Desired: bigint;
7
- amount1Desired: bigint;
8
- slippage: number;
9
- to?: Address;
10
- }
11
- export interface VaultWithdrawParams {
12
- vaultAddress: Address;
13
- shares: bigint;
14
- amount0Min: bigint;
15
- amount1Min: bigint;
16
- to?: Address;
17
- }
4
+ import { VaultDepositParams, PoolInstanceParams } from './vault/deposit/types';
5
+ import { VaultWithdrawParams, TokensFromLpResponse } from './vault/withdraw/types';
6
+ import { Pool as PoolV3 } from "@uniswap/v3-sdk";
18
7
  export interface VaultApproveParams {
19
8
  vaultAddress: Address;
20
9
  spender: Address;
@@ -32,6 +21,8 @@ export interface VaultBalanceParams {
32
21
  export declare class VaultClient extends SubgraphClient {
33
22
  protected readonly publicClient: PublicClient;
34
23
  protected readonly walletClient: WalletClient;
24
+ private readonly depositClient;
25
+ private readonly withdrawClient;
35
26
  constructor(client: PublicClient & WalletClient);
36
27
  /**
37
28
  * Gets the latest vaults from the subgraph
@@ -42,12 +33,74 @@ export declare class VaultClient extends SubgraphClient {
42
33
  * @param params The deposit parameters
43
34
  */
44
35
  deposit(params: VaultDepositParams): Promise<SteerResponse<Hash>>;
45
- getDepositRatio(vaultAddress: Address): Promise<SteerResponse<bigint>>;
36
+ /**
37
+ * Prepares the transaction data for depositing tokens into a vault without executing it
38
+ * @param params The deposit parameters
39
+ */
40
+ prepareDepositTx(params: VaultDepositParams): Promise<SteerResponse<{
41
+ address: Address;
42
+ abi: {
43
+ type: string;
44
+ inputs: {
45
+ name: string;
46
+ internalType: string;
47
+ type: string;
48
+ }[];
49
+ name: string;
50
+ outputs: never[];
51
+ stateMutability: string;
52
+ }[];
53
+ functionName: string;
54
+ args: readonly [
55
+ Address,
56
+ bigint,
57
+ bigint,
58
+ bigint,
59
+ bigint,
60
+ Address
61
+ ];
62
+ }>>;
63
+ /**
64
+ * Gets the deposit ratio for a vault
65
+ * @param vaultAddress The vault address
66
+ */
67
+ getDepositRatio(vaultAddress: Address, zeroForOne: boolean): Promise<SteerResponse<VaultDetailsResponse>>;
46
68
  /**
47
69
  * Withdraws tokens from a vault
48
70
  * @param params The withdrawal parameters
49
71
  */
50
72
  withdraw(params: VaultWithdrawParams): Promise<SteerResponse<Hash>>;
73
+ /**
74
+ * Prepares the transaction data for withdrawing tokens from a vault without executing it
75
+ * @param params The withdrawal parameters
76
+ */
77
+ prepareWithdrawTx(params: VaultWithdrawParams): Promise<SteerResponse<{
78
+ address: Address;
79
+ abi: {
80
+ type: string;
81
+ inputs: {
82
+ name: string;
83
+ internalType: string;
84
+ type: string;
85
+ }[];
86
+ name: string;
87
+ outputs: never[];
88
+ stateMutability: string;
89
+ }[];
90
+ functionName: string;
91
+ args: readonly [
92
+ bigint,
93
+ bigint,
94
+ bigint,
95
+ Address
96
+ ];
97
+ }>>;
98
+ /**
99
+ * Calculates the amount of tokens that would be received for a given amount of LP tokens
100
+ * @param vaultAddress The vault address
101
+ * @param lpToken The amount of LP tokens to calculate for
102
+ */
103
+ getTokensFromLp(vaultAddress: Address, lpToken: bigint): Promise<SteerResponse<TokensFromLpResponse>>;
51
104
  /**
52
105
  * Approves spending of tokens for a vault
53
106
  * @param params The approval parameters
@@ -84,5 +137,17 @@ export declare class VaultClient extends SubgraphClient {
84
137
  */
85
138
  name(vaultAddress: Address): Promise<SteerResponse<string>>;
86
139
  pool(vaultAddress: Address): Promise<SteerResponse<Address>>;
140
+ /**
141
+ * Gets a pool instance for a vault
142
+ * @param params The pool instance parameters
143
+ */
144
+ getPoolInstance(params: PoolInstanceParams): Promise<SteerResponse<PoolV3>>;
145
+ /**
146
+ * Gets the corresponding token amount based on the provided token amount and ratio
147
+ * @param vaultAddress The vault address
148
+ * @param amount The amount of token to calculate the corresponding amount for
149
+ * @param zeroForOne If true, calculates token1 amount for given token0, if false calculates token0 amount for given token1
150
+ */
151
+ getCorrespondingTokenAmount(vaultAddress: Address, amount: bigint, zeroForOne: boolean): Promise<SteerResponse<bigint>>;
87
152
  }
88
153
  //# sourceMappingURL=VaultClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"VaultClient.d.ts","sourceRoot":"","sources":["../../../src/base/VaultClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAOlD,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,CAAC,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,qBAAa,WAAY,SAAQ,cAAc;IAC7C,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAC9C,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;gBAElC,MAAM,EAAE,YAAY,GAAG,YAAY;IAM/C;;OAEG;IACU,eAAe,CAAC,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IA8B5D;;;OAGG;IACU,OAAO,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAyCjE,eAAe,CAAC,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IA8EnF;;;OAGG;IACU,QAAQ,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAmChF;;;OAGG;IACU,OAAO,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IA8B9E;;;OAGG;IACU,SAAS,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAwBpF;;;OAGG;IACU,SAAS,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAwBlF;;;OAGG;IACU,WAAW,CAAC,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAuB/E;;;OAGG;IACU,QAAQ,CAAC,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAuB5E;;;OAGG;IACU,MAAM,CAAC,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAuB1E;;;OAGG;IACU,IAAI,CAAC,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAuB3D,IAAI,CAAC,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;CAsB1E"}
1
+ {"version":3,"file":"VaultClient.d.ts","sourceRoot":"","sources":["../../../src/base/VaultClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ import { Pool as PoolV3 } from "@uniswap/v3-sdk";
2
+ import { Address, Hash, PublicClient, WalletClient } from 'viem';
3
+ import { SteerResponse } from '../../../types';
4
+ import { DepositRatioResponse, PoolInstanceParams, VaultDepositParams } from './types';
5
+ export declare class VaultDepositClient {
6
+ protected readonly publicClient: PublicClient;
7
+ protected readonly walletClient: WalletClient;
8
+ constructor(publicClient: PublicClient, walletClient: WalletClient);
9
+ /**
10
+ * Deposits tokens into a vault
11
+ * @param params The deposit parameters
12
+ */
13
+ deposit(params: VaultDepositParams): Promise<SteerResponse<Hash>>;
14
+ /**
15
+ * Prepares the transaction data for depositing tokens into a vault without executing it
16
+ * @param params The deposit parameters
17
+ */
18
+ prepareDepositTx(params: VaultDepositParams): Promise<SteerResponse<{
19
+ address: Address;
20
+ abi: {
21
+ type: string;
22
+ inputs: {
23
+ name: string;
24
+ internalType: string;
25
+ type: string;
26
+ }[];
27
+ name: string;
28
+ outputs: never[];
29
+ stateMutability: string;
30
+ }[];
31
+ functionName: string;
32
+ args: readonly [
33
+ Address,
34
+ bigint,
35
+ bigint,
36
+ bigint,
37
+ bigint,
38
+ Address
39
+ ];
40
+ }>>;
41
+ /**
42
+ * Gets the deposit ratio for a vault
43
+ * @param vaultAddress The vault address
44
+ */
45
+ getDepositRatio(vaultAddress: Address, zeroForOne: boolean): Promise<SteerResponse<DepositRatioResponse>>;
46
+ /**
47
+ * Gets the pool address for a vault
48
+ * @param vaultAddress The vault address
49
+ */
50
+ private getPool;
51
+ /**
52
+ * Gets a pool instance for a vault
53
+ * @param params The pool instance parameters
54
+ */
55
+ getPoolInstance(params: PoolInstanceParams): Promise<SteerResponse<PoolV3>>;
56
+ /**
57
+ * Gets the pool liquidity
58
+ * @param poolAddress The pool address
59
+ */
60
+ private getPoolLiquidity;
61
+ /**
62
+ * Gets the corresponding token amount based on the provided token amount and ratio
63
+ * @param vaultAddress The vault address
64
+ * @param amount The amount of token to calculate the corresponding amount for
65
+ * @param zeroForOne If true, calculates token1 amount for given token0, if false calculates token0 amount for given token1
66
+ */
67
+ getCorrespondingTokenAmount(vaultAddress: Address, amount: bigint, zeroForOne: boolean): Promise<SteerResponse<bigint>>;
68
+ /**
69
+ * Prepares pool data from vault details
70
+ * @param vaultAddress The vault address
71
+ */
72
+ private preparePoolData;
73
+ }
74
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/base/vault/deposit/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,IAAI,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAKjE,OAAO,EAAiC,aAAa,EAAgB,MAAM,gBAAgB,CAAC;AAE5F,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAMvF,qBAAa,kBAAkB;IAE3B,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY;IAC7C,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY;gBAD1B,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY;IAG/C;;;OAGG;IACU,OAAO,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAyC9E;;;OAGG;IACU,gBAAgB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;QAC/E,OAAO,EAAE,OAAO,CAAC;QACjB,GAAG,EAAE;YACH,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM,CAAC;gBACb,YAAY,EAAE,MAAM,CAAC;gBACrB,IAAI,EAAE,MAAM,CAAC;aACd,EAAE,CAAC;YACJ,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,KAAK,EAAE,CAAC;YACjB,eAAe,EAAE,MAAM,CAAC;SACzB,EAAE,CAAC;QACJ,YAAY,EAAE,MAAM,CAAC;QACrB,IAAI,EAAE,SAAS;YACb,OAAO;YACP,MAAM;YACN,MAAM;YACN,MAAM;YACN,MAAM;YACN,OAAO;SACR,CAAC;KACH,CAAC,CAAC;IAkDH;;;OAGG;IACU,eAAe,CAAC,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;IAqHtH;;;OAGG;YACW,OAAO;IAuBrB;;;OAGG;IACU,eAAe,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAiHxF;;;OAGG;YACW,gBAAgB;IAuB9B;;;;;OAKG;IACU,2BAA2B,CACtC,YAAY,EAAE,OAAO,EACrB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAyCjC;;;OAGG;YACW,eAAe;CAwE9B"}
@@ -0,0 +1,42 @@
1
+ import { Address } from 'viem';
2
+ import { VaultDetails, AlgebraVaultDetails } from '../../../types';
3
+ export interface VaultDepositParams {
4
+ vaultAddress: Address;
5
+ amount0Desired: bigint;
6
+ amount1Desired: bigint;
7
+ slippage: number;
8
+ to?: Address;
9
+ }
10
+ export interface DepositRatioResponse {
11
+ ratio: string;
12
+ token0Balance: bigint;
13
+ token1Balance: bigint;
14
+ token0Decimals: bigint;
15
+ token1Decimals: bigint;
16
+ vaultDetails: VaultDetails | AlgebraVaultDetails;
17
+ isAlgebraVault: boolean;
18
+ }
19
+ export interface Chain {
20
+ id: number;
21
+ }
22
+ export interface Token {
23
+ id: Address;
24
+ decimals: string;
25
+ symbol: string;
26
+ name: string;
27
+ }
28
+ export interface Pool {
29
+ id: Address;
30
+ token0: Token;
31
+ token1: Token;
32
+ feeTier: number;
33
+ }
34
+ export interface PoolInstanceParams {
35
+ vaultAddress: Address;
36
+ chain: Chain;
37
+ isAlgebraPool: boolean;
38
+ isAlgebraDirectionPool: boolean;
39
+ isPoolSharkPool: boolean;
40
+ isAlgebraIntegralPool: boolean;
41
+ }
42
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/base/vault/deposit/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEnE,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,YAAY,GAAG,mBAAmB,CAAC;IACjD,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,KAAK,CAAC;IACd,MAAM,EAAE,KAAK,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,KAAK,CAAC;IACb,aAAa,EAAE,OAAO,CAAC;IACvB,sBAAsB,EAAE,OAAO,CAAC;IAChC,eAAe,EAAE,OAAO,CAAC;IACzB,qBAAqB,EAAE,OAAO,CAAC;CAChC"}
@@ -0,0 +1,26 @@
1
+ import { Address, PublicClient } from 'viem';
2
+ import { PoolSharkGlobalState, Slot0, SteerResponse, SupportedProtocol } from '../../types';
3
+ export declare function getProtocolTypeByBeacon(beacon: string): SupportedProtocol | null;
4
+ /**
5
+ * Gets slot0 data from a standard Uniswap V3 pool
6
+ * @param poolAddress The pool address
7
+ */
8
+ export declare function getSlot0(publicClient: PublicClient, poolAddress: Address): Promise<SteerResponse<Slot0>>;
9
+ /**
10
+ * Gets global state from an Algebra pool
11
+ * @param poolAddress The pool address
12
+ * @param isDirectional Whether the pool is directional
13
+ */
14
+ export declare function getGlobalState(publicClient: PublicClient, poolAddress: Address, isDirectional?: boolean): Promise<SteerResponse<Slot0>>;
15
+ /**
16
+ * Gets global state from a PoolShark pool
17
+ * @param poolAddress The pool address
18
+ */
19
+ export declare function getGlobalStatePoolShark(publicClient: PublicClient, poolAddress: Address): Promise<SteerResponse<PoolSharkGlobalState>>;
20
+ /**
21
+ * Gets global state from an Algebra Integral pool
22
+ * @param poolAddress The pool address
23
+ * @param isDirectional Whether the pool is directional
24
+ */
25
+ export declare function getGlobalStateAlgebraIntegral(publicClient: PublicClient, poolAddress: Address, isDirectional?: boolean): Promise<SteerResponse<Slot0>>;
26
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/base/vault/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAE7C,OAAO,EAAE,oBAAoB,EAAE,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AA2H5F,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CA0JhF;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAC5B,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CA6B/B;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,OAAO,EACpB,aAAa,UAAQ,GACpB,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CA6B/B;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAwD9C;AAED;;;;GAIG;AACH,wBAAsB,6BAA6B,CACjD,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,OAAO,EACpB,aAAa,UAAQ,GACpB,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CA6B/B"}