@gearbox-protocol/sdk 14.10.2 → 14.10.3-next.2

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 (37) hide show
  1. package/dist/cjs/abi/iERC20Zapper.js +33 -0
  2. package/dist/cjs/abi/iETHZapper.js +30 -0
  3. package/dist/cjs/dev/AccountOpener.js +4 -5
  4. package/dist/cjs/sdk/market/ZapperRegister.js +5 -3
  5. package/dist/cjs/sdk/market/index.js +3 -1
  6. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +20 -0
  7. package/dist/cjs/sdk/market/zapper/IERC20ZapperContract.js +98 -0
  8. package/dist/cjs/sdk/market/zapper/IETHZapperContract.js +89 -0
  9. package/dist/cjs/sdk/market/zapper/Zapper.js +41 -0
  10. package/dist/cjs/sdk/market/zapper/createZapper.js +38 -0
  11. package/dist/cjs/sdk/market/zapper/index.js +28 -0
  12. package/dist/cjs/sdk/pools/PoolService.js +58 -60
  13. package/dist/esm/abi/iERC20Zapper.js +9 -0
  14. package/dist/esm/abi/iETHZapper.js +6 -0
  15. package/dist/esm/dev/AccountOpener.js +4 -5
  16. package/dist/esm/sdk/market/ZapperRegister.js +5 -3
  17. package/dist/esm/sdk/market/index.js +1 -0
  18. package/dist/esm/sdk/market/pool/PoolV310Contract.js +20 -0
  19. package/dist/esm/sdk/market/zapper/IERC20ZapperContract.js +74 -0
  20. package/dist/esm/sdk/market/zapper/IETHZapperContract.js +65 -0
  21. package/dist/esm/sdk/market/zapper/Zapper.js +17 -0
  22. package/dist/esm/sdk/market/zapper/createZapper.js +14 -0
  23. package/dist/esm/sdk/market/zapper/index.js +4 -0
  24. package/dist/esm/sdk/pools/PoolService.js +62 -60
  25. package/dist/types/abi/iERC20Zapper.d.ts +313 -0
  26. package/dist/types/abi/iETHZapper.d.ts +153 -0
  27. package/dist/types/sdk/market/ZapperRegister.d.ts +4 -4
  28. package/dist/types/sdk/market/index.d.ts +1 -0
  29. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +12 -2
  30. package/dist/types/sdk/market/zapper/IERC20ZapperContract.d.ts +350 -0
  31. package/dist/types/sdk/market/zapper/IETHZapperContract.d.ts +186 -0
  32. package/dist/types/sdk/market/zapper/Zapper.d.ts +10 -0
  33. package/dist/types/sdk/market/zapper/createZapper.d.ts +6 -0
  34. package/dist/types/sdk/market/zapper/index.d.ts +4 -0
  35. package/dist/types/sdk/pools/PoolService.d.ts +3 -3
  36. package/dist/types/sdk/pools/types.d.ts +10 -5
  37. package/package.json +1 -1
@@ -0,0 +1,313 @@
1
+ export declare const ierc20ZapperAbi: readonly [{
2
+ readonly type: "function";
3
+ readonly inputs: readonly [{
4
+ readonly name: "tokenInAmount";
5
+ readonly internalType: "uint256";
6
+ readonly type: "uint256";
7
+ }, {
8
+ readonly name: "receiver";
9
+ readonly internalType: "address";
10
+ readonly type: "address";
11
+ }];
12
+ readonly name: "deposit";
13
+ readonly outputs: readonly [{
14
+ readonly name: "tokenOutAmount";
15
+ readonly internalType: "uint256";
16
+ readonly type: "uint256";
17
+ }];
18
+ readonly stateMutability: "nonpayable";
19
+ }, {
20
+ readonly type: "function";
21
+ readonly inputs: readonly [{
22
+ readonly name: "tokenInAmount";
23
+ readonly internalType: "uint256";
24
+ readonly type: "uint256";
25
+ }, {
26
+ readonly name: "receiver";
27
+ readonly internalType: "address";
28
+ readonly type: "address";
29
+ }, {
30
+ readonly name: "deadline";
31
+ readonly internalType: "uint256";
32
+ readonly type: "uint256";
33
+ }, {
34
+ readonly name: "v";
35
+ readonly internalType: "uint8";
36
+ readonly type: "uint8";
37
+ }, {
38
+ readonly name: "r";
39
+ readonly internalType: "bytes32";
40
+ readonly type: "bytes32";
41
+ }, {
42
+ readonly name: "s";
43
+ readonly internalType: "bytes32";
44
+ readonly type: "bytes32";
45
+ }];
46
+ readonly name: "depositWithPermit";
47
+ readonly outputs: readonly [{
48
+ readonly name: "tokenOutAmount";
49
+ readonly internalType: "uint256";
50
+ readonly type: "uint256";
51
+ }];
52
+ readonly stateMutability: "nonpayable";
53
+ }, {
54
+ readonly type: "function";
55
+ readonly inputs: readonly [{
56
+ readonly name: "tokenInAmount";
57
+ readonly internalType: "uint256";
58
+ readonly type: "uint256";
59
+ }, {
60
+ readonly name: "receiver";
61
+ readonly internalType: "address";
62
+ readonly type: "address";
63
+ }, {
64
+ readonly name: "nonce";
65
+ readonly internalType: "uint256";
66
+ readonly type: "uint256";
67
+ }, {
68
+ readonly name: "expiry";
69
+ readonly internalType: "uint256";
70
+ readonly type: "uint256";
71
+ }, {
72
+ readonly name: "v";
73
+ readonly internalType: "uint8";
74
+ readonly type: "uint8";
75
+ }, {
76
+ readonly name: "r";
77
+ readonly internalType: "bytes32";
78
+ readonly type: "bytes32";
79
+ }, {
80
+ readonly name: "s";
81
+ readonly internalType: "bytes32";
82
+ readonly type: "bytes32";
83
+ }];
84
+ readonly name: "depositWithPermitAllowed";
85
+ readonly outputs: readonly [{
86
+ readonly name: "tokenOutAmount";
87
+ readonly internalType: "uint256";
88
+ readonly type: "uint256";
89
+ }];
90
+ readonly stateMutability: "nonpayable";
91
+ }, {
92
+ readonly type: "function";
93
+ readonly inputs: readonly [{
94
+ readonly name: "tokenInAmount";
95
+ readonly internalType: "uint256";
96
+ readonly type: "uint256";
97
+ }, {
98
+ readonly name: "receiver";
99
+ readonly internalType: "address";
100
+ readonly type: "address";
101
+ }, {
102
+ readonly name: "referralCode";
103
+ readonly internalType: "uint256";
104
+ readonly type: "uint256";
105
+ }];
106
+ readonly name: "depositWithReferral";
107
+ readonly outputs: readonly [{
108
+ readonly name: "tokenOutAmount";
109
+ readonly internalType: "uint256";
110
+ readonly type: "uint256";
111
+ }];
112
+ readonly stateMutability: "nonpayable";
113
+ }, {
114
+ readonly type: "function";
115
+ readonly inputs: readonly [{
116
+ readonly name: "tokenInAmount";
117
+ readonly internalType: "uint256";
118
+ readonly type: "uint256";
119
+ }, {
120
+ readonly name: "receiver";
121
+ readonly internalType: "address";
122
+ readonly type: "address";
123
+ }, {
124
+ readonly name: "referralCode";
125
+ readonly internalType: "uint256";
126
+ readonly type: "uint256";
127
+ }, {
128
+ readonly name: "deadline";
129
+ readonly internalType: "uint256";
130
+ readonly type: "uint256";
131
+ }, {
132
+ readonly name: "v";
133
+ readonly internalType: "uint8";
134
+ readonly type: "uint8";
135
+ }, {
136
+ readonly name: "r";
137
+ readonly internalType: "bytes32";
138
+ readonly type: "bytes32";
139
+ }, {
140
+ readonly name: "s";
141
+ readonly internalType: "bytes32";
142
+ readonly type: "bytes32";
143
+ }];
144
+ readonly name: "depositWithReferralAndPermit";
145
+ readonly outputs: readonly [{
146
+ readonly name: "tokenOutAmount";
147
+ readonly internalType: "uint256";
148
+ readonly type: "uint256";
149
+ }];
150
+ readonly stateMutability: "nonpayable";
151
+ }, {
152
+ readonly type: "function";
153
+ readonly inputs: readonly [{
154
+ readonly name: "tokenInAmount";
155
+ readonly internalType: "uint256";
156
+ readonly type: "uint256";
157
+ }, {
158
+ readonly name: "receiver";
159
+ readonly internalType: "address";
160
+ readonly type: "address";
161
+ }, {
162
+ readonly name: "referralCode";
163
+ readonly internalType: "uint256";
164
+ readonly type: "uint256";
165
+ }, {
166
+ readonly name: "nonce";
167
+ readonly internalType: "uint256";
168
+ readonly type: "uint256";
169
+ }, {
170
+ readonly name: "expiry";
171
+ readonly internalType: "uint256";
172
+ readonly type: "uint256";
173
+ }, {
174
+ readonly name: "v";
175
+ readonly internalType: "uint8";
176
+ readonly type: "uint8";
177
+ }, {
178
+ readonly name: "r";
179
+ readonly internalType: "bytes32";
180
+ readonly type: "bytes32";
181
+ }, {
182
+ readonly name: "s";
183
+ readonly internalType: "bytes32";
184
+ readonly type: "bytes32";
185
+ }];
186
+ readonly name: "depositWithReferralAndPermitAllowed";
187
+ readonly outputs: readonly [{
188
+ readonly name: "tokenOutAmount";
189
+ readonly internalType: "uint256";
190
+ readonly type: "uint256";
191
+ }];
192
+ readonly stateMutability: "nonpayable";
193
+ }, {
194
+ readonly type: "function";
195
+ readonly inputs: readonly [];
196
+ readonly name: "pool";
197
+ readonly outputs: readonly [{
198
+ readonly name: "";
199
+ readonly internalType: "address";
200
+ readonly type: "address";
201
+ }];
202
+ readonly stateMutability: "view";
203
+ }, {
204
+ readonly type: "function";
205
+ readonly inputs: readonly [{
206
+ readonly name: "tokenInAmount";
207
+ readonly internalType: "uint256";
208
+ readonly type: "uint256";
209
+ }];
210
+ readonly name: "previewDeposit";
211
+ readonly outputs: readonly [{
212
+ readonly name: "tokenOutAmount";
213
+ readonly internalType: "uint256";
214
+ readonly type: "uint256";
215
+ }];
216
+ readonly stateMutability: "view";
217
+ }, {
218
+ readonly type: "function";
219
+ readonly inputs: readonly [{
220
+ readonly name: "tokenOutAmount";
221
+ readonly internalType: "uint256";
222
+ readonly type: "uint256";
223
+ }];
224
+ readonly name: "previewRedeem";
225
+ readonly outputs: readonly [{
226
+ readonly name: "tokenInAmount";
227
+ readonly internalType: "uint256";
228
+ readonly type: "uint256";
229
+ }];
230
+ readonly stateMutability: "view";
231
+ }, {
232
+ readonly type: "function";
233
+ readonly inputs: readonly [{
234
+ readonly name: "tokenOutAmount";
235
+ readonly internalType: "uint256";
236
+ readonly type: "uint256";
237
+ }, {
238
+ readonly name: "receiver";
239
+ readonly internalType: "address";
240
+ readonly type: "address";
241
+ }];
242
+ readonly name: "redeem";
243
+ readonly outputs: readonly [{
244
+ readonly name: "tokenInAmount";
245
+ readonly internalType: "uint256";
246
+ readonly type: "uint256";
247
+ }];
248
+ readonly stateMutability: "nonpayable";
249
+ }, {
250
+ readonly type: "function";
251
+ readonly inputs: readonly [{
252
+ readonly name: "tokenOutAmount";
253
+ readonly internalType: "uint256";
254
+ readonly type: "uint256";
255
+ }, {
256
+ readonly name: "receiver";
257
+ readonly internalType: "address";
258
+ readonly type: "address";
259
+ }, {
260
+ readonly name: "deadline";
261
+ readonly internalType: "uint256";
262
+ readonly type: "uint256";
263
+ }, {
264
+ readonly name: "v";
265
+ readonly internalType: "uint8";
266
+ readonly type: "uint8";
267
+ }, {
268
+ readonly name: "r";
269
+ readonly internalType: "bytes32";
270
+ readonly type: "bytes32";
271
+ }, {
272
+ readonly name: "s";
273
+ readonly internalType: "bytes32";
274
+ readonly type: "bytes32";
275
+ }];
276
+ readonly name: "redeemWithPermit";
277
+ readonly outputs: readonly [{
278
+ readonly name: "tokenInAmount";
279
+ readonly internalType: "uint256";
280
+ readonly type: "uint256";
281
+ }];
282
+ readonly stateMutability: "nonpayable";
283
+ }, {
284
+ readonly type: "function";
285
+ readonly inputs: readonly [];
286
+ readonly name: "tokenIn";
287
+ readonly outputs: readonly [{
288
+ readonly name: "";
289
+ readonly internalType: "address";
290
+ readonly type: "address";
291
+ }];
292
+ readonly stateMutability: "view";
293
+ }, {
294
+ readonly type: "function";
295
+ readonly inputs: readonly [];
296
+ readonly name: "tokenOut";
297
+ readonly outputs: readonly [{
298
+ readonly name: "";
299
+ readonly internalType: "address";
300
+ readonly type: "address";
301
+ }];
302
+ readonly stateMutability: "view";
303
+ }, {
304
+ readonly type: "function";
305
+ readonly inputs: readonly [];
306
+ readonly name: "underlying";
307
+ readonly outputs: readonly [{
308
+ readonly name: "";
309
+ readonly internalType: "address";
310
+ readonly type: "address";
311
+ }];
312
+ readonly stateMutability: "view";
313
+ }];
@@ -0,0 +1,153 @@
1
+ export declare const iethZapperAbi: readonly [{
2
+ readonly type: "function";
3
+ readonly inputs: readonly [{
4
+ readonly name: "receiver";
5
+ readonly internalType: "address";
6
+ readonly type: "address";
7
+ }];
8
+ readonly name: "deposit";
9
+ readonly outputs: readonly [{
10
+ readonly name: "tokenOutAmount";
11
+ readonly internalType: "uint256";
12
+ readonly type: "uint256";
13
+ }];
14
+ readonly stateMutability: "payable";
15
+ }, {
16
+ readonly type: "function";
17
+ readonly inputs: readonly [{
18
+ readonly name: "receiver";
19
+ readonly internalType: "address";
20
+ readonly type: "address";
21
+ }, {
22
+ readonly name: "referralCode";
23
+ readonly internalType: "uint256";
24
+ readonly type: "uint256";
25
+ }];
26
+ readonly name: "depositWithReferral";
27
+ readonly outputs: readonly [{
28
+ readonly name: "tokenOutAmount";
29
+ readonly internalType: "uint256";
30
+ readonly type: "uint256";
31
+ }];
32
+ readonly stateMutability: "payable";
33
+ }, {
34
+ readonly type: "function";
35
+ readonly inputs: readonly [];
36
+ readonly name: "pool";
37
+ readonly outputs: readonly [{
38
+ readonly name: "";
39
+ readonly internalType: "address";
40
+ readonly type: "address";
41
+ }];
42
+ readonly stateMutability: "view";
43
+ }, {
44
+ readonly type: "function";
45
+ readonly inputs: readonly [{
46
+ readonly name: "tokenInAmount";
47
+ readonly internalType: "uint256";
48
+ readonly type: "uint256";
49
+ }];
50
+ readonly name: "previewDeposit";
51
+ readonly outputs: readonly [{
52
+ readonly name: "tokenOutAmount";
53
+ readonly internalType: "uint256";
54
+ readonly type: "uint256";
55
+ }];
56
+ readonly stateMutability: "view";
57
+ }, {
58
+ readonly type: "function";
59
+ readonly inputs: readonly [{
60
+ readonly name: "tokenOutAmount";
61
+ readonly internalType: "uint256";
62
+ readonly type: "uint256";
63
+ }];
64
+ readonly name: "previewRedeem";
65
+ readonly outputs: readonly [{
66
+ readonly name: "tokenInAmount";
67
+ readonly internalType: "uint256";
68
+ readonly type: "uint256";
69
+ }];
70
+ readonly stateMutability: "view";
71
+ }, {
72
+ readonly type: "function";
73
+ readonly inputs: readonly [{
74
+ readonly name: "tokenOutAmount";
75
+ readonly internalType: "uint256";
76
+ readonly type: "uint256";
77
+ }, {
78
+ readonly name: "receiver";
79
+ readonly internalType: "address";
80
+ readonly type: "address";
81
+ }];
82
+ readonly name: "redeem";
83
+ readonly outputs: readonly [{
84
+ readonly name: "tokenInAmount";
85
+ readonly internalType: "uint256";
86
+ readonly type: "uint256";
87
+ }];
88
+ readonly stateMutability: "nonpayable";
89
+ }, {
90
+ readonly type: "function";
91
+ readonly inputs: readonly [{
92
+ readonly name: "tokenOutAmount";
93
+ readonly internalType: "uint256";
94
+ readonly type: "uint256";
95
+ }, {
96
+ readonly name: "receiver";
97
+ readonly internalType: "address";
98
+ readonly type: "address";
99
+ }, {
100
+ readonly name: "deadline";
101
+ readonly internalType: "uint256";
102
+ readonly type: "uint256";
103
+ }, {
104
+ readonly name: "v";
105
+ readonly internalType: "uint8";
106
+ readonly type: "uint8";
107
+ }, {
108
+ readonly name: "r";
109
+ readonly internalType: "bytes32";
110
+ readonly type: "bytes32";
111
+ }, {
112
+ readonly name: "s";
113
+ readonly internalType: "bytes32";
114
+ readonly type: "bytes32";
115
+ }];
116
+ readonly name: "redeemWithPermit";
117
+ readonly outputs: readonly [{
118
+ readonly name: "tokenInAmount";
119
+ readonly internalType: "uint256";
120
+ readonly type: "uint256";
121
+ }];
122
+ readonly stateMutability: "nonpayable";
123
+ }, {
124
+ readonly type: "function";
125
+ readonly inputs: readonly [];
126
+ readonly name: "tokenIn";
127
+ readonly outputs: readonly [{
128
+ readonly name: "";
129
+ readonly internalType: "address";
130
+ readonly type: "address";
131
+ }];
132
+ readonly stateMutability: "view";
133
+ }, {
134
+ readonly type: "function";
135
+ readonly inputs: readonly [];
136
+ readonly name: "tokenOut";
137
+ readonly outputs: readonly [{
138
+ readonly name: "";
139
+ readonly internalType: "address";
140
+ readonly type: "address";
141
+ }];
142
+ readonly stateMutability: "view";
143
+ }, {
144
+ readonly type: "function";
145
+ readonly inputs: readonly [];
146
+ readonly name: "underlying";
147
+ readonly outputs: readonly [{
148
+ readonly name: "";
149
+ readonly internalType: "address";
150
+ readonly type: "address";
151
+ }];
152
+ readonly stateMutability: "view";
153
+ }];
@@ -1,17 +1,17 @@
1
1
  import type { Address } from "viem";
2
2
  import { SDKConstruct } from "../base/index.js";
3
3
  import { AddressMap } from "../utils/index.js";
4
- import type { ZapperData } from "./types.js";
4
+ import { type Zapper } from "./zapper/index.js";
5
5
  export declare class ZapperRegister extends SDKConstruct {
6
6
  #private;
7
7
  /**
8
8
  * Load zappers for all pools using periphery compressor, adds hardcoded zappers
9
9
  */
10
10
  loadZappers(force?: boolean): Promise<void>;
11
- get zappers(): AddressMap<ZapperData[]>;
12
- poolZappers(pool: Address): ZapperData[];
11
+ get zappers(): AddressMap<Zapper[]>;
12
+ poolZappers(pool: Address): Zapper[];
13
13
  /**
14
14
  * Can return multiple zappers if there are multiple zappers for the same tokenIn and tokenOut
15
15
  */
16
- getZapper(pool: Address, tokenIn: Address, tokenOut: Address): Array<ZapperData> | undefined;
16
+ getZapper(pool: Address, tokenIn: Address, tokenOut: Address): Array<Zapper> | undefined;
17
17
  }
@@ -7,3 +7,4 @@ export * from "./pool/index.js";
7
7
  export * from "./pricefeeds/index.js";
8
8
  export * from "./rwa/index.js";
9
9
  export * from "./types.js";
10
+ export * from "./zapper/index.js";
@@ -1,8 +1,8 @@
1
- import type { ContractEventName, DecodeFunctionDataReturnType, Log } from "viem";
1
+ import type { Address, ContractEventName, DecodeFunctionDataReturnType, Log } from "viem";
2
2
  import type { CreditManagerDebtParams, PoolState } from "../../base/index.js";
3
3
  import { BaseContract } from "../../base/index.js";
4
4
  import type { OnchainSDK } from "../../OnchainSDK.js";
5
- import type { PoolStateHuman } from "../../types/index.js";
5
+ import type { PoolStateHuman, RawTx } from "../../types/index.js";
6
6
  import { AddressMap } from "../../utils/index.js";
7
7
  import type { IRWAFactory } from "../rwa/types.js";
8
8
  declare const abi: readonly [{
@@ -1138,6 +1138,16 @@ export declare class PoolV310Contract extends BaseContract<abi> {
1138
1138
  get rwaFactory(): IRWAFactory | undefined;
1139
1139
  stateHuman(raw?: boolean): PoolStateHuman;
1140
1140
  processLog(log: Log<bigint, number, false, undefined, undefined, abi, ContractEventName<abi>>): void;
1141
+ /**
1142
+ * Deposits underlying assets into the pool on behalf of a user with a
1143
+ * referral code.
1144
+ */
1145
+ depositWithReferral(amount: bigint, onBehalfOf: Address, referralCode: bigint): RawTx;
1146
+ /**
1147
+ * Redeems pool shares from the owner and sends the underlying assets to
1148
+ * the receiver.
1149
+ */
1150
+ redeem(amount: bigint, owner: Address, receiver: Address): RawTx;
1141
1151
  protected stringifyFunctionParams(params: DecodeFunctionDataReturnType<abi>): string[];
1142
1152
  }
1143
1153
  export {};