@steerprotocol/sdk 1.4.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.
@@ -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":"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;AAElD,OAAO,EAAE,eAAe,EAA6C,MAAM,mBAAmB,CAAC;AAI/F,MAAM,WAAW,WAAW;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,OAAO,CAAA;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,YAAY,EAAE,OAAO,CAAA;IACrB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,oBAAoB,EAAE,MAAM,CAAA;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,OAAO,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAC,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAC,OAAO,CAAA;IACjB,wBAAwB,CAAC,EAAC,MAAM,CAAA;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,YAAY,CAAC,EAAC,MAAM,CAAC;IACrB,MAAM,CAAC,EAAC,OAAO,CAAA;CAChB;AAGD,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,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;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA0HD,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;IACnH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;gBAEzC,MAAM,EAAE,YAAY,GAAG,YAAY;IAO/C;;;OAGG;IACU,eAAe,CAC1B,MAAM,CAAC,EAAE,iBAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC;IAqCxC;;;;OAIG;IACU,mBAAmB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC;IASrH;;;;;OAKG;IACU,0BAA0B,CACrC,OAAO,CAAC,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,eAAe,EAC1B,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC;IASxC;;;;;OAKG;IACU,wBAAwB,CACnC,iBAAiB,EAAE,MAAM,EACzB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC;IASxC;;OAEG;IACH,OAAO,CAAC,WAAW;IA4CnB;;;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;IAgBT;;;;OAIG;IACU,oBAAoB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;IA+FvG;;;;;OAKG;IACU,0BAA0B,CACrC,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,MAAM,EACtB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAoCjC;;;OAGG;IACU,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;QACtE,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,CAAC,MAAM,CAAC,CAAC;KACzB,CAAC,CAAC;IA+BH;;;OAGG;IACU,iBAAiB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5E,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,CAAC,MAAM,CAAC,CAAC;KACzB,CAAC,CAAC;IA+BH;;;OAGG;IACU,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC;QAC9E,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,EAAE,CAAC;KACnB,CAAC,CAAC;CA4BJ"}
@@ -2,6 +2,7 @@ import { SteerConfig, SteerResponse } from './types';
2
2
  import { SubgraphClient } from './base/SubgraphClient';
3
3
  import { VaultClient } from './base/VaultClient';
4
4
  import { SmartRewardsClient } from './base/SmartRewardClient';
5
+ import { StakingClient } from './base/StakingClient';
5
6
  /**
6
7
  * The main client for interacting with the Steer Protocol.
7
8
  * This client provides access to vault operations and smart rewards functionality.
@@ -47,6 +48,8 @@ export declare class SteerClient extends SubgraphClient {
47
48
  readonly vaults: VaultClient;
48
49
  /** The rewards client instance for interacting with Smart Rewards */
49
50
  readonly rewards: SmartRewardsClient;
51
+ /** The staking client instance for interacting with staking pools */
52
+ readonly staking: StakingClient;
50
53
  /**
51
54
  * Creates a new instance of the SteerClient
52
55
  * @param config - The configuration object for the client
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAG9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,qBAAa,WAAY,SAAQ,cAAc;IAC7C,mDAAmD;IACnD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+B;IAE3D,kEAAkE;IAClE,SAAgB,MAAM,EAAE,WAAW,CAAC;IAEpC,qEAAqE;IACrE,SAAgB,OAAO,EAAE,kBAAkB,CAAC;IAE5C;;;OAGG;gBACS,MAAM,EAAE,WAAW;IA+B/B;;;;;;;;;;OAUG;IACU,cAAc,CAAC,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;CAa5D"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,qBAAa,WAAY,SAAQ,cAAc;IAC7C,mDAAmD;IACnD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+B;IAE3D,kEAAkE;IAClE,SAAgB,MAAM,EAAE,WAAW,CAAC;IAEpC,qEAAqE;IACrE,SAAgB,OAAO,EAAE,kBAAkB,CAAC;IAE5C,qEAAqE;IACrE,SAAgB,OAAO,EAAE,aAAa,CAAC;IAEvC;;;OAGG;gBACS,MAAM,EAAE,WAAW;IAqC/B;;;;;;;;;;OAUG;IACU,cAAc,CAAC,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;CAa5D"}
@@ -1,5 +1,19 @@
1
1
  import { SupportedProtocol } from '../types';
2
2
  import { Protocol } from './chain';
3
+ export declare enum StakingProtocol {
4
+ Forge = "Forge",
5
+ Kinetix = "Kinetix",
6
+ Uniswap = "Uniswap",
7
+ SushiSwap = "SushiSwap",
8
+ QuickSwapV3 = "QuickSwapV3",
9
+ ArthSwap = "ArthSwap",
10
+ arthswap = "arthswap",
11
+ Swapsicle = "Swapsicle",
12
+ Spark = "Spark",
13
+ Spark32 = "Spark32"
14
+ }
15
+ export declare function isValidStakingProtocol(protocol: string): protocol is StakingProtocol;
16
+ export declare function normalizeProtocol(protocol: string): StakingProtocol;
3
17
  export declare const ALGEBRA_PROTOCOLS: Protocol[];
4
18
  export declare const DIRECTIONAL_ALGEBRA_PROTOCOLS: Protocol[];
5
19
  export declare const POOLSHARK_PROTOCOLS: Protocol[];
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/const/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAInC,eAAO,MAAM,iBAAiB,YAiB7B,CAAC;AAEF,eAAO,MAAM,6BAA6B,YAAwC,CAAC;AAEnF,eAAO,MAAM,mBAAmB,YAAuB,CAAC;AAExD,eAAO,MAAM,0BAA0B,YAQtC,CAAC;AAIF,eAAO,MAAM,iBAAiB,aAAc,iBAAiB,YAE5D,CAAC;AAEF,eAAO,MAAM,iBAAiB,aAAc,iBAAiB,YAE5D,CAAC;AAEF,eAAO,MAAM,0BAA0B,aAAc,iBAAiB,YAErE,CAAC;AAEF,eAAO,MAAM,yBAAyB,aAAc,iBAAiB,YAEpE,CAAC;AAEF,eAAO,MAAM,mBAAmB,aAAc,iBAAiB,YAE9D,CAAC"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/const/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,oBAAY,eAAe;IACzB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,OAAO,YAAY;CACpB;AAGD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,IAAI,eAAe,CAIpF;AAGD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,CAMnE;AAED,eAAO,MAAM,iBAAiB,YAiB7B,CAAC;AAEF,eAAO,MAAM,6BAA6B,YAAwC,CAAC;AAEnF,eAAO,MAAM,mBAAmB,YAAuB,CAAC;AAExD,eAAO,MAAM,0BAA0B,YAQtC,CAAC;AAIF,eAAO,MAAM,iBAAiB,aAAc,iBAAiB,YAE5D,CAAC;AAEF,eAAO,MAAM,iBAAiB,aAAc,iBAAiB,YAE5D,CAAC;AAEF,eAAO,MAAM,0BAA0B,aAAc,iBAAiB,YAErE,CAAC;AAEF,eAAO,MAAM,yBAAyB,aAAc,iBAAiB,YAEpE,CAAC;AAEF,eAAO,MAAM,mBAAmB,aAAc,iBAAiB,YAE9D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steerprotocol/sdk",
3
- "version": "1.4.0",
3
+ "version": "1.5.0",
4
4
  "description": "Steer Protocol SDK",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",