@triadxyz/triad-protocol 0.1.2-alpha.9 → 0.1.2-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,418 +1,1577 @@
1
+ /**
2
+ * Program IDL in camelCase format in order to be used in JS/TS.
3
+ *
4
+ * Note that this is only a type helper and is not the actual IDL. The original
5
+ * IDL can be found at `target/idl/triad_protocol.json`.
6
+ */
1
7
  export type TriadProtocol = {
2
- version: '0.1.0';
3
- name: 'triad_protocol';
8
+ address: 'TRDwq3BN4mP3m9KsuNUWSN6QDff93VKGSwE95Jbr9Ss';
9
+ metadata: {
10
+ name: 'triadProtocol';
11
+ version: '0.1.0';
12
+ spec: '0.1.0';
13
+ };
4
14
  instructions: [
5
15
  {
6
- name: 'createUserPosition';
16
+ name: 'claimRewards';
17
+ discriminator: [4, 144, 132, 71, 116, 23, 151, 80];
18
+ accounts: [
19
+ {
20
+ name: 'signer';
21
+ writable: true;
22
+ signer: true;
23
+ },
24
+ {
25
+ name: 'stakeVault';
26
+ writable: true;
27
+ },
28
+ {
29
+ name: 'stake';
30
+ writable: true;
31
+ },
32
+ {
33
+ name: 'mint';
34
+ writable: true;
35
+ },
36
+ {
37
+ name: 'fromAta';
38
+ writable: true;
39
+ },
40
+ {
41
+ name: 'toAta';
42
+ writable: true;
43
+ },
44
+ {
45
+ name: 'tokenProgram';
46
+ address: 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb';
47
+ },
48
+ {
49
+ name: 'associatedTokenProgram';
50
+ address: 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
51
+ },
52
+ {
53
+ name: 'systemProgram';
54
+ address: '11111111111111111111111111111111';
55
+ }
56
+ ];
57
+ args: [];
58
+ },
59
+ {
60
+ name: 'claimStakeRewards';
61
+ discriminator: [107, 91, 233, 196, 211, 47, 218, 21];
62
+ accounts: [
63
+ {
64
+ name: 'signer';
65
+ writable: true;
66
+ signer: true;
67
+ },
68
+ {
69
+ name: 'stakeVault';
70
+ writable: true;
71
+ },
72
+ {
73
+ name: 'stake';
74
+ writable: true;
75
+ },
76
+ {
77
+ name: 'nftRewards';
78
+ writable: true;
79
+ },
80
+ {
81
+ name: 'mint';
82
+ writable: true;
83
+ },
84
+ {
85
+ name: 'fromAta';
86
+ writable: true;
87
+ },
88
+ {
89
+ name: 'toAta';
90
+ writable: true;
91
+ },
92
+ {
93
+ name: 'tokenProgram';
94
+ address: 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb';
95
+ },
96
+ {
97
+ name: 'associatedTokenProgram';
98
+ address: 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
99
+ },
100
+ {
101
+ name: 'systemProgram';
102
+ address: '11111111111111111111111111111111';
103
+ }
104
+ ];
105
+ args: [
106
+ {
107
+ name: 'args';
108
+ type: {
109
+ defined: {
110
+ name: 'claimStakeRewardsArgs';
111
+ };
112
+ };
113
+ }
114
+ ];
115
+ },
116
+ {
117
+ name: 'closePosition';
118
+ discriminator: [123, 134, 81, 0, 49, 68, 98, 98];
7
119
  accounts: [
8
120
  {
9
121
  name: 'signer';
10
- isMut: true;
11
- isSigner: true;
122
+ writable: true;
123
+ signer: true;
12
124
  },
13
125
  {
14
126
  name: 'ticker';
15
- isMut: true;
16
- isSigner: false;
127
+ writable: true;
128
+ },
129
+ {
130
+ name: 'vault';
131
+ writable: true;
17
132
  },
18
133
  {
19
134
  name: 'userPosition';
20
- isMut: true;
21
- isSigner: false;
135
+ writable: true;
136
+ },
137
+ {
138
+ name: 'vaultTokenAccount';
139
+ writable: true;
140
+ },
141
+ {
142
+ name: 'userTokenAccount';
143
+ writable: true;
22
144
  },
23
145
  {
24
146
  name: 'systemProgram';
25
- isMut: false;
26
- isSigner: false;
147
+ address: '11111111111111111111111111111111';
148
+ },
149
+ {
150
+ name: 'tokenProgram';
151
+ address: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
152
+ }
153
+ ];
154
+ args: [
155
+ {
156
+ name: 'args';
157
+ type: {
158
+ defined: {
159
+ name: 'closePositionArgs';
160
+ };
161
+ };
27
162
  }
28
163
  ];
29
- args: [];
30
164
  },
31
165
  {
32
166
  name: 'createTicker';
167
+ discriminator: [32, 213, 147, 234, 14, 160, 57, 17];
33
168
  accounts: [
34
169
  {
35
170
  name: 'signer';
36
- isMut: true;
37
- isSigner: true;
171
+ writable: true;
172
+ signer: true;
38
173
  },
39
174
  {
40
175
  name: 'ticker';
41
- isMut: true;
42
- isSigner: false;
176
+ writable: true;
177
+ pda: {
178
+ seeds: [
179
+ {
180
+ kind: 'const';
181
+ value: [116, 105, 99, 107, 101, 114];
182
+ },
183
+ {
184
+ kind: 'arg';
185
+ path: 'args.name';
186
+ }
187
+ ];
188
+ };
43
189
  },
44
190
  {
45
191
  name: 'vault';
46
- isMut: true;
47
- isSigner: false;
192
+ writable: true;
193
+ pda: {
194
+ seeds: [
195
+ {
196
+ kind: 'const';
197
+ value: [118, 97, 117, 108, 116];
198
+ },
199
+ {
200
+ kind: 'account';
201
+ path: 'ticker';
202
+ }
203
+ ];
204
+ };
48
205
  },
49
206
  {
50
207
  name: 'payerTokenMint';
51
- isMut: false;
52
- isSigner: false;
53
208
  },
54
209
  {
55
210
  name: 'tokenAccount';
56
- isMut: true;
57
- isSigner: false;
211
+ writable: true;
212
+ pda: {
213
+ seeds: [
214
+ {
215
+ kind: 'const';
216
+ value: [
217
+ 118,
218
+ 97,
219
+ 117,
220
+ 108,
221
+ 116,
222
+ 95,
223
+ 116,
224
+ 111,
225
+ 107,
226
+ 101,
227
+ 110,
228
+ 95,
229
+ 97,
230
+ 99,
231
+ 99,
232
+ 111,
233
+ 117,
234
+ 110,
235
+ 116
236
+ ];
237
+ },
238
+ {
239
+ kind: 'account';
240
+ path: 'vault';
241
+ }
242
+ ];
243
+ };
58
244
  },
59
245
  {
60
246
  name: 'systemProgram';
61
- isMut: false;
62
- isSigner: false;
247
+ address: '11111111111111111111111111111111';
63
248
  },
64
249
  {
65
250
  name: 'tokenProgram';
66
- isMut: false;
67
- isSigner: false;
251
+ address: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
68
252
  }
69
253
  ];
70
254
  args: [
71
255
  {
72
256
  name: 'args';
73
257
  type: {
74
- defined: 'CreateTickerArgs';
258
+ defined: {
259
+ name: 'createTickerArgs';
260
+ };
75
261
  };
76
262
  }
77
263
  ];
78
264
  },
79
265
  {
80
- name: 'updateTickerPrice';
266
+ name: 'createUser';
267
+ discriminator: [108, 227, 130, 130, 252, 109, 75, 218];
81
268
  accounts: [
82
269
  {
83
270
  name: 'signer';
84
- isMut: true;
85
- isSigner: true;
271
+ writable: true;
272
+ signer: true;
86
273
  },
87
274
  {
88
- name: 'ticker';
89
- isMut: true;
90
- isSigner: false;
275
+ name: 'referral';
276
+ writable: true;
277
+ },
278
+ {
279
+ name: 'user';
280
+ writable: true;
281
+ pda: {
282
+ seeds: [
283
+ {
284
+ kind: 'const';
285
+ value: [117, 115, 101, 114];
286
+ },
287
+ {
288
+ kind: 'arg';
289
+ path: 'args.name';
290
+ }
291
+ ];
292
+ };
91
293
  },
92
294
  {
93
295
  name: 'systemProgram';
94
- isMut: false;
95
- isSigner: false;
296
+ address: '11111111111111111111111111111111';
96
297
  }
97
298
  ];
98
299
  args: [
99
300
  {
100
301
  name: 'args';
101
302
  type: {
102
- defined: 'UpdateTickerPriceArgs';
303
+ defined: {
304
+ name: 'createUserArgs';
305
+ };
103
306
  };
104
307
  }
105
308
  ];
106
309
  },
107
310
  {
108
- name: 'openPosition';
311
+ name: 'createUserPosition';
312
+ discriminator: [6, 137, 127, 227, 135, 241, 14, 109];
109
313
  accounts: [
110
314
  {
111
315
  name: 'signer';
112
- isMut: true;
113
- isSigner: true;
316
+ writable: true;
317
+ signer: true;
114
318
  },
115
319
  {
116
320
  name: 'ticker';
117
- isMut: true;
118
- isSigner: false;
321
+ writable: true;
119
322
  },
120
323
  {
121
- name: 'vault';
122
- isMut: true;
123
- isSigner: false;
324
+ name: 'userPosition';
325
+ writable: true;
326
+ pda: {
327
+ seeds: [
328
+ {
329
+ kind: 'const';
330
+ value: [
331
+ 117,
332
+ 115,
333
+ 101,
334
+ 114,
335
+ 95,
336
+ 112,
337
+ 111,
338
+ 115,
339
+ 105,
340
+ 116,
341
+ 105,
342
+ 111,
343
+ 110
344
+ ];
345
+ },
346
+ {
347
+ kind: 'account';
348
+ path: 'signer';
349
+ },
350
+ {
351
+ kind: 'account';
352
+ path: 'ticker';
353
+ }
354
+ ];
355
+ };
124
356
  },
125
357
  {
126
- name: 'userPosition';
127
- isMut: true;
128
- isSigner: false;
358
+ name: 'systemProgram';
359
+ address: '11111111111111111111111111111111';
360
+ }
361
+ ];
362
+ args: [];
363
+ },
364
+ {
365
+ name: 'depositStakeRewards';
366
+ discriminator: [59, 201, 204, 3, 44, 75, 231, 129];
367
+ accounts: [
368
+ {
369
+ name: 'signer';
370
+ writable: true;
371
+ signer: true;
129
372
  },
130
373
  {
131
- name: 'vaultTokenAccount';
132
- isMut: true;
133
- isSigner: false;
374
+ name: 'stakeVault';
375
+ writable: true;
376
+ pda: {
377
+ seeds: [
378
+ {
379
+ kind: 'const';
380
+ value: [115, 116, 97, 107, 101, 95, 118, 97, 117, 108, 116];
381
+ },
382
+ {
383
+ kind: 'arg';
384
+ path: 'args.stake_vault';
385
+ }
386
+ ];
387
+ };
134
388
  },
135
389
  {
136
- name: 'userTokenAccount';
137
- isMut: true;
138
- isSigner: false;
390
+ name: 'mint';
391
+ writable: true;
392
+ },
393
+ {
394
+ name: 'fromAta';
395
+ writable: true;
396
+ },
397
+ {
398
+ name: 'toAta';
399
+ writable: true;
400
+ },
401
+ {
402
+ name: 'tokenProgram';
403
+ address: 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb';
404
+ },
405
+ {
406
+ name: 'associatedTokenProgram';
407
+ address: 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
139
408
  },
140
409
  {
141
410
  name: 'systemProgram';
142
- isMut: false;
143
- isSigner: false;
411
+ address: '11111111111111111111111111111111';
412
+ }
413
+ ];
414
+ args: [
415
+ {
416
+ name: 'args';
417
+ type: {
418
+ defined: {
419
+ name: 'depositStakeRewardsArgs';
420
+ };
421
+ };
422
+ }
423
+ ];
424
+ },
425
+ {
426
+ name: 'initializeStakeVault';
427
+ discriminator: [125, 55, 104, 34, 35, 179, 67, 3];
428
+ accounts: [
429
+ {
430
+ name: 'signer';
431
+ writable: true;
432
+ signer: true;
433
+ },
434
+ {
435
+ name: 'stakeVault';
436
+ writable: true;
437
+ pda: {
438
+ seeds: [
439
+ {
440
+ kind: 'const';
441
+ value: [115, 116, 97, 107, 101, 95, 118, 97, 117, 108, 116];
442
+ },
443
+ {
444
+ kind: 'arg';
445
+ path: 'args.name';
446
+ }
447
+ ];
448
+ };
449
+ },
450
+ {
451
+ name: 'systemProgram';
452
+ address: '11111111111111111111111111111111';
144
453
  },
145
454
  {
146
455
  name: 'tokenProgram';
147
- isMut: false;
148
- isSigner: false;
456
+ address: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
149
457
  }
150
458
  ];
151
459
  args: [
152
460
  {
153
461
  name: 'args';
154
462
  type: {
155
- defined: 'OpenPositionArgs';
463
+ defined: {
464
+ name: 'initializeStakeVaultArgs';
465
+ };
156
466
  };
157
467
  }
158
468
  ];
159
469
  },
160
470
  {
161
- name: 'closePosition';
471
+ name: 'openPosition';
472
+ discriminator: [135, 128, 47, 77, 15, 152, 240, 49];
162
473
  accounts: [
163
474
  {
164
475
  name: 'signer';
165
- isMut: true;
166
- isSigner: true;
476
+ writable: true;
477
+ signer: true;
167
478
  },
168
479
  {
169
480
  name: 'ticker';
170
- isMut: true;
171
- isSigner: false;
481
+ writable: true;
172
482
  },
173
483
  {
174
484
  name: 'vault';
175
- isMut: true;
176
- isSigner: false;
485
+ writable: true;
177
486
  },
178
487
  {
179
488
  name: 'userPosition';
180
- isMut: true;
181
- isSigner: false;
489
+ writable: true;
182
490
  },
183
491
  {
184
492
  name: 'vaultTokenAccount';
185
- isMut: true;
186
- isSigner: false;
493
+ writable: true;
494
+ pda: {
495
+ seeds: [
496
+ {
497
+ kind: 'const';
498
+ value: [
499
+ 118,
500
+ 97,
501
+ 117,
502
+ 108,
503
+ 116,
504
+ 95,
505
+ 116,
506
+ 111,
507
+ 107,
508
+ 101,
509
+ 110,
510
+ 95,
511
+ 97,
512
+ 99,
513
+ 99,
514
+ 111,
515
+ 117,
516
+ 110,
517
+ 116
518
+ ];
519
+ },
520
+ {
521
+ kind: 'account';
522
+ path: 'vault';
523
+ }
524
+ ];
525
+ };
187
526
  },
188
527
  {
189
528
  name: 'userTokenAccount';
190
- isMut: true;
191
- isSigner: false;
529
+ writable: true;
192
530
  },
193
531
  {
194
532
  name: 'systemProgram';
195
- isMut: false;
196
- isSigner: false;
533
+ address: '11111111111111111111111111111111';
197
534
  },
198
535
  {
199
536
  name: 'tokenProgram';
200
- isMut: false;
201
- isSigner: false;
537
+ address: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
202
538
  }
203
539
  ];
204
540
  args: [
205
541
  {
206
542
  name: 'args';
207
543
  type: {
208
- defined: 'ClosePositionArgs';
544
+ defined: {
545
+ name: 'openPositionArgs';
546
+ };
209
547
  };
210
548
  }
211
549
  ];
212
- }
213
- ];
214
- accounts: [
550
+ },
215
551
  {
216
- name: 'userPosition';
217
- type: {
218
- kind: 'struct';
219
- fields: [
220
- {
221
- name: 'ts';
222
- docs: ['timestamp'];
223
- type: 'i64';
224
- },
225
- {
226
- name: 'bump';
227
- docs: ['bump seed'];
228
- type: 'u8';
229
- },
230
- {
231
- name: 'totalDeposited';
232
- docs: ['total deposited'];
233
- type: 'u64';
234
- },
235
- {
236
- name: 'totalWithdrawn';
237
- docs: ['total withdrawn'];
238
- type: 'u64';
239
- },
240
- {
241
- name: 'lpShare';
242
- docs: ['total liquidity provided'];
243
- type: 'u64';
244
- },
245
- {
246
- name: 'totalPositions';
247
- docs: ['total positions'];
248
- type: 'u16';
249
- },
250
- {
251
- name: 'ticker';
252
- docs: ['ticker account'];
253
- type: 'publicKey';
254
- },
255
- {
256
- name: 'authority';
257
- docs: ["user's authority"];
258
- type: 'publicKey';
259
- },
260
- {
261
- name: 'positions';
262
- docs: ["user's position"];
263
- type: {
264
- array: [
265
- {
266
- defined: 'Position';
267
- },
268
- 3
269
- ];
270
- };
271
- }
272
- ];
273
- };
552
+ name: 'requestWithdrawStake';
553
+ discriminator: [175, 9, 77, 31, 145, 136, 30, 207];
554
+ accounts: [
555
+ {
556
+ name: 'signer';
557
+ writable: true;
558
+ signer: true;
559
+ },
560
+ {
561
+ name: 'stakeVault';
562
+ writable: true;
563
+ },
564
+ {
565
+ name: 'stake';
566
+ writable: true;
567
+ },
568
+ {
569
+ name: 'mint';
570
+ writable: true;
571
+ },
572
+ {
573
+ name: 'tokenProgram';
574
+ address: 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb';
575
+ },
576
+ {
577
+ name: 'associatedTokenProgram';
578
+ address: 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
579
+ },
580
+ {
581
+ name: 'systemProgram';
582
+ address: '11111111111111111111111111111111';
583
+ }
584
+ ];
585
+ args: [];
274
586
  },
275
587
  {
276
- name: 'ticker';
277
- type: {
278
- kind: 'struct';
279
- fields: [
280
- {
281
- name: 'initTs';
282
- docs: ['timestamp of the creation of the ticker'];
283
- type: 'i64';
284
- },
285
- {
286
- name: 'updatedTs';
287
- docs: ['timestamp of the last update of the ticker'];
288
- type: 'i64';
289
- },
290
- {
291
- name: 'bump';
292
- docs: ['The bump for the ticker pda'];
293
- type: 'u8';
294
- },
295
- {
296
- name: 'authority';
297
- docs: ['authority for the ticker'];
298
- type: 'publicKey';
299
- },
300
- {
301
- name: 'name';
302
- docs: ['name of the ticekt'];
303
- type: 'string';
304
- },
305
- {
306
- name: 'protocolProgramId';
307
- docs: [
308
- 'protocol program id like dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH to get data info'
588
+ name: 'stakeNft';
589
+ discriminator: [38, 27, 66, 46, 69, 65, 151, 219];
590
+ accounts: [
591
+ {
592
+ name: 'signer';
593
+ writable: true;
594
+ signer: true;
595
+ },
596
+ {
597
+ name: 'stakeVault';
598
+ writable: true;
599
+ pda: {
600
+ seeds: [
601
+ {
602
+ kind: 'const';
603
+ value: [115, 116, 97, 107, 101, 95, 118, 97, 117, 108, 116];
604
+ },
605
+ {
606
+ kind: 'arg';
607
+ path: 'args.stake_vault';
608
+ }
309
609
  ];
310
- type: 'publicKey';
610
+ };
611
+ },
612
+ {
613
+ name: 'stake';
614
+ writable: true;
615
+ pda: {
616
+ seeds: [
617
+ {
618
+ kind: 'const';
619
+ value: [115, 116, 97, 107, 101];
620
+ },
621
+ {
622
+ kind: 'account';
623
+ path: 'signer';
624
+ },
625
+ {
626
+ kind: 'arg';
627
+ path: 'args.name';
628
+ }
629
+ ];
630
+ };
631
+ },
632
+ {
633
+ name: 'mint';
634
+ writable: true;
635
+ },
636
+ {
637
+ name: 'fromAta';
638
+ writable: true;
639
+ },
640
+ {
641
+ name: 'toAta';
642
+ writable: true;
643
+ },
644
+ {
645
+ name: 'tokenProgram';
646
+ address: 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb';
647
+ },
648
+ {
649
+ name: 'associatedTokenProgram';
650
+ address: 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
651
+ },
652
+ {
653
+ name: 'systemProgram';
654
+ address: '11111111111111111111111111111111';
655
+ }
656
+ ];
657
+ args: [
658
+ {
659
+ name: 'args';
660
+ type: {
661
+ defined: {
662
+ name: 'stakeNftArgs';
663
+ };
664
+ };
665
+ }
666
+ ];
667
+ },
668
+ {
669
+ name: 'stakeToken';
670
+ discriminator: [191, 127, 193, 101, 37, 96, 87, 211];
671
+ accounts: [
672
+ {
673
+ name: 'signer';
674
+ writable: true;
675
+ signer: true;
676
+ },
677
+ {
678
+ name: 'stakeVault';
679
+ writable: true;
680
+ pda: {
681
+ seeds: [
682
+ {
683
+ kind: 'const';
684
+ value: [115, 116, 97, 107, 101, 95, 118, 97, 117, 108, 116];
685
+ },
686
+ {
687
+ kind: 'arg';
688
+ path: 'args.stake_vault';
689
+ }
690
+ ];
691
+ };
692
+ },
693
+ {
694
+ name: 'stake';
695
+ writable: true;
696
+ pda: {
697
+ seeds: [
698
+ {
699
+ kind: 'const';
700
+ value: [115, 116, 97, 107, 101];
701
+ },
702
+ {
703
+ kind: 'account';
704
+ path: 'signer';
705
+ },
706
+ {
707
+ kind: 'arg';
708
+ path: 'args.name';
709
+ }
710
+ ];
711
+ };
712
+ },
713
+ {
714
+ name: 'mint';
715
+ writable: true;
716
+ },
717
+ {
718
+ name: 'fromAta';
719
+ writable: true;
720
+ },
721
+ {
722
+ name: 'toAta';
723
+ writable: true;
724
+ },
725
+ {
726
+ name: 'tokenProgram';
727
+ address: 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb';
728
+ },
729
+ {
730
+ name: 'associatedTokenProgram';
731
+ address: 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
732
+ },
733
+ {
734
+ name: 'systemProgram';
735
+ address: '11111111111111111111111111111111';
736
+ }
737
+ ];
738
+ args: [
739
+ {
740
+ name: 'args';
741
+ type: {
742
+ defined: {
743
+ name: 'stakeTokenArgs';
744
+ };
745
+ };
746
+ }
747
+ ];
748
+ },
749
+ {
750
+ name: 'updateStakeRewards';
751
+ discriminator: [39, 82, 38, 43, 234, 67, 69, 94];
752
+ accounts: [
753
+ {
754
+ name: 'signer';
755
+ writable: true;
756
+ signer: true;
757
+ },
758
+ {
759
+ name: 'stake';
760
+ writable: true;
761
+ },
762
+ {
763
+ name: 'nftRewards';
764
+ writable: true;
765
+ pda: {
766
+ seeds: [
767
+ {
768
+ kind: 'const';
769
+ value: [110, 102, 116, 95, 114, 101, 119, 97, 114, 100, 115];
770
+ },
771
+ {
772
+ kind: 'account';
773
+ path: 'stake';
774
+ }
775
+ ];
776
+ };
777
+ },
778
+ {
779
+ name: 'systemProgram';
780
+ address: '11111111111111111111111111111111';
781
+ }
782
+ ];
783
+ args: [
784
+ {
785
+ name: 'args';
786
+ type: {
787
+ defined: {
788
+ name: 'updateStakeRewardsArgs';
789
+ };
790
+ };
791
+ }
792
+ ];
793
+ },
794
+ {
795
+ name: 'updateStakeVaultStatus';
796
+ discriminator: [71, 64, 188, 150, 86, 254, 221, 65];
797
+ accounts: [
798
+ {
799
+ name: 'signer';
800
+ writable: true;
801
+ signer: true;
802
+ },
803
+ {
804
+ name: 'stakeVault';
805
+ writable: true;
806
+ },
807
+ {
808
+ name: 'systemProgram';
809
+ address: '11111111111111111111111111111111';
810
+ }
811
+ ];
812
+ args: [
813
+ {
814
+ name: 'args';
815
+ type: {
816
+ defined: {
817
+ name: 'updateStakeVaultStatusArgs';
818
+ };
819
+ };
820
+ }
821
+ ];
822
+ },
823
+ {
824
+ name: 'updateTickerPrice';
825
+ discriminator: [203, 166, 139, 83, 76, 144, 250, 29];
826
+ accounts: [
827
+ {
828
+ name: 'signer';
829
+ writable: true;
830
+ signer: true;
831
+ },
832
+ {
833
+ name: 'ticker';
834
+ writable: true;
835
+ },
836
+ {
837
+ name: 'systemProgram';
838
+ address: '11111111111111111111111111111111';
839
+ }
840
+ ];
841
+ args: [
842
+ {
843
+ name: 'args';
844
+ type: {
845
+ defined: {
846
+ name: 'updateTickerPriceArgs';
847
+ };
848
+ };
849
+ }
850
+ ];
851
+ },
852
+ {
853
+ name: 'withdrawStake';
854
+ discriminator: [153, 8, 22, 138, 105, 176, 87, 66];
855
+ accounts: [
856
+ {
857
+ name: 'signer';
858
+ writable: true;
859
+ signer: true;
860
+ },
861
+ {
862
+ name: 'stakeVault';
863
+ writable: true;
864
+ },
865
+ {
866
+ name: 'stake';
867
+ writable: true;
868
+ },
869
+ {
870
+ name: 'admin';
871
+ writable: true;
872
+ },
873
+ {
874
+ name: 'nftRewards';
875
+ writable: true;
876
+ },
877
+ {
878
+ name: 'mint';
879
+ writable: true;
880
+ },
881
+ {
882
+ name: 'fromAta';
883
+ writable: true;
884
+ },
885
+ {
886
+ name: 'toAta';
887
+ writable: true;
888
+ },
889
+ {
890
+ name: 'tokenProgram';
891
+ address: 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb';
892
+ },
893
+ {
894
+ name: 'associatedTokenProgram';
895
+ address: 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
896
+ },
897
+ {
898
+ name: 'systemProgram';
899
+ address: '11111111111111111111111111111111';
900
+ }
901
+ ];
902
+ args: [];
903
+ }
904
+ ];
905
+ accounts: [
906
+ {
907
+ name: 'nftRewards';
908
+ discriminator: [210, 99, 18, 65, 58, 128, 167, 91];
909
+ },
910
+ {
911
+ name: 'stake';
912
+ discriminator: [150, 197, 176, 29, 55, 132, 112, 149];
913
+ },
914
+ {
915
+ name: 'stakeVault';
916
+ discriminator: [192, 112, 65, 125, 129, 151, 173, 226];
917
+ },
918
+ {
919
+ name: 'ticker';
920
+ discriminator: [214, 74, 184, 188, 214, 64, 251, 53];
921
+ },
922
+ {
923
+ name: 'user';
924
+ discriminator: [159, 117, 95, 227, 239, 151, 58, 236];
925
+ },
926
+ {
927
+ name: 'userPosition';
928
+ discriminator: [251, 248, 209, 245, 83, 234, 17, 27];
929
+ },
930
+ {
931
+ name: 'vault';
932
+ discriminator: [211, 8, 232, 43, 2, 152, 117, 119];
933
+ }
934
+ ];
935
+ events: [
936
+ {
937
+ name: 'closePositionRecord';
938
+ discriminator: [202, 208, 157, 166, 193, 229, 76, 5];
939
+ },
940
+ {
941
+ name: 'openPositionRecord';
942
+ discriminator: [118, 71, 105, 89, 222, 111, 56, 63];
943
+ },
944
+ {
945
+ name: 'tickerPriceUpdateRecord';
946
+ discriminator: [11, 38, 250, 234, 149, 218, 144, 15];
947
+ }
948
+ ];
949
+ errors: [
950
+ {
951
+ code: 6000;
952
+ name: 'invalidAccount';
953
+ msg: 'Invalid account';
954
+ },
955
+ {
956
+ code: 6001;
957
+ name: 'unauthorized';
958
+ msg: 'Unauthorized access';
959
+ },
960
+ {
961
+ code: 6002;
962
+ name: 'depositFailed';
963
+ msg: 'Failed to deposit';
964
+ },
965
+ {
966
+ code: 6003;
967
+ name: 'invalidOwnerAuthority';
968
+ msg: 'Invalid owner authority';
969
+ },
970
+ {
971
+ code: 6004;
972
+ name: 'invalidPosition';
973
+ msg: 'Invalid position';
974
+ },
975
+ {
976
+ code: 6005;
977
+ name: 'invalidTickerPosition';
978
+ msg: 'Invalid ticker position';
979
+ },
980
+ {
981
+ code: 6006;
982
+ name: 'noFreePositionSlot';
983
+ msg: 'No free position slot';
984
+ },
985
+ {
986
+ code: 6007;
987
+ name: 'invalidMintAddress';
988
+ msg: 'Invalid mint address';
989
+ },
990
+ {
991
+ code: 6008;
992
+ name: 'invalidProfitShare';
993
+ msg: 'Invalid profit share';
994
+ },
995
+ {
996
+ code: 6009;
997
+ name: 'invalidDepositAmount';
998
+ msg: 'Invalid deposit amount';
999
+ },
1000
+ {
1001
+ code: 6010;
1002
+ name: 'invalidWithdrawAmount';
1003
+ msg: 'Invalid withdraw amount';
1004
+ },
1005
+ {
1006
+ code: 6011;
1007
+ name: 'invalidStakeVault';
1008
+ msg: 'Invalid stake vault';
1009
+ },
1010
+ {
1011
+ code: 6012;
1012
+ name: 'invalidStakeVaultAuthority';
1013
+ msg: 'Invalid stake vault authority';
1014
+ },
1015
+ {
1016
+ code: 6013;
1017
+ name: 'invalidStakeVaultAmount';
1018
+ msg: 'Invalid stake vault amount';
1019
+ },
1020
+ {
1021
+ code: 6014;
1022
+ name: 'stakeVaultLocked';
1023
+ msg: 'Stake vault locked';
1024
+ },
1025
+ {
1026
+ code: 6015;
1027
+ name: 'stakeLocked';
1028
+ msg: 'Stake is locked';
1029
+ },
1030
+ {
1031
+ code: 6016;
1032
+ name: 'stakeVaultFull';
1033
+ msg: 'Stake vault full';
1034
+ },
1035
+ {
1036
+ code: 6017;
1037
+ name: 'invalidMint';
1038
+ msg: 'Invalid mint';
1039
+ },
1040
+ {
1041
+ code: 6018;
1042
+ name: 'invalidStakeVaultWeek';
1043
+ msg: 'Invalid stake vault week';
1044
+ },
1045
+ {
1046
+ code: 6019;
1047
+ name: 'rewardsAlreadyClaimed';
1048
+ msg: 'Rewards already claimed';
1049
+ }
1050
+ ];
1051
+ types: [
1052
+ {
1053
+ name: 'claimStakeRewardsArgs';
1054
+ type: {
1055
+ kind: 'struct';
1056
+ fields: [
1057
+ {
1058
+ name: 'week';
1059
+ type: 'u8';
1060
+ }
1061
+ ];
1062
+ };
1063
+ },
1064
+ {
1065
+ name: 'closePositionArgs';
1066
+ type: {
1067
+ kind: 'struct';
1068
+ fields: [
1069
+ {
1070
+ name: 'positionIndex';
1071
+ type: 'u8';
1072
+ }
1073
+ ];
1074
+ };
1075
+ },
1076
+ {
1077
+ name: 'closePositionRecord';
1078
+ type: {
1079
+ kind: 'struct';
1080
+ fields: [
1081
+ {
1082
+ name: 'amount';
1083
+ type: 'u64';
1084
+ },
1085
+ {
1086
+ name: 'ticker';
1087
+ type: 'pubkey';
1088
+ },
1089
+ {
1090
+ name: 'closePrice';
1091
+ type: 'u64';
1092
+ },
1093
+ {
1094
+ name: 'ts';
1095
+ type: 'i64';
1096
+ },
1097
+ {
1098
+ name: 'isLong';
1099
+ type: 'bool';
1100
+ },
1101
+ {
1102
+ name: 'pnl';
1103
+ type: 'i64';
1104
+ },
1105
+ {
1106
+ name: 'user';
1107
+ type: 'pubkey';
1108
+ }
1109
+ ];
1110
+ };
1111
+ },
1112
+ {
1113
+ name: 'collection';
1114
+ type: {
1115
+ kind: 'enum';
1116
+ variants: [
1117
+ {
1118
+ name: 'coleta';
1119
+ },
1120
+ {
1121
+ name: 'undead';
1122
+ },
1123
+ {
1124
+ name: 'alligators';
1125
+ },
1126
+ {
1127
+ name: 'pyth';
1128
+ }
1129
+ ];
1130
+ };
1131
+ },
1132
+ {
1133
+ name: 'createTickerArgs';
1134
+ type: {
1135
+ kind: 'struct';
1136
+ fields: [
1137
+ {
1138
+ name: 'name';
1139
+ type: 'string';
1140
+ },
1141
+ {
1142
+ name: 'protocolProgramId';
1143
+ type: 'pubkey';
1144
+ }
1145
+ ];
1146
+ };
1147
+ },
1148
+ {
1149
+ name: 'createUserArgs';
1150
+ type: {
1151
+ kind: 'struct';
1152
+ fields: [
1153
+ {
1154
+ name: 'name';
1155
+ type: 'string';
1156
+ }
1157
+ ];
1158
+ };
1159
+ },
1160
+ {
1161
+ name: 'depositStakeRewardsArgs';
1162
+ type: {
1163
+ kind: 'struct';
1164
+ fields: [
1165
+ {
1166
+ name: 'amount';
1167
+ type: 'u64';
1168
+ },
1169
+ {
1170
+ name: 'stakeVault';
1171
+ type: 'string';
1172
+ }
1173
+ ];
1174
+ };
1175
+ },
1176
+ {
1177
+ name: 'initializeStakeVaultArgs';
1178
+ type: {
1179
+ kind: 'struct';
1180
+ fields: [
1181
+ {
1182
+ name: 'name';
1183
+ type: 'string';
1184
+ },
1185
+ {
1186
+ name: 'slots';
1187
+ type: 'u64';
311
1188
  },
312
1189
  {
313
- name: 'price';
314
- docs: ['ticker price'];
1190
+ name: 'collection';
1191
+ type: 'string';
1192
+ },
1193
+ {
1194
+ name: 'amount';
315
1195
  type: 'u64';
1196
+ }
1197
+ ];
1198
+ };
1199
+ },
1200
+ {
1201
+ name: 'nftRewards';
1202
+ type: {
1203
+ kind: 'struct';
1204
+ fields: [
1205
+ {
1206
+ name: 'stake';
1207
+ type: 'pubkey';
316
1208
  },
317
1209
  {
318
- name: 'vault';
319
- docs: ['Vault PDA'];
320
- type: 'publicKey';
1210
+ name: 'dailyRewards';
1211
+ type: {
1212
+ array: ['u64', 30];
1213
+ };
1214
+ },
1215
+ {
1216
+ name: 'weeklyRewardsPaid';
1217
+ type: {
1218
+ array: ['bool', 5];
1219
+ };
1220
+ },
1221
+ {
1222
+ name: 'apr';
1223
+ type: 'f32';
321
1224
  }
322
1225
  ];
323
1226
  };
324
1227
  },
325
1228
  {
326
- name: 'vault';
1229
+ name: 'openPositionArgs';
1230
+ type: {
1231
+ kind: 'struct';
1232
+ fields: [
1233
+ {
1234
+ name: 'amount';
1235
+ type: 'u64';
1236
+ },
1237
+ {
1238
+ name: 'isLong';
1239
+ type: 'bool';
1240
+ }
1241
+ ];
1242
+ };
1243
+ },
1244
+ {
1245
+ name: 'openPositionRecord';
1246
+ type: {
1247
+ kind: 'struct';
1248
+ fields: [
1249
+ {
1250
+ name: 'amount';
1251
+ type: 'u64';
1252
+ },
1253
+ {
1254
+ name: 'ticker';
1255
+ type: 'pubkey';
1256
+ },
1257
+ {
1258
+ name: 'entryPrice';
1259
+ type: 'u64';
1260
+ },
1261
+ {
1262
+ name: 'ts';
1263
+ type: 'i64';
1264
+ },
1265
+ {
1266
+ name: 'isLong';
1267
+ type: 'bool';
1268
+ },
1269
+ {
1270
+ name: 'user';
1271
+ type: 'pubkey';
1272
+ }
1273
+ ];
1274
+ };
1275
+ },
1276
+ {
1277
+ name: 'position';
1278
+ type: {
1279
+ kind: 'struct';
1280
+ fields: [
1281
+ {
1282
+ name: 'amount';
1283
+ type: 'u64';
1284
+ },
1285
+ {
1286
+ name: 'entryPrice';
1287
+ type: 'u64';
1288
+ },
1289
+ {
1290
+ name: 'ts';
1291
+ type: 'i64';
1292
+ },
1293
+ {
1294
+ name: 'isLong';
1295
+ type: 'bool';
1296
+ },
1297
+ {
1298
+ name: 'isOpen';
1299
+ type: 'bool';
1300
+ },
1301
+ {
1302
+ name: 'pnl';
1303
+ type: 'i64';
1304
+ }
1305
+ ];
1306
+ };
1307
+ },
1308
+ {
1309
+ name: 'rarity';
1310
+ type: {
1311
+ kind: 'enum';
1312
+ variants: [
1313
+ {
1314
+ name: 'common';
1315
+ },
1316
+ {
1317
+ name: 'uncommon';
1318
+ },
1319
+ {
1320
+ name: 'rare';
1321
+ },
1322
+ {
1323
+ name: 'epic';
1324
+ },
1325
+ {
1326
+ name: 'legendary';
1327
+ },
1328
+ {
1329
+ name: 'mythic';
1330
+ }
1331
+ ];
1332
+ };
1333
+ },
1334
+ {
1335
+ name: 'stake';
327
1336
  type: {
328
1337
  kind: 'struct';
329
1338
  fields: [
330
1339
  {
331
1340
  name: 'bump';
332
- docs: ['The bump for the vault pda'];
333
1341
  type: 'u8';
334
1342
  },
335
1343
  {
336
1344
  name: 'authority';
337
- docs: ['authority for the vault'];
338
- type: 'publicKey';
1345
+ type: 'pubkey';
1346
+ },
1347
+ {
1348
+ name: 'initTs';
1349
+ type: 'i64';
1350
+ },
1351
+ {
1352
+ name: 'isLocked';
1353
+ type: 'bool';
1354
+ },
1355
+ {
1356
+ name: 'withdrawTs';
1357
+ type: 'i64';
339
1358
  },
340
1359
  {
341
1360
  name: 'name';
342
- docs: ['name of the vault'];
343
1361
  type: 'string';
344
1362
  },
345
1363
  {
346
- name: 'tokenAccount';
347
- docs: ['token account for the vault e.g. tDRIFT'];
348
- type: 'publicKey';
1364
+ name: 'collections';
1365
+ type: {
1366
+ vec: {
1367
+ defined: {
1368
+ name: 'collection';
1369
+ };
1370
+ };
1371
+ };
349
1372
  },
350
1373
  {
351
- name: 'tickerAddress';
352
- docs: ['ticker address'];
353
- type: 'publicKey';
1374
+ name: 'rarity';
1375
+ type: {
1376
+ defined: {
1377
+ name: 'rarity';
1378
+ };
1379
+ };
354
1380
  },
355
1381
  {
356
- name: 'totalDeposited';
357
- docs: ['lifetime total deposited'];
358
- type: 'u64';
1382
+ name: 'mint';
1383
+ type: 'pubkey';
359
1384
  },
360
1385
  {
361
- name: 'totalWithdrawn';
362
- docs: ['lifetime total withdrawn'];
1386
+ name: 'stakeVault';
1387
+ type: 'pubkey';
1388
+ },
1389
+ {
1390
+ name: 'stakeRewards';
1391
+ type: 'pubkey';
1392
+ }
1393
+ ];
1394
+ };
1395
+ },
1396
+ {
1397
+ name: 'stakeNftArgs';
1398
+ type: {
1399
+ kind: 'struct';
1400
+ fields: [
1401
+ {
1402
+ name: 'name';
1403
+ type: 'string';
1404
+ },
1405
+ {
1406
+ name: 'rarity';
1407
+ type: {
1408
+ defined: {
1409
+ name: 'rarity';
1410
+ };
1411
+ };
1412
+ },
1413
+ {
1414
+ name: 'stakeVault';
1415
+ type: 'string';
1416
+ },
1417
+ {
1418
+ name: 'collections';
1419
+ type: {
1420
+ vec: {
1421
+ defined: {
1422
+ name: 'collection';
1423
+ };
1424
+ };
1425
+ };
1426
+ }
1427
+ ];
1428
+ };
1429
+ },
1430
+ {
1431
+ name: 'stakeTokenArgs';
1432
+ type: {
1433
+ kind: 'struct';
1434
+ fields: [
1435
+ {
1436
+ name: 'stakeVault';
1437
+ type: 'string';
1438
+ },
1439
+ {
1440
+ name: 'name';
1441
+ type: 'string';
1442
+ },
1443
+ {
1444
+ name: 'amount';
363
1445
  type: 'u64';
1446
+ }
1447
+ ];
1448
+ };
1449
+ },
1450
+ {
1451
+ name: 'stakeVault';
1452
+ type: {
1453
+ kind: 'struct';
1454
+ fields: [
1455
+ {
1456
+ name: 'bump';
1457
+ type: 'u8';
1458
+ },
1459
+ {
1460
+ name: 'authority';
1461
+ type: 'pubkey';
364
1462
  },
365
1463
  {
366
1464
  name: 'initTs';
367
- docs: ['timestamp vault initialized'];
368
1465
  type: 'i64';
369
1466
  },
370
1467
  {
371
- name: 'netDeposits';
372
- docs: ['lifetime net deposits'];
373
- type: 'u128';
1468
+ name: 'endTs';
1469
+ type: 'i64';
374
1470
  },
375
1471
  {
376
- name: 'netWithdraws';
377
- docs: ['lifetime net withdraws'];
378
- type: 'u128';
1472
+ name: 'amount';
1473
+ type: 'u64';
379
1474
  },
380
1475
  {
381
- name: 'longBalance';
382
- docs: ['Long bet balance'];
1476
+ name: 'amountPaid';
1477
+ type: 'u64';
1478
+ },
1479
+ {
1480
+ name: 'tokenDecimals';
1481
+ type: 'u8';
1482
+ },
1483
+ {
1484
+ name: 'nftStaked';
1485
+ type: 'u64';
1486
+ },
1487
+ {
1488
+ name: 'slots';
1489
+ type: 'u64';
1490
+ },
1491
+ {
1492
+ name: 'isLocked';
1493
+ type: 'bool';
1494
+ },
1495
+ {
1496
+ name: 'name';
1497
+ type: 'string';
1498
+ },
1499
+ {
1500
+ name: 'collection';
1501
+ type: 'string';
1502
+ },
1503
+ {
1504
+ name: 'tokenMint';
1505
+ type: 'pubkey';
1506
+ },
1507
+ {
1508
+ name: 'week';
1509
+ type: 'u8';
1510
+ },
1511
+ {
1512
+ name: 'tokenStaked';
383
1513
  type: 'u64';
384
1514
  },
385
1515
  {
386
- name: 'shortBalance';
387
- docs: ['Short bet balance'];
388
- type: 'u64';
1516
+ name: 'sumAllUsers';
1517
+ type: 'f64';
1518
+ },
1519
+ {
1520
+ name: 'padding';
1521
+ type: {
1522
+ array: ['u8', 32];
1523
+ };
1524
+ }
1525
+ ];
1526
+ };
1527
+ },
1528
+ {
1529
+ name: 'ticker';
1530
+ type: {
1531
+ kind: 'struct';
1532
+ fields: [
1533
+ {
1534
+ name: 'initTs';
1535
+ type: 'i64';
1536
+ },
1537
+ {
1538
+ name: 'updatedTs';
1539
+ type: 'i64';
1540
+ },
1541
+ {
1542
+ name: 'bump';
1543
+ type: 'u8';
1544
+ },
1545
+ {
1546
+ name: 'authority';
1547
+ type: 'pubkey';
1548
+ },
1549
+ {
1550
+ name: 'name';
1551
+ type: 'string';
1552
+ },
1553
+ {
1554
+ name: 'protocolProgramId';
1555
+ type: 'pubkey';
389
1556
  },
390
1557
  {
391
- name: 'longPositionsOpened';
392
- docs: ['Opened long positions'];
1558
+ name: 'price';
393
1559
  type: 'u64';
394
1560
  },
395
1561
  {
396
- name: 'shortPositionsOpened';
397
- docs: ['Opened short positions'];
398
- type: 'u64';
1562
+ name: 'vault';
1563
+ type: 'pubkey';
399
1564
  }
400
1565
  ];
401
1566
  };
402
- }
403
- ];
404
- types: [
1567
+ },
405
1568
  {
406
- name: 'Position';
1569
+ name: 'tickerPriceUpdateRecord';
407
1570
  type: {
408
1571
  kind: 'struct';
409
1572
  fields: [
410
1573
  {
411
- name: 'amount';
412
- type: 'u64';
413
- },
414
- {
415
- name: 'entryPrice';
1574
+ name: 'price';
416
1575
  type: 'u64';
417
1576
  },
418
1577
  {
@@ -420,38 +1579,50 @@ export type TriadProtocol = {
420
1579
  type: 'i64';
421
1580
  },
422
1581
  {
423
- name: 'isLong';
424
- type: 'bool';
1582
+ name: 'ticker';
1583
+ type: 'pubkey';
1584
+ }
1585
+ ];
1586
+ };
1587
+ },
1588
+ {
1589
+ name: 'updateStakeRewardsArgs';
1590
+ type: {
1591
+ kind: 'struct';
1592
+ fields: [
1593
+ {
1594
+ name: 'day';
1595
+ type: 'u8';
425
1596
  },
426
1597
  {
427
- name: 'isOpen';
428
- type: 'bool';
1598
+ name: 'rewards';
1599
+ type: 'u64';
429
1600
  },
430
1601
  {
431
- name: 'pnl';
432
- type: 'i64';
1602
+ name: 'apr';
1603
+ type: 'f32';
433
1604
  }
434
1605
  ];
435
1606
  };
436
1607
  },
437
1608
  {
438
- name: 'CreateTickerArgs';
1609
+ name: 'updateStakeVaultStatusArgs';
439
1610
  type: {
440
1611
  kind: 'struct';
441
1612
  fields: [
442
1613
  {
443
- name: 'name';
444
- type: 'string';
1614
+ name: 'isLocked';
1615
+ type: 'bool';
445
1616
  },
446
1617
  {
447
- name: 'protocolProgramId';
448
- type: 'publicKey';
1618
+ name: 'week';
1619
+ type: 'u8';
449
1620
  }
450
1621
  ];
451
1622
  };
452
1623
  },
453
1624
  {
454
- name: 'UpdateTickerPriceArgs';
1625
+ name: 'updateTickerPriceArgs';
455
1626
  type: {
456
1627
  kind: 'struct';
457
1628
  fields: [
@@ -463,202 +1634,153 @@ export type TriadProtocol = {
463
1634
  };
464
1635
  },
465
1636
  {
466
- name: 'OpenPositionArgs';
1637
+ name: 'user';
467
1638
  type: {
468
1639
  kind: 'struct';
469
1640
  fields: [
470
1641
  {
471
- name: 'amount';
472
- type: 'u64';
1642
+ name: 'ts';
1643
+ type: 'i64';
473
1644
  },
474
1645
  {
475
- name: 'isLong';
476
- type: 'bool';
1646
+ name: 'authority';
1647
+ type: 'pubkey';
1648
+ },
1649
+ {
1650
+ name: 'bump';
1651
+ type: 'u8';
1652
+ },
1653
+ {
1654
+ name: 'referral';
1655
+ type: 'pubkey';
1656
+ },
1657
+ {
1658
+ name: 'referred';
1659
+ type: 'i64';
1660
+ },
1661
+ {
1662
+ name: 'name';
1663
+ type: 'string';
477
1664
  }
478
1665
  ];
479
1666
  };
480
1667
  },
481
1668
  {
482
- name: 'ClosePositionArgs';
1669
+ name: 'userPosition';
483
1670
  type: {
484
1671
  kind: 'struct';
485
1672
  fields: [
486
1673
  {
487
- name: 'positionIndex';
1674
+ name: 'ts';
1675
+ type: 'i64';
1676
+ },
1677
+ {
1678
+ name: 'bump';
488
1679
  type: 'u8';
1680
+ },
1681
+ {
1682
+ name: 'totalDeposited';
1683
+ type: 'u64';
1684
+ },
1685
+ {
1686
+ name: 'totalWithdrawn';
1687
+ type: 'u64';
1688
+ },
1689
+ {
1690
+ name: 'lpShare';
1691
+ type: 'u64';
1692
+ },
1693
+ {
1694
+ name: 'totalPositions';
1695
+ type: 'u16';
1696
+ },
1697
+ {
1698
+ name: 'ticker';
1699
+ type: 'pubkey';
1700
+ },
1701
+ {
1702
+ name: 'authority';
1703
+ type: 'pubkey';
1704
+ },
1705
+ {
1706
+ name: 'positions';
1707
+ type: {
1708
+ array: [
1709
+ {
1710
+ defined: {
1711
+ name: 'position';
1712
+ };
1713
+ },
1714
+ 3
1715
+ ];
1716
+ };
489
1717
  }
490
1718
  ];
491
1719
  };
492
- }
493
- ];
494
- events: [
495
- {
496
- name: 'OpenPositionRecord';
497
- fields: [
498
- {
499
- name: 'amount';
500
- type: 'u64';
501
- index: false;
502
- },
503
- {
504
- name: 'ticker';
505
- type: 'publicKey';
506
- index: false;
507
- },
508
- {
509
- name: 'entryPrice';
510
- type: 'u64';
511
- index: false;
512
- },
513
- {
514
- name: 'ts';
515
- type: 'i64';
516
- index: false;
517
- },
518
- {
519
- name: 'isLong';
520
- type: 'bool';
521
- index: false;
522
- },
523
- {
524
- name: 'user';
525
- type: 'publicKey';
526
- index: false;
527
- }
528
- ];
529
- },
530
- {
531
- name: 'ClosePositionRecord';
532
- fields: [
533
- {
534
- name: 'amount';
535
- type: 'u64';
536
- index: false;
537
- },
538
- {
539
- name: 'ticker';
540
- type: 'publicKey';
541
- index: false;
542
- },
543
- {
544
- name: 'closePrice';
545
- type: 'u64';
546
- index: false;
547
- },
548
- {
549
- name: 'ts';
550
- type: 'i64';
551
- index: false;
552
- },
553
- {
554
- name: 'isLong';
555
- type: 'bool';
556
- index: false;
557
- },
558
- {
559
- name: 'pnl';
560
- type: 'i64';
561
- index: false;
562
- },
563
- {
564
- name: 'user';
565
- type: 'publicKey';
566
- index: false;
567
- }
568
- ];
569
- },
570
- {
571
- name: 'TickerPriceUpdateRecord';
572
- fields: [
573
- {
574
- name: 'price';
575
- type: 'u64';
576
- index: false;
577
- },
578
- {
579
- name: 'ts';
580
- type: 'i64';
581
- index: false;
582
- },
583
- {
584
- name: 'ticker';
585
- type: 'publicKey';
586
- index: false;
587
- }
588
- ];
589
- }
590
- ];
591
- errors: [
592
- {
593
- code: 6000;
594
- name: 'UnauthorizedToDeleteProject';
595
- msg: 'Unauthorized to delete the project';
596
- },
597
- {
598
- code: 6001;
599
- name: 'InvalidShadowAccount';
600
- msg: 'Invalid shadow account';
601
- },
602
- {
603
- code: 6002;
604
- name: 'InvalidAccount';
605
- msg: 'Invalid account';
606
- },
607
- {
608
- code: 6003;
609
- name: 'Unauthorized';
610
- msg: 'Unauthorized access';
611
- },
612
- {
613
- code: 6004;
614
- name: 'AlphaVantageApiError';
615
- msg: 'Failed to get data from Vybe Network';
616
- },
617
- {
618
- code: 6005;
619
- name: 'DepositFailed';
620
- msg: 'Failed to deposit';
621
- },
622
- {
623
- code: 6006;
624
- name: 'InvalidOwnerAuthority';
625
- msg: 'Invalid Owner authority';
626
- },
627
- {
628
- code: 6007;
629
- name: 'InvalidPosition';
630
- msg: 'Invalid Position';
631
- },
632
- {
633
- code: 6008;
634
- name: 'InvalidTickerPosition';
635
- msg: 'Invalid Ticker position';
636
- },
637
- {
638
- code: 6009;
639
- name: 'NoFreePositionSlot';
640
- msg: 'No free position slot';
641
- },
642
- {
643
- code: 6010;
644
- name: 'InvalidMintAddress';
645
- msg: 'Invalid Mint address';
646
- },
647
- {
648
- code: 6011;
649
- name: 'InvalidProfitShare';
650
- msg: 'Invalid Profit Share';
651
- },
652
- {
653
- code: 6012;
654
- name: 'InvalidDepositAmount';
655
- msg: 'Invalid Deposit Amount';
656
1720
  },
657
1721
  {
658
- code: 6013;
659
- name: 'InvalidWithdrawAmount';
660
- msg: 'Invalid Withdraw Amount';
1722
+ name: 'vault';
1723
+ type: {
1724
+ kind: 'struct';
1725
+ fields: [
1726
+ {
1727
+ name: 'bump';
1728
+ type: 'u8';
1729
+ },
1730
+ {
1731
+ name: 'authority';
1732
+ type: 'pubkey';
1733
+ },
1734
+ {
1735
+ name: 'name';
1736
+ type: 'string';
1737
+ },
1738
+ {
1739
+ name: 'tokenAccount';
1740
+ type: 'pubkey';
1741
+ },
1742
+ {
1743
+ name: 'tickerAddress';
1744
+ type: 'pubkey';
1745
+ },
1746
+ {
1747
+ name: 'totalDeposited';
1748
+ type: 'u64';
1749
+ },
1750
+ {
1751
+ name: 'totalWithdrawn';
1752
+ type: 'u64';
1753
+ },
1754
+ {
1755
+ name: 'initTs';
1756
+ type: 'i64';
1757
+ },
1758
+ {
1759
+ name: 'netDeposits';
1760
+ type: 'u128';
1761
+ },
1762
+ {
1763
+ name: 'netWithdraws';
1764
+ type: 'u128';
1765
+ },
1766
+ {
1767
+ name: 'longBalance';
1768
+ type: 'u64';
1769
+ },
1770
+ {
1771
+ name: 'shortBalance';
1772
+ type: 'u64';
1773
+ },
1774
+ {
1775
+ name: 'longPositionsOpened';
1776
+ type: 'u64';
1777
+ },
1778
+ {
1779
+ name: 'shortPositionsOpened';
1780
+ type: 'u64';
1781
+ }
1782
+ ];
1783
+ };
661
1784
  }
662
1785
  ];
663
1786
  };
664
- export declare const IDL: TriadProtocol;