@coinbase/agentkit 0.10.2 → 0.10.4

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 (107) hide show
  1. package/README.md +89 -10
  2. package/dist/action-providers/across/acrossActionProvider.js +2 -4
  3. package/dist/action-providers/across/acrossActionProvider.test.js +10 -5
  4. package/dist/action-providers/baseAccount/baseAccountActionProvider.js +5 -7
  5. package/dist/action-providers/cdp/cdpApiActionProvider.js +7 -30
  6. package/dist/action-providers/cdp/cdpApiActionProvider.test.js +2 -8
  7. package/dist/action-providers/cdp/faucetUtils.d.ts +38 -0
  8. package/dist/action-providers/cdp/faucetUtils.js +81 -0
  9. package/dist/action-providers/clanker/schemas.d.ts +4 -4
  10. package/dist/action-providers/clanker/utils.d.ts +2 -1
  11. package/dist/action-providers/clanker/utils.js +2 -2
  12. package/dist/action-providers/enso/constants.d.ts +4 -0
  13. package/dist/action-providers/enso/constants.js +10 -0
  14. package/dist/action-providers/enso/ensoActionProvider.d.ts +34 -0
  15. package/dist/action-providers/enso/ensoActionProvider.js +125 -0
  16. package/dist/action-providers/enso/ensoActionProvider.test.d.ts +1 -0
  17. package/dist/action-providers/enso/ensoActionProvider.test.js +141 -0
  18. package/dist/action-providers/enso/index.d.ts +1 -0
  19. package/dist/action-providers/enso/index.js +17 -0
  20. package/dist/action-providers/enso/schemas.d.ts +23 -0
  21. package/dist/action-providers/enso/schemas.js +22 -0
  22. package/dist/action-providers/erc20/constants.d.ts +2 -0
  23. package/dist/action-providers/erc20/constants.js +2 -0
  24. package/dist/action-providers/erc20/erc20ActionProvider.d.ts +17 -1
  25. package/dist/action-providers/erc20/erc20ActionProvider.js +103 -1
  26. package/dist/action-providers/erc20/erc20ActionProvider.test.js +201 -0
  27. package/dist/action-providers/erc20/schemas.d.ts +29 -0
  28. package/dist/action-providers/erc20/schemas.js +34 -1
  29. package/dist/action-providers/index.d.ts +4 -1
  30. package/dist/action-providers/index.js +4 -1
  31. package/dist/action-providers/jupiter/jupiterActionProvider.js +2 -2
  32. package/dist/action-providers/spl/splActionProvider.js +12 -13
  33. package/dist/action-providers/superfluid/graphQueries/superfluidGraphQueries.js +2 -2
  34. package/dist/action-providers/sushi/constants.d.ts +35 -0
  35. package/dist/action-providers/sushi/constants.js +7 -0
  36. package/dist/action-providers/sushi/index.d.ts +4 -0
  37. package/dist/action-providers/sushi/index.js +20 -0
  38. package/dist/action-providers/sushi/sushiDataActionProvider.d.ts +32 -0
  39. package/dist/action-providers/sushi/sushiDataActionProvider.js +113 -0
  40. package/dist/action-providers/sushi/sushiDataSchemas.d.ts +11 -0
  41. package/dist/action-providers/sushi/sushiDataSchemas.js +16 -0
  42. package/dist/action-providers/sushi/sushiRouterActionProvider.d.ts +40 -0
  43. package/dist/action-providers/sushi/sushiRouterActionProvider.js +386 -0
  44. package/dist/action-providers/sushi/sushiRouterActionProvider.test.d.ts +1 -0
  45. package/dist/action-providers/sushi/sushiRouterActionProvider.test.js +392 -0
  46. package/dist/action-providers/sushi/sushiRouterSchemas.d.ts +36 -0
  47. package/dist/action-providers/sushi/sushiRouterSchemas.js +55 -0
  48. package/dist/action-providers/vaultsfyi/constants.d.ts +8 -12
  49. package/dist/action-providers/vaultsfyi/constants.js +47 -13
  50. package/dist/action-providers/vaultsfyi/schemas.d.ts +120 -65
  51. package/dist/action-providers/vaultsfyi/schemas.js +72 -38
  52. package/dist/action-providers/vaultsfyi/sdk.d.ts +8 -0
  53. package/dist/action-providers/vaultsfyi/sdk.js +15 -0
  54. package/dist/action-providers/vaultsfyi/utils.d.ts +151 -55
  55. package/dist/action-providers/vaultsfyi/utils.js +29 -75
  56. package/dist/action-providers/vaultsfyi/vaultsfyiActionProvider.d.ts +55 -16
  57. package/dist/action-providers/vaultsfyi/vaultsfyiActionProvider.js +413 -217
  58. package/dist/action-providers/vaultsfyi/vaultsfyiActionProvider.test.js +509 -316
  59. package/dist/action-providers/wallet/walletActionProvider.js +1 -1
  60. package/dist/action-providers/weth/constants.d.ts +0 -1
  61. package/dist/action-providers/weth/constants.js +1 -2
  62. package/dist/action-providers/weth/schemas.js +6 -2
  63. package/dist/action-providers/weth/wethActionProvider.d.ts +7 -0
  64. package/dist/action-providers/weth/wethActionProvider.js +57 -32
  65. package/dist/action-providers/weth/wethActionProvider.test.js +60 -11
  66. package/dist/action-providers/x402/constants.d.ts +67 -0
  67. package/dist/action-providers/x402/constants.js +37 -0
  68. package/dist/action-providers/x402/schemas.d.ts +45 -5
  69. package/dist/action-providers/x402/schemas.js +81 -11
  70. package/dist/action-providers/x402/utils.d.ts +89 -14
  71. package/dist/action-providers/x402/utils.js +335 -31
  72. package/dist/action-providers/x402/x402ActionProvider.d.ts +21 -7
  73. package/dist/action-providers/x402/x402ActionProvider.js +250 -184
  74. package/dist/action-providers/x402/x402ActionProvider.test.js +240 -236
  75. package/dist/action-providers/yelay/constants.d.ts +64 -0
  76. package/dist/action-providers/yelay/constants.js +137 -0
  77. package/dist/action-providers/yelay/index.d.ts +2 -0
  78. package/dist/action-providers/yelay/index.js +18 -0
  79. package/dist/action-providers/yelay/schemas.d.ts +47 -0
  80. package/dist/action-providers/yelay/schemas.js +59 -0
  81. package/dist/action-providers/yelay/types.d.ts +24 -0
  82. package/dist/action-providers/yelay/yelayActionProvider.d.ts +70 -0
  83. package/dist/action-providers/yelay/yelayActionProvider.js +329 -0
  84. package/dist/action-providers/yelay/yelayActionProvider.test.d.ts +1 -0
  85. package/dist/action-providers/yelay/yelayActionProvider.test.js +302 -0
  86. package/dist/action-providers/zora/zoraActionProvider.js +4 -5
  87. package/dist/wallet-providers/cdpSmartWalletProvider.js +1 -3
  88. package/dist/wallet-providers/cdpSolanaWalletProvider.d.ts +14 -0
  89. package/dist/wallet-providers/cdpSolanaWalletProvider.js +39 -3
  90. package/dist/wallet-providers/cdpSolanaWalletProvider.test.js +16 -0
  91. package/dist/wallet-providers/privySvmWalletProvider.d.ts +14 -0
  92. package/dist/wallet-providers/privySvmWalletProvider.js +17 -0
  93. package/dist/wallet-providers/privySvmWalletProvider.test.js +10 -0
  94. package/dist/wallet-providers/solanaKeypairWalletProvider.d.ts +14 -0
  95. package/dist/wallet-providers/solanaKeypairWalletProvider.js +17 -0
  96. package/dist/wallet-providers/svmWalletProvider.d.ts +34 -0
  97. package/dist/wallet-providers/svmWalletProvider.js +43 -0
  98. package/dist/wallet-providers/svmWalletProvider.test.js +10 -0
  99. package/package.json +11 -6
  100. package/dist/action-providers/vaultsfyi/api/actions.d.ts +0 -41
  101. package/dist/action-providers/vaultsfyi/api/actions.js +0 -28
  102. package/dist/action-providers/vaultsfyi/api/historicalData.d.ts +0 -31
  103. package/dist/action-providers/vaultsfyi/api/historicalData.js +0 -44
  104. package/dist/action-providers/vaultsfyi/api/types.d.ts +0 -34
  105. package/dist/action-providers/vaultsfyi/api/vaults.d.ts +0 -66
  106. package/dist/action-providers/vaultsfyi/api/vaults.js +0 -57
  107. /package/dist/action-providers/{vaultsfyi/api → yelay}/types.js +0 -0
@@ -1,13 +1,12 @@
1
1
  import { EvmWalletProvider } from "../../wallet-providers";
2
- import { ApiVault } from "./api/vaults";
3
- import { Actions } from "./api/actions";
2
+ import { VaultsSdk } from "@vaultsfyi/sdk";
4
3
  /**
5
4
  * Get the link to the vaults.fyi page for a vault
6
5
  *
7
6
  * @param vault - The vault
8
7
  * @returns The link to the vaults.fyi page
9
8
  */
10
- export declare function getVaultsLink(vault: ApiVault): string;
9
+ export declare function getVaultsLink(vault: Awaited<ReturnType<VaultsSdk["getVault"]>>): string;
11
10
  /**
12
11
  * Execute a list of actions
13
12
  *
@@ -15,84 +14,181 @@ export declare function getVaultsLink(vault: ApiVault): string;
15
14
  * @param actions - The list of actions to execute
16
15
  * @returns nothing
17
16
  */
18
- export declare function executeActions(wallet: EvmWalletProvider, actions: Actions): Promise<void>;
17
+ export declare function executeActions(wallet: EvmWalletProvider, actions: Awaited<ReturnType<VaultsSdk["getActions"]>>): Promise<void>;
18
+ type Apy = {
19
+ base: number;
20
+ reward: number;
21
+ total: number;
22
+ };
23
+ type ApyObject = {
24
+ "1day": Apy;
25
+ "7day": Apy;
26
+ "30day": Apy;
27
+ "1hour"?: Apy;
28
+ };
19
29
  /**
20
- * Create a URLSearchParams object from an object
30
+ * Transform the apy object to a more readable format
21
31
  *
22
- * @param obj - The object to convert
23
- * @returns The URLSearchParams object
32
+ * @param apy - The apy
33
+ * @returns The transformed apy
24
34
  */
25
- export declare function createSearchParams(obj: Record<string, string | number | boolean | undefined>): URLSearchParams;
35
+ export declare function transformApyObject(apy: ApyObject): Record<string, {
36
+ base: string;
37
+ reward: string;
38
+ total: string;
39
+ }>;
26
40
  /**
27
- * Parse an asset amount with decimals
41
+ * Transform the apy to a more readable format
28
42
  *
29
- * @param wallet - The wallet provider
30
- * @param assetAddress - The address of the asset
31
- * @param amount - The amount to parse
32
- * @returns The parsed amount
43
+ * @param apy - The apy
44
+ * @returns The transformed apy
33
45
  */
34
- export declare function parseAssetAmount(wallet: EvmWalletProvider, assetAddress: string, amount: number): Promise<number>;
46
+ export declare function transformApy(apy: Apy): {
47
+ base: string;
48
+ reward: string;
49
+ total: string;
50
+ };
35
51
  /**
36
- * Transform a vault from the API to a format that can be used by the agent
52
+ * Transform the vault to a more readable format
37
53
  *
38
- * @param vault - The vault to transform
39
- * @param apyRange - The APY range to use
54
+ * @param vault - The vault
40
55
  * @returns The transformed vault
41
56
  */
42
- export declare function transformVault(vault: ApiVault, apyRange: "1day" | "7day" | "30day"): {
43
- name: string;
57
+ export declare function transformVault(vault: Awaited<ReturnType<VaultsSdk["getVault"]>>): {
58
+ apy: Record<string, {
59
+ base: string;
60
+ reward: string;
61
+ total: string;
62
+ }>;
63
+ link: string;
64
+ lastUpdateTimestamp: string;
44
65
  address: string;
45
- network: string;
46
- protocol: string;
47
- tvlInUsd: number;
48
- numberOfHolders: number;
49
- apy: {
50
- base: number;
51
- rewards: number | undefined;
52
- total: number;
66
+ network: {
67
+ name: "mainnet" | "optimism" | "arbitrum" | "polygon" | "gnosis" | "base" | "unichain" | "swellchain" | "celo" | "worldchain" | "berachain" | "ink" | "bsc" | "hyperliquid" | "plasma" | "avalanche";
68
+ chainId: number;
69
+ networkCaip: string;
53
70
  };
54
- token: {
71
+ asset: {
55
72
  address: string;
73
+ assetCaip: string;
56
74
  name: string;
57
75
  symbol: string;
76
+ decimals: number;
77
+ assetLogo?: string;
78
+ assetPriceInUsd?: string;
79
+ assetGroup: string;
80
+ };
81
+ isTransactional: boolean;
82
+ isAppFeatured: boolean;
83
+ name: string;
84
+ protocol: {
85
+ name: string;
86
+ product?: string;
87
+ version?: string;
88
+ protocolUrl?: string;
89
+ description?: string;
90
+ protocolLogo?: string;
91
+ };
92
+ lendUrl?: string;
93
+ description?: string;
94
+ protocolVaultUrl?: string;
95
+ tags: string[];
96
+ holdersData: {
97
+ totalCount?: number;
98
+ totalBalance?: string;
99
+ topHolders?: {
100
+ address: string;
101
+ lpTokenBalance: string;
102
+ }[];
103
+ };
104
+ tvl: {
105
+ usd: string;
106
+ native: string;
58
107
  };
59
- vaultsFyiScore: number;
60
- link: string;
61
- };
62
- /**
63
- * Transform a detailed vault from the API to a format that can be used by the agent
64
- *
65
- * @param vault - The vault to transform
66
- * @param apyRange - The APY range to use
67
- * @returns The transformed vault
68
- */
69
- export declare function transformDetailedVault(vault: ApiVault, apyRange: "1day" | "7day" | "30day"): {
70
108
  rewards: {
71
- apy: number;
72
109
  asset: {
73
110
  address: string;
111
+ assetCaip: string;
74
112
  name: string;
75
113
  symbol: string;
114
+ decimals: number;
115
+ assetLogo?: string;
116
+ assetPriceInUsd?: string;
117
+ assetGroup: string;
118
+ };
119
+ apy: {
120
+ "1hour": number;
121
+ "1day": number;
122
+ "7day": number;
123
+ "30day": number;
76
124
  };
77
125
  }[];
78
- description: string;
79
- additionalIncentives: string;
80
- name: string;
81
- address: string;
82
- network: string;
83
- protocol: string;
84
- tvlInUsd: number;
85
- numberOfHolders: number;
86
- apy: {
87
- base: number;
88
- rewards: number | undefined;
89
- total: number;
126
+ score?: {
127
+ vaultScore: number;
128
+ vaultTvlScore: number;
129
+ protocolTvlScore: number;
130
+ holderScore: number;
131
+ networkScore: number;
132
+ assetScore: number;
90
133
  };
91
- token: {
134
+ additionalIncentives?: string;
135
+ curator?: {
136
+ name: string;
137
+ description?: string;
138
+ websiteUrl?: string;
139
+ };
140
+ lpToken?: {
92
141
  address: string;
142
+ tokenCaip: string;
93
143
  name: string;
94
144
  symbol: string;
145
+ decimals: number;
95
146
  };
96
- vaultsFyiScore: number;
97
- link: string;
147
+ childrenVaults?: {
148
+ address: string;
149
+ asset: {
150
+ address: string;
151
+ assetCaip: string;
152
+ name: string;
153
+ symbol: string;
154
+ decimals: number;
155
+ assetLogo?: string;
156
+ assetPriceInUsd?: string;
157
+ assetGroup: string;
158
+ };
159
+ lpToken?: {
160
+ address: string;
161
+ tokenCaip: string;
162
+ name: string;
163
+ symbol: string;
164
+ decimals: number;
165
+ };
166
+ additionalAssets?: {
167
+ address: string;
168
+ assetCaip: string;
169
+ name: string;
170
+ symbol: string;
171
+ decimals: number;
172
+ assetLogo?: string;
173
+ assetPriceInUsd?: string;
174
+ assetGroup: string;
175
+ }[];
176
+ }[];
177
+ additionalAssets?: {
178
+ address: string;
179
+ assetCaip: string;
180
+ name: string;
181
+ symbol: string;
182
+ decimals: number;
183
+ assetLogo?: string;
184
+ assetPriceInUsd?: string;
185
+ assetGroup: string;
186
+ }[];
187
+ transactionalProperties?: {
188
+ depositStepsType: "instant" | "complex";
189
+ redeemStepsType: "instant" | "complex";
190
+ rewardsSupported: boolean;
191
+ };
192
+ warnings: string[];
98
193
  };
194
+ export {};
@@ -2,11 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getVaultsLink = getVaultsLink;
4
4
  exports.executeActions = executeActions;
5
- exports.createSearchParams = createSearchParams;
6
- exports.parseAssetAmount = parseAssetAmount;
5
+ exports.transformApyObject = transformApyObject;
6
+ exports.transformApy = transformApy;
7
7
  exports.transformVault = transformVault;
8
- exports.transformDetailedVault = transformDetailedVault;
9
- const viem_1 = require("viem");
10
8
  /**
11
9
  * Get the link to the vaults.fyi page for a vault
12
10
  *
@@ -14,12 +12,7 @@ const viem_1 = require("viem");
14
12
  * @returns The link to the vaults.fyi page
15
13
  */
16
14
  function getVaultsLink(vault) {
17
- if (vault.isTransactional) {
18
- return `https://app.vaults.fyi/opportunity/${vault.network}/${vault.address}`;
19
- }
20
- else {
21
- return `https://analytics.vaults.fyi/vaults/${vault.network}/${vault.address}`;
22
- }
15
+ return `https://app.vaults.fyi/opportunity/${vault.network.name}/${vault.address}`;
23
16
  }
24
17
  /**
25
18
  * Execute a list of actions
@@ -32,91 +25,52 @@ async function executeActions(wallet, actions) {
32
25
  for (let i = actions.currentActionIndex; i < actions.actions.length; i++) {
33
26
  const action = actions.actions[i];
34
27
  const txHash = await wallet.sendTransaction({
35
- ...action.tx,
28
+ to: action.tx.to,
29
+ data: action.tx.data,
36
30
  value: action.tx.value ? BigInt(action.tx.value) : undefined,
37
31
  });
38
32
  await wallet.waitForTransactionReceipt(txHash);
39
33
  }
40
34
  }
41
35
  /**
42
- * Create a URLSearchParams object from an object
36
+ * Transform the apy object to a more readable format
43
37
  *
44
- * @param obj - The object to convert
45
- * @returns The URLSearchParams object
38
+ * @param apy - The apy
39
+ * @returns The transformed apy
46
40
  */
47
- function createSearchParams(obj) {
48
- const params = new URLSearchParams();
49
- for (const key in obj) {
50
- if (obj[key] !== undefined) {
51
- params.append(key, obj[key].toString());
41
+ function transformApyObject(apy) {
42
+ return ["1day", "7day", "30day", "1hour"].reduce((acc, curr) => {
43
+ if (!(curr in apy)) {
44
+ return acc;
52
45
  }
53
- }
54
- return params;
55
- }
56
- /**
57
- * Parse an asset amount with decimals
58
- *
59
- * @param wallet - The wallet provider
60
- * @param assetAddress - The address of the asset
61
- * @param amount - The amount to parse
62
- * @returns The parsed amount
63
- */
64
- async function parseAssetAmount(wallet, assetAddress, amount) {
65
- const decimals = await wallet.readContract({
66
- address: assetAddress,
67
- abi: viem_1.erc20Abi,
68
- functionName: "decimals",
69
- });
70
- return Math.floor(amount * 10 ** decimals);
46
+ acc[curr] = transformApy(apy[curr]);
47
+ return acc;
48
+ }, {});
71
49
  }
72
50
  /**
73
- * Transform a vault from the API to a format that can be used by the agent
51
+ * Transform the apy to a more readable format
74
52
  *
75
- * @param vault - The vault to transform
76
- * @param apyRange - The APY range to use
77
- * @returns The transformed vault
53
+ * @param apy - The apy
54
+ * @returns The transformed apy
78
55
  */
79
- function transformVault(vault, apyRange) {
56
+ function transformApy(apy) {
80
57
  return {
81
- name: vault.name,
82
- address: vault.address,
83
- network: vault.network,
84
- protocol: vault.protocol,
85
- tvlInUsd: Number(vault.tvlDetails.tvlUsd),
86
- numberOfHolders: vault.numberOfHolders,
87
- apy: {
88
- base: vault.apy.base[apyRange] / 100,
89
- rewards: vault.apy.rewards?.[apyRange] ? vault.apy.rewards[apyRange] / 100 : undefined,
90
- total: vault.apy.total[apyRange] / 100,
91
- },
92
- token: {
93
- address: vault.token.assetAddress,
94
- name: vault.token.name,
95
- symbol: vault.token.symbol,
96
- },
97
- vaultsFyiScore: vault.score.vaultScore,
98
- link: getVaultsLink(vault),
58
+ base: `${(apy.base * 100).toFixed(2)}%`,
59
+ reward: `${(apy.reward * 100).toFixed(2)}%`,
60
+ total: `${(apy.total * 100).toFixed(2)}%`,
99
61
  };
100
62
  }
101
63
  /**
102
- * Transform a detailed vault from the API to a format that can be used by the agent
64
+ * Transform the vault to a more readable format
103
65
  *
104
- * @param vault - The vault to transform
105
- * @param apyRange - The APY range to use
66
+ * @param vault - The vault
106
67
  * @returns The transformed vault
107
68
  */
108
- function transformDetailedVault(vault, apyRange) {
69
+ function transformVault(vault) {
109
70
  return {
110
- ...transformVault(vault, apyRange),
111
- rewards: vault.rewards.map(reward => ({
112
- apy: reward.apy[apyRange] / 100,
113
- asset: {
114
- address: reward.asset.assetAddress,
115
- name: reward.asset.name,
116
- symbol: reward.asset.symbol,
117
- },
118
- })),
119
- description: vault.description,
120
- additionalIncentives: vault.additionalIncentives,
71
+ ...vault,
72
+ apy: transformApyObject(vault.apy),
73
+ link: getVaultsLink(vault),
74
+ lastUpdateTimestamp: new Date(vault.lastUpdateTimestamp * 1000).toISOString(),
121
75
  };
122
76
  }
@@ -10,9 +10,9 @@ import { z } from "zod";
10
10
  import { ActionProvider } from "../actionProvider";
11
11
  import { Network } from "../../network";
12
12
  import { EvmWalletProvider } from "../../wallet-providers";
13
- import { claimActionSchema, depositActionSchema, redeemActionSchema, VaultDetailsActionSchema, VaultHistoricalDataActionSchema, VaultsActionSchema } from "./schemas";
13
+ import { executeStepActionSchema, transactionContextActionSchema, VaultDetailsActionSchema, VaultHistoricalDataActionSchema, VaultsActionSchema, claimRewardsActionSchema, benchmarkActionSchema, historicalBenchmarkActionSchema, totalVaultReturnsActionSchema, userEventsActionSchema } from "./schemas";
14
14
  /**
15
- * Configuration options for the OpenseaActionProvider.
15
+ * Configuration options for the VaultsfyiActionProvider.
16
16
  */
17
17
  export interface VaultsfyiActionProviderConfig {
18
18
  /**
@@ -60,36 +60,28 @@ export declare class VaultsfyiActionProvider extends ActionProvider<EvmWalletPro
60
60
  */
61
61
  vaultHistoricalData(wallet: EvmWalletProvider, args: z.infer<typeof VaultHistoricalDataActionSchema>): Promise<string>;
62
62
  /**
63
- * Deposit action
63
+ * Transaction context action
64
64
  *
65
65
  * @param wallet - The wallet provider instance for blockchain interactions
66
66
  * @param args - Input arguments
67
67
  * @returns A result message
68
68
  */
69
- deposit(wallet: EvmWalletProvider, args: z.infer<typeof depositActionSchema>): Promise<string>;
69
+ transactionContext(wallet: EvmWalletProvider, args: z.infer<typeof transactionContextActionSchema>): Promise<string>;
70
70
  /**
71
- * Redeem action
72
- *
73
- * @param wallet - The wallet provider instance for blockchain interactions
74
- * @param args - Input arguments
75
- * @returns A result message
76
- */
77
- redeem(wallet: EvmWalletProvider, args: z.infer<typeof redeemActionSchema>): Promise<string>;
78
- /**
79
- * Claim rewards action
71
+ * Deposit action
80
72
  *
81
73
  * @param wallet - The wallet provider instance for blockchain interactions
82
74
  * @param args - Input arguments
83
75
  * @returns A result message
84
76
  */
85
- claim(wallet: EvmWalletProvider, args: z.infer<typeof claimActionSchema>): Promise<string>;
77
+ executeStep(wallet: EvmWalletProvider, args: z.infer<typeof executeStepActionSchema>): Promise<string>;
86
78
  /**
87
79
  * Returns the users wallet token balances.
88
80
  *
89
81
  * @param wallet - The wallet provider instance for blockchain interactions
90
82
  * @returns A record of the users balances
91
83
  */
92
- balances(wallet: EvmWalletProvider): Promise<string>;
84
+ idleAssets(wallet: EvmWalletProvider): Promise<string>;
93
85
  /**
94
86
  * Returns the users positions.
95
87
  *
@@ -97,6 +89,53 @@ export declare class VaultsfyiActionProvider extends ActionProvider<EvmWalletPro
97
89
  * @returns A record of the users positions
98
90
  */
99
91
  positions(wallet: EvmWalletProvider): Promise<string>;
92
+ /**
93
+ * Rewards context action
94
+ *
95
+ * @param wallet - The wallet provider instance for blockchain interactions
96
+ * @returns A record of rewards that are available to the user each with a unique claim id
97
+ */
98
+ rewardsContext(wallet: EvmWalletProvider): Promise<string>;
99
+ /**
100
+ * Claim rewards action
101
+ *
102
+ * @param wallet - The wallet provider instance for blockchain interactions
103
+ * @param args - Input arguments: claimIds
104
+ * @returns A message indicating the success of the claim
105
+ */
106
+ claimRewards(wallet: EvmWalletProvider, args: z.infer<typeof claimRewardsActionSchema>): Promise<string>;
107
+ /**
108
+ * Benchmark APY action
109
+ *
110
+ * @param wallet - The wallet provider instance for blockchain interactions
111
+ * @param args - Input arguments: network, benchmarkCode
112
+ * @returns benchmark APY data
113
+ */
114
+ benchmarkApy(wallet: EvmWalletProvider, args: z.infer<typeof benchmarkActionSchema>): Promise<string>;
115
+ /**
116
+ * Historical benchmark APY action
117
+ *
118
+ * @param wallet - The wallet provider instance for blockchain interactions
119
+ * @param args - Input arguments: network, benchmarkCode, fromDate, toDate, page, perPage
120
+ * @returns A list of historical benchmark APY data
121
+ */
122
+ historicalBenchmarkApy(wallet: EvmWalletProvider, args: z.infer<typeof historicalBenchmarkActionSchema>): Promise<string>;
123
+ /**
124
+ * Total vault returns action
125
+ *
126
+ * @param wallet - The wallet provider instance for blockchain interactions
127
+ * @param args - Input arguments: vaultAddress, network, userAddress
128
+ * @returns An amount of the users total returns
129
+ */
130
+ totalVaultReturns(wallet: EvmWalletProvider, args: z.infer<typeof totalVaultReturnsActionSchema>): Promise<string>;
131
+ /**
132
+ * User events action
133
+ *
134
+ * @param wallet - The wallet provider instance for blockchain interactions
135
+ * @param args - Input arguments: vaultAddress, network, userAddress
136
+ * @returns A list of the users actions on a vault
137
+ */
138
+ userEvents(wallet: EvmWalletProvider, args: z.infer<typeof userEventsActionSchema>): Promise<string>;
100
139
  /**
101
140
  * Checks if this provider supports the given network.
102
141
  *
@@ -111,4 +150,4 @@ export declare class VaultsfyiActionProvider extends ActionProvider<EvmWalletPro
111
150
  * @param config - Configuration options for the provider
112
151
  * @returns A new VaultsfyiActionProvider instance
113
152
  */
114
- export declare const vaultsfyiActionProvider: (config: VaultsfyiActionProviderConfig) => VaultsfyiActionProvider;
153
+ export declare const vaultsfyiActionProvider: (config?: VaultsfyiActionProviderConfig) => VaultsfyiActionProvider;