@vaultsfyi/sdk 2.1.6 → 2.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # @vaultsfyi/sdk
2
2
 
3
+ ## 2.1.8
4
+
5
+ ### Patch Changes
6
+
7
+ - 00958d5 Update OpenAPI types (#17)
8
+
9
+ ## 2.1.7
10
+
11
+ ### Patch Changes
12
+
13
+ - 36ddf39 🫆 Add auto publish workflow
14
+ - e3145cd 🫑 Add supported networks const (#9)
15
+ - 677b11e 👤 Add generate release action
16
+ - 9da592b Update OpenAPI types (#13)
17
+
18
+ ## 2.1.6
19
+
20
+ ### Patch Changes
21
+
22
+ - 💰 Add x402 support
23
+
3
24
  ## 2.1.5
4
25
 
5
26
  ### Patch Changes
package/dist/client.d.mts CHANGED
@@ -1729,6 +1729,15 @@ interface paths {
1729
1729
  /** @description Total APY */
1730
1730
  total: number;
1731
1731
  };
1732
+ /** @description 1hour APY details */
1733
+ '1hour': {
1734
+ /** @description Base APY */
1735
+ base: number;
1736
+ /** @description Reward APY */
1737
+ reward: number;
1738
+ /** @description Total APY */
1739
+ total: number;
1740
+ };
1732
1741
  };
1733
1742
  /** @description TVL details of the vault */
1734
1743
  tvl: {
@@ -1737,6 +1746,8 @@ interface paths {
1737
1746
  /** @description Native TVL */
1738
1747
  native: string;
1739
1748
  };
1749
+ /** @description Timestamp of the last vault data update */
1750
+ lastUpdateTimestamp: number;
1740
1751
  /** @description List of rewards for the vault */
1741
1752
  rewards: {
1742
1753
  /** @description Asset details of the reward */
@@ -1762,6 +1773,8 @@ interface paths {
1762
1773
  assetGroup: string;
1763
1774
  };
1764
1775
  apy: {
1776
+ /** @description 1hour APY of the reward asset */
1777
+ '1hour': number;
1765
1778
  /** @description 1day APY of the reward asset */
1766
1779
  '1day': number;
1767
1780
  /** @description 7day APY of the reward asset */
@@ -2182,6 +2195,15 @@ interface paths {
2182
2195
  /** @description Total APY */
2183
2196
  total: number;
2184
2197
  };
2198
+ /** @description 1hour APY details */
2199
+ '1hour': {
2200
+ /** @description Base APY */
2201
+ base: number;
2202
+ /** @description Reward APY */
2203
+ reward: number;
2204
+ /** @description Total APY */
2205
+ total: number;
2206
+ };
2185
2207
  };
2186
2208
  /** @description TVL details of the vault */
2187
2209
  tvl: {
@@ -2190,6 +2212,8 @@ interface paths {
2190
2212
  /** @description Native TVL */
2191
2213
  native: string;
2192
2214
  };
2215
+ /** @description Timestamp of the last vault data update */
2216
+ lastUpdateTimestamp: number;
2193
2217
  /** @description List of rewards for the vault */
2194
2218
  rewards: {
2195
2219
  /** @description Asset details of the reward */
@@ -2215,6 +2239,8 @@ interface paths {
2215
2239
  assetGroup: string;
2216
2240
  };
2217
2241
  apy: {
2242
+ /** @description 1hour APY of the reward asset */
2243
+ '1hour': number;
2218
2244
  /** @description 1day APY of the reward asset */
2219
2245
  '1day': number;
2220
2246
  /** @description 7day APY of the reward asset */
@@ -4861,25 +4887,25 @@ interface paths {
4861
4887
  * @description Current deposit step
4862
4888
  * @enum {string}
4863
4889
  */
4864
- currentDepositStep: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
4890
+ currentDepositStep: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
4865
4891
  /** @description Deposit steps */
4866
4892
  depositSteps: {
4867
4893
  actions: string[];
4868
4894
  actionsUrl: string;
4869
4895
  /** @enum {string} */
4870
- name: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
4896
+ name: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
4871
4897
  }[];
4872
4898
  /**
4873
4899
  * @description Current redeem step
4874
4900
  * @enum {string}
4875
4901
  */
4876
- currentRedeemStep: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
4902
+ currentRedeemStep: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
4877
4903
  /** @description Redeem steps */
4878
4904
  redeemSteps: {
4879
4905
  actions: string[];
4880
4906
  actionsUrl: string;
4881
4907
  /** @enum {string} */
4882
- name: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
4908
+ name: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
4883
4909
  }[];
4884
4910
  /** @description LP token details */
4885
4911
  lpToken: {
@@ -5084,13 +5110,13 @@ interface paths {
5084
5110
  * @description Current step for claiming rewards
5085
5111
  * @enum {string}
5086
5112
  */
5087
- currentStep: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
5113
+ currentStep: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
5088
5114
  /** @description Steps for claiming rewards */
5089
5115
  steps: {
5090
5116
  actions: string[];
5091
5117
  actionsUrl: string;
5092
5118
  /** @enum {string} */
5093
- name: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
5119
+ name: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
5094
5120
  }[];
5095
5121
  };
5096
5122
  };
@@ -5246,7 +5272,7 @@ interface paths {
5246
5272
  header?: never;
5247
5273
  path: {
5248
5274
  /** @description Action to be performed */
5249
- action: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
5275
+ action: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
5250
5276
  /** @description User address to get returns for */
5251
5277
  userAddress: string;
5252
5278
  /** @description Network to get returns for */
@@ -7479,6 +7505,7 @@ interface paths {
7479
7505
  };
7480
7506
  }
7481
7507
 
7508
+ declare const SUPPORTED_NETWORKS: readonly ["mainnet", "optimism", "arbitrum", "polygon", "gnosis", "base", "unichain", "swellchain", "celo", "worldchain", "berachain", "ink", "bsc", "hyperliquid", "plasma", "avalanche"];
7482
7509
  type ConstructorOptions = {
7483
7510
  apiKey: string;
7484
7511
  } | {
@@ -7980,11 +8007,17 @@ declare class VaultsSdk {
7980
8007
  reward: number;
7981
8008
  total: number;
7982
8009
  };
8010
+ "1hour": {
8011
+ base: number;
8012
+ reward: number;
8013
+ total: number;
8014
+ };
7983
8015
  };
7984
8016
  tvl: {
7985
8017
  usd: string;
7986
8018
  native: string;
7987
8019
  };
8020
+ lastUpdateTimestamp: number;
7988
8021
  rewards: {
7989
8022
  asset: {
7990
8023
  address: string;
@@ -7997,6 +8030,7 @@ declare class VaultsSdk {
7997
8030
  assetGroup: string;
7998
8031
  };
7999
8032
  apy: {
8033
+ "1hour": number;
8000
8034
  "1day": number;
8001
8035
  "7day": number;
8002
8036
  "30day": number;
@@ -8132,11 +8166,17 @@ declare class VaultsSdk {
8132
8166
  reward: number;
8133
8167
  total: number;
8134
8168
  };
8169
+ "1hour": {
8170
+ base: number;
8171
+ reward: number;
8172
+ total: number;
8173
+ };
8135
8174
  };
8136
8175
  tvl: {
8137
8176
  usd: string;
8138
8177
  native: string;
8139
8178
  };
8179
+ lastUpdateTimestamp: number;
8140
8180
  rewards: {
8141
8181
  asset: {
8142
8182
  address: string;
@@ -8149,6 +8189,7 @@ declare class VaultsSdk {
8149
8189
  assetGroup: string;
8150
8190
  };
8151
8191
  apy: {
8192
+ "1hour": number;
8152
8193
  "1day": number;
8153
8194
  "7day": number;
8154
8195
  "30day": number;
@@ -8246,17 +8287,17 @@ declare class VaultsSdk {
8246
8287
  };
8247
8288
  }>;
8248
8289
  getTransactionsContext(params: Params<'/v2/transactions/context/{userAddress}/{network}/{vaultAddress}'>): Promise<{
8249
- currentDepositStep: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8290
+ currentDepositStep: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8250
8291
  depositSteps: {
8251
8292
  actions: string[];
8252
8293
  actionsUrl: string;
8253
- name: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8294
+ name: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8254
8295
  }[];
8255
- currentRedeemStep: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8296
+ currentRedeemStep: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8256
8297
  redeemSteps: {
8257
8298
  actions: string[];
8258
8299
  actionsUrl: string;
8259
- name: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8300
+ name: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8260
8301
  }[];
8261
8302
  lpToken: {
8262
8303
  address: string;
@@ -8355,11 +8396,11 @@ declare class VaultsSdk {
8355
8396
  network: "mainnet" | "optimism" | "arbitrum" | "polygon" | "gnosis" | "base" | "unichain" | "swellchain" | "celo" | "worldchain" | "berachain" | "ink" | "bsc" | "hyperliquid" | "plasma" | "avalanche";
8356
8397
  };
8357
8398
  }[];
8358
- currentStep: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8399
+ currentStep: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8359
8400
  steps: {
8360
8401
  actions: string[];
8361
8402
  actionsUrl: string;
8362
- name: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8403
+ name: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8363
8404
  }[];
8364
8405
  };
8365
8406
  }>;
@@ -9203,4 +9244,4 @@ declare class VaultsSdk {
9203
9244
  }>;
9204
9245
  }
9205
9246
 
9206
- export { VaultsSdk };
9247
+ export { SUPPORTED_NETWORKS, VaultsSdk };
package/dist/client.d.ts CHANGED
@@ -1729,6 +1729,15 @@ interface paths {
1729
1729
  /** @description Total APY */
1730
1730
  total: number;
1731
1731
  };
1732
+ /** @description 1hour APY details */
1733
+ '1hour': {
1734
+ /** @description Base APY */
1735
+ base: number;
1736
+ /** @description Reward APY */
1737
+ reward: number;
1738
+ /** @description Total APY */
1739
+ total: number;
1740
+ };
1732
1741
  };
1733
1742
  /** @description TVL details of the vault */
1734
1743
  tvl: {
@@ -1737,6 +1746,8 @@ interface paths {
1737
1746
  /** @description Native TVL */
1738
1747
  native: string;
1739
1748
  };
1749
+ /** @description Timestamp of the last vault data update */
1750
+ lastUpdateTimestamp: number;
1740
1751
  /** @description List of rewards for the vault */
1741
1752
  rewards: {
1742
1753
  /** @description Asset details of the reward */
@@ -1762,6 +1773,8 @@ interface paths {
1762
1773
  assetGroup: string;
1763
1774
  };
1764
1775
  apy: {
1776
+ /** @description 1hour APY of the reward asset */
1777
+ '1hour': number;
1765
1778
  /** @description 1day APY of the reward asset */
1766
1779
  '1day': number;
1767
1780
  /** @description 7day APY of the reward asset */
@@ -2182,6 +2195,15 @@ interface paths {
2182
2195
  /** @description Total APY */
2183
2196
  total: number;
2184
2197
  };
2198
+ /** @description 1hour APY details */
2199
+ '1hour': {
2200
+ /** @description Base APY */
2201
+ base: number;
2202
+ /** @description Reward APY */
2203
+ reward: number;
2204
+ /** @description Total APY */
2205
+ total: number;
2206
+ };
2185
2207
  };
2186
2208
  /** @description TVL details of the vault */
2187
2209
  tvl: {
@@ -2190,6 +2212,8 @@ interface paths {
2190
2212
  /** @description Native TVL */
2191
2213
  native: string;
2192
2214
  };
2215
+ /** @description Timestamp of the last vault data update */
2216
+ lastUpdateTimestamp: number;
2193
2217
  /** @description List of rewards for the vault */
2194
2218
  rewards: {
2195
2219
  /** @description Asset details of the reward */
@@ -2215,6 +2239,8 @@ interface paths {
2215
2239
  assetGroup: string;
2216
2240
  };
2217
2241
  apy: {
2242
+ /** @description 1hour APY of the reward asset */
2243
+ '1hour': number;
2218
2244
  /** @description 1day APY of the reward asset */
2219
2245
  '1day': number;
2220
2246
  /** @description 7day APY of the reward asset */
@@ -4861,25 +4887,25 @@ interface paths {
4861
4887
  * @description Current deposit step
4862
4888
  * @enum {string}
4863
4889
  */
4864
- currentDepositStep: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
4890
+ currentDepositStep: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
4865
4891
  /** @description Deposit steps */
4866
4892
  depositSteps: {
4867
4893
  actions: string[];
4868
4894
  actionsUrl: string;
4869
4895
  /** @enum {string} */
4870
- name: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
4896
+ name: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
4871
4897
  }[];
4872
4898
  /**
4873
4899
  * @description Current redeem step
4874
4900
  * @enum {string}
4875
4901
  */
4876
- currentRedeemStep: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
4902
+ currentRedeemStep: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
4877
4903
  /** @description Redeem steps */
4878
4904
  redeemSteps: {
4879
4905
  actions: string[];
4880
4906
  actionsUrl: string;
4881
4907
  /** @enum {string} */
4882
- name: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
4908
+ name: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
4883
4909
  }[];
4884
4910
  /** @description LP token details */
4885
4911
  lpToken: {
@@ -5084,13 +5110,13 @@ interface paths {
5084
5110
  * @description Current step for claiming rewards
5085
5111
  * @enum {string}
5086
5112
  */
5087
- currentStep: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
5113
+ currentStep: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
5088
5114
  /** @description Steps for claiming rewards */
5089
5115
  steps: {
5090
5116
  actions: string[];
5091
5117
  actionsUrl: string;
5092
5118
  /** @enum {string} */
5093
- name: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
5119
+ name: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
5094
5120
  }[];
5095
5121
  };
5096
5122
  };
@@ -5246,7 +5272,7 @@ interface paths {
5246
5272
  header?: never;
5247
5273
  path: {
5248
5274
  /** @description Action to be performed */
5249
- action: 'deposit' | 'redeem' | 'request-redeem' | 'claim-redeem' | 'claim-rewards' | 'start-redeem-cooldown';
5275
+ action: 'deposit' | 'redeem' | 'request-redeem' | 'request-deposit' | 'claim-redeem' | 'claim-deposit' | 'claim-rewards' | 'start-redeem-cooldown';
5250
5276
  /** @description User address to get returns for */
5251
5277
  userAddress: string;
5252
5278
  /** @description Network to get returns for */
@@ -7479,6 +7505,7 @@ interface paths {
7479
7505
  };
7480
7506
  }
7481
7507
 
7508
+ declare const SUPPORTED_NETWORKS: readonly ["mainnet", "optimism", "arbitrum", "polygon", "gnosis", "base", "unichain", "swellchain", "celo", "worldchain", "berachain", "ink", "bsc", "hyperliquid", "plasma", "avalanche"];
7482
7509
  type ConstructorOptions = {
7483
7510
  apiKey: string;
7484
7511
  } | {
@@ -7980,11 +8007,17 @@ declare class VaultsSdk {
7980
8007
  reward: number;
7981
8008
  total: number;
7982
8009
  };
8010
+ "1hour": {
8011
+ base: number;
8012
+ reward: number;
8013
+ total: number;
8014
+ };
7983
8015
  };
7984
8016
  tvl: {
7985
8017
  usd: string;
7986
8018
  native: string;
7987
8019
  };
8020
+ lastUpdateTimestamp: number;
7988
8021
  rewards: {
7989
8022
  asset: {
7990
8023
  address: string;
@@ -7997,6 +8030,7 @@ declare class VaultsSdk {
7997
8030
  assetGroup: string;
7998
8031
  };
7999
8032
  apy: {
8033
+ "1hour": number;
8000
8034
  "1day": number;
8001
8035
  "7day": number;
8002
8036
  "30day": number;
@@ -8132,11 +8166,17 @@ declare class VaultsSdk {
8132
8166
  reward: number;
8133
8167
  total: number;
8134
8168
  };
8169
+ "1hour": {
8170
+ base: number;
8171
+ reward: number;
8172
+ total: number;
8173
+ };
8135
8174
  };
8136
8175
  tvl: {
8137
8176
  usd: string;
8138
8177
  native: string;
8139
8178
  };
8179
+ lastUpdateTimestamp: number;
8140
8180
  rewards: {
8141
8181
  asset: {
8142
8182
  address: string;
@@ -8149,6 +8189,7 @@ declare class VaultsSdk {
8149
8189
  assetGroup: string;
8150
8190
  };
8151
8191
  apy: {
8192
+ "1hour": number;
8152
8193
  "1day": number;
8153
8194
  "7day": number;
8154
8195
  "30day": number;
@@ -8246,17 +8287,17 @@ declare class VaultsSdk {
8246
8287
  };
8247
8288
  }>;
8248
8289
  getTransactionsContext(params: Params<'/v2/transactions/context/{userAddress}/{network}/{vaultAddress}'>): Promise<{
8249
- currentDepositStep: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8290
+ currentDepositStep: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8250
8291
  depositSteps: {
8251
8292
  actions: string[];
8252
8293
  actionsUrl: string;
8253
- name: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8294
+ name: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8254
8295
  }[];
8255
- currentRedeemStep: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8296
+ currentRedeemStep: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8256
8297
  redeemSteps: {
8257
8298
  actions: string[];
8258
8299
  actionsUrl: string;
8259
- name: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8300
+ name: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8260
8301
  }[];
8261
8302
  lpToken: {
8262
8303
  address: string;
@@ -8355,11 +8396,11 @@ declare class VaultsSdk {
8355
8396
  network: "mainnet" | "optimism" | "arbitrum" | "polygon" | "gnosis" | "base" | "unichain" | "swellchain" | "celo" | "worldchain" | "berachain" | "ink" | "bsc" | "hyperliquid" | "plasma" | "avalanche";
8356
8397
  };
8357
8398
  }[];
8358
- currentStep: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8399
+ currentStep: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8359
8400
  steps: {
8360
8401
  actions: string[];
8361
8402
  actionsUrl: string;
8362
- name: "deposit" | "redeem" | "request-redeem" | "claim-redeem" | "claim-rewards" | "start-redeem-cooldown";
8403
+ name: "deposit" | "redeem" | "request-redeem" | "request-deposit" | "claim-redeem" | "claim-deposit" | "claim-rewards" | "start-redeem-cooldown";
8363
8404
  }[];
8364
8405
  };
8365
8406
  }>;
@@ -9203,4 +9244,4 @@ declare class VaultsSdk {
9203
9244
  }>;
9204
9245
  }
9205
9246
 
9206
- export { VaultsSdk };
9247
+ export { SUPPORTED_NETWORKS, VaultsSdk };
package/dist/client.js CHANGED
@@ -20,6 +20,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/client.ts
21
21
  var client_exports = {};
22
22
  __export(client_exports, {
23
+ SUPPORTED_NETWORKS: () => SUPPORTED_NETWORKS,
23
24
  VaultsSdk: () => VaultsSdk
24
25
  });
25
26
  module.exports = __toCommonJS(client_exports);
@@ -47,6 +48,24 @@ function generateQueryParams(queryParams) {
47
48
  }
48
49
 
49
50
  // src/client.ts
51
+ var SUPPORTED_NETWORKS = [
52
+ "mainnet",
53
+ "optimism",
54
+ "arbitrum",
55
+ "polygon",
56
+ "gnosis",
57
+ "base",
58
+ "unichain",
59
+ "swellchain",
60
+ "celo",
61
+ "worldchain",
62
+ "berachain",
63
+ "ink",
64
+ "bsc",
65
+ "hyperliquid",
66
+ "plasma",
67
+ "avalanche"
68
+ ];
50
69
  var VaultsSdk = class {
51
70
  apiBaseUrl;
52
71
  auth;
@@ -202,6 +221,7 @@ var VaultsSdk = class {
202
221
  };
203
222
  // Annotate the CommonJS export names for ESM import in node:
204
223
  0 && (module.exports = {
224
+ SUPPORTED_NETWORKS,
205
225
  VaultsSdk
206
226
  });
207
227
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/client.ts","../src/errors.ts","../src/utils/generateQueryParams.ts"],"sourcesContent":["import { type Signer, wrapFetchWithPayment } from 'x402-fetch'\nimport { HttpResponseError } from './errors'\nimport type { paths } from './types/openapi'\nimport { generateQueryParams } from './utils/generateQueryParams'\n\ntype ConstructorOptions =\n | {\n apiKey: string\n }\n | {\n client: Signer\n }\n\ninterface InternalOptions {\n apiBaseUrl: string\n}\n\ntype Endpoint = keyof paths\ntype ExtractResponse<T> = T extends { responses: { 200: { content: { 'application/json': infer R } } } } ? R : never\ntype Response<T extends Endpoint> = ExtractResponse<paths[T]['get' | 'post']>\ntype ExtractParams<T> = T extends { parameters: infer P extends { path?: any; query?: any } }\n ? Pick<P, 'path' | 'query'>\n : never\n\ntype Body<T extends Endpoint> = paths[T]['post'] extends {\n requestBody: { content: { 'application/json': infer R } }\n}\n ? { body: R }\n : paths[T]['post'] extends {\n requestBody?: { content: { 'application/json': infer R } }\n }\n ? { body?: R }\n : undefined\n\ntype Params<T extends Endpoint> = Body<T> extends undefined\n ? ExtractParams<paths[T]['get' | 'post']>\n : ExtractParams<paths[T]['get' | 'post']> & Body<T>\n\nexport class VaultsSdk {\n private apiBaseUrl: string\n private auth: ConstructorOptions\n private authHeaders: { 'x-api-key': string } | { 'x-402-auth': 'true' }\n\n constructor(options: ConstructorOptions)\n constructor(options: ConstructorOptions, internalOptions: InternalOptions)\n constructor(options: ConstructorOptions, internalOptions?: InternalOptions) {\n this.auth = options\n if ('apiKey' in this.auth) {\n this.authHeaders = { 'x-api-key': this.auth.apiKey }\n } else {\n this.authHeaders = { 'x-402-auth': 'true' }\n }\n this.apiBaseUrl = internalOptions?.apiBaseUrl ?? 'https://api.vaults.fyi'\n }\n\n private async fetchData<T extends Endpoint>(\n endpoint: string,\n params?: T extends Endpoint ? Params<T> : never,\n method: 'POST' | 'GET' = 'GET'\n ): Promise<T extends Endpoint ? Response<T> : never> {\n const queryParams = generateQueryParams(params?.query)\n\n const body = params && 'body' in params ? params.body : undefined\n const stringifiedBody = body ? JSON.stringify(body) : undefined\n\n const wrappedFetch = 'apiKey' in this.auth ? fetch : wrapFetchWithPayment(fetch, this.auth.client)\n const response = await wrappedFetch(`${this.apiBaseUrl}${endpoint}${queryParams}`, {\n method,\n headers: {\n 'Content-Type': 'application/json',\n ...this.authHeaders,\n },\n body: stringifiedBody,\n })\n\n if (!response.ok) {\n const error = await response.json()\n throw new HttpResponseError(error.message)\n }\n\n return response.json()\n }\n\n async getAssets(params: Params<'/v2/assets'>) {\n return await this.fetchData<'/v2/assets'>('/v2/assets', params)\n }\n\n async getBenchmarks(params: Params<'/v2/benchmarks/{network}'>) {\n return await this.fetchData<'/v2/benchmarks/{network}'>(`/v2/benchmarks/${params.path.network}`, params)\n }\n\n async getHistoricalBenchmarks(params: Params<'/v2/historical-benchmarks/{network}'>) {\n return await this.fetchData<'/v2/historical-benchmarks/{network}'>(\n `/v2/historical-benchmarks/${params.path.network}`,\n params\n )\n }\n\n async getVaultHistoricalData(params: Params<'/v2/historical/{network}/{vaultAddress}'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}'>(\n `/v2/historical/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getVaultHistoricalApy(params: Params<'/v2/historical/{network}/{vaultAddress}/apy'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/apy'>(\n `/v2/historical/${network}/${vaultAddress}/apy`,\n params\n )\n }\n\n async getVaultHistoricalTvl(params: Params<'/v2/historical/{network}/{vaultAddress}/tvl'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/tvl'>(\n `/v2/historical/${network}/${vaultAddress}/tvl`,\n params\n )\n }\n\n async getVaultHistoricalSharePrice(params: Params<'/v2/historical/{network}/{vaultAddress}/sharePrice'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/sharePrice'>(\n `/v2/historical/${network}/${vaultAddress}/sharePrice`,\n params\n )\n }\n\n async getPositions(params: Params<'/v2/portfolio/positions/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/positions/{userAddress}'>(\n `/v2/portfolio/positions/${userAddress}`,\n params\n )\n }\n\n async getPosition(params: Params<'/v2/portfolio/positions/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/positions/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/positions/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getDepositOptions(params: Params<'/v2/portfolio/best-deposit-options/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/best-deposit-options/{userAddress}'>(\n `/v2/portfolio/best-deposit-options/${userAddress}`,\n params\n )\n }\n\n async getAllVaults(params?: Params<'/v2/detailed-vaults'>) {\n return await this.fetchData<'/v2/detailed-vaults'>('/v2/detailed-vaults', params)\n }\n\n async getVault(params: Params<'/v2/detailed-vaults/{network}/{vaultAddress}'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/detailed-vaults/{network}/{vaultAddress}'>(\n `/v2/detailed-vaults/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getIdleAssets(params: Params<'/v2/portfolio/idle-assets/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/idle-assets/{userAddress}'>(\n `/v2/portfolio/idle-assets/${userAddress}`,\n params\n )\n }\n\n async getTransactionsContext(params: Params<'/v2/transactions/context/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/transactions/context/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/transactions/context/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getActions(params: Params<'/v2/transactions/{action}/{userAddress}/{network}/{vaultAddress}'>) {\n const { action, userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/transactions/{action}/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/transactions/${action}/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getRewardsTransactionsContext(params: Params<'/v2/transactions/rewards/context/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/transactions/rewards/context/{userAddress}'>(\n `/v2/transactions/rewards/context/${userAddress}`,\n params\n )\n }\n\n async getRewardsClaimActions(params: Params<'/v2/transactions/rewards/claim/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/transactions/rewards/claim/{userAddress}'>(\n `/v2/transactions/rewards/claim/${userAddress}`,\n params\n )\n }\n\n async getUserVaultEvents(params: Params<'/v2/portfolio/events/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/events/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/events/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getUserVaultTotalReturns(params: Params<'/v2/portfolio/total-returns/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/total-returns/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/total-returns/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n}\n","export class HttpResponseError extends Error {}\n","export function generateQueryParams(\n queryParams: Record<string, string | number | boolean | null | undefined | bigint | string[]> | undefined\n): string {\n if (!queryParams || Object.keys(queryParams).length === 0) return ''\n\n const params = new URLSearchParams()\n for (const [key, value] of Object.entries(queryParams)) {\n if (value == null) continue\n\n if (Array.isArray(value)) {\n for (const item of value) {\n params.append(key, item)\n }\n } else {\n params.set(key, value.toString())\n }\n }\n\n return `?${params}`\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/client.ts","../src/errors.ts","../src/utils/generateQueryParams.ts"],"sourcesContent":["import { type Signer, wrapFetchWithPayment } from 'x402-fetch'\nimport { HttpResponseError } from './errors'\nimport type { paths } from './types/openapi'\nimport { generateQueryParams } from './utils/generateQueryParams'\n\nexport const SUPPORTED_NETWORKS = [\n 'mainnet',\n 'optimism',\n 'arbitrum',\n 'polygon',\n 'gnosis',\n 'base',\n 'unichain',\n 'swellchain',\n 'celo',\n 'worldchain',\n 'berachain',\n 'ink',\n 'bsc',\n 'hyperliquid',\n 'plasma',\n 'avalanche',\n] as const\n\ntype ConstructorOptions =\n | {\n apiKey: string\n }\n | {\n client: Signer\n }\n\ninterface InternalOptions {\n apiBaseUrl: string\n}\n\ntype Endpoint = keyof paths\ntype ExtractResponse<T> = T extends { responses: { 200: { content: { 'application/json': infer R } } } } ? R : never\ntype Response<T extends Endpoint> = ExtractResponse<paths[T]['get' | 'post']>\ntype ExtractParams<T> = T extends { parameters: infer P extends { path?: any; query?: any } }\n ? Pick<P, 'path' | 'query'>\n : never\n\ntype Body<T extends Endpoint> = paths[T]['post'] extends {\n requestBody: { content: { 'application/json': infer R } }\n}\n ? { body: R }\n : paths[T]['post'] extends {\n requestBody?: { content: { 'application/json': infer R } }\n }\n ? { body?: R }\n : undefined\n\ntype Params<T extends Endpoint> = Body<T> extends undefined\n ? ExtractParams<paths[T]['get' | 'post']>\n : ExtractParams<paths[T]['get' | 'post']> & Body<T>\n\nexport class VaultsSdk {\n private apiBaseUrl: string\n private auth: ConstructorOptions\n private authHeaders: { 'x-api-key': string } | { 'x-402-auth': 'true' }\n\n constructor(options: ConstructorOptions)\n constructor(options: ConstructorOptions, internalOptions: InternalOptions)\n constructor(options: ConstructorOptions, internalOptions?: InternalOptions) {\n this.auth = options\n if ('apiKey' in this.auth) {\n this.authHeaders = { 'x-api-key': this.auth.apiKey }\n } else {\n this.authHeaders = { 'x-402-auth': 'true' }\n }\n this.apiBaseUrl = internalOptions?.apiBaseUrl ?? 'https://api.vaults.fyi'\n }\n\n private async fetchData<T extends Endpoint>(\n endpoint: string,\n params?: T extends Endpoint ? Params<T> : never,\n method: 'POST' | 'GET' = 'GET'\n ): Promise<T extends Endpoint ? Response<T> : never> {\n const queryParams = generateQueryParams(params?.query)\n\n const body = params && 'body' in params ? params.body : undefined\n const stringifiedBody = body ? JSON.stringify(body) : undefined\n\n const wrappedFetch = 'apiKey' in this.auth ? fetch : wrapFetchWithPayment(fetch, this.auth.client)\n const response = await wrappedFetch(`${this.apiBaseUrl}${endpoint}${queryParams}`, {\n method,\n headers: {\n 'Content-Type': 'application/json',\n ...this.authHeaders,\n },\n body: stringifiedBody,\n })\n\n if (!response.ok) {\n const error = await response.json()\n throw new HttpResponseError(error.message)\n }\n\n return response.json()\n }\n\n async getAssets(params: Params<'/v2/assets'>) {\n return await this.fetchData<'/v2/assets'>('/v2/assets', params)\n }\n\n async getBenchmarks(params: Params<'/v2/benchmarks/{network}'>) {\n return await this.fetchData<'/v2/benchmarks/{network}'>(`/v2/benchmarks/${params.path.network}`, params)\n }\n\n async getHistoricalBenchmarks(params: Params<'/v2/historical-benchmarks/{network}'>) {\n return await this.fetchData<'/v2/historical-benchmarks/{network}'>(\n `/v2/historical-benchmarks/${params.path.network}`,\n params\n )\n }\n\n async getVaultHistoricalData(params: Params<'/v2/historical/{network}/{vaultAddress}'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}'>(\n `/v2/historical/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getVaultHistoricalApy(params: Params<'/v2/historical/{network}/{vaultAddress}/apy'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/apy'>(\n `/v2/historical/${network}/${vaultAddress}/apy`,\n params\n )\n }\n\n async getVaultHistoricalTvl(params: Params<'/v2/historical/{network}/{vaultAddress}/tvl'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/tvl'>(\n `/v2/historical/${network}/${vaultAddress}/tvl`,\n params\n )\n }\n\n async getVaultHistoricalSharePrice(params: Params<'/v2/historical/{network}/{vaultAddress}/sharePrice'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/sharePrice'>(\n `/v2/historical/${network}/${vaultAddress}/sharePrice`,\n params\n )\n }\n\n async getPositions(params: Params<'/v2/portfolio/positions/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/positions/{userAddress}'>(\n `/v2/portfolio/positions/${userAddress}`,\n params\n )\n }\n\n async getPosition(params: Params<'/v2/portfolio/positions/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/positions/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/positions/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getDepositOptions(params: Params<'/v2/portfolio/best-deposit-options/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/best-deposit-options/{userAddress}'>(\n `/v2/portfolio/best-deposit-options/${userAddress}`,\n params\n )\n }\n\n async getAllVaults(params?: Params<'/v2/detailed-vaults'>) {\n return await this.fetchData<'/v2/detailed-vaults'>('/v2/detailed-vaults', params)\n }\n\n async getVault(params: Params<'/v2/detailed-vaults/{network}/{vaultAddress}'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/detailed-vaults/{network}/{vaultAddress}'>(\n `/v2/detailed-vaults/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getIdleAssets(params: Params<'/v2/portfolio/idle-assets/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/idle-assets/{userAddress}'>(\n `/v2/portfolio/idle-assets/${userAddress}`,\n params\n )\n }\n\n async getTransactionsContext(params: Params<'/v2/transactions/context/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/transactions/context/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/transactions/context/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getActions(params: Params<'/v2/transactions/{action}/{userAddress}/{network}/{vaultAddress}'>) {\n const { action, userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/transactions/{action}/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/transactions/${action}/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getRewardsTransactionsContext(params: Params<'/v2/transactions/rewards/context/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/transactions/rewards/context/{userAddress}'>(\n `/v2/transactions/rewards/context/${userAddress}`,\n params\n )\n }\n\n async getRewardsClaimActions(params: Params<'/v2/transactions/rewards/claim/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/transactions/rewards/claim/{userAddress}'>(\n `/v2/transactions/rewards/claim/${userAddress}`,\n params\n )\n }\n\n async getUserVaultEvents(params: Params<'/v2/portfolio/events/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/events/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/events/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getUserVaultTotalReturns(params: Params<'/v2/portfolio/total-returns/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/total-returns/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/total-returns/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n}\n","export class HttpResponseError extends Error {}\n","export function generateQueryParams(\n queryParams: Record<string, string | number | boolean | null | undefined | bigint | string[]> | undefined\n): string {\n if (!queryParams || Object.keys(queryParams).length === 0) return ''\n\n const params = new URLSearchParams()\n for (const [key, value] of Object.entries(queryParams)) {\n if (value == null) continue\n\n if (Array.isArray(value)) {\n for (const item of value) {\n params.append(key, item)\n }\n } else {\n params.set(key, value.toString())\n }\n }\n\n return `?${params}`\n}\n"],"mappings":"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","names":[]}
package/dist/client.mjs CHANGED
@@ -23,6 +23,24 @@ function generateQueryParams(queryParams) {
23
23
  }
24
24
 
25
25
  // src/client.ts
26
+ var SUPPORTED_NETWORKS = [
27
+ "mainnet",
28
+ "optimism",
29
+ "arbitrum",
30
+ "polygon",
31
+ "gnosis",
32
+ "base",
33
+ "unichain",
34
+ "swellchain",
35
+ "celo",
36
+ "worldchain",
37
+ "berachain",
38
+ "ink",
39
+ "bsc",
40
+ "hyperliquid",
41
+ "plasma",
42
+ "avalanche"
43
+ ];
26
44
  var VaultsSdk = class {
27
45
  apiBaseUrl;
28
46
  auth;
@@ -177,6 +195,7 @@ var VaultsSdk = class {
177
195
  }
178
196
  };
179
197
  export {
198
+ SUPPORTED_NETWORKS,
180
199
  VaultsSdk
181
200
  };
182
201
  //# sourceMappingURL=client.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/client.ts","../src/errors.ts","../src/utils/generateQueryParams.ts"],"sourcesContent":["import { type Signer, wrapFetchWithPayment } from 'x402-fetch'\nimport { HttpResponseError } from './errors'\nimport type { paths } from './types/openapi'\nimport { generateQueryParams } from './utils/generateQueryParams'\n\ntype ConstructorOptions =\n | {\n apiKey: string\n }\n | {\n client: Signer\n }\n\ninterface InternalOptions {\n apiBaseUrl: string\n}\n\ntype Endpoint = keyof paths\ntype ExtractResponse<T> = T extends { responses: { 200: { content: { 'application/json': infer R } } } } ? R : never\ntype Response<T extends Endpoint> = ExtractResponse<paths[T]['get' | 'post']>\ntype ExtractParams<T> = T extends { parameters: infer P extends { path?: any; query?: any } }\n ? Pick<P, 'path' | 'query'>\n : never\n\ntype Body<T extends Endpoint> = paths[T]['post'] extends {\n requestBody: { content: { 'application/json': infer R } }\n}\n ? { body: R }\n : paths[T]['post'] extends {\n requestBody?: { content: { 'application/json': infer R } }\n }\n ? { body?: R }\n : undefined\n\ntype Params<T extends Endpoint> = Body<T> extends undefined\n ? ExtractParams<paths[T]['get' | 'post']>\n : ExtractParams<paths[T]['get' | 'post']> & Body<T>\n\nexport class VaultsSdk {\n private apiBaseUrl: string\n private auth: ConstructorOptions\n private authHeaders: { 'x-api-key': string } | { 'x-402-auth': 'true' }\n\n constructor(options: ConstructorOptions)\n constructor(options: ConstructorOptions, internalOptions: InternalOptions)\n constructor(options: ConstructorOptions, internalOptions?: InternalOptions) {\n this.auth = options\n if ('apiKey' in this.auth) {\n this.authHeaders = { 'x-api-key': this.auth.apiKey }\n } else {\n this.authHeaders = { 'x-402-auth': 'true' }\n }\n this.apiBaseUrl = internalOptions?.apiBaseUrl ?? 'https://api.vaults.fyi'\n }\n\n private async fetchData<T extends Endpoint>(\n endpoint: string,\n params?: T extends Endpoint ? Params<T> : never,\n method: 'POST' | 'GET' = 'GET'\n ): Promise<T extends Endpoint ? Response<T> : never> {\n const queryParams = generateQueryParams(params?.query)\n\n const body = params && 'body' in params ? params.body : undefined\n const stringifiedBody = body ? JSON.stringify(body) : undefined\n\n const wrappedFetch = 'apiKey' in this.auth ? fetch : wrapFetchWithPayment(fetch, this.auth.client)\n const response = await wrappedFetch(`${this.apiBaseUrl}${endpoint}${queryParams}`, {\n method,\n headers: {\n 'Content-Type': 'application/json',\n ...this.authHeaders,\n },\n body: stringifiedBody,\n })\n\n if (!response.ok) {\n const error = await response.json()\n throw new HttpResponseError(error.message)\n }\n\n return response.json()\n }\n\n async getAssets(params: Params<'/v2/assets'>) {\n return await this.fetchData<'/v2/assets'>('/v2/assets', params)\n }\n\n async getBenchmarks(params: Params<'/v2/benchmarks/{network}'>) {\n return await this.fetchData<'/v2/benchmarks/{network}'>(`/v2/benchmarks/${params.path.network}`, params)\n }\n\n async getHistoricalBenchmarks(params: Params<'/v2/historical-benchmarks/{network}'>) {\n return await this.fetchData<'/v2/historical-benchmarks/{network}'>(\n `/v2/historical-benchmarks/${params.path.network}`,\n params\n )\n }\n\n async getVaultHistoricalData(params: Params<'/v2/historical/{network}/{vaultAddress}'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}'>(\n `/v2/historical/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getVaultHistoricalApy(params: Params<'/v2/historical/{network}/{vaultAddress}/apy'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/apy'>(\n `/v2/historical/${network}/${vaultAddress}/apy`,\n params\n )\n }\n\n async getVaultHistoricalTvl(params: Params<'/v2/historical/{network}/{vaultAddress}/tvl'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/tvl'>(\n `/v2/historical/${network}/${vaultAddress}/tvl`,\n params\n )\n }\n\n async getVaultHistoricalSharePrice(params: Params<'/v2/historical/{network}/{vaultAddress}/sharePrice'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/sharePrice'>(\n `/v2/historical/${network}/${vaultAddress}/sharePrice`,\n params\n )\n }\n\n async getPositions(params: Params<'/v2/portfolio/positions/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/positions/{userAddress}'>(\n `/v2/portfolio/positions/${userAddress}`,\n params\n )\n }\n\n async getPosition(params: Params<'/v2/portfolio/positions/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/positions/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/positions/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getDepositOptions(params: Params<'/v2/portfolio/best-deposit-options/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/best-deposit-options/{userAddress}'>(\n `/v2/portfolio/best-deposit-options/${userAddress}`,\n params\n )\n }\n\n async getAllVaults(params?: Params<'/v2/detailed-vaults'>) {\n return await this.fetchData<'/v2/detailed-vaults'>('/v2/detailed-vaults', params)\n }\n\n async getVault(params: Params<'/v2/detailed-vaults/{network}/{vaultAddress}'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/detailed-vaults/{network}/{vaultAddress}'>(\n `/v2/detailed-vaults/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getIdleAssets(params: Params<'/v2/portfolio/idle-assets/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/idle-assets/{userAddress}'>(\n `/v2/portfolio/idle-assets/${userAddress}`,\n params\n )\n }\n\n async getTransactionsContext(params: Params<'/v2/transactions/context/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/transactions/context/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/transactions/context/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getActions(params: Params<'/v2/transactions/{action}/{userAddress}/{network}/{vaultAddress}'>) {\n const { action, userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/transactions/{action}/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/transactions/${action}/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getRewardsTransactionsContext(params: Params<'/v2/transactions/rewards/context/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/transactions/rewards/context/{userAddress}'>(\n `/v2/transactions/rewards/context/${userAddress}`,\n params\n )\n }\n\n async getRewardsClaimActions(params: Params<'/v2/transactions/rewards/claim/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/transactions/rewards/claim/{userAddress}'>(\n `/v2/transactions/rewards/claim/${userAddress}`,\n params\n )\n }\n\n async getUserVaultEvents(params: Params<'/v2/portfolio/events/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/events/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/events/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getUserVaultTotalReturns(params: Params<'/v2/portfolio/total-returns/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/total-returns/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/total-returns/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n}\n","export class HttpResponseError extends Error {}\n","export function generateQueryParams(\n queryParams: Record<string, string | number | boolean | null | undefined | bigint | string[]> | undefined\n): string {\n if (!queryParams || Object.keys(queryParams).length === 0) return ''\n\n const params = new URLSearchParams()\n for (const [key, value] of Object.entries(queryParams)) {\n if (value == null) continue\n\n if (Array.isArray(value)) {\n for (const item of value) {\n params.append(key, item)\n }\n } else {\n params.set(key, value.toString())\n }\n }\n\n return `?${params}`\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/client.ts","../src/errors.ts","../src/utils/generateQueryParams.ts"],"sourcesContent":["import { type Signer, wrapFetchWithPayment } from 'x402-fetch'\nimport { HttpResponseError } from './errors'\nimport type { paths } from './types/openapi'\nimport { generateQueryParams } from './utils/generateQueryParams'\n\nexport const SUPPORTED_NETWORKS = [\n 'mainnet',\n 'optimism',\n 'arbitrum',\n 'polygon',\n 'gnosis',\n 'base',\n 'unichain',\n 'swellchain',\n 'celo',\n 'worldchain',\n 'berachain',\n 'ink',\n 'bsc',\n 'hyperliquid',\n 'plasma',\n 'avalanche',\n] as const\n\ntype ConstructorOptions =\n | {\n apiKey: string\n }\n | {\n client: Signer\n }\n\ninterface InternalOptions {\n apiBaseUrl: string\n}\n\ntype Endpoint = keyof paths\ntype ExtractResponse<T> = T extends { responses: { 200: { content: { 'application/json': infer R } } } } ? R : never\ntype Response<T extends Endpoint> = ExtractResponse<paths[T]['get' | 'post']>\ntype ExtractParams<T> = T extends { parameters: infer P extends { path?: any; query?: any } }\n ? Pick<P, 'path' | 'query'>\n : never\n\ntype Body<T extends Endpoint> = paths[T]['post'] extends {\n requestBody: { content: { 'application/json': infer R } }\n}\n ? { body: R }\n : paths[T]['post'] extends {\n requestBody?: { content: { 'application/json': infer R } }\n }\n ? { body?: R }\n : undefined\n\ntype Params<T extends Endpoint> = Body<T> extends undefined\n ? ExtractParams<paths[T]['get' | 'post']>\n : ExtractParams<paths[T]['get' | 'post']> & Body<T>\n\nexport class VaultsSdk {\n private apiBaseUrl: string\n private auth: ConstructorOptions\n private authHeaders: { 'x-api-key': string } | { 'x-402-auth': 'true' }\n\n constructor(options: ConstructorOptions)\n constructor(options: ConstructorOptions, internalOptions: InternalOptions)\n constructor(options: ConstructorOptions, internalOptions?: InternalOptions) {\n this.auth = options\n if ('apiKey' in this.auth) {\n this.authHeaders = { 'x-api-key': this.auth.apiKey }\n } else {\n this.authHeaders = { 'x-402-auth': 'true' }\n }\n this.apiBaseUrl = internalOptions?.apiBaseUrl ?? 'https://api.vaults.fyi'\n }\n\n private async fetchData<T extends Endpoint>(\n endpoint: string,\n params?: T extends Endpoint ? Params<T> : never,\n method: 'POST' | 'GET' = 'GET'\n ): Promise<T extends Endpoint ? Response<T> : never> {\n const queryParams = generateQueryParams(params?.query)\n\n const body = params && 'body' in params ? params.body : undefined\n const stringifiedBody = body ? JSON.stringify(body) : undefined\n\n const wrappedFetch = 'apiKey' in this.auth ? fetch : wrapFetchWithPayment(fetch, this.auth.client)\n const response = await wrappedFetch(`${this.apiBaseUrl}${endpoint}${queryParams}`, {\n method,\n headers: {\n 'Content-Type': 'application/json',\n ...this.authHeaders,\n },\n body: stringifiedBody,\n })\n\n if (!response.ok) {\n const error = await response.json()\n throw new HttpResponseError(error.message)\n }\n\n return response.json()\n }\n\n async getAssets(params: Params<'/v2/assets'>) {\n return await this.fetchData<'/v2/assets'>('/v2/assets', params)\n }\n\n async getBenchmarks(params: Params<'/v2/benchmarks/{network}'>) {\n return await this.fetchData<'/v2/benchmarks/{network}'>(`/v2/benchmarks/${params.path.network}`, params)\n }\n\n async getHistoricalBenchmarks(params: Params<'/v2/historical-benchmarks/{network}'>) {\n return await this.fetchData<'/v2/historical-benchmarks/{network}'>(\n `/v2/historical-benchmarks/${params.path.network}`,\n params\n )\n }\n\n async getVaultHistoricalData(params: Params<'/v2/historical/{network}/{vaultAddress}'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}'>(\n `/v2/historical/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getVaultHistoricalApy(params: Params<'/v2/historical/{network}/{vaultAddress}/apy'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/apy'>(\n `/v2/historical/${network}/${vaultAddress}/apy`,\n params\n )\n }\n\n async getVaultHistoricalTvl(params: Params<'/v2/historical/{network}/{vaultAddress}/tvl'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/tvl'>(\n `/v2/historical/${network}/${vaultAddress}/tvl`,\n params\n )\n }\n\n async getVaultHistoricalSharePrice(params: Params<'/v2/historical/{network}/{vaultAddress}/sharePrice'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/historical/{network}/{vaultAddress}/sharePrice'>(\n `/v2/historical/${network}/${vaultAddress}/sharePrice`,\n params\n )\n }\n\n async getPositions(params: Params<'/v2/portfolio/positions/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/positions/{userAddress}'>(\n `/v2/portfolio/positions/${userAddress}`,\n params\n )\n }\n\n async getPosition(params: Params<'/v2/portfolio/positions/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/positions/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/positions/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getDepositOptions(params: Params<'/v2/portfolio/best-deposit-options/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/best-deposit-options/{userAddress}'>(\n `/v2/portfolio/best-deposit-options/${userAddress}`,\n params\n )\n }\n\n async getAllVaults(params?: Params<'/v2/detailed-vaults'>) {\n return await this.fetchData<'/v2/detailed-vaults'>('/v2/detailed-vaults', params)\n }\n\n async getVault(params: Params<'/v2/detailed-vaults/{network}/{vaultAddress}'>) {\n const { network, vaultAddress } = params.path\n return await this.fetchData<'/v2/detailed-vaults/{network}/{vaultAddress}'>(\n `/v2/detailed-vaults/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getIdleAssets(params: Params<'/v2/portfolio/idle-assets/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/portfolio/idle-assets/{userAddress}'>(\n `/v2/portfolio/idle-assets/${userAddress}`,\n params\n )\n }\n\n async getTransactionsContext(params: Params<'/v2/transactions/context/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/transactions/context/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/transactions/context/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getActions(params: Params<'/v2/transactions/{action}/{userAddress}/{network}/{vaultAddress}'>) {\n const { action, userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/transactions/{action}/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/transactions/${action}/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getRewardsTransactionsContext(params: Params<'/v2/transactions/rewards/context/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/transactions/rewards/context/{userAddress}'>(\n `/v2/transactions/rewards/context/${userAddress}`,\n params\n )\n }\n\n async getRewardsClaimActions(params: Params<'/v2/transactions/rewards/claim/{userAddress}'>) {\n const { userAddress } = params.path\n return await this.fetchData<'/v2/transactions/rewards/claim/{userAddress}'>(\n `/v2/transactions/rewards/claim/${userAddress}`,\n params\n )\n }\n\n async getUserVaultEvents(params: Params<'/v2/portfolio/events/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/events/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/events/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n\n async getUserVaultTotalReturns(params: Params<'/v2/portfolio/total-returns/{userAddress}/{network}/{vaultAddress}'>) {\n const { userAddress, network, vaultAddress } = params.path\n return await this.fetchData<'/v2/portfolio/total-returns/{userAddress}/{network}/{vaultAddress}'>(\n `/v2/portfolio/total-returns/${userAddress}/${network}/${vaultAddress}`,\n params\n )\n }\n}\n","export class HttpResponseError extends Error {}\n","export function generateQueryParams(\n queryParams: Record<string, string | number | boolean | null | undefined | bigint | string[]> | undefined\n): string {\n if (!queryParams || Object.keys(queryParams).length === 0) return ''\n\n const params = new URLSearchParams()\n for (const [key, value] of Object.entries(queryParams)) {\n if (value == null) continue\n\n if (Array.isArray(value)) {\n for (const item of value) {\n params.append(key, item)\n }\n } else {\n params.set(key, value.toString())\n }\n }\n\n return `?${params}`\n}\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,13 +1,17 @@
1
1
  {
2
2
  "name": "@vaultsfyi/sdk",
3
- "version": "2.1.6",
3
+ "version": "2.1.8",
4
4
  "description": "An SDK for interacting with the Vaults.fyi API",
5
5
  "main": "./dist/client.js",
6
6
  "module": "./dist/client.mjs",
7
7
  "publishConfig": {
8
8
  "access": "public"
9
9
  },
10
- "files": ["dist", "README.md", "CHANGELOG.md"],
10
+ "files": [
11
+ "dist",
12
+ "README.md",
13
+ "CHANGELOG.md"
14
+ ],
11
15
  "scripts": {
12
16
  "updateOpenApiSchema": "openapi-typescript http://api.vaults.fyi/v2/documentation/json -o ./src/types/openapi.ts && biome check ./src/types/openapi.ts --write",
13
17
  "typecheck": "tsc --noEmit",