@neutral-trade/sdk 0.2.5 → 0.2.7
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/README.md +49 -0
- package/dist/index.d.mts +268 -2234
- package/dist/index.mjs +312 -2573
- package/package.json +3 -5
package/dist/index.d.mts
CHANGED
|
@@ -1,2081 +1,20 @@
|
|
|
1
|
-
import { AnchorProvider,
|
|
2
|
-
import { AnchorProvider as AnchorProvider$1, IdlAccounts as IdlAccounts$1, Program as Program$1 } from "@coral-xyz/anchor-32";
|
|
1
|
+
import { AnchorProvider, IdlAccounts, Program, Wallet } from "@coral-xyz/anchor";
|
|
3
2
|
import { Connection, PublicKey, TransactionInstruction } from "@solana/web3.js";
|
|
4
3
|
import { z } from "zod";
|
|
4
|
+
import BN from "bn.js";
|
|
5
5
|
|
|
6
6
|
//#region src/constants/client.d.ts
|
|
7
7
|
declare function createDummyWallet(): Wallet;
|
|
8
|
-
declare function createConnection(rpcUrl: string): Connection;
|
|
9
|
-
declare function createAnchorProviderV29(connection: Connection, wallet?: Wallet): AnchorProvider;
|
|
10
|
-
declare function createAnchorProviderV32(connection: Connection, wallet?: Wallet): AnchorProvider$1;
|
|
11
8
|
//#endregion
|
|
12
|
-
//#region src/
|
|
13
|
-
declare enum SupportedChain {
|
|
14
|
-
Solana = "Solana",
|
|
15
|
-
Hyperliquid = "Hyperliquid",
|
|
16
|
-
}
|
|
17
|
-
declare enum SupportedToken {
|
|
18
|
-
USDC = "USDC",
|
|
19
|
-
USDT = "USDT",
|
|
20
|
-
SOL = "SOL",
|
|
21
|
-
WBTC = "WBTC",
|
|
22
|
-
WETH = "WETH",
|
|
23
|
-
JLP = "JLP",
|
|
24
|
-
}
|
|
25
|
-
interface Token {
|
|
26
|
-
name: string;
|
|
27
|
-
symbol: string;
|
|
28
|
-
onChain: { [chain in SupportedChain]: {
|
|
29
|
-
address: string;
|
|
30
|
-
decimals: number;
|
|
31
|
-
} | null };
|
|
32
|
-
}
|
|
33
|
-
declare const tokens: { [name in SupportedToken]: Token };
|
|
34
|
-
//#endregion
|
|
35
|
-
//#region src/idl/bundle-v1.d.ts
|
|
36
|
-
interface NtbundleV1 {
|
|
37
|
-
version: '0.1.0';
|
|
38
|
-
name: 'ntbundle';
|
|
39
|
-
instructions: [{
|
|
40
|
-
name: 'initializeBundleMasterAccount';
|
|
41
|
-
accounts: [{
|
|
42
|
-
name: 'admin';
|
|
43
|
-
isMut: true;
|
|
44
|
-
isSigner: true;
|
|
45
|
-
}, {
|
|
46
|
-
name: 'bundleMasterAccount';
|
|
47
|
-
isMut: true;
|
|
48
|
-
isSigner: false;
|
|
49
|
-
}, {
|
|
50
|
-
name: 'systemProgram';
|
|
51
|
-
isMut: false;
|
|
52
|
-
isSigner: false;
|
|
53
|
-
}];
|
|
54
|
-
args: [];
|
|
55
|
-
}, {
|
|
56
|
-
name: 'changeBundleMasterAdmin';
|
|
57
|
-
accounts: [{
|
|
58
|
-
name: 'admin';
|
|
59
|
-
isMut: true;
|
|
60
|
-
isSigner: true;
|
|
61
|
-
}, {
|
|
62
|
-
name: 'bundleMasterAccount';
|
|
63
|
-
isMut: true;
|
|
64
|
-
isSigner: false;
|
|
65
|
-
}];
|
|
66
|
-
args: [{
|
|
67
|
-
name: 'newAdmin';
|
|
68
|
-
type: 'publicKey';
|
|
69
|
-
}];
|
|
70
|
-
}, {
|
|
71
|
-
name: 'setBundleCreator';
|
|
72
|
-
accounts: [{
|
|
73
|
-
name: 'admin';
|
|
74
|
-
isMut: true;
|
|
75
|
-
isSigner: true;
|
|
76
|
-
}, {
|
|
77
|
-
name: 'bundleMasterAccount';
|
|
78
|
-
isMut: false;
|
|
79
|
-
isSigner: false;
|
|
80
|
-
}, {
|
|
81
|
-
name: 'creator';
|
|
82
|
-
isMut: false;
|
|
83
|
-
isSigner: false;
|
|
84
|
-
docs: ['CHECK safe as only the pubkey is read'];
|
|
85
|
-
}, {
|
|
86
|
-
name: 'bundleCreatorAccount';
|
|
87
|
-
isMut: true;
|
|
88
|
-
isSigner: false;
|
|
89
|
-
}, {
|
|
90
|
-
name: 'systemProgram';
|
|
91
|
-
isMut: false;
|
|
92
|
-
isSigner: false;
|
|
93
|
-
}];
|
|
94
|
-
args: [{
|
|
95
|
-
name: 'allowed';
|
|
96
|
-
type: 'bool';
|
|
97
|
-
}];
|
|
98
|
-
}, {
|
|
99
|
-
name: 'initializeBundle';
|
|
100
|
-
accounts: [{
|
|
101
|
-
name: 'creator';
|
|
102
|
-
isMut: true;
|
|
103
|
-
isSigner: true;
|
|
104
|
-
}, {
|
|
105
|
-
name: 'bundleCreatorAccount';
|
|
106
|
-
isMut: false;
|
|
107
|
-
isSigner: false;
|
|
108
|
-
}, {
|
|
109
|
-
name: 'systemProgram';
|
|
110
|
-
isMut: false;
|
|
111
|
-
isSigner: false;
|
|
112
|
-
}, {
|
|
113
|
-
name: 'treasuryAccount';
|
|
114
|
-
isMut: true;
|
|
115
|
-
isSigner: false;
|
|
116
|
-
}, {
|
|
117
|
-
name: 'assetAddress';
|
|
118
|
-
isMut: true;
|
|
119
|
-
isSigner: false;
|
|
120
|
-
}, {
|
|
121
|
-
name: 'bundleAccount';
|
|
122
|
-
isMut: true;
|
|
123
|
-
isSigner: false;
|
|
124
|
-
}, {
|
|
125
|
-
name: 'bundleTempData';
|
|
126
|
-
isMut: true;
|
|
127
|
-
isSigner: false;
|
|
128
|
-
}, {
|
|
129
|
-
name: 'oracleData';
|
|
130
|
-
isMut: true;
|
|
131
|
-
isSigner: false;
|
|
132
|
-
}];
|
|
133
|
-
args: [{
|
|
134
|
-
name: 'name';
|
|
135
|
-
type: {
|
|
136
|
-
array: ['u8', 32];
|
|
137
|
-
};
|
|
138
|
-
}, {
|
|
139
|
-
name: 'keeper';
|
|
140
|
-
type: 'publicKey';
|
|
141
|
-
}, {
|
|
142
|
-
name: 'depositFee';
|
|
143
|
-
type: 'u32';
|
|
144
|
-
}, {
|
|
145
|
-
name: 'withdrawalFee';
|
|
146
|
-
type: 'u32';
|
|
147
|
-
}, {
|
|
148
|
-
name: 'performanceFee';
|
|
149
|
-
type: 'u32';
|
|
150
|
-
}, {
|
|
151
|
-
name: 'managementFeeBps';
|
|
152
|
-
type: 'u32';
|
|
153
|
-
}, {
|
|
154
|
-
name: 'oracleBuffer';
|
|
155
|
-
type: 'u64';
|
|
156
|
-
}, {
|
|
157
|
-
name: 'maxDepositAmount';
|
|
158
|
-
type: 'u64';
|
|
159
|
-
}, {
|
|
160
|
-
name: 'withdrawalDelay';
|
|
161
|
-
type: 'u64';
|
|
162
|
-
}, {
|
|
163
|
-
name: 'withdrawalTMin';
|
|
164
|
-
type: 'i64';
|
|
165
|
-
}, {
|
|
166
|
-
name: 'withdrawalTMax';
|
|
167
|
-
type: 'i64';
|
|
168
|
-
}, {
|
|
169
|
-
name: 'withdrawalCurve';
|
|
170
|
-
type: 'f32';
|
|
171
|
-
}, {
|
|
172
|
-
name: 'permissionned';
|
|
173
|
-
type: 'bool';
|
|
174
|
-
}];
|
|
175
|
-
}, {
|
|
176
|
-
name: 'initializeBundleDepositor';
|
|
177
|
-
accounts: [{
|
|
178
|
-
name: 'payer';
|
|
179
|
-
isMut: true;
|
|
180
|
-
isSigner: true;
|
|
181
|
-
}, {
|
|
182
|
-
name: 'authority';
|
|
183
|
-
isMut: true;
|
|
184
|
-
isSigner: true;
|
|
185
|
-
}, {
|
|
186
|
-
name: 'systemProgram';
|
|
187
|
-
isMut: false;
|
|
188
|
-
isSigner: false;
|
|
189
|
-
}, {
|
|
190
|
-
name: 'bundleAccount';
|
|
191
|
-
isMut: true;
|
|
192
|
-
isSigner: false;
|
|
193
|
-
}, {
|
|
194
|
-
name: 'userBundleAccount';
|
|
195
|
-
isMut: true;
|
|
196
|
-
isSigner: false;
|
|
197
|
-
docs: ['each user gets one UserBundleAccount account; it will be created if it doesn\'t exist.'];
|
|
198
|
-
}];
|
|
199
|
-
args: [];
|
|
200
|
-
}, {
|
|
201
|
-
name: 'initializePermissionedBundleDepositor';
|
|
202
|
-
accounts: [{
|
|
203
|
-
name: 'payer';
|
|
204
|
-
isMut: true;
|
|
205
|
-
isSigner: true;
|
|
206
|
-
}, {
|
|
207
|
-
name: 'authority';
|
|
208
|
-
isMut: true;
|
|
209
|
-
isSigner: false;
|
|
210
|
-
}, {
|
|
211
|
-
name: 'systemProgram';
|
|
212
|
-
isMut: false;
|
|
213
|
-
isSigner: false;
|
|
214
|
-
}, {
|
|
215
|
-
name: 'bundleAccount';
|
|
216
|
-
isMut: true;
|
|
217
|
-
isSigner: false;
|
|
218
|
-
}, {
|
|
219
|
-
name: 'userBundleAccount';
|
|
220
|
-
isMut: true;
|
|
221
|
-
isSigner: false;
|
|
222
|
-
docs: ['each user gets one UserBundleAccount account; it will be created if it doesn\'t exist.'];
|
|
223
|
-
}];
|
|
224
|
-
args: [];
|
|
225
|
-
}, {
|
|
226
|
-
name: 'setOracleBuffer';
|
|
227
|
-
accounts: [{
|
|
228
|
-
name: 'manager';
|
|
229
|
-
isMut: true;
|
|
230
|
-
isSigner: true;
|
|
231
|
-
}, {
|
|
232
|
-
name: 'bundleAccount';
|
|
233
|
-
isMut: true;
|
|
234
|
-
isSigner: false;
|
|
235
|
-
}];
|
|
236
|
-
args: [{
|
|
237
|
-
name: 'oracleBuffer';
|
|
238
|
-
type: 'u64';
|
|
239
|
-
}];
|
|
240
|
-
}, {
|
|
241
|
-
name: 'setDelays';
|
|
242
|
-
accounts: [{
|
|
243
|
-
name: 'manager';
|
|
244
|
-
isMut: true;
|
|
245
|
-
isSigner: true;
|
|
246
|
-
}, {
|
|
247
|
-
name: 'bundleAccount';
|
|
248
|
-
isMut: true;
|
|
249
|
-
isSigner: false;
|
|
250
|
-
}];
|
|
251
|
-
args: [{
|
|
252
|
-
name: 'withdrawalDelay';
|
|
253
|
-
type: 'u64';
|
|
254
|
-
}, {
|
|
255
|
-
name: 'withdrawalTMin';
|
|
256
|
-
type: 'i64';
|
|
257
|
-
}, {
|
|
258
|
-
name: 'withdrawalTMax';
|
|
259
|
-
type: 'i64';
|
|
260
|
-
}, {
|
|
261
|
-
name: 'withdrawalCurve';
|
|
262
|
-
type: 'f32';
|
|
263
|
-
}];
|
|
264
|
-
}, {
|
|
265
|
-
name: 'setMaxDepositAmount';
|
|
266
|
-
accounts: [{
|
|
267
|
-
name: 'manager';
|
|
268
|
-
isMut: true;
|
|
269
|
-
isSigner: true;
|
|
270
|
-
}, {
|
|
271
|
-
name: 'bundleAccount';
|
|
272
|
-
isMut: true;
|
|
273
|
-
isSigner: false;
|
|
274
|
-
}];
|
|
275
|
-
args: [{
|
|
276
|
-
name: 'maxDepositAmount';
|
|
277
|
-
type: 'u64';
|
|
278
|
-
}];
|
|
279
|
-
}, {
|
|
280
|
-
name: 'setKeeper';
|
|
281
|
-
accounts: [{
|
|
282
|
-
name: 'manager';
|
|
283
|
-
isMut: true;
|
|
284
|
-
isSigner: true;
|
|
285
|
-
}, {
|
|
286
|
-
name: 'bundleAccount';
|
|
287
|
-
isMut: true;
|
|
288
|
-
isSigner: false;
|
|
289
|
-
}];
|
|
290
|
-
args: [{
|
|
291
|
-
name: 'newkeeper';
|
|
292
|
-
type: 'publicKey';
|
|
293
|
-
}];
|
|
294
|
-
}, {
|
|
295
|
-
name: 'addStrategy';
|
|
296
|
-
accounts: [{
|
|
297
|
-
name: 'manager';
|
|
298
|
-
isMut: true;
|
|
299
|
-
isSigner: true;
|
|
300
|
-
}, {
|
|
301
|
-
name: 'strategyAccount';
|
|
302
|
-
isMut: true;
|
|
303
|
-
isSigner: false;
|
|
304
|
-
}, {
|
|
305
|
-
name: 'bundleAccount';
|
|
306
|
-
isMut: true;
|
|
307
|
-
isSigner: false;
|
|
308
|
-
}, {
|
|
309
|
-
name: 'receiverAddress';
|
|
310
|
-
isMut: true;
|
|
311
|
-
isSigner: false;
|
|
312
|
-
}, {
|
|
313
|
-
name: 'systemProgram';
|
|
314
|
-
isMut: false;
|
|
315
|
-
isSigner: false;
|
|
316
|
-
}];
|
|
317
|
-
args: [{
|
|
318
|
-
name: 'allocationBps';
|
|
319
|
-
type: 'u32';
|
|
320
|
-
}];
|
|
321
|
-
}, {
|
|
322
|
-
name: 'removeStrategy';
|
|
323
|
-
accounts: [{
|
|
324
|
-
name: 'manager';
|
|
325
|
-
isMut: true;
|
|
326
|
-
isSigner: true;
|
|
327
|
-
}, {
|
|
328
|
-
name: 'strategyAccount';
|
|
329
|
-
isMut: true;
|
|
330
|
-
isSigner: false;
|
|
331
|
-
}, {
|
|
332
|
-
name: 'bundleAccount';
|
|
333
|
-
isMut: true;
|
|
334
|
-
isSigner: false;
|
|
335
|
-
}, {
|
|
336
|
-
name: 'receiverAddress';
|
|
337
|
-
isMut: true;
|
|
338
|
-
isSigner: false;
|
|
339
|
-
}, {
|
|
340
|
-
name: 'systemProgram';
|
|
341
|
-
isMut: false;
|
|
342
|
-
isSigner: false;
|
|
343
|
-
}];
|
|
344
|
-
args: [];
|
|
345
|
-
}, {
|
|
346
|
-
name: 'enableStrategy';
|
|
347
|
-
accounts: [{
|
|
348
|
-
name: 'manager';
|
|
349
|
-
isMut: true;
|
|
350
|
-
isSigner: true;
|
|
351
|
-
}, {
|
|
352
|
-
name: 'strategyAccount';
|
|
353
|
-
isMut: true;
|
|
354
|
-
isSigner: false;
|
|
355
|
-
}, {
|
|
356
|
-
name: 'bundleAccount';
|
|
357
|
-
isMut: true;
|
|
358
|
-
isSigner: false;
|
|
359
|
-
}, {
|
|
360
|
-
name: 'receiverAddress';
|
|
361
|
-
isMut: true;
|
|
362
|
-
isSigner: false;
|
|
363
|
-
}, {
|
|
364
|
-
name: 'systemProgram';
|
|
365
|
-
isMut: false;
|
|
366
|
-
isSigner: false;
|
|
367
|
-
}];
|
|
368
|
-
args: [];
|
|
369
|
-
}, {
|
|
370
|
-
name: 'updateAllocations';
|
|
371
|
-
accounts: [{
|
|
372
|
-
name: 'manager';
|
|
373
|
-
isMut: true;
|
|
374
|
-
isSigner: true;
|
|
375
|
-
}, {
|
|
376
|
-
name: 'receiverAddress';
|
|
377
|
-
isMut: true;
|
|
378
|
-
isSigner: false;
|
|
379
|
-
}, {
|
|
380
|
-
name: 'bundleAccount';
|
|
381
|
-
isMut: true;
|
|
382
|
-
isSigner: false;
|
|
383
|
-
}, {
|
|
384
|
-
name: 'strategyAccount';
|
|
385
|
-
isMut: true;
|
|
386
|
-
isSigner: false;
|
|
387
|
-
}];
|
|
388
|
-
args: [{
|
|
389
|
-
name: 'newAllocationBps';
|
|
390
|
-
type: 'u32';
|
|
391
|
-
}];
|
|
392
|
-
}, {
|
|
393
|
-
name: 'changeManager';
|
|
394
|
-
accounts: [{
|
|
395
|
-
name: 'manager';
|
|
396
|
-
isMut: true;
|
|
397
|
-
isSigner: true;
|
|
398
|
-
}, {
|
|
399
|
-
name: 'bundleAccount';
|
|
400
|
-
isMut: true;
|
|
401
|
-
isSigner: false;
|
|
402
|
-
}];
|
|
403
|
-
args: [{
|
|
404
|
-
name: 'newManager';
|
|
405
|
-
type: 'publicKey';
|
|
406
|
-
}];
|
|
407
|
-
}, {
|
|
408
|
-
name: 'setFees';
|
|
409
|
-
accounts: [{
|
|
410
|
-
name: 'manager';
|
|
411
|
-
isMut: true;
|
|
412
|
-
isSigner: true;
|
|
413
|
-
}, {
|
|
414
|
-
name: 'bundleAccount';
|
|
415
|
-
isMut: true;
|
|
416
|
-
isSigner: false;
|
|
417
|
-
}];
|
|
418
|
-
args: [{
|
|
419
|
-
name: 'treasury';
|
|
420
|
-
type: 'publicKey';
|
|
421
|
-
}, {
|
|
422
|
-
name: 'depositFee';
|
|
423
|
-
type: 'u32';
|
|
424
|
-
}, {
|
|
425
|
-
name: 'withdrawalFee';
|
|
426
|
-
type: 'u32';
|
|
427
|
-
}, {
|
|
428
|
-
name: 'performanceFee';
|
|
429
|
-
type: 'u32';
|
|
430
|
-
}, {
|
|
431
|
-
name: 'managementFeeBps';
|
|
432
|
-
type: 'u32';
|
|
433
|
-
}];
|
|
434
|
-
}, {
|
|
435
|
-
name: 'updateOracle';
|
|
436
|
-
accounts: [{
|
|
437
|
-
name: 'keeper';
|
|
438
|
-
isMut: true;
|
|
439
|
-
isSigner: true;
|
|
440
|
-
}, {
|
|
441
|
-
name: 'bundleAccount';
|
|
442
|
-
isMut: true;
|
|
443
|
-
isSigner: false;
|
|
444
|
-
}, {
|
|
445
|
-
name: 'bundleTempData';
|
|
446
|
-
isMut: true;
|
|
447
|
-
isSigner: false;
|
|
448
|
-
}, {
|
|
449
|
-
name: 'oracleData';
|
|
450
|
-
isMut: true;
|
|
451
|
-
isSigner: false;
|
|
452
|
-
}];
|
|
453
|
-
args: [{
|
|
454
|
-
name: 'newEquity';
|
|
455
|
-
type: 'u64';
|
|
456
|
-
}];
|
|
457
|
-
}, {
|
|
458
|
-
name: 'applyFeesToUser';
|
|
459
|
-
accounts: [{
|
|
460
|
-
name: 'keeper';
|
|
461
|
-
isMut: true;
|
|
462
|
-
isSigner: true;
|
|
463
|
-
}, {
|
|
464
|
-
name: 'userBundleAccountOwner';
|
|
465
|
-
isMut: true;
|
|
466
|
-
isSigner: false;
|
|
467
|
-
}, {
|
|
468
|
-
name: 'userBundleAccount';
|
|
469
|
-
isMut: true;
|
|
470
|
-
isSigner: false;
|
|
471
|
-
}, {
|
|
472
|
-
name: 'bundleAccount';
|
|
473
|
-
isMut: true;
|
|
474
|
-
isSigner: false;
|
|
475
|
-
}, {
|
|
476
|
-
name: 'oracleData';
|
|
477
|
-
isMut: true;
|
|
478
|
-
isSigner: false;
|
|
479
|
-
}, {
|
|
480
|
-
name: 'bundleAssetAuthority';
|
|
481
|
-
isMut: true;
|
|
482
|
-
isSigner: false;
|
|
483
|
-
}];
|
|
484
|
-
args: [];
|
|
485
|
-
}, {
|
|
486
|
-
name: 'managerWithdraw';
|
|
487
|
-
accounts: [{
|
|
488
|
-
name: 'manager';
|
|
489
|
-
isMut: true;
|
|
490
|
-
isSigner: true;
|
|
491
|
-
}, {
|
|
492
|
-
name: 'managerTokenAccount';
|
|
493
|
-
isMut: true;
|
|
494
|
-
isSigner: false;
|
|
495
|
-
}, {
|
|
496
|
-
name: 'assetAddress';
|
|
497
|
-
isMut: true;
|
|
498
|
-
isSigner: false;
|
|
499
|
-
}, {
|
|
500
|
-
name: 'bundleAssetAccount';
|
|
501
|
-
isMut: true;
|
|
502
|
-
isSigner: false;
|
|
503
|
-
}, {
|
|
504
|
-
name: 'bundleAccount';
|
|
505
|
-
isMut: true;
|
|
506
|
-
isSigner: false;
|
|
507
|
-
}, {
|
|
508
|
-
name: 'oracleData';
|
|
509
|
-
isMut: true;
|
|
510
|
-
isSigner: false;
|
|
511
|
-
}, {
|
|
512
|
-
name: 'bundleAssetAuthority';
|
|
513
|
-
isMut: true;
|
|
514
|
-
isSigner: false;
|
|
515
|
-
}, {
|
|
516
|
-
name: 'tokenProgram';
|
|
517
|
-
isMut: false;
|
|
518
|
-
isSigner: false;
|
|
519
|
-
}];
|
|
520
|
-
args: [];
|
|
521
|
-
}, {
|
|
522
|
-
name: 'netPendingTransactions';
|
|
523
|
-
accounts: [{
|
|
524
|
-
name: 'keeper';
|
|
525
|
-
isMut: true;
|
|
526
|
-
isSigner: true;
|
|
527
|
-
}, {
|
|
528
|
-
name: 'bundleAccount';
|
|
529
|
-
isMut: true;
|
|
530
|
-
isSigner: false;
|
|
531
|
-
}, {
|
|
532
|
-
name: 'pendingDepositTokenAccount';
|
|
533
|
-
isMut: true;
|
|
534
|
-
isSigner: false;
|
|
535
|
-
}, {
|
|
536
|
-
name: 'bundleAssetAccount';
|
|
537
|
-
isMut: true;
|
|
538
|
-
isSigner: false;
|
|
539
|
-
}, {
|
|
540
|
-
name: 'assetAddress';
|
|
541
|
-
isMut: true;
|
|
542
|
-
isSigner: false;
|
|
543
|
-
}, {
|
|
544
|
-
name: 'pendingBundleAssetAuthority';
|
|
545
|
-
isMut: true;
|
|
546
|
-
isSigner: false;
|
|
547
|
-
}, {
|
|
548
|
-
name: 'oracleData';
|
|
549
|
-
isMut: true;
|
|
550
|
-
isSigner: false;
|
|
551
|
-
}, {
|
|
552
|
-
name: 'bundleTempData';
|
|
553
|
-
isMut: true;
|
|
554
|
-
isSigner: false;
|
|
555
|
-
}, {
|
|
556
|
-
name: 'bundleAssetAuthority';
|
|
557
|
-
isMut: true;
|
|
558
|
-
isSigner: false;
|
|
559
|
-
}, {
|
|
560
|
-
name: 'tokenProgram';
|
|
561
|
-
isMut: false;
|
|
562
|
-
isSigner: false;
|
|
563
|
-
}];
|
|
564
|
-
args: [];
|
|
565
|
-
}, {
|
|
566
|
-
name: 'requestDeposit';
|
|
567
|
-
accounts: [{
|
|
568
|
-
name: 'user';
|
|
569
|
-
isMut: true;
|
|
570
|
-
isSigner: true;
|
|
571
|
-
}, {
|
|
572
|
-
name: 'userTokenAccount';
|
|
573
|
-
isMut: true;
|
|
574
|
-
isSigner: false;
|
|
575
|
-
docs: ['user token account (source of funds)'];
|
|
576
|
-
}, {
|
|
577
|
-
name: 'pendingDepositTokenAccount';
|
|
578
|
-
isMut: true;
|
|
579
|
-
isSigner: false;
|
|
580
|
-
}, {
|
|
581
|
-
name: 'treasuryAccount';
|
|
582
|
-
isMut: true;
|
|
583
|
-
isSigner: false;
|
|
584
|
-
}, {
|
|
585
|
-
name: 'userBundleAccount';
|
|
586
|
-
isMut: true;
|
|
587
|
-
isSigner: false;
|
|
588
|
-
}, {
|
|
589
|
-
name: 'assetAddress';
|
|
590
|
-
isMut: true;
|
|
591
|
-
isSigner: false;
|
|
592
|
-
}, {
|
|
593
|
-
name: 'oracleData';
|
|
594
|
-
isMut: true;
|
|
595
|
-
isSigner: false;
|
|
596
|
-
}, {
|
|
597
|
-
name: 'bundleTempData';
|
|
598
|
-
isMut: true;
|
|
599
|
-
isSigner: false;
|
|
600
|
-
}, {
|
|
601
|
-
name: 'bundleAccount';
|
|
602
|
-
isMut: true;
|
|
603
|
-
isSigner: false;
|
|
604
|
-
}, {
|
|
605
|
-
name: 'pendingBundleAssetAuthority';
|
|
606
|
-
isMut: true;
|
|
607
|
-
isSigner: false;
|
|
608
|
-
}, {
|
|
609
|
-
name: 'tokenProgram';
|
|
610
|
-
isMut: false;
|
|
611
|
-
isSigner: false;
|
|
612
|
-
}, {
|
|
613
|
-
name: 'systemProgram';
|
|
614
|
-
isMut: false;
|
|
615
|
-
isSigner: false;
|
|
616
|
-
}];
|
|
617
|
-
args: [{
|
|
618
|
-
name: 'amount';
|
|
619
|
-
type: 'u64';
|
|
620
|
-
}];
|
|
621
|
-
}, {
|
|
622
|
-
name: 'processDeposit';
|
|
623
|
-
accounts: [{
|
|
624
|
-
name: 'keeper';
|
|
625
|
-
isMut: true;
|
|
626
|
-
isSigner: true;
|
|
627
|
-
}, {
|
|
628
|
-
name: 'userBundleAccount';
|
|
629
|
-
isMut: true;
|
|
630
|
-
isSigner: false;
|
|
631
|
-
}, {
|
|
632
|
-
name: 'pendingDepositTokenAccount';
|
|
633
|
-
isMut: true;
|
|
634
|
-
isSigner: false;
|
|
635
|
-
docs: ['the account holding the user\'s deposited asset before allocation.'];
|
|
636
|
-
}, {
|
|
637
|
-
name: 'userBundleAccountOwner';
|
|
638
|
-
isMut: false;
|
|
639
|
-
isSigner: false;
|
|
640
|
-
docs: ['the owner of the pending request (for event purposes).'];
|
|
641
|
-
}, {
|
|
642
|
-
name: 'assetAddress';
|
|
643
|
-
isMut: true;
|
|
644
|
-
isSigner: false;
|
|
645
|
-
}, {
|
|
646
|
-
name: 'bundleAssetAccount';
|
|
647
|
-
isMut: true;
|
|
648
|
-
isSigner: false;
|
|
649
|
-
}, {
|
|
650
|
-
name: 'bundleAccount';
|
|
651
|
-
isMut: true;
|
|
652
|
-
isSigner: false;
|
|
653
|
-
}, {
|
|
654
|
-
name: 'bundleTempData';
|
|
655
|
-
isMut: true;
|
|
656
|
-
isSigner: false;
|
|
657
|
-
}, {
|
|
658
|
-
name: 'oracleData';
|
|
659
|
-
isMut: true;
|
|
660
|
-
isSigner: false;
|
|
661
|
-
}, {
|
|
662
|
-
name: 'pendingBundleAssetAuthority';
|
|
663
|
-
isMut: true;
|
|
664
|
-
isSigner: false;
|
|
665
|
-
}, {
|
|
666
|
-
name: 'bundleAssetAuthority';
|
|
667
|
-
isMut: true;
|
|
668
|
-
isSigner: false;
|
|
669
|
-
}, {
|
|
670
|
-
name: 'tokenProgram';
|
|
671
|
-
isMut: false;
|
|
672
|
-
isSigner: false;
|
|
673
|
-
}, {
|
|
674
|
-
name: 'systemProgram';
|
|
675
|
-
isMut: false;
|
|
676
|
-
isSigner: false;
|
|
677
|
-
}];
|
|
678
|
-
args: [];
|
|
679
|
-
}, {
|
|
680
|
-
name: 'refundDeposit';
|
|
681
|
-
accounts: [{
|
|
682
|
-
name: 'keeper';
|
|
683
|
-
isMut: true;
|
|
684
|
-
isSigner: true;
|
|
685
|
-
}, {
|
|
686
|
-
name: 'userBundleAccount';
|
|
687
|
-
isMut: true;
|
|
688
|
-
isSigner: false;
|
|
689
|
-
}, {
|
|
690
|
-
name: 'userBundleAccountOwner';
|
|
691
|
-
isMut: false;
|
|
692
|
-
isSigner: false;
|
|
693
|
-
docs: ['the owner of the pending request (for event purposes).'];
|
|
694
|
-
}, {
|
|
695
|
-
name: 'userTokenAccount';
|
|
696
|
-
isMut: true;
|
|
697
|
-
isSigner: false;
|
|
698
|
-
}, {
|
|
699
|
-
name: 'assetAddress';
|
|
700
|
-
isMut: true;
|
|
701
|
-
isSigner: false;
|
|
702
|
-
}, {
|
|
703
|
-
name: 'bundleAssetAccount';
|
|
704
|
-
isMut: true;
|
|
705
|
-
isSigner: false;
|
|
706
|
-
}, {
|
|
707
|
-
name: 'bundleAssetAuthority';
|
|
708
|
-
isMut: true;
|
|
709
|
-
isSigner: false;
|
|
710
|
-
}, {
|
|
711
|
-
name: 'bundleAccount';
|
|
712
|
-
isMut: true;
|
|
713
|
-
isSigner: false;
|
|
714
|
-
}, {
|
|
715
|
-
name: 'bundleTempData';
|
|
716
|
-
isMut: true;
|
|
717
|
-
isSigner: false;
|
|
718
|
-
}, {
|
|
719
|
-
name: 'tokenProgram';
|
|
720
|
-
isMut: false;
|
|
721
|
-
isSigner: false;
|
|
722
|
-
}, {
|
|
723
|
-
name: 'systemProgram';
|
|
724
|
-
isMut: false;
|
|
725
|
-
isSigner: false;
|
|
726
|
-
}];
|
|
727
|
-
args: [];
|
|
728
|
-
}, {
|
|
729
|
-
name: 'requestWithdrawal';
|
|
730
|
-
accounts: [{
|
|
731
|
-
name: 'user';
|
|
732
|
-
isMut: true;
|
|
733
|
-
isSigner: true;
|
|
734
|
-
}, {
|
|
735
|
-
name: 'userBundleAccount';
|
|
736
|
-
isMut: true;
|
|
737
|
-
isSigner: false;
|
|
738
|
-
}, {
|
|
739
|
-
name: 'bundleAccount';
|
|
740
|
-
isMut: true;
|
|
741
|
-
isSigner: false;
|
|
742
|
-
}, {
|
|
743
|
-
name: 'oracleData';
|
|
744
|
-
isMut: true;
|
|
745
|
-
isSigner: false;
|
|
746
|
-
}, {
|
|
747
|
-
name: 'bundleTempData';
|
|
748
|
-
isMut: true;
|
|
749
|
-
isSigner: false;
|
|
750
|
-
}, {
|
|
751
|
-
name: 'tokenProgram';
|
|
752
|
-
isMut: false;
|
|
753
|
-
isSigner: false;
|
|
754
|
-
}, {
|
|
755
|
-
name: 'systemProgram';
|
|
756
|
-
isMut: false;
|
|
757
|
-
isSigner: false;
|
|
758
|
-
}, {
|
|
759
|
-
name: 'rent';
|
|
760
|
-
isMut: false;
|
|
761
|
-
isSigner: false;
|
|
762
|
-
}];
|
|
763
|
-
args: [{
|
|
764
|
-
name: 'sharesAmount';
|
|
765
|
-
type: 'u128';
|
|
766
|
-
}];
|
|
767
|
-
}, {
|
|
768
|
-
name: 'processWithdrawal';
|
|
769
|
-
accounts: [{
|
|
770
|
-
name: 'keeper';
|
|
771
|
-
isMut: true;
|
|
772
|
-
isSigner: true;
|
|
773
|
-
}, {
|
|
774
|
-
name: 'userBundleAccountOwner';
|
|
775
|
-
isMut: false;
|
|
776
|
-
isSigner: false;
|
|
777
|
-
}, {
|
|
778
|
-
name: 'userTokenAccount';
|
|
779
|
-
isMut: true;
|
|
780
|
-
isSigner: false;
|
|
781
|
-
}, {
|
|
782
|
-
name: 'assetAddress';
|
|
783
|
-
isMut: true;
|
|
784
|
-
isSigner: false;
|
|
785
|
-
}, {
|
|
786
|
-
name: 'bundleAssetAccount';
|
|
787
|
-
isMut: true;
|
|
788
|
-
isSigner: false;
|
|
789
|
-
}, {
|
|
790
|
-
name: 'pendingBundleAssetAuthority';
|
|
791
|
-
isMut: true;
|
|
792
|
-
isSigner: false;
|
|
793
|
-
}, {
|
|
794
|
-
name: 'userBundleAccount';
|
|
795
|
-
isMut: true;
|
|
796
|
-
isSigner: false;
|
|
797
|
-
}, {
|
|
798
|
-
name: 'treasuryAccount';
|
|
799
|
-
isMut: true;
|
|
800
|
-
isSigner: false;
|
|
801
|
-
}, {
|
|
802
|
-
name: 'bundleAssetAuthority';
|
|
803
|
-
isMut: true;
|
|
804
|
-
isSigner: false;
|
|
805
|
-
}, {
|
|
806
|
-
name: 'bundleAccount';
|
|
807
|
-
isMut: true;
|
|
808
|
-
isSigner: false;
|
|
809
|
-
}, {
|
|
810
|
-
name: 'bundleTempData';
|
|
811
|
-
isMut: true;
|
|
812
|
-
isSigner: false;
|
|
813
|
-
}, {
|
|
814
|
-
name: 'oracleData';
|
|
815
|
-
isMut: true;
|
|
816
|
-
isSigner: false;
|
|
817
|
-
}, {
|
|
818
|
-
name: 'tokenProgram';
|
|
819
|
-
isMut: false;
|
|
820
|
-
isSigner: false;
|
|
821
|
-
}, {
|
|
822
|
-
name: 'systemProgram';
|
|
823
|
-
isMut: false;
|
|
824
|
-
isSigner: false;
|
|
825
|
-
}];
|
|
826
|
-
args: [];
|
|
827
|
-
}, {
|
|
828
|
-
name: 'pauseDepositsWithdrawals';
|
|
829
|
-
accounts: [{
|
|
830
|
-
name: 'keeper';
|
|
831
|
-
isMut: true;
|
|
832
|
-
isSigner: true;
|
|
833
|
-
}, {
|
|
834
|
-
name: 'bundleAccount';
|
|
835
|
-
isMut: true;
|
|
836
|
-
isSigner: false;
|
|
837
|
-
}, {
|
|
838
|
-
name: 'bundleTempData';
|
|
839
|
-
isMut: true;
|
|
840
|
-
isSigner: false;
|
|
841
|
-
}, {
|
|
842
|
-
name: 'oracleData';
|
|
843
|
-
isMut: true;
|
|
844
|
-
isSigner: false;
|
|
845
|
-
}];
|
|
846
|
-
args: [{
|
|
847
|
-
name: 'pause';
|
|
848
|
-
type: 'bool';
|
|
849
|
-
}];
|
|
850
|
-
}, {
|
|
851
|
-
name: 'startDistribution';
|
|
852
|
-
accounts: [{
|
|
853
|
-
name: 'keeper';
|
|
854
|
-
isMut: true;
|
|
855
|
-
isSigner: true;
|
|
856
|
-
}, {
|
|
857
|
-
name: 'bundleAccount';
|
|
858
|
-
isMut: true;
|
|
859
|
-
isSigner: false;
|
|
860
|
-
}, {
|
|
861
|
-
name: 'bundleTempData';
|
|
862
|
-
isMut: true;
|
|
863
|
-
isSigner: false;
|
|
864
|
-
}, {
|
|
865
|
-
name: 'oracleData';
|
|
866
|
-
isMut: true;
|
|
867
|
-
isSigner: false;
|
|
868
|
-
}];
|
|
869
|
-
args: [];
|
|
870
|
-
}, {
|
|
871
|
-
name: 'endDistribution';
|
|
872
|
-
accounts: [{
|
|
873
|
-
name: 'keeper';
|
|
874
|
-
isMut: true;
|
|
875
|
-
isSigner: true;
|
|
876
|
-
}, {
|
|
877
|
-
name: 'bundleAccount';
|
|
878
|
-
isMut: true;
|
|
879
|
-
isSigner: false;
|
|
880
|
-
}, {
|
|
881
|
-
name: 'bundleTempData';
|
|
882
|
-
isMut: true;
|
|
883
|
-
isSigner: false;
|
|
884
|
-
}, {
|
|
885
|
-
name: 'oracleData';
|
|
886
|
-
isMut: true;
|
|
887
|
-
isSigner: false;
|
|
888
|
-
}];
|
|
889
|
-
args: [];
|
|
890
|
-
}, {
|
|
891
|
-
name: 'performRefill';
|
|
892
|
-
accounts: [{
|
|
893
|
-
name: 'receiverAddress';
|
|
894
|
-
isMut: true;
|
|
895
|
-
isSigner: true;
|
|
896
|
-
}, {
|
|
897
|
-
name: 'bundleAssetAccount';
|
|
898
|
-
isMut: true;
|
|
899
|
-
isSigner: false;
|
|
900
|
-
}, {
|
|
901
|
-
name: 'receiverAta';
|
|
902
|
-
isMut: true;
|
|
903
|
-
isSigner: false;
|
|
904
|
-
}, {
|
|
905
|
-
name: 'assetAddress';
|
|
906
|
-
isMut: false;
|
|
907
|
-
isSigner: false;
|
|
908
|
-
}, {
|
|
909
|
-
name: 'bundleAccount';
|
|
910
|
-
isMut: true;
|
|
911
|
-
isSigner: false;
|
|
912
|
-
}, {
|
|
913
|
-
name: 'strategyAccount';
|
|
914
|
-
isMut: true;
|
|
915
|
-
isSigner: false;
|
|
916
|
-
}, {
|
|
917
|
-
name: 'oracleData';
|
|
918
|
-
isMut: true;
|
|
919
|
-
isSigner: false;
|
|
920
|
-
}, {
|
|
921
|
-
name: 'bundleAssetAuthority';
|
|
922
|
-
isMut: true;
|
|
923
|
-
isSigner: false;
|
|
924
|
-
}, {
|
|
925
|
-
name: 'tokenProgram';
|
|
926
|
-
isMut: false;
|
|
927
|
-
isSigner: false;
|
|
928
|
-
}];
|
|
929
|
-
args: [{
|
|
930
|
-
name: 'refillAmount';
|
|
931
|
-
type: 'u64';
|
|
932
|
-
}];
|
|
933
|
-
}, {
|
|
934
|
-
name: 'distributeToReceivers';
|
|
935
|
-
accounts: [{
|
|
936
|
-
name: 'keeper';
|
|
937
|
-
isMut: true;
|
|
938
|
-
isSigner: true;
|
|
939
|
-
}, {
|
|
940
|
-
name: 'receiverAddress';
|
|
941
|
-
isMut: true;
|
|
942
|
-
isSigner: false;
|
|
943
|
-
}, {
|
|
944
|
-
name: 'bundleAssetAccount';
|
|
945
|
-
isMut: true;
|
|
946
|
-
isSigner: false;
|
|
947
|
-
}, {
|
|
948
|
-
name: 'receiverAta';
|
|
949
|
-
isMut: true;
|
|
950
|
-
isSigner: false;
|
|
951
|
-
}, {
|
|
952
|
-
name: 'assetAddress';
|
|
953
|
-
isMut: false;
|
|
954
|
-
isSigner: false;
|
|
955
|
-
}, {
|
|
956
|
-
name: 'oracleData';
|
|
957
|
-
isMut: true;
|
|
958
|
-
isSigner: false;
|
|
959
|
-
}, {
|
|
960
|
-
name: 'bundleAssetAuthority';
|
|
961
|
-
isMut: true;
|
|
962
|
-
isSigner: false;
|
|
963
|
-
}, {
|
|
964
|
-
name: 'tokenProgram';
|
|
965
|
-
isMut: false;
|
|
966
|
-
isSigner: false;
|
|
967
|
-
}, {
|
|
968
|
-
name: 'bundleAccount';
|
|
969
|
-
isMut: true;
|
|
970
|
-
isSigner: false;
|
|
971
|
-
}, {
|
|
972
|
-
name: 'bundleTempData';
|
|
973
|
-
isMut: true;
|
|
974
|
-
isSigner: false;
|
|
975
|
-
}, {
|
|
976
|
-
name: 'strategyAccount';
|
|
977
|
-
isMut: true;
|
|
978
|
-
isSigner: false;
|
|
979
|
-
}];
|
|
980
|
-
args: [];
|
|
981
|
-
}, {
|
|
982
|
-
name: 'forceWithdrawPosition';
|
|
983
|
-
accounts: [{
|
|
984
|
-
name: 'keeper';
|
|
985
|
-
isMut: true;
|
|
986
|
-
isSigner: true;
|
|
987
|
-
}, {
|
|
988
|
-
name: 'userBundleAccountOwner';
|
|
989
|
-
isMut: true;
|
|
990
|
-
isSigner: false;
|
|
991
|
-
}, {
|
|
992
|
-
name: 'userTokenAccount';
|
|
993
|
-
isMut: true;
|
|
994
|
-
isSigner: false;
|
|
995
|
-
}, {
|
|
996
|
-
name: 'assetAddress';
|
|
997
|
-
isMut: true;
|
|
998
|
-
isSigner: false;
|
|
999
|
-
}, {
|
|
1000
|
-
name: 'bundleAssetAccount';
|
|
1001
|
-
isMut: true;
|
|
1002
|
-
isSigner: false;
|
|
1003
|
-
}, {
|
|
1004
|
-
name: 'pendingBundleAssetAuthority';
|
|
1005
|
-
isMut: true;
|
|
1006
|
-
isSigner: false;
|
|
1007
|
-
}, {
|
|
1008
|
-
name: 'userBundleAccount';
|
|
1009
|
-
isMut: true;
|
|
1010
|
-
isSigner: false;
|
|
1011
|
-
}, {
|
|
1012
|
-
name: 'treasuryAccount';
|
|
1013
|
-
isMut: true;
|
|
1014
|
-
isSigner: false;
|
|
1015
|
-
}, {
|
|
1016
|
-
name: 'bundleAssetAuthority';
|
|
1017
|
-
isMut: true;
|
|
1018
|
-
isSigner: false;
|
|
1019
|
-
}, {
|
|
1020
|
-
name: 'bundleAccount';
|
|
1021
|
-
isMut: true;
|
|
1022
|
-
isSigner: false;
|
|
1023
|
-
}, {
|
|
1024
|
-
name: 'bundleTempData';
|
|
1025
|
-
isMut: true;
|
|
1026
|
-
isSigner: false;
|
|
1027
|
-
}, {
|
|
1028
|
-
name: 'oracleData';
|
|
1029
|
-
isMut: true;
|
|
1030
|
-
isSigner: false;
|
|
1031
|
-
}, {
|
|
1032
|
-
name: 'tokenProgram';
|
|
1033
|
-
isMut: false;
|
|
1034
|
-
isSigner: false;
|
|
1035
|
-
}, {
|
|
1036
|
-
name: 'systemProgram';
|
|
1037
|
-
isMut: false;
|
|
1038
|
-
isSigner: false;
|
|
1039
|
-
}];
|
|
1040
|
-
args: [];
|
|
1041
|
-
}];
|
|
1042
|
-
accounts: [{
|
|
1043
|
-
name: 'bundle';
|
|
1044
|
-
type: {
|
|
1045
|
-
kind: 'struct';
|
|
1046
|
-
fields: [{
|
|
1047
|
-
name: 'name';
|
|
1048
|
-
type: {
|
|
1049
|
-
array: ['u8', 32];
|
|
1050
|
-
};
|
|
1051
|
-
}, {
|
|
1052
|
-
name: 'manager';
|
|
1053
|
-
type: 'publicKey';
|
|
1054
|
-
}, {
|
|
1055
|
-
name: 'keeper';
|
|
1056
|
-
type: 'publicKey';
|
|
1057
|
-
}, {
|
|
1058
|
-
name: 'treasuryAccount';
|
|
1059
|
-
type: 'publicKey';
|
|
1060
|
-
}, {
|
|
1061
|
-
name: 'allocatedReceivers';
|
|
1062
|
-
type: {
|
|
1063
|
-
vec: 'publicKey';
|
|
1064
|
-
};
|
|
1065
|
-
}, {
|
|
1066
|
-
name: 'bundleUnderlyingBalance';
|
|
1067
|
-
type: 'u64';
|
|
1068
|
-
}, {
|
|
1069
|
-
name: 'maxDepositAmount';
|
|
1070
|
-
type: 'u64';
|
|
1071
|
-
}, {
|
|
1072
|
-
name: 'withdrawalDelay';
|
|
1073
|
-
type: 'u64';
|
|
1074
|
-
}, {
|
|
1075
|
-
name: 'performanceFee';
|
|
1076
|
-
type: 'u32';
|
|
1077
|
-
}, {
|
|
1078
|
-
name: 'managementFeeBps';
|
|
1079
|
-
type: 'u32';
|
|
1080
|
-
}, {
|
|
1081
|
-
name: 'depositFee';
|
|
1082
|
-
type: 'u32';
|
|
1083
|
-
}, {
|
|
1084
|
-
name: 'withdrawalFee';
|
|
1085
|
-
type: 'u32';
|
|
1086
|
-
}, {
|
|
1087
|
-
name: 'managerPfeeShares';
|
|
1088
|
-
type: 'u128';
|
|
1089
|
-
}, {
|
|
1090
|
-
name: 'currentAllocationBps';
|
|
1091
|
-
type: 'u32';
|
|
1092
|
-
}, {
|
|
1093
|
-
name: 'oracleBuffer';
|
|
1094
|
-
type: 'u64';
|
|
1095
|
-
}, {
|
|
1096
|
-
name: 'totalShares';
|
|
1097
|
-
type: 'u128';
|
|
1098
|
-
}, {
|
|
1099
|
-
name: 'assetPrecision';
|
|
1100
|
-
type: 'u64';
|
|
1101
|
-
}, {
|
|
1102
|
-
name: 'assetAddress';
|
|
1103
|
-
type: 'publicKey';
|
|
1104
|
-
}, {
|
|
1105
|
-
name: 'assetDecimals';
|
|
1106
|
-
type: 'u8';
|
|
1107
|
-
}, {
|
|
1108
|
-
name: 'withdrawalTMin';
|
|
1109
|
-
type: 'i64';
|
|
1110
|
-
}, {
|
|
1111
|
-
name: 'withdrawalTMax';
|
|
1112
|
-
type: 'i64';
|
|
1113
|
-
}, {
|
|
1114
|
-
name: 'withdrawalCurve';
|
|
1115
|
-
type: 'f32';
|
|
1116
|
-
}, {
|
|
1117
|
-
name: 'permissionned';
|
|
1118
|
-
type: 'bool';
|
|
1119
|
-
}, {
|
|
1120
|
-
name: 'managerMfeeShares';
|
|
1121
|
-
type: 'u128';
|
|
1122
|
-
}, {
|
|
1123
|
-
name: 'padding';
|
|
1124
|
-
type: {
|
|
1125
|
-
array: ['u8', 255];
|
|
1126
|
-
};
|
|
1127
|
-
}];
|
|
1128
|
-
};
|
|
1129
|
-
}, {
|
|
1130
|
-
name: 'bundleCreatorAccount';
|
|
1131
|
-
type: {
|
|
1132
|
-
kind: 'struct';
|
|
1133
|
-
fields: [{
|
|
1134
|
-
name: 'allowed';
|
|
1135
|
-
type: 'bool';
|
|
1136
|
-
}, {
|
|
1137
|
-
name: 'padding';
|
|
1138
|
-
type: {
|
|
1139
|
-
array: ['u8', 64];
|
|
1140
|
-
};
|
|
1141
|
-
}];
|
|
1142
|
-
};
|
|
1143
|
-
}, {
|
|
1144
|
-
name: 'bundleMasterAccount';
|
|
1145
|
-
type: {
|
|
1146
|
-
kind: 'struct';
|
|
1147
|
-
fields: [{
|
|
1148
|
-
name: 'admin';
|
|
1149
|
-
type: 'publicKey';
|
|
1150
|
-
}, {
|
|
1151
|
-
name: 'padding';
|
|
1152
|
-
type: {
|
|
1153
|
-
array: ['u8', 96];
|
|
1154
|
-
};
|
|
1155
|
-
}];
|
|
1156
|
-
};
|
|
1157
|
-
}, {
|
|
1158
|
-
name: 'bundleTempData';
|
|
1159
|
-
type: {
|
|
1160
|
-
kind: 'struct';
|
|
1161
|
-
fields: [{
|
|
1162
|
-
name: 'cumulativePendingDeposits';
|
|
1163
|
-
type: 'u64';
|
|
1164
|
-
}, {
|
|
1165
|
-
name: 'pendingDepositsCounter';
|
|
1166
|
-
type: 'u64';
|
|
1167
|
-
}, {
|
|
1168
|
-
name: 'pendingWithdrawalsCounter';
|
|
1169
|
-
type: 'u64';
|
|
1170
|
-
}, {
|
|
1171
|
-
name: 'pendingLockedWithdrawalsCounter';
|
|
1172
|
-
type: 'u64';
|
|
1173
|
-
}, {
|
|
1174
|
-
name: 'lastTotalSharesMinted';
|
|
1175
|
-
type: 'u128';
|
|
1176
|
-
}, {
|
|
1177
|
-
name: 'lastNettingTimestamp';
|
|
1178
|
-
type: 'i64';
|
|
1179
|
-
}, {
|
|
1180
|
-
name: 'isNettingDone';
|
|
1181
|
-
type: 'bool';
|
|
1182
|
-
}, {
|
|
1183
|
-
name: 'distributionBaseAmount';
|
|
1184
|
-
type: 'u64';
|
|
1185
|
-
}, {
|
|
1186
|
-
name: 'isDistributionStarted';
|
|
1187
|
-
type: 'bool';
|
|
1188
|
-
}, {
|
|
1189
|
-
name: 'pausedDepositsWithdrawals';
|
|
1190
|
-
type: 'bool';
|
|
1191
|
-
}, {
|
|
1192
|
-
name: 'leftToDistribute';
|
|
1193
|
-
type: 'u64';
|
|
1194
|
-
}, {
|
|
1195
|
-
name: 'padding';
|
|
1196
|
-
type: {
|
|
1197
|
-
array: ['u8', 184];
|
|
1198
|
-
};
|
|
1199
|
-
}];
|
|
1200
|
-
};
|
|
1201
|
-
}, {
|
|
1202
|
-
name: 'oracleData';
|
|
1203
|
-
type: {
|
|
1204
|
-
kind: 'struct';
|
|
1205
|
-
fields: [{
|
|
1206
|
-
name: 'averageExternalEquity';
|
|
1207
|
-
type: 'u64';
|
|
1208
|
-
}, {
|
|
1209
|
-
name: 'lastUpdateTime';
|
|
1210
|
-
type: 'i64';
|
|
1211
|
-
}, {
|
|
1212
|
-
name: 'padding';
|
|
1213
|
-
type: {
|
|
1214
|
-
array: ['u8', 64];
|
|
1215
|
-
};
|
|
1216
|
-
}];
|
|
1217
|
-
};
|
|
1218
|
-
}, {
|
|
1219
|
-
name: 'strategy';
|
|
1220
|
-
type: {
|
|
1221
|
-
kind: 'struct';
|
|
1222
|
-
fields: [{
|
|
1223
|
-
name: 'receiverAddress';
|
|
1224
|
-
type: 'publicKey';
|
|
1225
|
-
}, {
|
|
1226
|
-
name: 'allocationBps';
|
|
1227
|
-
type: 'u32';
|
|
1228
|
-
}, {
|
|
1229
|
-
name: 'allowed';
|
|
1230
|
-
type: 'bool';
|
|
1231
|
-
}, {
|
|
1232
|
-
name: 'padding';
|
|
1233
|
-
type: {
|
|
1234
|
-
array: ['u8', 96];
|
|
1235
|
-
};
|
|
1236
|
-
}];
|
|
1237
|
-
};
|
|
1238
|
-
}, {
|
|
1239
|
-
name: 'userBundleAccount';
|
|
1240
|
-
type: {
|
|
1241
|
-
kind: 'struct';
|
|
1242
|
-
fields: [{
|
|
1243
|
-
name: 'owner';
|
|
1244
|
-
type: 'publicKey';
|
|
1245
|
-
}, {
|
|
1246
|
-
name: 'lastDepositTimestamp';
|
|
1247
|
-
type: 'i64';
|
|
1248
|
-
}, {
|
|
1249
|
-
name: 'shares';
|
|
1250
|
-
type: 'u128';
|
|
1251
|
-
}, {
|
|
1252
|
-
name: 'pendingDeposit';
|
|
1253
|
-
type: 'u64';
|
|
1254
|
-
}, {
|
|
1255
|
-
name: 'pendingShares';
|
|
1256
|
-
type: 'u128';
|
|
1257
|
-
}, {
|
|
1258
|
-
name: 'estimatedPendingWithdrawalValue';
|
|
1259
|
-
type: 'u64';
|
|
1260
|
-
}, {
|
|
1261
|
-
name: 'withdrawalAvailableTimestamp';
|
|
1262
|
-
type: 'i64';
|
|
1263
|
-
}, {
|
|
1264
|
-
name: 'lastWithdrawalProcessTimestamp';
|
|
1265
|
-
type: 'i64';
|
|
1266
|
-
}, {
|
|
1267
|
-
name: 'lastHighWaterMark';
|
|
1268
|
-
type: 'u128';
|
|
1269
|
-
}, {
|
|
1270
|
-
name: 'hwmPerShare';
|
|
1271
|
-
type: 'u128';
|
|
1272
|
-
}, {
|
|
1273
|
-
name: 'lastManagementFeeTimestamp';
|
|
1274
|
-
type: 'i64';
|
|
1275
|
-
}, {
|
|
1276
|
-
name: 'netDeposits';
|
|
1277
|
-
type: 'i128';
|
|
1278
|
-
}, {
|
|
1279
|
-
name: 'totalFeeCharged';
|
|
1280
|
-
type: 'u64';
|
|
1281
|
-
}, {
|
|
1282
|
-
name: 'padding';
|
|
1283
|
-
type: {
|
|
1284
|
-
array: ['u8', 264];
|
|
1285
|
-
};
|
|
1286
|
-
}];
|
|
1287
|
-
};
|
|
1288
|
-
}];
|
|
1289
|
-
events: [{
|
|
1290
|
-
name: 'Allocated';
|
|
1291
|
-
fields: [{
|
|
1292
|
-
name: 'from';
|
|
1293
|
-
type: 'publicKey';
|
|
1294
|
-
index: false;
|
|
1295
|
-
}, {
|
|
1296
|
-
name: 'to';
|
|
1297
|
-
type: 'publicKey';
|
|
1298
|
-
index: false;
|
|
1299
|
-
}, {
|
|
1300
|
-
name: 'amount';
|
|
1301
|
-
type: 'u64';
|
|
1302
|
-
index: false;
|
|
1303
|
-
}, {
|
|
1304
|
-
name: 'timestamp';
|
|
1305
|
-
type: 'i64';
|
|
1306
|
-
index: false;
|
|
1307
|
-
}, {
|
|
1308
|
-
name: 'bundleAccountKey';
|
|
1309
|
-
type: 'publicKey';
|
|
1310
|
-
index: false;
|
|
1311
|
-
}];
|
|
1312
|
-
}, {
|
|
1313
|
-
name: 'AllocationsUpdated';
|
|
1314
|
-
fields: [{
|
|
1315
|
-
name: 'receiverAddress';
|
|
1316
|
-
type: 'publicKey';
|
|
1317
|
-
index: false;
|
|
1318
|
-
}, {
|
|
1319
|
-
name: 'allocationBps';
|
|
1320
|
-
type: 'u32';
|
|
1321
|
-
index: false;
|
|
1322
|
-
}];
|
|
1323
|
-
}, {
|
|
1324
|
-
name: 'AssignedProfitShare';
|
|
1325
|
-
fields: [{
|
|
1326
|
-
name: 'amount';
|
|
1327
|
-
type: 'u128';
|
|
1328
|
-
index: false;
|
|
1329
|
-
}];
|
|
1330
|
-
}, {
|
|
1331
|
-
name: 'AuthorizedReceiverAdded';
|
|
1332
|
-
fields: [{
|
|
1333
|
-
name: 'allowed';
|
|
1334
|
-
type: 'bool';
|
|
1335
|
-
index: false;
|
|
1336
|
-
}];
|
|
1337
|
-
}, {
|
|
1338
|
-
name: 'AuthorizedReceiverRemoved';
|
|
1339
|
-
fields: [{
|
|
1340
|
-
name: 'allowed';
|
|
1341
|
-
type: 'bool';
|
|
1342
|
-
index: false;
|
|
1343
|
-
}];
|
|
1344
|
-
}, {
|
|
1345
|
-
name: 'BundleCreatorAccountChanged';
|
|
1346
|
-
fields: [{
|
|
1347
|
-
name: 'creator';
|
|
1348
|
-
type: 'publicKey';
|
|
1349
|
-
index: false;
|
|
1350
|
-
}, {
|
|
1351
|
-
name: 'allowed';
|
|
1352
|
-
type: 'bool';
|
|
1353
|
-
index: false;
|
|
1354
|
-
}];
|
|
1355
|
-
}, {
|
|
1356
|
-
name: 'BundleDepositorInitialized';
|
|
1357
|
-
fields: [{
|
|
1358
|
-
name: 'bundleDepositor';
|
|
1359
|
-
type: 'publicKey';
|
|
1360
|
-
index: false;
|
|
1361
|
-
}];
|
|
1362
|
-
}, {
|
|
1363
|
-
name: 'BundleMasterAccountInitialized';
|
|
1364
|
-
fields: [{
|
|
1365
|
-
name: 'admin';
|
|
1366
|
-
type: 'publicKey';
|
|
1367
|
-
index: false;
|
|
1368
|
-
}];
|
|
1369
|
-
}, {
|
|
1370
|
-
name: 'BundleMasterAdminChanged';
|
|
1371
|
-
fields: [{
|
|
1372
|
-
name: 'newAdmin';
|
|
1373
|
-
type: 'publicKey';
|
|
1374
|
-
index: false;
|
|
1375
|
-
}];
|
|
1376
|
-
}, {
|
|
1377
|
-
name: 'ChangedCoreParams';
|
|
1378
|
-
fields: [{
|
|
1379
|
-
name: 'treasury';
|
|
1380
|
-
type: 'publicKey';
|
|
1381
|
-
index: false;
|
|
1382
|
-
}, {
|
|
1383
|
-
name: 'depositFee';
|
|
1384
|
-
type: 'u32';
|
|
1385
|
-
index: false;
|
|
1386
|
-
}, {
|
|
1387
|
-
name: 'withdrawalFee';
|
|
1388
|
-
type: 'u32';
|
|
1389
|
-
index: false;
|
|
1390
|
-
}, {
|
|
1391
|
-
name: 'performanceFee';
|
|
1392
|
-
type: 'u32';
|
|
1393
|
-
index: false;
|
|
1394
|
-
}, {
|
|
1395
|
-
name: 'managementFeeBps';
|
|
1396
|
-
type: 'u32';
|
|
1397
|
-
index: false;
|
|
1398
|
-
}];
|
|
1399
|
-
}, {
|
|
1400
|
-
name: 'ChargedFeesToUser';
|
|
1401
|
-
fields: [{
|
|
1402
|
-
name: 'totalFeeShares';
|
|
1403
|
-
type: 'u128';
|
|
1404
|
-
index: false;
|
|
1405
|
-
}, {
|
|
1406
|
-
name: 'totalFeeValue';
|
|
1407
|
-
type: 'u64';
|
|
1408
|
-
index: false;
|
|
1409
|
-
}, {
|
|
1410
|
-
name: 'managementFeeShares';
|
|
1411
|
-
type: 'u128';
|
|
1412
|
-
index: false;
|
|
1413
|
-
}, {
|
|
1414
|
-
name: 'performanceFeeShares';
|
|
1415
|
-
type: 'u128';
|
|
1416
|
-
index: false;
|
|
1417
|
-
}, {
|
|
1418
|
-
name: 'sharePrice';
|
|
1419
|
-
type: 'u128';
|
|
1420
|
-
index: false;
|
|
1421
|
-
}, {
|
|
1422
|
-
name: 'bundleAccountKey';
|
|
1423
|
-
type: 'publicKey';
|
|
1424
|
-
index: false;
|
|
1425
|
-
}];
|
|
1426
|
-
}, {
|
|
1427
|
-
name: 'DelaysSet';
|
|
1428
|
-
fields: [{
|
|
1429
|
-
name: 'withdrawalDelay';
|
|
1430
|
-
type: 'u64';
|
|
1431
|
-
index: false;
|
|
1432
|
-
}, {
|
|
1433
|
-
name: 'withdrawalTMin';
|
|
1434
|
-
type: 'i64';
|
|
1435
|
-
index: false;
|
|
1436
|
-
}, {
|
|
1437
|
-
name: 'withdrawalTMax';
|
|
1438
|
-
type: 'i64';
|
|
1439
|
-
index: false;
|
|
1440
|
-
}, {
|
|
1441
|
-
name: 'withdrawalCurve';
|
|
1442
|
-
type: 'f32';
|
|
1443
|
-
index: false;
|
|
1444
|
-
}];
|
|
1445
|
-
}, {
|
|
1446
|
-
name: 'DepositRequested';
|
|
1447
|
-
fields: [{
|
|
1448
|
-
name: 'user';
|
|
1449
|
-
type: 'publicKey';
|
|
1450
|
-
index: false;
|
|
1451
|
-
}, {
|
|
1452
|
-
name: 'amount';
|
|
1453
|
-
type: 'u64';
|
|
1454
|
-
index: false;
|
|
1455
|
-
}, {
|
|
1456
|
-
name: 'timestamp';
|
|
1457
|
-
type: 'i64';
|
|
1458
|
-
index: false;
|
|
1459
|
-
}, {
|
|
1460
|
-
name: 'bundleAccountKey';
|
|
1461
|
-
type: 'publicKey';
|
|
1462
|
-
index: false;
|
|
1463
|
-
}, {
|
|
1464
|
-
name: 'toppingUp';
|
|
1465
|
-
type: 'bool';
|
|
1466
|
-
index: false;
|
|
1467
|
-
}];
|
|
1468
|
-
}, {
|
|
1469
|
-
name: 'DepositedToDriftVault';
|
|
1470
|
-
fields: [{
|
|
1471
|
-
name: 'amount';
|
|
1472
|
-
type: 'u64';
|
|
1473
|
-
index: false;
|
|
1474
|
-
}, {
|
|
1475
|
-
name: 'from';
|
|
1476
|
-
type: 'publicKey';
|
|
1477
|
-
index: false;
|
|
1478
|
-
}, {
|
|
1479
|
-
name: 'to';
|
|
1480
|
-
type: 'publicKey';
|
|
1481
|
-
index: false;
|
|
1482
|
-
}, {
|
|
1483
|
-
name: 'timestamp';
|
|
1484
|
-
type: 'i64';
|
|
1485
|
-
index: false;
|
|
1486
|
-
}];
|
|
1487
|
-
}, {
|
|
1488
|
-
name: 'DistributedToReceivers';
|
|
1489
|
-
fields: [{
|
|
1490
|
-
name: 'amount';
|
|
1491
|
-
type: 'u64';
|
|
1492
|
-
index: false;
|
|
1493
|
-
}, {
|
|
1494
|
-
name: 'from';
|
|
1495
|
-
type: 'publicKey';
|
|
1496
|
-
index: false;
|
|
1497
|
-
}, {
|
|
1498
|
-
name: 'receiver';
|
|
1499
|
-
type: 'publicKey';
|
|
1500
|
-
index: false;
|
|
1501
|
-
}, {
|
|
1502
|
-
name: 'timestamp';
|
|
1503
|
-
type: 'i64';
|
|
1504
|
-
index: false;
|
|
1505
|
-
}];
|
|
1506
|
-
}, {
|
|
1507
|
-
name: 'DistributionEnded';
|
|
1508
|
-
fields: [{
|
|
1509
|
-
name: 'amount';
|
|
1510
|
-
type: 'u64';
|
|
1511
|
-
index: false;
|
|
1512
|
-
}, {
|
|
1513
|
-
name: 'timestamp';
|
|
1514
|
-
type: 'i64';
|
|
1515
|
-
index: false;
|
|
1516
|
-
}];
|
|
1517
|
-
}, {
|
|
1518
|
-
name: 'DistributionStarted';
|
|
1519
|
-
fields: [{
|
|
1520
|
-
name: 'amount';
|
|
1521
|
-
type: 'u64';
|
|
1522
|
-
index: false;
|
|
1523
|
-
}, {
|
|
1524
|
-
name: 'timestamp';
|
|
1525
|
-
type: 'i64';
|
|
1526
|
-
index: false;
|
|
1527
|
-
}];
|
|
1528
|
-
}, {
|
|
1529
|
-
name: 'ForceRedeemed';
|
|
1530
|
-
fields: [{
|
|
1531
|
-
name: 'from';
|
|
1532
|
-
type: 'publicKey';
|
|
1533
|
-
index: false;
|
|
1534
|
-
}, {
|
|
1535
|
-
name: 'to';
|
|
1536
|
-
type: 'publicKey';
|
|
1537
|
-
index: false;
|
|
1538
|
-
}, {
|
|
1539
|
-
name: 'netAmount';
|
|
1540
|
-
type: 'u64';
|
|
1541
|
-
index: false;
|
|
1542
|
-
}, {
|
|
1543
|
-
name: 'feeAmount';
|
|
1544
|
-
type: 'u64';
|
|
1545
|
-
index: false;
|
|
1546
|
-
}, {
|
|
1547
|
-
name: 'timestamp';
|
|
1548
|
-
type: 'i64';
|
|
1549
|
-
index: false;
|
|
1550
|
-
}, {
|
|
1551
|
-
name: 'bundleAccountKey';
|
|
1552
|
-
type: 'publicKey';
|
|
1553
|
-
index: false;
|
|
1554
|
-
}, {
|
|
1555
|
-
name: 'hadRequested';
|
|
1556
|
-
type: 'bool';
|
|
1557
|
-
index: false;
|
|
1558
|
-
}];
|
|
1559
|
-
}, {
|
|
1560
|
-
name: 'InitializedNewVaultDepositor';
|
|
1561
|
-
fields: [{
|
|
1562
|
-
name: 'vault';
|
|
1563
|
-
type: 'publicKey';
|
|
1564
|
-
index: false;
|
|
1565
|
-
}, {
|
|
1566
|
-
name: 'vaultDepositor';
|
|
1567
|
-
type: 'publicKey';
|
|
1568
|
-
index: false;
|
|
1569
|
-
}, {
|
|
1570
|
-
name: 'keeper';
|
|
1571
|
-
type: 'publicKey';
|
|
1572
|
-
index: false;
|
|
1573
|
-
}];
|
|
1574
|
-
}, {
|
|
1575
|
-
name: 'InitializedReceivers';
|
|
1576
|
-
fields: [{
|
|
1577
|
-
name: 'manager';
|
|
1578
|
-
type: 'publicKey';
|
|
1579
|
-
index: false;
|
|
1580
|
-
}];
|
|
1581
|
-
}, {
|
|
1582
|
-
name: 'InitializedVault';
|
|
1583
|
-
fields: [{
|
|
1584
|
-
name: 'manager';
|
|
1585
|
-
type: 'publicKey';
|
|
1586
|
-
index: false;
|
|
1587
|
-
}];
|
|
1588
|
-
}, {
|
|
1589
|
-
name: 'ManagerWithdrawal';
|
|
1590
|
-
fields: [{
|
|
1591
|
-
name: 'managerShares';
|
|
1592
|
-
type: 'u128';
|
|
1593
|
-
index: false;
|
|
1594
|
-
}, {
|
|
1595
|
-
name: 'redemptionAmount';
|
|
1596
|
-
type: 'u64';
|
|
1597
|
-
index: false;
|
|
1598
|
-
}];
|
|
1599
|
-
}, {
|
|
1600
|
-
name: 'MaxDepositAmountSet';
|
|
1601
|
-
fields: [{
|
|
1602
|
-
name: 'maxDepositAmount';
|
|
1603
|
-
type: 'u64';
|
|
1604
|
-
index: false;
|
|
1605
|
-
}];
|
|
1606
|
-
}, {
|
|
1607
|
-
name: 'NettingCompleted';
|
|
1608
|
-
fields: [{
|
|
1609
|
-
name: 'timestamp';
|
|
1610
|
-
type: 'i64';
|
|
1611
|
-
index: false;
|
|
1612
|
-
}];
|
|
1613
|
-
}, {
|
|
1614
|
-
name: 'NewKeeperSet';
|
|
1615
|
-
fields: [{
|
|
1616
|
-
name: 'keeper';
|
|
1617
|
-
type: 'publicKey';
|
|
1618
|
-
index: false;
|
|
1619
|
-
}];
|
|
1620
|
-
}, {
|
|
1621
|
-
name: 'NewManagerSet';
|
|
1622
|
-
fields: [{
|
|
1623
|
-
name: 'manager';
|
|
1624
|
-
type: 'publicKey';
|
|
1625
|
-
index: false;
|
|
1626
|
-
}];
|
|
1627
|
-
}, {
|
|
1628
|
-
name: 'OracleBufferSet';
|
|
1629
|
-
fields: [{
|
|
1630
|
-
name: 'oracleBuffer';
|
|
1631
|
-
type: 'u64';
|
|
1632
|
-
index: false;
|
|
1633
|
-
}];
|
|
1634
|
-
}, {
|
|
1635
|
-
name: 'OracleUpdated';
|
|
1636
|
-
fields: [{
|
|
1637
|
-
name: 'averageExternalEquity';
|
|
1638
|
-
type: 'u64';
|
|
1639
|
-
index: false;
|
|
1640
|
-
}];
|
|
1641
|
-
}, {
|
|
1642
|
-
name: 'PausedDepositsWithdrawals';
|
|
1643
|
-
fields: [{
|
|
1644
|
-
name: 'paused';
|
|
1645
|
-
type: 'bool';
|
|
1646
|
-
index: false;
|
|
1647
|
-
}, {
|
|
1648
|
-
name: 'bundleAccountKey';
|
|
1649
|
-
type: 'publicKey';
|
|
1650
|
-
index: false;
|
|
1651
|
-
}];
|
|
1652
|
-
}, {
|
|
1653
|
-
name: 'Redeemed';
|
|
1654
|
-
fields: [{
|
|
1655
|
-
name: 'from';
|
|
1656
|
-
type: 'publicKey';
|
|
1657
|
-
index: false;
|
|
1658
|
-
}, {
|
|
1659
|
-
name: 'to';
|
|
1660
|
-
type: 'publicKey';
|
|
1661
|
-
index: false;
|
|
1662
|
-
}, {
|
|
1663
|
-
name: 'netAmount';
|
|
1664
|
-
type: 'u64';
|
|
1665
|
-
index: false;
|
|
1666
|
-
}, {
|
|
1667
|
-
name: 'feeAmount';
|
|
1668
|
-
type: 'u64';
|
|
1669
|
-
index: false;
|
|
1670
|
-
}, {
|
|
1671
|
-
name: 'timestamp';
|
|
1672
|
-
type: 'i64';
|
|
1673
|
-
index: false;
|
|
1674
|
-
}, {
|
|
1675
|
-
name: 'bundleAccountKey';
|
|
1676
|
-
type: 'publicKey';
|
|
1677
|
-
index: false;
|
|
1678
|
-
}];
|
|
1679
|
-
}, {
|
|
1680
|
-
name: 'Refilled';
|
|
1681
|
-
fields: [{
|
|
1682
|
-
name: 'from';
|
|
1683
|
-
type: 'publicKey';
|
|
1684
|
-
index: false;
|
|
1685
|
-
}, {
|
|
1686
|
-
name: 'refillValue';
|
|
1687
|
-
type: 'u64';
|
|
1688
|
-
index: false;
|
|
1689
|
-
}, {
|
|
1690
|
-
name: 'timestamp';
|
|
1691
|
-
type: 'i64';
|
|
1692
|
-
index: false;
|
|
1693
|
-
}];
|
|
1694
|
-
}, {
|
|
1695
|
-
name: 'RefundedDeposit';
|
|
1696
|
-
fields: [{
|
|
1697
|
-
name: 'user';
|
|
1698
|
-
type: 'publicKey';
|
|
1699
|
-
index: false;
|
|
1700
|
-
}, {
|
|
1701
|
-
name: 'amount';
|
|
1702
|
-
type: 'u64';
|
|
1703
|
-
index: false;
|
|
1704
|
-
}, {
|
|
1705
|
-
name: 'timestamp';
|
|
1706
|
-
type: 'i64';
|
|
1707
|
-
index: false;
|
|
1708
|
-
}, {
|
|
1709
|
-
name: 'bundleAccountKey';
|
|
1710
|
-
type: 'publicKey';
|
|
1711
|
-
index: false;
|
|
1712
|
-
}];
|
|
1713
|
-
}, {
|
|
1714
|
-
name: 'RequestedWithdrawalToDriftVault';
|
|
1715
|
-
fields: [{
|
|
1716
|
-
name: 'amount';
|
|
1717
|
-
type: 'u64';
|
|
1718
|
-
index: false;
|
|
1719
|
-
}, {
|
|
1720
|
-
name: 'from';
|
|
1721
|
-
type: 'publicKey';
|
|
1722
|
-
index: false;
|
|
1723
|
-
}, {
|
|
1724
|
-
name: 'to';
|
|
1725
|
-
type: 'publicKey';
|
|
1726
|
-
index: false;
|
|
1727
|
-
}, {
|
|
1728
|
-
name: 'timestamp';
|
|
1729
|
-
type: 'i64';
|
|
1730
|
-
index: false;
|
|
1731
|
-
}];
|
|
1732
|
-
}, {
|
|
1733
|
-
name: 'StrategyAdded';
|
|
1734
|
-
fields: [{
|
|
1735
|
-
name: 'receiverAddress';
|
|
1736
|
-
type: 'publicKey';
|
|
1737
|
-
index: false;
|
|
1738
|
-
}, {
|
|
1739
|
-
name: 'allocationBps';
|
|
1740
|
-
type: 'u32';
|
|
1741
|
-
index: false;
|
|
1742
|
-
}];
|
|
1743
|
-
}, {
|
|
1744
|
-
name: 'StrategyEnabled';
|
|
1745
|
-
fields: [{
|
|
1746
|
-
name: 'receiverAddress';
|
|
1747
|
-
type: 'publicKey';
|
|
1748
|
-
index: false;
|
|
1749
|
-
}];
|
|
1750
|
-
}, {
|
|
1751
|
-
name: 'StrategyRemoved';
|
|
1752
|
-
fields: [{
|
|
1753
|
-
name: 'receiverAddress';
|
|
1754
|
-
type: 'publicKey';
|
|
1755
|
-
index: false;
|
|
1756
|
-
}];
|
|
1757
|
-
}, {
|
|
1758
|
-
name: 'VaultNeutralFeeIncrementerSet';
|
|
1759
|
-
fields: [{
|
|
1760
|
-
name: 'neutralFeeIncrementer';
|
|
1761
|
-
type: 'publicKey';
|
|
1762
|
-
index: false;
|
|
1763
|
-
}];
|
|
1764
|
-
}, {
|
|
1765
|
-
name: 'WithdrawalRequested';
|
|
1766
|
-
fields: [{
|
|
1767
|
-
name: 'user';
|
|
1768
|
-
type: 'publicKey';
|
|
1769
|
-
index: false;
|
|
1770
|
-
}, {
|
|
1771
|
-
name: 'amount';
|
|
1772
|
-
type: 'u128';
|
|
1773
|
-
index: false;
|
|
1774
|
-
}, {
|
|
1775
|
-
name: 'timestamp';
|
|
1776
|
-
type: 'i64';
|
|
1777
|
-
index: false;
|
|
1778
|
-
}, {
|
|
1779
|
-
name: 'cooldownPeriod';
|
|
1780
|
-
type: 'i64';
|
|
1781
|
-
index: false;
|
|
1782
|
-
}, {
|
|
1783
|
-
name: 'estimatedPendingWithdrawalValue';
|
|
1784
|
-
type: 'u64';
|
|
1785
|
-
index: false;
|
|
1786
|
-
}, {
|
|
1787
|
-
name: 'bundleAccountKey';
|
|
1788
|
-
type: 'publicKey';
|
|
1789
|
-
index: false;
|
|
1790
|
-
}];
|
|
1791
|
-
}, {
|
|
1792
|
-
name: 'WithdrawnFromDriftVault';
|
|
1793
|
-
fields: [{
|
|
1794
|
-
name: 'amount';
|
|
1795
|
-
type: 'u64';
|
|
1796
|
-
index: false;
|
|
1797
|
-
}, {
|
|
1798
|
-
name: 'from';
|
|
1799
|
-
type: 'publicKey';
|
|
1800
|
-
index: false;
|
|
1801
|
-
}, {
|
|
1802
|
-
name: 'to';
|
|
1803
|
-
type: 'publicKey';
|
|
1804
|
-
index: false;
|
|
1805
|
-
}, {
|
|
1806
|
-
name: 'timestamp';
|
|
1807
|
-
type: 'i64';
|
|
1808
|
-
index: false;
|
|
1809
|
-
}];
|
|
1810
|
-
}];
|
|
1811
|
-
errors: [{
|
|
1812
|
-
code: 6000;
|
|
1813
|
-
name: 'InsufficientFunds';
|
|
1814
|
-
msg: 'Insufficient funds to process withdrawal';
|
|
1815
|
-
}, {
|
|
1816
|
-
code: 6001;
|
|
1817
|
-
name: 'AllocationAmountZero';
|
|
1818
|
-
msg: 'Allocation amount must be > 0';
|
|
1819
|
-
}, {
|
|
1820
|
-
code: 6002;
|
|
1821
|
-
name: 'RedemptionAmountExceeded';
|
|
1822
|
-
msg: 'Redemption exceeds bundle balance';
|
|
1823
|
-
}, {
|
|
1824
|
-
code: 6003;
|
|
1825
|
-
name: 'RefillAmountInvalid';
|
|
1826
|
-
msg: 'Refill amount must be > 0';
|
|
1827
|
-
}, {
|
|
1828
|
-
code: 6004;
|
|
1829
|
-
name: 'UnauthorizedKeeperAction';
|
|
1830
|
-
msg: 'Not bundle keeper';
|
|
1831
|
-
}, {
|
|
1832
|
-
code: 6005;
|
|
1833
|
-
name: 'UnauthorizedManagerAction';
|
|
1834
|
-
msg: 'Not bundle manager';
|
|
1835
|
-
}, {
|
|
1836
|
-
code: 6006;
|
|
1837
|
-
name: 'UnauthorizedAdminAction';
|
|
1838
|
-
msg: 'Not bundle admin';
|
|
1839
|
-
}, {
|
|
1840
|
-
code: 6007;
|
|
1841
|
-
name: 'UnauthorizedBundleCreator';
|
|
1842
|
-
msg: 'Not whitelisted bundle creator';
|
|
1843
|
-
}, {
|
|
1844
|
-
code: 6008;
|
|
1845
|
-
name: 'CallerNotNeutralFeeIncrementer';
|
|
1846
|
-
msg: 'Not neutral fee incrementer';
|
|
1847
|
-
}, {
|
|
1848
|
-
code: 6009;
|
|
1849
|
-
name: 'AmountMustBeBelowMax';
|
|
1850
|
-
msg: 'Amount above max limit';
|
|
1851
|
-
}, {
|
|
1852
|
-
code: 6010;
|
|
1853
|
-
name: 'InvalidNeutralFeeIncrementer';
|
|
1854
|
-
msg: 'Invalid fee incrementer';
|
|
1855
|
-
}, {
|
|
1856
|
-
code: 6011;
|
|
1857
|
-
name: 'InvalidReceiver';
|
|
1858
|
-
msg: 'Invalid receiver address';
|
|
1859
|
-
}, {
|
|
1860
|
-
code: 6012;
|
|
1861
|
-
name: 'MathError';
|
|
1862
|
-
msg: 'Math error';
|
|
1863
|
-
}, {
|
|
1864
|
-
code: 6013;
|
|
1865
|
-
name: 'InvalidAllocations';
|
|
1866
|
-
msg: 'Invalid allocations';
|
|
1867
|
-
}, {
|
|
1868
|
-
code: 6014;
|
|
1869
|
-
name: 'MustBeInWhitelist';
|
|
1870
|
-
msg: 'Not in whitelist';
|
|
1871
|
-
}, {
|
|
1872
|
-
code: 6015;
|
|
1873
|
-
name: 'DistributionAlreadyStarted';
|
|
1874
|
-
msg: 'Distribution already started';
|
|
1875
|
-
}, {
|
|
1876
|
-
code: 6016;
|
|
1877
|
-
name: 'DistributionNotStarted';
|
|
1878
|
-
msg: 'Distribution not started';
|
|
1879
|
-
}, {
|
|
1880
|
-
code: 6017;
|
|
1881
|
-
name: 'LeftToDistributeNotZero';
|
|
1882
|
-
msg: 'Distribution amount not zero';
|
|
1883
|
-
}, {
|
|
1884
|
-
code: 6018;
|
|
1885
|
-
name: 'ReceiverAlreadyAllocated';
|
|
1886
|
-
msg: 'Receiver already allocated';
|
|
1887
|
-
}, {
|
|
1888
|
-
code: 6019;
|
|
1889
|
-
name: 'RawTransferReceiver';
|
|
1890
|
-
msg: 'Not a raw transfer receiver';
|
|
1891
|
-
}, {
|
|
1892
|
-
code: 6020;
|
|
1893
|
-
name: 'InvalidTwapPeriod';
|
|
1894
|
-
msg: 'Invalid twap period';
|
|
1895
|
-
}, {
|
|
1896
|
-
code: 6021;
|
|
1897
|
-
name: 'RefillAmountExceeded';
|
|
1898
|
-
msg: 'Refill amount exceeded';
|
|
1899
|
-
}, {
|
|
1900
|
-
code: 6022;
|
|
1901
|
-
name: 'PodTokenTotalSupplyZero';
|
|
1902
|
-
msg: 'Pod token total supply is zero';
|
|
1903
|
-
}, {
|
|
1904
|
-
code: 6023;
|
|
1905
|
-
name: 'AllocationBpsGreaterThanGlobalAllocationBps';
|
|
1906
|
-
msg: 'Allocation bps greater than global allocation bps';
|
|
1907
|
-
}, {
|
|
1908
|
-
code: 6024;
|
|
1909
|
-
name: 'EquityOutOfBufferBound';
|
|
1910
|
-
msg: 'Equity out of buffer bound';
|
|
1911
|
-
}, {
|
|
1912
|
-
code: 6025;
|
|
1913
|
-
name: 'RedemptionAmountZero';
|
|
1914
|
-
msg: 'Redemption amount must be > 0';
|
|
1915
|
-
}, {
|
|
1916
|
-
code: 6026;
|
|
1917
|
-
name: 'PendingDepositExists';
|
|
1918
|
-
msg: 'Pending deposit exists';
|
|
1919
|
-
}, {
|
|
1920
|
-
code: 6027;
|
|
1921
|
-
name: 'InsufficientSharesBalance';
|
|
1922
|
-
msg: 'Insufficient Shares balance';
|
|
1923
|
-
}, {
|
|
1924
|
-
code: 6028;
|
|
1925
|
-
name: 'PendingWithdrawalExists';
|
|
1926
|
-
msg: 'Pending withdrawal exists';
|
|
1927
|
-
}, {
|
|
1928
|
-
code: 6029;
|
|
1929
|
-
name: 'PendingDepositOrWithdrawalExists';
|
|
1930
|
-
msg: 'Pending deposit or withdrawal exists';
|
|
1931
|
-
}, {
|
|
1932
|
-
code: 6030;
|
|
1933
|
-
name: 'NoPendingWithdrawal';
|
|
1934
|
-
msg: 'No pending withdrawal';
|
|
1935
|
-
}, {
|
|
1936
|
-
code: 6031;
|
|
1937
|
-
name: 'WithdrawalAlreadyProcessed';
|
|
1938
|
-
msg: 'Withdrawal already processed';
|
|
1939
|
-
}, {
|
|
1940
|
-
code: 6032;
|
|
1941
|
-
name: 'PendingDepositAmountZero';
|
|
1942
|
-
msg: 'Pending deposit amount is zero';
|
|
1943
|
-
}, {
|
|
1944
|
-
code: 6033;
|
|
1945
|
-
name: 'InsufficientBundleBalance';
|
|
1946
|
-
msg: 'Insufficient bundle balance';
|
|
1947
|
-
}, {
|
|
1948
|
-
code: 6034;
|
|
1949
|
-
name: 'NoPendingTransactions';
|
|
1950
|
-
msg: 'No pending transactions';
|
|
1951
|
-
}, {
|
|
1952
|
-
code: 6035;
|
|
1953
|
-
name: 'DepositsExtraInPendingsNotZero';
|
|
1954
|
-
msg: 'Deposits extra in pendings not zero';
|
|
1955
|
-
}, {
|
|
1956
|
-
code: 6036;
|
|
1957
|
-
name: 'PendingTransactionsExist';
|
|
1958
|
-
msg: 'Pending transactions exist';
|
|
1959
|
-
}, {
|
|
1960
|
-
code: 6037;
|
|
1961
|
-
name: 'ManagerSharesZero';
|
|
1962
|
-
msg: 'Manager shares is zero';
|
|
1963
|
-
}, {
|
|
1964
|
-
code: 6038;
|
|
1965
|
-
name: 'PausedDepositsWithdrawals';
|
|
1966
|
-
msg: 'Paused deposits withdrawals';
|
|
1967
|
-
}, {
|
|
1968
|
-
code: 6039;
|
|
1969
|
-
name: 'UnpausedDepositsWithdrawals';
|
|
1970
|
-
msg: 'Unpaused deposits withdrawals';
|
|
1971
|
-
}, {
|
|
1972
|
-
code: 6040;
|
|
1973
|
-
name: 'NettingNotDone';
|
|
1974
|
-
msg: 'Netting not done';
|
|
1975
|
-
}, {
|
|
1976
|
-
code: 6041;
|
|
1977
|
-
name: 'NettingAlreadyDone';
|
|
1978
|
-
msg: 'Netting already done';
|
|
1979
|
-
}, {
|
|
1980
|
-
code: 6042;
|
|
1981
|
-
name: 'OracleNotUpdated';
|
|
1982
|
-
msg: 'Oracle not updated';
|
|
1983
|
-
}, {
|
|
1984
|
-
code: 6043;
|
|
1985
|
-
name: 'MaxDepositAmountExceeded';
|
|
1986
|
-
msg: 'Max deposit amount exceeded';
|
|
1987
|
-
}, {
|
|
1988
|
-
code: 6044;
|
|
1989
|
-
name: 'TotalAssetExceedNewMaxDepositAmount';
|
|
1990
|
-
msg: 'Total asset exceed new max deposit amount';
|
|
1991
|
-
}, {
|
|
1992
|
-
code: 6045;
|
|
1993
|
-
name: 'AllocationBpsIsZero';
|
|
1994
|
-
msg: 'Allocation bps is zero';
|
|
1995
|
-
}, {
|
|
1996
|
-
code: 6046;
|
|
1997
|
-
name: 'DepositAmountZero';
|
|
1998
|
-
msg: 'Deposit amount is zero';
|
|
1999
|
-
}, {
|
|
2000
|
-
code: 6047;
|
|
2001
|
-
name: 'InvalidWithdrawalDelay';
|
|
2002
|
-
msg: 'Invalid withdrawal delay';
|
|
2003
|
-
}, {
|
|
2004
|
-
code: 6048;
|
|
2005
|
-
name: 'InvalidWithdrawalCooldownPeriod';
|
|
2006
|
-
msg: 'Invalid withdrawal cooldown period';
|
|
2007
|
-
}, {
|
|
2008
|
-
code: 6049;
|
|
2009
|
-
name: 'InvalidOracleBuffer';
|
|
2010
|
-
msg: 'Invalid oracle buffer';
|
|
2011
|
-
}, {
|
|
2012
|
-
code: 6050;
|
|
2013
|
-
name: 'ExcessivePerformanceFee';
|
|
2014
|
-
msg: 'Excessive performance fee';
|
|
2015
|
-
}, {
|
|
2016
|
-
code: 6051;
|
|
2017
|
-
name: 'ExcessiveManagementFee';
|
|
2018
|
-
msg: 'Excessive management fee';
|
|
2019
|
-
}, {
|
|
2020
|
-
code: 6052;
|
|
2021
|
-
name: 'ExcessiveDepositFee';
|
|
2022
|
-
msg: 'Excessive deposit fee';
|
|
2023
|
-
}, {
|
|
2024
|
-
code: 6053;
|
|
2025
|
-
name: 'ExcessiveWithdrawFee';
|
|
2026
|
-
msg: 'Excessive withdraw fee';
|
|
2027
|
-
}, {
|
|
2028
|
-
code: 6054;
|
|
2029
|
-
name: 'WithdrawalDelayNotMet';
|
|
2030
|
-
msg: 'Withdrawal delay not met';
|
|
2031
|
-
}, {
|
|
2032
|
-
code: 6055;
|
|
2033
|
-
name: 'InvalidAssetPrecision';
|
|
2034
|
-
msg: 'Invalid asset precision';
|
|
2035
|
-
}, {
|
|
2036
|
-
code: 6056;
|
|
2037
|
-
name: 'InvalidAssetAddress';
|
|
2038
|
-
msg: 'Invalid asset address';
|
|
2039
|
-
}, {
|
|
2040
|
-
code: 6057;
|
|
2041
|
-
name: 'InvalidPermissionnedDepositor';
|
|
2042
|
-
msg: 'Invalid permissionned depositor';
|
|
2043
|
-
}, {
|
|
2044
|
-
code: 6058;
|
|
2045
|
-
name: 'PayerNotAuthority';
|
|
2046
|
-
msg: 'Payer is not the authority';
|
|
2047
|
-
}, {
|
|
2048
|
-
code: 6059;
|
|
2049
|
-
name: 'StrategyAlreadyEnabled';
|
|
2050
|
-
msg: 'Strategy is already enabled';
|
|
2051
|
-
}, {
|
|
2052
|
-
code: 6060;
|
|
2053
|
-
name: 'StrategyDisabled';
|
|
2054
|
-
msg: 'Strategy is disabled';
|
|
2055
|
-
}, {
|
|
2056
|
-
code: 6061;
|
|
2057
|
-
name: 'InvalidWithdrawalAmount';
|
|
2058
|
-
msg: 'Invalid withdrawal amount';
|
|
2059
|
-
}, {
|
|
2060
|
-
code: 6062;
|
|
2061
|
-
name: 'BundleNotPermissionned';
|
|
2062
|
-
msg: 'Not permissionned';
|
|
2063
|
-
}, {
|
|
2064
|
-
code: 6063;
|
|
2065
|
-
name: 'BundleIsPermissionned';
|
|
2066
|
-
msg: 'Bundle is permissionned, use initialize_permissioned_bundle_depositor';
|
|
2067
|
-
}];
|
|
2068
|
-
}
|
|
2069
|
-
//#endregion
|
|
2070
|
-
//#region src/idl/bundle-v2.d.ts
|
|
9
|
+
//#region src/idl/ntbundle.d.ts
|
|
2071
10
|
/**
|
|
2072
11
|
* Program IDL in camelCase format in order to be used in JS/TS.
|
|
2073
12
|
*
|
|
2074
13
|
* Note that this is only a type helper and is not the actual IDL. The original
|
|
2075
14
|
* IDL can be found at `target/idl/ntbundle.json`.
|
|
2076
15
|
*/
|
|
2077
|
-
interface
|
|
2078
|
-
address: '
|
|
16
|
+
interface Ntbundle {
|
|
17
|
+
address: 'BUNDDh4P5XviMm1f3gCvnq2qKx6TGosAGnoUK12e7cXU';
|
|
2079
18
|
metadata: {
|
|
2080
19
|
name: 'ntbundle';
|
|
2081
20
|
version: '0.1.0';
|
|
@@ -2507,6 +446,15 @@ interface NtbundleV2 {
|
|
|
2507
446
|
}, {
|
|
2508
447
|
name: 'oracleUpdateTimeLimit';
|
|
2509
448
|
type: 'i64';
|
|
449
|
+
}, {
|
|
450
|
+
name: 'withdrawalRedemptionRequestCutoffTs';
|
|
451
|
+
type: 'i64';
|
|
452
|
+
}, {
|
|
453
|
+
name: 'withdrawalRedemptionUnlockCurrentCycleTs';
|
|
454
|
+
type: 'i64';
|
|
455
|
+
}, {
|
|
456
|
+
name: 'withdrawalRedemptionUnlockNextCycleTs';
|
|
457
|
+
type: 'i64';
|
|
2510
458
|
}, {
|
|
2511
459
|
name: 'permissionned';
|
|
2512
460
|
type: 'bool';
|
|
@@ -3573,8 +1521,23 @@ interface NtbundleV2 {
|
|
|
3573
1521
|
type: 'i64';
|
|
3574
1522
|
}];
|
|
3575
1523
|
}, {
|
|
3576
|
-
name: 'setOracleUpdateTimeLimit';
|
|
3577
|
-
discriminator: [114, 2, 35, 146, 19, 99, 67, 202];
|
|
1524
|
+
name: 'setOracleUpdateTimeLimit';
|
|
1525
|
+
discriminator: [114, 2, 35, 146, 19, 99, 67, 202];
|
|
1526
|
+
accounts: [{
|
|
1527
|
+
name: 'manager';
|
|
1528
|
+
writable: true;
|
|
1529
|
+
signer: true;
|
|
1530
|
+
}, {
|
|
1531
|
+
name: 'bundleAccount';
|
|
1532
|
+
writable: true;
|
|
1533
|
+
}];
|
|
1534
|
+
args: [{
|
|
1535
|
+
name: 'oracleUpdateTimeLimit';
|
|
1536
|
+
type: 'i64';
|
|
1537
|
+
}];
|
|
1538
|
+
}, {
|
|
1539
|
+
name: 'setWithdrawalRedemptionSchedule';
|
|
1540
|
+
discriminator: [134, 108, 237, 103, 185, 13, 177, 105];
|
|
3578
1541
|
accounts: [{
|
|
3579
1542
|
name: 'manager';
|
|
3580
1543
|
writable: true;
|
|
@@ -3584,7 +1547,13 @@ interface NtbundleV2 {
|
|
|
3584
1547
|
writable: true;
|
|
3585
1548
|
}];
|
|
3586
1549
|
args: [{
|
|
3587
|
-
name: '
|
|
1550
|
+
name: 'withdrawalRedemptionRequestCutoffTs';
|
|
1551
|
+
type: 'i64';
|
|
1552
|
+
}, {
|
|
1553
|
+
name: 'withdrawalRedemptionUnlockCurrentCycleTs';
|
|
1554
|
+
type: 'i64';
|
|
1555
|
+
}, {
|
|
1556
|
+
name: 'withdrawalRedemptionUnlockNextCycleTs';
|
|
3588
1557
|
type: 'i64';
|
|
3589
1558
|
}];
|
|
3590
1559
|
}, {
|
|
@@ -3841,6 +1810,9 @@ interface NtbundleV2 {
|
|
|
3841
1810
|
}, {
|
|
3842
1811
|
name: 'vaultNeutralFeeIncrementerSet';
|
|
3843
1812
|
discriminator: [7, 53, 169, 104, 118, 22, 134, 207];
|
|
1813
|
+
}, {
|
|
1814
|
+
name: 'withdrawalRedemptionScheduleSet';
|
|
1815
|
+
discriminator: [245, 195, 40, 76, 237, 247, 150, 107];
|
|
3844
1816
|
}, {
|
|
3845
1817
|
name: 'withdrawalRequested';
|
|
3846
1818
|
discriminator: [75, 207, 21, 12, 160, 102, 150, 55];
|
|
@@ -4128,6 +2100,10 @@ interface NtbundleV2 {
|
|
|
4128
2100
|
code: 6069;
|
|
4129
2101
|
name: 'invalidOracleUpdateTimeLimit';
|
|
4130
2102
|
msg: 'Invalid oracle update time limit';
|
|
2103
|
+
}, {
|
|
2104
|
+
code: 6070;
|
|
2105
|
+
name: 'invalidWithdrawalRedemptionSchedule';
|
|
2106
|
+
msg: 'Invalid withdrawal redemption schedule';
|
|
4131
2107
|
}];
|
|
4132
2108
|
types: [{
|
|
4133
2109
|
name: 'allocated';
|
|
@@ -4148,6 +2124,21 @@ interface NtbundleV2 {
|
|
|
4148
2124
|
}, {
|
|
4149
2125
|
name: 'bundleAccountKey';
|
|
4150
2126
|
type: 'pubkey';
|
|
2127
|
+
}, {
|
|
2128
|
+
name: 'netAmount';
|
|
2129
|
+
type: 'u64';
|
|
2130
|
+
}, {
|
|
2131
|
+
name: 'sharePrice';
|
|
2132
|
+
type: 'u128';
|
|
2133
|
+
}, {
|
|
2134
|
+
name: 'userSharesBefore';
|
|
2135
|
+
type: 'u128';
|
|
2136
|
+
}, {
|
|
2137
|
+
name: 'userSharesAfter';
|
|
2138
|
+
type: 'u128';
|
|
2139
|
+
}, {
|
|
2140
|
+
name: 'totalShares';
|
|
2141
|
+
type: 'u128';
|
|
4151
2142
|
}];
|
|
4152
2143
|
};
|
|
4153
2144
|
}, {
|
|
@@ -4218,9 +2209,6 @@ interface NtbundleV2 {
|
|
|
4218
2209
|
}, {
|
|
4219
2210
|
name: 'maxDepositAmount';
|
|
4220
2211
|
type: 'u64';
|
|
4221
|
-
}, {
|
|
4222
|
-
name: 'minDepositAmount';
|
|
4223
|
-
type: 'u64';
|
|
4224
2212
|
}, {
|
|
4225
2213
|
name: 'withdrawalDelay';
|
|
4226
2214
|
type: 'u64';
|
|
@@ -4245,12 +2233,6 @@ interface NtbundleV2 {
|
|
|
4245
2233
|
}, {
|
|
4246
2234
|
name: 'oracleBuffer';
|
|
4247
2235
|
type: 'u64';
|
|
4248
|
-
}, {
|
|
4249
|
-
name: 'oracleUpdateTimeLimit';
|
|
4250
|
-
type: 'i64';
|
|
4251
|
-
}, {
|
|
4252
|
-
name: 'oracleMaxAge';
|
|
4253
|
-
type: 'i64';
|
|
4254
2236
|
}, {
|
|
4255
2237
|
name: 'totalShares';
|
|
4256
2238
|
type: 'u128';
|
|
@@ -4278,10 +2260,28 @@ interface NtbundleV2 {
|
|
|
4278
2260
|
}, {
|
|
4279
2261
|
name: 'managerMfeeShares';
|
|
4280
2262
|
type: 'u128';
|
|
2263
|
+
}, {
|
|
2264
|
+
name: 'minDepositAmount';
|
|
2265
|
+
type: 'u64';
|
|
2266
|
+
}, {
|
|
2267
|
+
name: 'oracleUpdateTimeLimit';
|
|
2268
|
+
type: 'i64';
|
|
2269
|
+
}, {
|
|
2270
|
+
name: 'oracleMaxAge';
|
|
2271
|
+
type: 'i64';
|
|
2272
|
+
}, {
|
|
2273
|
+
name: 'withdrawalRedemptionRequestCutoffTs';
|
|
2274
|
+
type: 'i64';
|
|
2275
|
+
}, {
|
|
2276
|
+
name: 'withdrawalRedemptionUnlockCurrentCycleTs';
|
|
2277
|
+
type: 'i64';
|
|
2278
|
+
}, {
|
|
2279
|
+
name: 'withdrawalRedemptionUnlockNextCycleTs';
|
|
2280
|
+
type: 'i64';
|
|
4281
2281
|
}, {
|
|
4282
2282
|
name: 'padding';
|
|
4283
2283
|
type: {
|
|
4284
|
-
array: ['u8',
|
|
2284
|
+
array: ['u8', 207];
|
|
4285
2285
|
};
|
|
4286
2286
|
}];
|
|
4287
2287
|
};
|
|
@@ -4481,6 +2481,18 @@ interface NtbundleV2 {
|
|
|
4481
2481
|
}, {
|
|
4482
2482
|
name: 'toppingUp';
|
|
4483
2483
|
type: 'bool';
|
|
2484
|
+
}, {
|
|
2485
|
+
name: 'grossAmount';
|
|
2486
|
+
type: 'u64';
|
|
2487
|
+
}, {
|
|
2488
|
+
name: 'feeAmount';
|
|
2489
|
+
type: 'u64';
|
|
2490
|
+
}, {
|
|
2491
|
+
name: 'netAmount';
|
|
2492
|
+
type: 'u64';
|
|
2493
|
+
}, {
|
|
2494
|
+
name: 'assetMint';
|
|
2495
|
+
type: 'pubkey';
|
|
4484
2496
|
}];
|
|
4485
2497
|
};
|
|
4486
2498
|
}, {
|
|
@@ -4738,6 +2750,24 @@ interface NtbundleV2 {
|
|
|
4738
2750
|
}, {
|
|
4739
2751
|
name: 'bundleAccountKey';
|
|
4740
2752
|
type: 'pubkey';
|
|
2753
|
+
}, {
|
|
2754
|
+
name: 'grossAmount';
|
|
2755
|
+
type: 'u64';
|
|
2756
|
+
}, {
|
|
2757
|
+
name: 'sharePrice';
|
|
2758
|
+
type: 'u128';
|
|
2759
|
+
}, {
|
|
2760
|
+
name: 'userSharesBefore';
|
|
2761
|
+
type: 'u128';
|
|
2762
|
+
}, {
|
|
2763
|
+
name: 'userSharesAfter';
|
|
2764
|
+
type: 'u128';
|
|
2765
|
+
}, {
|
|
2766
|
+
name: 'totalSharesBefore';
|
|
2767
|
+
type: 'u128';
|
|
2768
|
+
}, {
|
|
2769
|
+
name: 'totalSharesAfter';
|
|
2770
|
+
type: 'u128';
|
|
4741
2771
|
}];
|
|
4742
2772
|
};
|
|
4743
2773
|
}, {
|
|
@@ -4915,6 +2945,21 @@ interface NtbundleV2 {
|
|
|
4915
2945
|
type: 'pubkey';
|
|
4916
2946
|
}];
|
|
4917
2947
|
};
|
|
2948
|
+
}, {
|
|
2949
|
+
name: 'withdrawalRedemptionScheduleSet';
|
|
2950
|
+
type: {
|
|
2951
|
+
kind: 'struct';
|
|
2952
|
+
fields: [{
|
|
2953
|
+
name: 'withdrawalRedemptionRequestCutoffTs';
|
|
2954
|
+
type: 'i64';
|
|
2955
|
+
}, {
|
|
2956
|
+
name: 'withdrawalRedemptionUnlockCurrentCycleTs';
|
|
2957
|
+
type: 'i64';
|
|
2958
|
+
}, {
|
|
2959
|
+
name: 'withdrawalRedemptionUnlockNextCycleTs';
|
|
2960
|
+
type: 'i64';
|
|
2961
|
+
}];
|
|
2962
|
+
};
|
|
4918
2963
|
}, {
|
|
4919
2964
|
name: 'withdrawalRequested';
|
|
4920
2965
|
type: {
|
|
@@ -4937,6 +2982,12 @@ interface NtbundleV2 {
|
|
|
4937
2982
|
}, {
|
|
4938
2983
|
name: 'bundleAccountKey';
|
|
4939
2984
|
type: 'pubkey';
|
|
2985
|
+
}, {
|
|
2986
|
+
name: 'cooldownEndTimestamp';
|
|
2987
|
+
type: 'i64';
|
|
2988
|
+
}, {
|
|
2989
|
+
name: 'estimatedNetAmount';
|
|
2990
|
+
type: 'u64';
|
|
4940
2991
|
}];
|
|
4941
2992
|
};
|
|
4942
2993
|
}, {
|
|
@@ -4960,114 +3011,22 @@ interface NtbundleV2 {
|
|
|
4960
3011
|
}];
|
|
4961
3012
|
}
|
|
4962
3013
|
//#endregion
|
|
4963
|
-
//#region src/types/bundle-types.d.ts
|
|
4964
|
-
type UserBundleAccount = IdlAccounts<NtbundleV1>['userBundleAccount'] | IdlAccounts$1<NtbundleV2>['userBundleAccount'];
|
|
4965
|
-
type UserBundleTempData = IdlAccounts<NtbundleV1>['bundleTempData'] | IdlAccounts$1<NtbundleV2>['bundleTempData'];
|
|
4966
|
-
type OracleData = IdlAccounts<NtbundleV1>['oracleData'] | IdlAccounts$1<NtbundleV2>['oracleData'];
|
|
4967
|
-
type BundleAccount = IdlAccounts<NtbundleV1>['bundle'] | IdlAccounts$1<NtbundleV2>['bundle'];
|
|
4968
|
-
//#endregion
|
|
4969
|
-
//#region src/types/vault-types.d.ts
|
|
4970
|
-
declare enum VaultType {
|
|
4971
|
-
Drift = "Drift",
|
|
4972
|
-
Bundle = "Bundle",
|
|
4973
|
-
Hyperliquid = "Hyperliquid",
|
|
4974
|
-
Kamino = "Kamino",
|
|
4975
|
-
}
|
|
4976
|
-
declare enum VaultCategory {
|
|
4977
|
-
marketNeutral = "Market Neutral",
|
|
4978
|
-
directional = "Directional",
|
|
4979
|
-
etf = "Index",
|
|
4980
|
-
bet = "Bet",
|
|
4981
|
-
savings = "Savings",
|
|
4982
|
-
privateCredit = "Private Credit",
|
|
4983
|
-
airdropFarming = "Airdrop Farming",
|
|
4984
|
-
yieldEnhancement = "Yield Enhancement",
|
|
4985
|
-
fundOfFund = "Fund Of Fund",
|
|
4986
|
-
}
|
|
4987
|
-
/** Raw vault entry from registry JSON */
|
|
4988
|
-
interface VaultRegistryEntry {
|
|
4989
|
-
vaultId: number;
|
|
4990
|
-
name: string;
|
|
4991
|
-
subname?: string;
|
|
4992
|
-
type: VaultType;
|
|
4993
|
-
category: VaultCategory;
|
|
4994
|
-
vaultAddress: string;
|
|
4995
|
-
depositToken: SupportedToken;
|
|
4996
|
-
pfee?: number;
|
|
4997
|
-
/** Optional Drift program ID (only for Drift vaults with non-default program) */
|
|
4998
|
-
driftProgramId?: string;
|
|
4999
|
-
/** Optional Bundle program ID (only for Bundle vaults with non-default V2 program) */
|
|
5000
|
-
bundleProgramId?: string;
|
|
5001
|
-
/** Points: eTVL multiplier (default 1) */
|
|
5002
|
-
pointsMultiplier?: number;
|
|
5003
|
-
/** Points: include in points calculation (default true) */
|
|
5004
|
-
pointsEnabled?: boolean;
|
|
5005
|
-
}
|
|
5006
|
-
/** Vault registry as a record keyed by vaultId */
|
|
5007
|
-
type VaultRegistry = Record<number, VaultRegistryEntry>;
|
|
5008
|
-
//#endregion
|
|
5009
|
-
//#region src/types/index.d.ts
|
|
5010
|
-
interface VaultBalanceData {
|
|
5011
|
-
balanceToken: number;
|
|
5012
|
-
balanceUsd: number;
|
|
5013
|
-
netEarnings: number;
|
|
5014
|
-
netEarningsUsd: number;
|
|
5015
|
-
totalDeposit: number;
|
|
5016
|
-
totalDepositUsd: number;
|
|
5017
|
-
pendingDeposit?: number;
|
|
5018
|
-
requestWithdrawToken?: number;
|
|
5019
|
-
highWaterMark?: number;
|
|
5020
|
-
/** Total profit share fee paid by the user */
|
|
5021
|
-
feesPaid?: number;
|
|
5022
|
-
pendingProfitShareFee?: number;
|
|
5023
|
-
/** Unpaid / accrued fees in deposit token; null if not applicable. Bundle: mgmt+perf estimate; Drift: pending profit share. */
|
|
5024
|
-
pendingFee: number | null;
|
|
5025
|
-
pendingFeeUsd: number | null;
|
|
5026
|
-
spotPrice: number;
|
|
5027
|
-
/** User's vault shares (raw number, not divided by decimals) */
|
|
5028
|
-
vaultShares?: number;
|
|
5029
|
-
/** User's net deposits in token amount (already divided by decimals) */
|
|
5030
|
-
netDeposit?: number;
|
|
5031
|
-
asset: SupportedToken;
|
|
5032
|
-
}
|
|
5033
|
-
type UserBalanceResult = Record<number, VaultBalanceData | null>;
|
|
5034
|
-
//#endregion
|
|
5035
|
-
//#region src/constants/points-vaults.d.ts
|
|
5036
|
-
/** Points-ready vault entry (no full Token - consumer resolves depositToken) */
|
|
5037
|
-
interface PointsVaultEntry {
|
|
5038
|
-
vaultId: number;
|
|
5039
|
-
name: string;
|
|
5040
|
-
address: string;
|
|
5041
|
-
depositToken: string;
|
|
5042
|
-
type: VaultType;
|
|
5043
|
-
multiplier: number;
|
|
5044
|
-
enabled: boolean;
|
|
5045
|
-
bundleProgramId?: string;
|
|
5046
|
-
}
|
|
5047
|
-
/**
|
|
5048
|
-
* Get vaults that earn points, filtered by pointsEnabled !== false.
|
|
5049
|
-
* Returns entries ready for points backend consumption.
|
|
5050
|
-
*/
|
|
5051
|
-
declare function getPointsVaults(registry: VaultRegistry): PointsVaultEntry[];
|
|
5052
|
-
//#endregion
|
|
5053
3014
|
//#region src/constants/programs.d.ts
|
|
5054
|
-
|
|
5055
|
-
|
|
5056
|
-
|
|
5057
|
-
|
|
3015
|
+
type BundleProgram = Program<Ntbundle>;
|
|
3016
|
+
type BundleProvider = AnchorProvider;
|
|
3017
|
+
type BundleCluster = 'mainnet' | 'devnet';
|
|
3018
|
+
declare const DEFAULT_BUNDLE_PROGRAM_ID_MAINNET = "BUNDDh4P5XviMm1f3gCvnq2qKx6TGosAGnoUK12e7cXU";
|
|
5058
3019
|
/**
|
|
5059
|
-
*
|
|
3020
|
+
* Secondary mainnet ntbundle program id (used when a vault sets `bundleProgramId` to this value).
|
|
3021
|
+
* Kept in sync with `sdk/src/registry/vaults.json` (e.g. vaultId 69 JLP Delta Neutral).
|
|
5060
3022
|
*/
|
|
5061
|
-
declare
|
|
5062
|
-
declare
|
|
3023
|
+
declare const BUNDLE_PROGRAM_ID_V2_MAINNET = "BUNDeH5A4c47bcEoAjBhN3sCjLgYnRsmt9ibMztqVkC9";
|
|
3024
|
+
declare const DEFAULT_BUNDLE_PROGRAM_ID_DEVNET = "7trSyt7d1ZRnvfGh9JaQZwZMWtfAXMvMwN3UxgMzVFbv";
|
|
3025
|
+
declare function getDefaultBundleProgramIdByCluster(cluster?: BundleCluster): string;
|
|
5063
3026
|
/**
|
|
5064
|
-
* Create
|
|
5065
|
-
* Use bundleProgramV1 for V1 vaults, bundleProgramV2 for V2 vaults (e.g. vault 69).
|
|
3027
|
+
* Create Bundle Program client for a specific program id.
|
|
5066
3028
|
*/
|
|
5067
|
-
declare function
|
|
5068
|
-
bundleProgramV1: Program<NtbundleV1>;
|
|
5069
|
-
bundleProgramV2: Program$1<NtbundleV2>;
|
|
5070
|
-
};
|
|
3029
|
+
declare function createBundleProgramById(provider: AnchorProvider, programId: string): Program<Ntbundle>;
|
|
5071
3030
|
//#endregion
|
|
5072
3031
|
//#region src/constants/vault-ids.d.ts
|
|
5073
3032
|
/**
|
|
@@ -5233,13 +3192,108 @@ declare enum VaultId {
|
|
|
5233
3192
|
jlp_delta_neutral_vault_1_0 = 0,
|
|
5234
3193
|
}
|
|
5235
3194
|
//#endregion
|
|
3195
|
+
//#region src/types/tokens.d.ts
|
|
3196
|
+
declare enum SupportedChain {
|
|
3197
|
+
Solana = "Solana",
|
|
3198
|
+
Hyperliquid = "Hyperliquid",
|
|
3199
|
+
}
|
|
3200
|
+
declare enum SupportedToken {
|
|
3201
|
+
USDC = "USDC",
|
|
3202
|
+
USDT = "USDT",
|
|
3203
|
+
SOL = "SOL",
|
|
3204
|
+
WBTC = "WBTC",
|
|
3205
|
+
WETH = "WETH",
|
|
3206
|
+
JLP = "JLP",
|
|
3207
|
+
}
|
|
3208
|
+
interface Token {
|
|
3209
|
+
name: string;
|
|
3210
|
+
symbol: string;
|
|
3211
|
+
onChain: { [chain in SupportedChain]: {
|
|
3212
|
+
address: string;
|
|
3213
|
+
decimals: number;
|
|
3214
|
+
} | null };
|
|
3215
|
+
}
|
|
3216
|
+
declare const tokens: { [name in SupportedToken]: Token };
|
|
3217
|
+
//#endregion
|
|
3218
|
+
//#region src/types/bundle-types.d.ts
|
|
3219
|
+
type UserBundleAccount = IdlAccounts<Ntbundle>['userBundleAccount'];
|
|
3220
|
+
type UserBundleTempData = IdlAccounts<Ntbundle>['bundleTempData'];
|
|
3221
|
+
type OracleData = IdlAccounts<Ntbundle>['oracleData'];
|
|
3222
|
+
type BundleAccount = IdlAccounts<Ntbundle>['bundle'];
|
|
3223
|
+
//#endregion
|
|
3224
|
+
//#region src/types/vault-types.d.ts
|
|
3225
|
+
declare enum VaultType {
|
|
3226
|
+
Drift = "Drift",
|
|
3227
|
+
Bundle = "Bundle",
|
|
3228
|
+
Hyperliquid = "Hyperliquid",
|
|
3229
|
+
Kamino = "Kamino",
|
|
3230
|
+
}
|
|
3231
|
+
declare enum VaultCategory {
|
|
3232
|
+
marketNeutral = "Market Neutral",
|
|
3233
|
+
directional = "Directional",
|
|
3234
|
+
etf = "Index",
|
|
3235
|
+
bet = "Bet",
|
|
3236
|
+
savings = "Savings",
|
|
3237
|
+
privateCredit = "Private Credit",
|
|
3238
|
+
airdropFarming = "Airdrop Farming",
|
|
3239
|
+
yieldEnhancement = "Yield Enhancement",
|
|
3240
|
+
fundOfFund = "Fund Of Fund",
|
|
3241
|
+
}
|
|
3242
|
+
/** Raw vault entry from registry JSON */
|
|
3243
|
+
interface VaultRegistryEntry {
|
|
3244
|
+
vaultId: number;
|
|
3245
|
+
name: string;
|
|
3246
|
+
subname?: string;
|
|
3247
|
+
type: VaultType;
|
|
3248
|
+
category: VaultCategory;
|
|
3249
|
+
vaultAddress: string;
|
|
3250
|
+
depositToken: SupportedToken;
|
|
3251
|
+
pfee?: number;
|
|
3252
|
+
/** Optional Drift program ID (only for Drift vaults with non-default program) */
|
|
3253
|
+
driftProgramId?: string;
|
|
3254
|
+
/** Optional Bundle program ID. If omitted, SDK uses cluster default bundle program ID. */
|
|
3255
|
+
bundleProgramId?: string;
|
|
3256
|
+
/** Points: eTVL multiplier (default 1) */
|
|
3257
|
+
pointsMultiplier?: number;
|
|
3258
|
+
/** Points: include in points calculation (default true) */
|
|
3259
|
+
pointsEnabled?: boolean;
|
|
3260
|
+
}
|
|
3261
|
+
/** Vault registry as a record keyed by vaultId */
|
|
3262
|
+
type VaultRegistry = Record<number, VaultRegistryEntry>;
|
|
3263
|
+
//#endregion
|
|
3264
|
+
//#region src/types/index.d.ts
|
|
3265
|
+
interface VaultBalanceData {
|
|
3266
|
+
balanceToken: number;
|
|
3267
|
+
balanceUsd: number;
|
|
3268
|
+
netEarnings: number;
|
|
3269
|
+
netEarningsUsd: number;
|
|
3270
|
+
totalDeposit: number;
|
|
3271
|
+
totalDepositUsd: number;
|
|
3272
|
+
pendingDeposit?: number;
|
|
3273
|
+
requestWithdrawToken?: number;
|
|
3274
|
+
highWaterMark?: number;
|
|
3275
|
+
/** Total profit share fee paid by the user */
|
|
3276
|
+
feesPaid?: number;
|
|
3277
|
+
pendingProfitShareFee?: number;
|
|
3278
|
+
/** Unpaid / accrued fees in deposit token; null if not applicable. Bundle: mgmt+perf estimate; Drift: pending profit share. */
|
|
3279
|
+
pendingFee: number | null;
|
|
3280
|
+
pendingFeeUsd: number | null;
|
|
3281
|
+
spotPrice: number;
|
|
3282
|
+
/** User's vault shares (raw number, not divided by decimals) */
|
|
3283
|
+
vaultShares?: number;
|
|
3284
|
+
/** User's net deposits in token amount (already divided by decimals) */
|
|
3285
|
+
netDeposit?: number;
|
|
3286
|
+
asset: SupportedToken;
|
|
3287
|
+
}
|
|
3288
|
+
type UserBalanceResult = Record<number, VaultBalanceData | null>;
|
|
3289
|
+
//#endregion
|
|
5236
3290
|
//#region src/constants/vaults.d.ts
|
|
5237
3291
|
/**
|
|
5238
3292
|
* Get Bundle Program ID for a vault config
|
|
5239
|
-
* Uses registry value if present, otherwise
|
|
3293
|
+
* Uses registry value if present, otherwise falls back to cluster default.
|
|
5240
3294
|
*/
|
|
5241
|
-
declare function getBundleProgramId(vault: VaultRegistryEntry):
|
|
5242
|
-
declare const vaults
|
|
3295
|
+
declare function getBundleProgramId(vault: VaultRegistryEntry, cluster?: BundleCluster): string | undefined;
|
|
3296
|
+
declare const vaults: VaultRegistry;
|
|
5243
3297
|
declare function isValidVaultAddress(address: string): boolean;
|
|
5244
3298
|
declare function getVaultByAddress(address: string): VaultRegistryEntry | undefined;
|
|
5245
3299
|
declare function getVaultById(vaultId: number): VaultRegistryEntry | undefined;
|
|
@@ -5247,33 +3301,41 @@ declare function getVaultById(vaultId: number): VaultRegistryEntry | undefined;
|
|
|
5247
3301
|
//#region src/NeutralTrade.d.ts
|
|
5248
3302
|
interface NeutralTradeConfig {
|
|
5249
3303
|
rpcUrl: string;
|
|
5250
|
-
/**
|
|
3304
|
+
/** Bundle program cluster selector. Defaults to 'mainnet'. */
|
|
3305
|
+
bundleCluster?: BundleCluster;
|
|
3306
|
+
/** If true, include built-in vault registry entries only when no custom registry source is provided. Defaults to true. */
|
|
3307
|
+
includeBuiltInVaults?: boolean;
|
|
3308
|
+
/** Optional local registry entries. Applied after built-in configs and before registryUrl (if provided). */
|
|
3309
|
+
registry?: VaultRegistryEntry[];
|
|
3310
|
+
/** Optional registry URL to fetch vault configurations from. If provided, fetched vaults override merged built-in/local entries. */
|
|
5251
3311
|
registryUrl?: string;
|
|
5252
3312
|
/** Optional fallback prices map. Prices are fetched from Pyth Network first; fallback is used only if Pyth returns incomplete data */
|
|
5253
3313
|
fallbackPrices?: Partial<Record<SupportedToken, number>>;
|
|
5254
3314
|
}
|
|
5255
3315
|
interface NeutralTradeCoreContext {
|
|
5256
3316
|
connection: Connection;
|
|
5257
|
-
|
|
5258
|
-
bundleProgramV2: Program$1<NtbundleV2>;
|
|
3317
|
+
bundlePrograms: Record<string, Program<Ntbundle>>;
|
|
5259
3318
|
vaults: VaultRegistry;
|
|
5260
3319
|
priceMap: Map<SupportedToken, number>;
|
|
5261
3320
|
}
|
|
5262
3321
|
declare class NeutralTrade {
|
|
5263
3322
|
readonly connection: Connection;
|
|
5264
|
-
readonly
|
|
5265
|
-
readonly
|
|
5266
|
-
/** Vault configurations
|
|
3323
|
+
readonly bundlePrograms: Record<string, Program<Ntbundle>>;
|
|
3324
|
+
readonly bundleCluster: BundleCluster;
|
|
3325
|
+
/** Vault configurations after merge order: built-in < local registry < registryUrl */
|
|
5267
3326
|
readonly vaults: VaultRegistry;
|
|
5268
3327
|
/** Price map for deposit tokens */
|
|
5269
3328
|
readonly priceMap: Map<SupportedToken, number>;
|
|
5270
|
-
protected constructor(connection: Connection,
|
|
3329
|
+
protected constructor(connection: Connection, bundlePrograms: Record<string, Program<Ntbundle>>, bundleCluster: BundleCluster, vaults: VaultRegistry, priceMap: Map<SupportedToken, number>);
|
|
5271
3330
|
/**
|
|
5272
3331
|
* Create a new NeutralTrade instance
|
|
5273
|
-
*
|
|
3332
|
+
* Merge order: built-in (when allowed) < local registry < registryUrl
|
|
3333
|
+
* @throws Error if registry or registryUrl validation fails (or fetch fails for registryUrl)
|
|
5274
3334
|
*/
|
|
5275
3335
|
protected static initCore(config: NeutralTradeConfig): Promise<NeutralTradeCoreContext>;
|
|
5276
3336
|
static create(config: NeutralTradeConfig): Promise<NeutralTrade>;
|
|
3337
|
+
private getBundleProgramForVault;
|
|
3338
|
+
private static parseVaultRegistryEntries;
|
|
5277
3339
|
/**
|
|
5278
3340
|
* Fetch vault configurations from a remote registry URL
|
|
5279
3341
|
* Expects JSON array format and transforms to Record<number, VaultConfig>
|
|
@@ -5319,28 +3381,10 @@ declare class NeutralTrade {
|
|
|
5319
3381
|
}): Promise<TransactionInstruction>;
|
|
5320
3382
|
}
|
|
5321
3383
|
//#endregion
|
|
5322
|
-
//#region src/utils/bundle.d.ts
|
|
5323
|
-
/**
|
|
5324
|
-
* Estimated unpaid bundle fees in deposit token (mgmt + performance), matching on-chain `charge_user_fees`.
|
|
5325
|
-
*/
|
|
5326
|
-
declare function estimatePendingBundleFeeToken({
|
|
5327
|
-
oracleData,
|
|
5328
|
-
bundleData,
|
|
5329
|
-
userBundle,
|
|
5330
|
-
assetDecimals,
|
|
5331
|
-
nowUnixSeconds
|
|
5332
|
-
}: {
|
|
5333
|
-
oracleData: OracleData;
|
|
5334
|
-
bundleData: BundleAccount;
|
|
5335
|
-
userBundle: UserBundleAccount;
|
|
5336
|
-
assetDecimals: number;
|
|
5337
|
-
nowUnixSeconds?: number;
|
|
5338
|
-
}): number;
|
|
5339
|
-
//#endregion
|
|
5340
3384
|
//#region src/utils/bundle-instructions.d.ts
|
|
5341
3385
|
interface BuildBundleDepositInstructionsParams {
|
|
5342
|
-
|
|
5343
|
-
|
|
3386
|
+
bundleProgram: Program<Ntbundle>;
|
|
3387
|
+
bundleCluster?: BundleCluster;
|
|
5344
3388
|
vault: VaultRegistryEntry;
|
|
5345
3389
|
user: PublicKey;
|
|
5346
3390
|
/** UI token amount (multiplied by 10**on-chain decimals inside). */
|
|
@@ -5348,32 +3392,18 @@ interface BuildBundleDepositInstructionsParams {
|
|
|
5348
3392
|
needsInit?: boolean;
|
|
5349
3393
|
}
|
|
5350
3394
|
interface BuildBundleRequestWithdrawInstructionParams {
|
|
5351
|
-
|
|
5352
|
-
|
|
3395
|
+
bundleProgram: Program<Ntbundle>;
|
|
3396
|
+
bundleCluster?: BundleCluster;
|
|
5353
3397
|
vault: VaultRegistryEntry;
|
|
5354
3398
|
user: PublicKey;
|
|
5355
3399
|
amount: number;
|
|
5356
3400
|
}
|
|
5357
|
-
/** Same share math as legacy app `useBundleRequestWithdrawMutation`. */
|
|
5358
|
-
declare function computeRequestWithdrawalSharesAmount({
|
|
5359
|
-
amount,
|
|
5360
|
-
userVaultBalance,
|
|
5361
|
-
pps,
|
|
5362
|
-
assetDecimals,
|
|
5363
|
-
userShares
|
|
5364
|
-
}: {
|
|
5365
|
-
amount: number;
|
|
5366
|
-
userVaultBalance: number;
|
|
5367
|
-
pps: number;
|
|
5368
|
-
assetDecimals: number;
|
|
5369
|
-
userShares: BN;
|
|
5370
|
-
}): BN;
|
|
5371
3401
|
/**
|
|
5372
3402
|
* Optional `initializeBundleDepositor` + `requestDeposit`. Fetches bundle account internally.
|
|
5373
3403
|
*/
|
|
5374
3404
|
declare function buildBundleDepositInstructions({
|
|
5375
|
-
|
|
5376
|
-
|
|
3405
|
+
bundleProgram,
|
|
3406
|
+
bundleCluster,
|
|
5377
3407
|
vault,
|
|
5378
3408
|
user,
|
|
5379
3409
|
amount,
|
|
@@ -5383,14 +3413,18 @@ declare function buildBundleDepositInstructions({
|
|
|
5383
3413
|
* `requestWithdrawal` only. Fetches bundle, oracle, and user bundle internally.
|
|
5384
3414
|
*/
|
|
5385
3415
|
declare function buildBundleRequestWithdrawInstruction({
|
|
5386
|
-
|
|
5387
|
-
|
|
3416
|
+
bundleProgram,
|
|
3417
|
+
bundleCluster,
|
|
5388
3418
|
vault,
|
|
5389
3419
|
user,
|
|
5390
3420
|
amount
|
|
5391
3421
|
}: BuildBundleRequestWithdrawInstructionParams): Promise<TransactionInstruction>;
|
|
5392
3422
|
//#endregion
|
|
5393
3423
|
//#region src/utils/pda.d.ts
|
|
3424
|
+
declare const SEED_ORACLE: NodeJS.NonSharedUint8Array;
|
|
3425
|
+
declare const SEED_USER: NodeJS.NonSharedUint8Array;
|
|
3426
|
+
declare const SEED_TEMP: NodeJS.NonSharedUint8Array;
|
|
3427
|
+
declare const SEED_PENDING_AUTH: NodeJS.NonSharedUint8Array;
|
|
5394
3428
|
/**
|
|
5395
3429
|
* Derive Oracle PDA for Bundle vault
|
|
5396
3430
|
*/
|
|
@@ -5413,4 +3447,4 @@ declare function derivePendingAuthPDA(bundlePDA: PublicKey, programId: PublicKey
|
|
|
5413
3447
|
*/
|
|
5414
3448
|
declare function getVaultDepositorAddressSync(programId: PublicKey, vault: PublicKey, authority: PublicKey): PublicKey;
|
|
5415
3449
|
//#endregion
|
|
5416
|
-
export { type
|
|
3450
|
+
export { BUNDLE_PROGRAM_ID_V2_MAINNET, type BundleAccount, type BundleCluster, type BundleProgram, type BundleProvider, DEFAULT_BUNDLE_PROGRAM_ID_DEVNET, DEFAULT_BUNDLE_PROGRAM_ID_MAINNET, NeutralTrade, type NeutralTradeConfig, type NeutralTradeCoreContext, type OracleData, SEED_ORACLE, SEED_PENDING_AUTH, SEED_TEMP, SEED_USER, SupportedChain, SupportedToken, type Token, type UserBalanceResult, type UserBundleAccount, type UserBundleTempData, type VaultBalanceData, VaultCategory, type VaultRegistryEntry as VaultConfig, type VaultRegistry as VaultConfigRecord, VaultId, VaultType, buildBundleDepositInstructions, buildBundleRequestWithdrawInstruction, createBundleProgramById, createDummyWallet, deriveOraclePDA, derivePendingAuthPDA, deriveTempDataPDA, deriveUserPDA, getBundleProgramId, getDefaultBundleProgramIdByCluster, getVaultByAddress, getVaultById, getVaultDepositorAddressSync, isValidVaultAddress, tokens, vaults };
|