@helium/idls 0.0.9 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/lib/cjs/circuit_breaker.js +2 -51
  2. package/lib/cjs/circuit_breaker.js.map +1 -1
  3. package/lib/cjs/data_credits.js +167 -76
  4. package/lib/cjs/data_credits.js.map +1 -1
  5. package/lib/cjs/helium_entity_manager.js +40 -75
  6. package/lib/cjs/helium_entity_manager.js.map +1 -1
  7. package/lib/cjs/helium_sub_daos.js +1293 -115
  8. package/lib/cjs/helium_sub_daos.js.map +1 -1
  9. package/lib/cjs/lazy_distributor.js +0 -25
  10. package/lib/cjs/lazy_distributor.js.map +1 -1
  11. package/lib/cjs/lazy_transactions.js +127 -8
  12. package/lib/cjs/lazy_transactions.js.map +1 -1
  13. package/lib/cjs/treasury_management.js +0 -10
  14. package/lib/cjs/treasury_management.js.map +1 -1
  15. package/lib/cjs/voter_stake_registry.js +1930 -0
  16. package/lib/cjs/voter_stake_registry.js.map +1 -0
  17. package/lib/esm/circuit_breaker.js +2 -51
  18. package/lib/esm/circuit_breaker.js.map +1 -1
  19. package/lib/esm/data_credits.js +167 -76
  20. package/lib/esm/data_credits.js.map +1 -1
  21. package/lib/esm/helium_entity_manager.js +40 -75
  22. package/lib/esm/helium_entity_manager.js.map +1 -1
  23. package/lib/esm/helium_sub_daos.js +1293 -115
  24. package/lib/esm/helium_sub_daos.js.map +1 -1
  25. package/lib/esm/lazy_distributor.js +0 -25
  26. package/lib/esm/lazy_distributor.js.map +1 -1
  27. package/lib/esm/lazy_transactions.js +127 -8
  28. package/lib/esm/lazy_transactions.js.map +1 -1
  29. package/lib/esm/treasury_management.js +0 -10
  30. package/lib/esm/treasury_management.js.map +1 -1
  31. package/lib/esm/voter_stake_registry.js +1927 -0
  32. package/lib/esm/voter_stake_registry.js.map +1 -0
  33. package/lib/types/circuit_breaker.d.ts +3 -52
  34. package/lib/types/circuit_breaker.d.ts.map +1 -1
  35. package/lib/types/data_credits.d.ts +167 -76
  36. package/lib/types/data_credits.d.ts.map +1 -1
  37. package/lib/types/helium_entity_manager.d.ts +40 -75
  38. package/lib/types/helium_entity_manager.d.ts.map +1 -1
  39. package/lib/types/helium_sub_daos.d.ts +1300 -122
  40. package/lib/types/helium_sub_daos.d.ts.map +1 -1
  41. package/lib/types/lazy_distributor.d.ts +1 -26
  42. package/lib/types/lazy_distributor.d.ts.map +1 -1
  43. package/lib/types/lazy_transactions.d.ts +127 -8
  44. package/lib/types/lazy_transactions.d.ts.map +1 -1
  45. package/lib/types/treasury_management.d.ts +1 -11
  46. package/lib/types/treasury_management.d.ts.map +1 -1
  47. package/lib/types/voter_stake_registry.d.ts +1928 -0
  48. package/lib/types/voter_stake_registry.d.ts.map +1 -0
  49. package/package.json +3 -3
@@ -1,4 +1,4 @@
1
- export declare type HeliumSubDaos = {
1
+ export type HeliumSubDaos = {
2
2
  "version": "0.0.1";
3
3
  "name": "helium_sub_daos";
4
4
  "instructions": [
@@ -76,27 +76,22 @@ export declare type HeliumSubDaos = {
76
76
  "isSigner": false;
77
77
  },
78
78
  {
79
- "name": "systemProgram";
80
- "isMut": false;
81
- "isSigner": false;
82
- },
83
- {
84
- "name": "tokenProgram";
79
+ "name": "hstPool";
85
80
  "isMut": false;
86
81
  "isSigner": false;
87
82
  },
88
83
  {
89
- "name": "circuitBreakerProgram";
84
+ "name": "systemProgram";
90
85
  "isMut": false;
91
86
  "isSigner": false;
92
87
  },
93
88
  {
94
- "name": "clock";
89
+ "name": "tokenProgram";
95
90
  "isMut": false;
96
91
  "isSigner": false;
97
92
  },
98
93
  {
99
- "name": "rent";
94
+ "name": "circuitBreakerProgram";
100
95
  "isMut": false;
101
96
  "isSigner": false;
102
97
  }
@@ -256,6 +251,51 @@ export declare type HeliumSubDaos = {
256
251
  "isMut": false;
257
252
  "isSigner": false;
258
253
  },
254
+ {
255
+ "name": "delegatorPoolCircuitBreaker";
256
+ "isMut": true;
257
+ "isSigner": false;
258
+ "pda": {
259
+ "seeds": [
260
+ {
261
+ "kind": "const";
262
+ "type": "string";
263
+ "value": "account_windowed_breaker";
264
+ },
265
+ {
266
+ "kind": "account";
267
+ "type": "publicKey";
268
+ "account": "TokenAccount";
269
+ "path": "delegator_pool";
270
+ }
271
+ ];
272
+ "programId": {
273
+ "kind": "account";
274
+ "type": "publicKey";
275
+ "path": "circuit_breaker_program";
276
+ };
277
+ };
278
+ },
279
+ {
280
+ "name": "delegatorPool";
281
+ "isMut": true;
282
+ "isSigner": false;
283
+ "pda": {
284
+ "seeds": [
285
+ {
286
+ "kind": "const";
287
+ "type": "string";
288
+ "value": "delegator_pool";
289
+ },
290
+ {
291
+ "kind": "account";
292
+ "type": "publicKey";
293
+ "account": "Mint";
294
+ "path": "dnt_mint";
295
+ }
296
+ ];
297
+ };
298
+ },
259
299
  {
260
300
  "name": "activeDeviceAggregator";
261
301
  "isMut": false;
@@ -287,12 +327,37 @@ export declare type HeliumSubDaos = {
287
327
  "isSigner": false;
288
328
  },
289
329
  {
290
- "name": "clock";
291
- "isMut": false;
330
+ "name": "thread";
331
+ "isMut": true;
292
332
  "isSigner": false;
333
+ "pda": {
334
+ "seeds": [
335
+ {
336
+ "kind": "const";
337
+ "type": "string";
338
+ "value": "thread";
339
+ },
340
+ {
341
+ "kind": "account";
342
+ "type": "publicKey";
343
+ "account": "SubDaoV0";
344
+ "path": "sub_dao";
345
+ },
346
+ {
347
+ "kind": "const";
348
+ "type": "string";
349
+ "value": "end-epoch";
350
+ }
351
+ ];
352
+ "programId": {
353
+ "kind": "account";
354
+ "type": "publicKey";
355
+ "path": "clockwork";
356
+ };
357
+ };
293
358
  },
294
359
  {
295
- "name": "rent";
360
+ "name": "clockwork";
296
361
  "isMut": false;
297
362
  "isSigner": false;
298
363
  }
@@ -316,18 +381,24 @@ export declare type HeliumSubDaos = {
316
381
  },
317
382
  {
318
383
  "name": "subDao";
319
- "isMut": false;
384
+ "isMut": true;
320
385
  "isSigner": false;
321
386
  "relations": [
322
387
  "dao"
323
388
  ];
324
389
  },
390
+ {
391
+ "name": "registrar";
392
+ "isMut": false;
393
+ "isSigner": false;
394
+ },
325
395
  {
326
396
  "name": "dao";
327
397
  "isMut": false;
328
398
  "isSigner": false;
329
399
  "relations": [
330
- "dc_mint"
400
+ "dc_mint",
401
+ "registrar"
331
402
  ];
332
403
  },
333
404
  {
@@ -353,16 +424,6 @@ export declare type HeliumSubDaos = {
353
424
  "name": "systemProgram";
354
425
  "isMut": false;
355
426
  "isSigner": false;
356
- },
357
- {
358
- "name": "clock";
359
- "isMut": false;
360
- "isSigner": false;
361
- },
362
- {
363
- "name": "rent";
364
- "isMut": false;
365
- "isSigner": false;
366
427
  }
367
428
  ];
368
429
  "args": [
@@ -382,15 +443,29 @@ export declare type HeliumSubDaos = {
382
443
  "isMut": true;
383
444
  "isSigner": true;
384
445
  },
446
+ {
447
+ "name": "registrar";
448
+ "isMut": false;
449
+ "isSigner": false;
450
+ },
385
451
  {
386
452
  "name": "dao";
387
453
  "isMut": false;
388
454
  "isSigner": false;
455
+ "relations": [
456
+ "registrar",
457
+ "hnt_mint"
458
+ ];
389
459
  },
390
460
  {
391
- "name": "subDao";
461
+ "name": "hntMint";
392
462
  "isMut": false;
393
463
  "isSigner": false;
464
+ },
465
+ {
466
+ "name": "subDao";
467
+ "isMut": true;
468
+ "isSigner": false;
394
469
  "relations": [
395
470
  "dao",
396
471
  "active_device_aggregator"
@@ -409,6 +484,11 @@ export declare type HeliumSubDaos = {
409
484
  "isMut": false;
410
485
  "isSigner": false;
411
486
  },
487
+ {
488
+ "name": "prevDaoEpochInfo";
489
+ "isMut": false;
490
+ "isSigner": false;
491
+ },
412
492
  {
413
493
  "name": "daoEpochInfo";
414
494
  "isMut": true;
@@ -464,17 +544,52 @@ export declare type HeliumSubDaos = {
464
544
  };
465
545
  },
466
546
  {
467
- "name": "clock";
547
+ "name": "systemProgram";
468
548
  "isMut": false;
469
549
  "isSigner": false;
470
550
  },
471
551
  {
472
- "name": "rent";
552
+ "name": "tokenProgram";
473
553
  "isMut": false;
474
554
  "isSigner": false;
475
555
  },
476
556
  {
477
- "name": "systemProgram";
557
+ "name": "circuitBreakerProgram";
558
+ "isMut": false;
559
+ "isSigner": false;
560
+ },
561
+ {
562
+ "name": "thread";
563
+ "isMut": true;
564
+ "isSigner": false;
565
+ "pda": {
566
+ "seeds": [
567
+ {
568
+ "kind": "const";
569
+ "type": "string";
570
+ "value": "thread";
571
+ },
572
+ {
573
+ "kind": "account";
574
+ "type": "publicKey";
575
+ "account": "SubDaoV0";
576
+ "path": "sub_dao";
577
+ },
578
+ {
579
+ "kind": "const";
580
+ "type": "string";
581
+ "value": "end-epoch";
582
+ }
583
+ ];
584
+ "programId": {
585
+ "kind": "account";
586
+ "type": "publicKey";
587
+ "path": "clockwork";
588
+ };
589
+ };
590
+ },
591
+ {
592
+ "name": "clockwork";
478
593
  "isMut": false;
479
594
  "isSigner": false;
480
595
  }
@@ -487,6 +602,9 @@ export declare type HeliumSubDaos = {
487
602
  };
488
603
  }
489
604
  ];
605
+ "returns": {
606
+ "defined": "ThreadResponse";
607
+ };
490
608
  },
491
609
  {
492
610
  "name": "issueRewardsV0";
@@ -507,12 +625,13 @@ export declare type HeliumSubDaos = {
507
625
  "dao",
508
626
  "treasury",
509
627
  "dnt_mint",
510
- "rewards_escrow"
628
+ "rewards_escrow",
629
+ "delegator_pool"
511
630
  ];
512
631
  },
513
632
  {
514
633
  "name": "daoEpochInfo";
515
- "isMut": false;
634
+ "isMut": true;
516
635
  "isSigner": false;
517
636
  "pda": {
518
637
  "seeds": [
@@ -542,7 +661,7 @@ export declare type HeliumSubDaos = {
542
661
  },
543
662
  {
544
663
  "name": "subDaoEpochInfo";
545
- "isMut": false;
664
+ "isMut": true;
546
665
  "isSigner": false;
547
666
  "pda": {
548
667
  "seeds": [
@@ -641,22 +760,22 @@ export declare type HeliumSubDaos = {
641
760
  "isSigner": false;
642
761
  },
643
762
  {
644
- "name": "systemProgram";
645
- "isMut": false;
763
+ "name": "delegatorPool";
764
+ "isMut": true;
646
765
  "isSigner": false;
647
766
  },
648
767
  {
649
- "name": "tokenProgram";
768
+ "name": "systemProgram";
650
769
  "isMut": false;
651
770
  "isSigner": false;
652
771
  },
653
772
  {
654
- "name": "circuitBreakerProgram";
773
+ "name": "tokenProgram";
655
774
  "isMut": false;
656
775
  "isSigner": false;
657
776
  },
658
777
  {
659
- "name": "clock";
778
+ "name": "circuitBreakerProgram";
660
779
  "isMut": false;
661
780
  "isSigner": false;
662
781
  }
@@ -669,92 +788,948 @@ export declare type HeliumSubDaos = {
669
788
  };
670
789
  }
671
790
  ];
672
- }
673
- ];
674
- "accounts": [
675
- {
676
- "name": "daoV0";
677
- "type": {
678
- "kind": "struct";
679
- "fields": [
680
- {
681
- "name": "hntMint";
682
- "type": "publicKey";
683
- },
684
- {
685
- "name": "dcMint";
686
- "type": "publicKey";
687
- },
688
- {
689
- "name": "authority";
690
- "type": "publicKey";
691
- },
692
- {
693
- "name": "numSubDaos";
694
- "type": "u32";
695
- },
696
- {
697
- "name": "emissionSchedule";
698
- "type": {
699
- "vec": {
700
- "defined": "EmissionScheduleItem";
701
- };
702
- };
703
- },
704
- {
705
- "name": "bumpSeed";
706
- "type": "u8";
707
- }
708
- ];
709
- };
710
791
  },
711
792
  {
712
- "name": "daoEpochInfoV0";
713
- "type": {
714
- "kind": "struct";
715
- "fields": [
716
- {
717
- "name": "epoch";
718
- "type": "u64";
719
- },
720
- {
721
- "name": "dao";
722
- "type": "publicKey";
723
- },
724
- {
725
- "name": "totalUtilityScore";
726
- "docs": [
727
- "Precise number with 12 decimals"
793
+ "name": "delegateV0";
794
+ "accounts": [
795
+ {
796
+ "name": "payer";
797
+ "isMut": true;
798
+ "isSigner": true;
799
+ },
800
+ {
801
+ "name": "position";
802
+ "isMut": false;
803
+ "isSigner": false;
804
+ "pda": {
805
+ "seeds": [
806
+ {
807
+ "kind": "const";
808
+ "type": "string";
809
+ "value": "position";
810
+ },
811
+ {
812
+ "kind": "account";
813
+ "type": "publicKey";
814
+ "account": "Mint";
815
+ "path": "mint";
816
+ }
728
817
  ];
729
- "type": "u128";
730
- },
731
- {
732
- "name": "numUtilityScoresCalculated";
733
- "type": "u32";
734
- },
735
- {
736
- "name": "numRewardsIssued";
737
- "type": "u32";
738
- },
739
- {
740
- "name": "doneIssuingRewards";
741
- "type": "bool";
742
- },
743
- {
744
- "name": "bumpSeed";
745
- "type": "u8";
746
- }
747
- ];
748
- };
749
- },
750
- {
751
- "name": "subDaoEpochInfoV0";
752
- "type": {
753
- "kind": "struct";
754
- "fields": [
755
- {
756
- "name": "epoch";
757
- "type": "u64";
818
+ "programId": {
819
+ "kind": "account";
820
+ "type": "publicKey";
821
+ "path": "vsr_program";
822
+ };
823
+ };
824
+ "relations": [
825
+ "mint",
826
+ "registrar"
827
+ ];
828
+ },
829
+ {
830
+ "name": "mint";
831
+ "isMut": false;
832
+ "isSigner": false;
833
+ },
834
+ {
835
+ "name": "positionTokenAccount";
836
+ "isMut": false;
837
+ "isSigner": false;
838
+ },
839
+ {
840
+ "name": "positionAuthority";
841
+ "isMut": true;
842
+ "isSigner": true;
843
+ },
844
+ {
845
+ "name": "registrar";
846
+ "isMut": false;
847
+ "isSigner": false;
848
+ },
849
+ {
850
+ "name": "dao";
851
+ "isMut": false;
852
+ "isSigner": false;
853
+ "relations": [
854
+ "registrar"
855
+ ];
856
+ },
857
+ {
858
+ "name": "subDao";
859
+ "isMut": true;
860
+ "isSigner": false;
861
+ "relations": [
862
+ "dao"
863
+ ];
864
+ },
865
+ {
866
+ "name": "subDaoEpochInfo";
867
+ "isMut": true;
868
+ "isSigner": false;
869
+ },
870
+ {
871
+ "name": "closingTimeSubDaoEpochInfo";
872
+ "isMut": true;
873
+ "isSigner": false;
874
+ },
875
+ {
876
+ "name": "delegatedPosition";
877
+ "isMut": true;
878
+ "isSigner": false;
879
+ "pda": {
880
+ "seeds": [
881
+ {
882
+ "kind": "const";
883
+ "type": "string";
884
+ "value": "delegated_position";
885
+ },
886
+ {
887
+ "kind": "account";
888
+ "type": "publicKey";
889
+ "account": "PositionV0";
890
+ "path": "position";
891
+ }
892
+ ];
893
+ };
894
+ },
895
+ {
896
+ "name": "vsrProgram";
897
+ "isMut": false;
898
+ "isSigner": false;
899
+ },
900
+ {
901
+ "name": "systemProgram";
902
+ "isMut": false;
903
+ "isSigner": false;
904
+ }
905
+ ];
906
+ "args": [];
907
+ },
908
+ {
909
+ "name": "closeDelegationV0";
910
+ "accounts": [
911
+ {
912
+ "name": "payer";
913
+ "isMut": true;
914
+ "isSigner": true;
915
+ },
916
+ {
917
+ "name": "position";
918
+ "isMut": false;
919
+ "isSigner": false;
920
+ "pda": {
921
+ "seeds": [
922
+ {
923
+ "kind": "const";
924
+ "type": "string";
925
+ "value": "position";
926
+ },
927
+ {
928
+ "kind": "account";
929
+ "type": "publicKey";
930
+ "account": "Mint";
931
+ "path": "mint";
932
+ }
933
+ ];
934
+ "programId": {
935
+ "kind": "account";
936
+ "type": "publicKey";
937
+ "path": "vsr_program";
938
+ };
939
+ };
940
+ "relations": [
941
+ "mint",
942
+ "registrar"
943
+ ];
944
+ },
945
+ {
946
+ "name": "mint";
947
+ "isMut": false;
948
+ "isSigner": false;
949
+ },
950
+ {
951
+ "name": "positionTokenAccount";
952
+ "isMut": false;
953
+ "isSigner": false;
954
+ },
955
+ {
956
+ "name": "positionAuthority";
957
+ "isMut": true;
958
+ "isSigner": true;
959
+ },
960
+ {
961
+ "name": "registrar";
962
+ "isMut": false;
963
+ "isSigner": false;
964
+ },
965
+ {
966
+ "name": "dao";
967
+ "isMut": false;
968
+ "isSigner": false;
969
+ "relations": [
970
+ "registrar"
971
+ ];
972
+ },
973
+ {
974
+ "name": "subDao";
975
+ "isMut": true;
976
+ "isSigner": false;
977
+ "relations": [
978
+ "dao"
979
+ ];
980
+ },
981
+ {
982
+ "name": "delegatedPosition";
983
+ "isMut": true;
984
+ "isSigner": false;
985
+ "pda": {
986
+ "seeds": [
987
+ {
988
+ "kind": "const";
989
+ "type": "string";
990
+ "value": "delegated_position";
991
+ },
992
+ {
993
+ "kind": "account";
994
+ "type": "publicKey";
995
+ "account": "PositionV0";
996
+ "path": "position";
997
+ }
998
+ ];
999
+ };
1000
+ "relations": [
1001
+ "sub_dao"
1002
+ ];
1003
+ },
1004
+ {
1005
+ "name": "subDaoEpochInfo";
1006
+ "isMut": true;
1007
+ "isSigner": false;
1008
+ },
1009
+ {
1010
+ "name": "vsrProgram";
1011
+ "isMut": false;
1012
+ "isSigner": false;
1013
+ },
1014
+ {
1015
+ "name": "systemProgram";
1016
+ "isMut": false;
1017
+ "isSigner": false;
1018
+ }
1019
+ ];
1020
+ "args": [];
1021
+ },
1022
+ {
1023
+ "name": "claimRewardsV0";
1024
+ "accounts": [
1025
+ {
1026
+ "name": "position";
1027
+ "isMut": false;
1028
+ "isSigner": false;
1029
+ "pda": {
1030
+ "seeds": [
1031
+ {
1032
+ "kind": "const";
1033
+ "type": "string";
1034
+ "value": "position";
1035
+ },
1036
+ {
1037
+ "kind": "account";
1038
+ "type": "publicKey";
1039
+ "account": "Mint";
1040
+ "path": "mint";
1041
+ }
1042
+ ];
1043
+ "programId": {
1044
+ "kind": "account";
1045
+ "type": "publicKey";
1046
+ "path": "vsr_program";
1047
+ };
1048
+ };
1049
+ "relations": [
1050
+ "mint",
1051
+ "registrar"
1052
+ ];
1053
+ },
1054
+ {
1055
+ "name": "mint";
1056
+ "isMut": false;
1057
+ "isSigner": false;
1058
+ },
1059
+ {
1060
+ "name": "positionTokenAccount";
1061
+ "isMut": false;
1062
+ "isSigner": false;
1063
+ },
1064
+ {
1065
+ "name": "positionAuthority";
1066
+ "isMut": true;
1067
+ "isSigner": true;
1068
+ },
1069
+ {
1070
+ "name": "registrar";
1071
+ "isMut": false;
1072
+ "isSigner": false;
1073
+ },
1074
+ {
1075
+ "name": "dao";
1076
+ "isMut": false;
1077
+ "isSigner": false;
1078
+ "relations": [
1079
+ "registrar"
1080
+ ];
1081
+ },
1082
+ {
1083
+ "name": "subDao";
1084
+ "isMut": true;
1085
+ "isSigner": false;
1086
+ "relations": [
1087
+ "delegator_pool",
1088
+ "dnt_mint",
1089
+ "dao"
1090
+ ];
1091
+ },
1092
+ {
1093
+ "name": "delegatedPosition";
1094
+ "isMut": true;
1095
+ "isSigner": false;
1096
+ "pda": {
1097
+ "seeds": [
1098
+ {
1099
+ "kind": "const";
1100
+ "type": "string";
1101
+ "value": "delegated_position";
1102
+ },
1103
+ {
1104
+ "kind": "account";
1105
+ "type": "publicKey";
1106
+ "account": "PositionV0";
1107
+ "path": "position";
1108
+ }
1109
+ ];
1110
+ };
1111
+ "relations": [
1112
+ "sub_dao"
1113
+ ];
1114
+ },
1115
+ {
1116
+ "name": "dntMint";
1117
+ "isMut": false;
1118
+ "isSigner": false;
1119
+ },
1120
+ {
1121
+ "name": "subDaoEpochInfo";
1122
+ "isMut": false;
1123
+ "isSigner": false;
1124
+ "pda": {
1125
+ "seeds": [
1126
+ {
1127
+ "kind": "const";
1128
+ "type": "string";
1129
+ "value": "sub_dao_epoch_info";
1130
+ },
1131
+ {
1132
+ "kind": "account";
1133
+ "type": "publicKey";
1134
+ "account": "SubDaoV0";
1135
+ "path": "sub_dao";
1136
+ },
1137
+ {
1138
+ "kind": "arg";
1139
+ "type": {
1140
+ "defined": "ClaimRewardsArgsV0";
1141
+ };
1142
+ "path": "args.epoch";
1143
+ }
1144
+ ];
1145
+ };
1146
+ },
1147
+ {
1148
+ "name": "delegatorPool";
1149
+ "isMut": true;
1150
+ "isSigner": false;
1151
+ },
1152
+ {
1153
+ "name": "delegatorAta";
1154
+ "isMut": true;
1155
+ "isSigner": false;
1156
+ },
1157
+ {
1158
+ "name": "delegatorPoolCircuitBreaker";
1159
+ "isMut": true;
1160
+ "isSigner": false;
1161
+ "pda": {
1162
+ "seeds": [
1163
+ {
1164
+ "kind": "const";
1165
+ "type": "string";
1166
+ "value": "account_windowed_breaker";
1167
+ },
1168
+ {
1169
+ "kind": "account";
1170
+ "type": "publicKey";
1171
+ "account": "TokenAccount";
1172
+ "path": "delegator_pool";
1173
+ }
1174
+ ];
1175
+ "programId": {
1176
+ "kind": "account";
1177
+ "type": "publicKey";
1178
+ "path": "circuit_breaker_program";
1179
+ };
1180
+ };
1181
+ },
1182
+ {
1183
+ "name": "vsrProgram";
1184
+ "isMut": false;
1185
+ "isSigner": false;
1186
+ },
1187
+ {
1188
+ "name": "systemProgram";
1189
+ "isMut": false;
1190
+ "isSigner": false;
1191
+ },
1192
+ {
1193
+ "name": "circuitBreakerProgram";
1194
+ "isMut": false;
1195
+ "isSigner": false;
1196
+ },
1197
+ {
1198
+ "name": "associatedTokenProgram";
1199
+ "isMut": false;
1200
+ "isSigner": false;
1201
+ },
1202
+ {
1203
+ "name": "tokenProgram";
1204
+ "isMut": false;
1205
+ "isSigner": false;
1206
+ }
1207
+ ];
1208
+ "args": [
1209
+ {
1210
+ "name": "args";
1211
+ "type": {
1212
+ "defined": "ClaimRewardsArgsV0";
1213
+ };
1214
+ }
1215
+ ];
1216
+ },
1217
+ {
1218
+ "name": "transferV0";
1219
+ "accounts": [
1220
+ {
1221
+ "name": "registrar";
1222
+ "isMut": false;
1223
+ "isSigner": false;
1224
+ },
1225
+ {
1226
+ "name": "dao";
1227
+ "isMut": false;
1228
+ "isSigner": false;
1229
+ "pda": {
1230
+ "seeds": [
1231
+ {
1232
+ "kind": "const";
1233
+ "type": "string";
1234
+ "value": "dao";
1235
+ },
1236
+ {
1237
+ "kind": "account";
1238
+ "type": "publicKey";
1239
+ "account": "Mint";
1240
+ "path": "deposit_mint";
1241
+ }
1242
+ ];
1243
+ };
1244
+ "relations": [
1245
+ "registrar"
1246
+ ];
1247
+ },
1248
+ {
1249
+ "name": "sourcePosition";
1250
+ "isMut": true;
1251
+ "isSigner": false;
1252
+ "pda": {
1253
+ "seeds": [
1254
+ {
1255
+ "kind": "const";
1256
+ "type": "string";
1257
+ "value": "position";
1258
+ },
1259
+ {
1260
+ "kind": "account";
1261
+ "type": "publicKey";
1262
+ "account": "Mint";
1263
+ "path": "mint";
1264
+ }
1265
+ ];
1266
+ "programId": {
1267
+ "kind": "account";
1268
+ "type": "publicKey";
1269
+ "path": "vsr_program";
1270
+ };
1271
+ };
1272
+ "relations": [
1273
+ "registrar",
1274
+ "mint"
1275
+ ];
1276
+ },
1277
+ {
1278
+ "name": "sourceDelegatedPosition";
1279
+ "isMut": false;
1280
+ "isSigner": false;
1281
+ "pda": {
1282
+ "seeds": [
1283
+ {
1284
+ "kind": "const";
1285
+ "type": "string";
1286
+ "value": "delegated_position";
1287
+ },
1288
+ {
1289
+ "kind": "account";
1290
+ "type": "publicKey";
1291
+ "account": "PositionV0";
1292
+ "path": "source_position";
1293
+ }
1294
+ ];
1295
+ };
1296
+ },
1297
+ {
1298
+ "name": "mint";
1299
+ "isMut": false;
1300
+ "isSigner": false;
1301
+ },
1302
+ {
1303
+ "name": "positionTokenAccount";
1304
+ "isMut": false;
1305
+ "isSigner": false;
1306
+ },
1307
+ {
1308
+ "name": "positionAuthority";
1309
+ "isMut": false;
1310
+ "isSigner": true;
1311
+ },
1312
+ {
1313
+ "name": "targetPosition";
1314
+ "isMut": true;
1315
+ "isSigner": false;
1316
+ "relations": [
1317
+ "registrar"
1318
+ ];
1319
+ },
1320
+ {
1321
+ "name": "targetDelegatedPosition";
1322
+ "isMut": false;
1323
+ "isSigner": false;
1324
+ "pda": {
1325
+ "seeds": [
1326
+ {
1327
+ "kind": "const";
1328
+ "type": "string";
1329
+ "value": "delegated_position";
1330
+ },
1331
+ {
1332
+ "kind": "account";
1333
+ "type": "publicKey";
1334
+ "account": "PositionV0";
1335
+ "path": "target_position";
1336
+ }
1337
+ ];
1338
+ };
1339
+ },
1340
+ {
1341
+ "name": "depositMint";
1342
+ "isMut": false;
1343
+ "isSigner": false;
1344
+ },
1345
+ {
1346
+ "name": "sourceVault";
1347
+ "isMut": true;
1348
+ "isSigner": false;
1349
+ },
1350
+ {
1351
+ "name": "targetVault";
1352
+ "isMut": true;
1353
+ "isSigner": false;
1354
+ },
1355
+ {
1356
+ "name": "vsrProgram";
1357
+ "isMut": false;
1358
+ "isSigner": false;
1359
+ },
1360
+ {
1361
+ "name": "tokenProgram";
1362
+ "isMut": false;
1363
+ "isSigner": false;
1364
+ },
1365
+ {
1366
+ "name": "associatedTokenProgram";
1367
+ "isMut": false;
1368
+ "isSigner": false;
1369
+ }
1370
+ ];
1371
+ "args": [
1372
+ {
1373
+ "name": "args";
1374
+ "type": {
1375
+ "defined": "TransferArgsV0";
1376
+ };
1377
+ }
1378
+ ];
1379
+ },
1380
+ {
1381
+ "name": "issueHstPoolV0";
1382
+ "accounts": [
1383
+ {
1384
+ "name": "dao";
1385
+ "isMut": false;
1386
+ "isSigner": false;
1387
+ "relations": [
1388
+ "hnt_mint",
1389
+ "hst_pool"
1390
+ ];
1391
+ },
1392
+ {
1393
+ "name": "daoEpochInfo";
1394
+ "isMut": true;
1395
+ "isSigner": false;
1396
+ "pda": {
1397
+ "seeds": [
1398
+ {
1399
+ "kind": "const";
1400
+ "type": "string";
1401
+ "value": "dao_epoch_info";
1402
+ },
1403
+ {
1404
+ "kind": "account";
1405
+ "type": "publicKey";
1406
+ "account": "DaoV0";
1407
+ "path": "dao";
1408
+ },
1409
+ {
1410
+ "kind": "arg";
1411
+ "type": {
1412
+ "defined": "IssueHstPoolArgsV0";
1413
+ };
1414
+ "path": "args.epoch";
1415
+ }
1416
+ ];
1417
+ };
1418
+ "relations": [
1419
+ "dao"
1420
+ ];
1421
+ },
1422
+ {
1423
+ "name": "hntCircuitBreaker";
1424
+ "isMut": true;
1425
+ "isSigner": false;
1426
+ "pda": {
1427
+ "seeds": [
1428
+ {
1429
+ "kind": "const";
1430
+ "type": "string";
1431
+ "value": "mint_windowed_breaker";
1432
+ },
1433
+ {
1434
+ "kind": "account";
1435
+ "type": "publicKey";
1436
+ "account": "Mint";
1437
+ "path": "hnt_mint";
1438
+ }
1439
+ ];
1440
+ "programId": {
1441
+ "kind": "account";
1442
+ "type": "publicKey";
1443
+ "path": "circuit_breaker_program";
1444
+ };
1445
+ };
1446
+ },
1447
+ {
1448
+ "name": "hntMint";
1449
+ "isMut": true;
1450
+ "isSigner": false;
1451
+ },
1452
+ {
1453
+ "name": "hstPool";
1454
+ "isMut": true;
1455
+ "isSigner": false;
1456
+ },
1457
+ {
1458
+ "name": "tokenProgram";
1459
+ "isMut": false;
1460
+ "isSigner": false;
1461
+ },
1462
+ {
1463
+ "name": "circuitBreakerProgram";
1464
+ "isMut": false;
1465
+ "isSigner": false;
1466
+ }
1467
+ ];
1468
+ "args": [
1469
+ {
1470
+ "name": "args";
1471
+ "type": {
1472
+ "defined": "IssueHstPoolArgsV0";
1473
+ };
1474
+ }
1475
+ ];
1476
+ },
1477
+ {
1478
+ "name": "resetLockupV0";
1479
+ "accounts": [
1480
+ {
1481
+ "name": "registrar";
1482
+ "isMut": false;
1483
+ "isSigner": false;
1484
+ },
1485
+ {
1486
+ "name": "dao";
1487
+ "isMut": false;
1488
+ "isSigner": false;
1489
+ "relations": [
1490
+ "registrar"
1491
+ ];
1492
+ },
1493
+ {
1494
+ "name": "position";
1495
+ "isMut": true;
1496
+ "isSigner": false;
1497
+ "pda": {
1498
+ "seeds": [
1499
+ {
1500
+ "kind": "const";
1501
+ "type": "string";
1502
+ "value": "position";
1503
+ },
1504
+ {
1505
+ "kind": "account";
1506
+ "type": "publicKey";
1507
+ "account": "Mint";
1508
+ "path": "mint";
1509
+ }
1510
+ ];
1511
+ "programId": {
1512
+ "kind": "account";
1513
+ "type": "publicKey";
1514
+ "path": "vsr_program";
1515
+ };
1516
+ };
1517
+ "relations": [
1518
+ "registrar",
1519
+ "mint"
1520
+ ];
1521
+ },
1522
+ {
1523
+ "name": "delegatedPosition";
1524
+ "isMut": false;
1525
+ "isSigner": false;
1526
+ "pda": {
1527
+ "seeds": [
1528
+ {
1529
+ "kind": "const";
1530
+ "type": "string";
1531
+ "value": "delegated_position";
1532
+ },
1533
+ {
1534
+ "kind": "account";
1535
+ "type": "publicKey";
1536
+ "account": "PositionV0";
1537
+ "path": "position";
1538
+ }
1539
+ ];
1540
+ };
1541
+ },
1542
+ {
1543
+ "name": "mint";
1544
+ "isMut": false;
1545
+ "isSigner": false;
1546
+ },
1547
+ {
1548
+ "name": "positionTokenAccount";
1549
+ "isMut": false;
1550
+ "isSigner": false;
1551
+ },
1552
+ {
1553
+ "name": "positionAuthority";
1554
+ "isMut": false;
1555
+ "isSigner": true;
1556
+ },
1557
+ {
1558
+ "name": "vsrProgram";
1559
+ "isMut": false;
1560
+ "isSigner": false;
1561
+ }
1562
+ ];
1563
+ "args": [
1564
+ {
1565
+ "name": "args";
1566
+ "type": {
1567
+ "defined": "ResetLockupArgsV0";
1568
+ };
1569
+ }
1570
+ ];
1571
+ }
1572
+ ];
1573
+ "accounts": [
1574
+ {
1575
+ "name": "daoV0";
1576
+ "type": {
1577
+ "kind": "struct";
1578
+ "fields": [
1579
+ {
1580
+ "name": "hntMint";
1581
+ "type": "publicKey";
1582
+ },
1583
+ {
1584
+ "name": "dcMint";
1585
+ "type": "publicKey";
1586
+ },
1587
+ {
1588
+ "name": "authority";
1589
+ "type": "publicKey";
1590
+ },
1591
+ {
1592
+ "name": "registrar";
1593
+ "type": "publicKey";
1594
+ },
1595
+ {
1596
+ "name": "hstPool";
1597
+ "type": "publicKey";
1598
+ },
1599
+ {
1600
+ "name": "netEmissionsCap";
1601
+ "type": "u64";
1602
+ },
1603
+ {
1604
+ "name": "numSubDaos";
1605
+ "type": "u32";
1606
+ },
1607
+ {
1608
+ "name": "emissionSchedule";
1609
+ "type": {
1610
+ "vec": {
1611
+ "defined": "EmissionScheduleItem";
1612
+ };
1613
+ };
1614
+ },
1615
+ {
1616
+ "name": "hstEmissionSchedule";
1617
+ "type": {
1618
+ "vec": {
1619
+ "defined": "PercentItem";
1620
+ };
1621
+ };
1622
+ },
1623
+ {
1624
+ "name": "bumpSeed";
1625
+ "type": "u8";
1626
+ }
1627
+ ];
1628
+ };
1629
+ },
1630
+ {
1631
+ "name": "daoEpochInfoV0";
1632
+ "type": {
1633
+ "kind": "struct";
1634
+ "fields": [
1635
+ {
1636
+ "name": "epoch";
1637
+ "type": "u64";
1638
+ },
1639
+ {
1640
+ "name": "dao";
1641
+ "type": "publicKey";
1642
+ },
1643
+ {
1644
+ "name": "totalRewards";
1645
+ "type": "u64";
1646
+ },
1647
+ {
1648
+ "name": "currentHntSupply";
1649
+ "type": "u64";
1650
+ },
1651
+ {
1652
+ "name": "totalUtilityScore";
1653
+ "docs": [
1654
+ "Precise number with 12 decimals"
1655
+ ];
1656
+ "type": "u128";
1657
+ },
1658
+ {
1659
+ "name": "numUtilityScoresCalculated";
1660
+ "type": "u32";
1661
+ },
1662
+ {
1663
+ "name": "numRewardsIssued";
1664
+ "type": "u32";
1665
+ },
1666
+ {
1667
+ "name": "doneIssuingRewards";
1668
+ "type": "bool";
1669
+ },
1670
+ {
1671
+ "name": "doneIssuingHstPool";
1672
+ "type": "bool";
1673
+ },
1674
+ {
1675
+ "name": "bumpSeed";
1676
+ "type": "u8";
1677
+ }
1678
+ ];
1679
+ };
1680
+ },
1681
+ {
1682
+ "name": "delegatedPositionV0";
1683
+ "type": {
1684
+ "kind": "struct";
1685
+ "fields": [
1686
+ {
1687
+ "name": "mint";
1688
+ "type": "publicKey";
1689
+ },
1690
+ {
1691
+ "name": "position";
1692
+ "type": "publicKey";
1693
+ },
1694
+ {
1695
+ "name": "hntAmount";
1696
+ "type": "u64";
1697
+ },
1698
+ {
1699
+ "name": "subDao";
1700
+ "type": "publicKey";
1701
+ },
1702
+ {
1703
+ "name": "lastClaimedEpoch";
1704
+ "type": "u64";
1705
+ },
1706
+ {
1707
+ "name": "fallRate";
1708
+ "type": "u128";
1709
+ },
1710
+ {
1711
+ "name": "startTs";
1712
+ "type": "i64";
1713
+ },
1714
+ {
1715
+ "name": "purged";
1716
+ "type": "bool";
1717
+ },
1718
+ {
1719
+ "name": "bumpSeed";
1720
+ "type": "u8";
1721
+ }
1722
+ ];
1723
+ };
1724
+ },
1725
+ {
1726
+ "name": "subDaoEpochInfoV0";
1727
+ "type": {
1728
+ "kind": "struct";
1729
+ "fields": [
1730
+ {
1731
+ "name": "epoch";
1732
+ "type": "u64";
758
1733
  },
759
1734
  {
760
1735
  "name": "subDao";
@@ -764,6 +1739,35 @@ export declare type HeliumSubDaos = {
764
1739
  "name": "dcBurned";
765
1740
  "type": "u64";
766
1741
  },
1742
+ {
1743
+ "name": "vehntAtEpochStart";
1744
+ "type": "u64";
1745
+ },
1746
+ {
1747
+ "name": "vehntInClosingPositions";
1748
+ "docs": [
1749
+ "The vehnt amount associated with positions that are closing this epoch. This is the amount that will be subtracted from the subdao",
1750
+ "total vehnt after the epoch passes. Typically these positions close somewhere between the epoch start and end time, so we cannot rely",
1751
+ "on fall rate calculations alone without knowing the exact end date of each position. Instead, just keep track of what needs to be",
1752
+ "removed."
1753
+ ];
1754
+ "type": "u64";
1755
+ },
1756
+ {
1757
+ "name": "fallRatesFromClosingPositions";
1758
+ "docs": [
1759
+ "The vehnt amount that is decaying per second, with 12 decimals of extra precision. Associated with positions that are closing this epoch,",
1760
+ "which means they must be subtracted from the total fall rate on the subdao after this epoch passes"
1761
+ ];
1762
+ "type": "u128";
1763
+ },
1764
+ {
1765
+ "name": "delegationRewardsIssued";
1766
+ "docs": [
1767
+ "The number of delegation rewards issued this epoch, so that delegators can claim their share of the rewards"
1768
+ ];
1769
+ "type": "u64";
1770
+ },
767
1771
  {
768
1772
  "name": "utilityScore";
769
1773
  "docs": [
@@ -774,12 +1778,22 @@ export declare type HeliumSubDaos = {
774
1778
  };
775
1779
  },
776
1780
  {
777
- "name": "rewardsIssued";
778
- "type": "bool";
1781
+ "name": "rewardsIssuedAt";
1782
+ "docs": [
1783
+ "The program only needs to know whether or not rewards were issued, however having a history of when they were issued could prove",
1784
+ "useful in the future, or at least for debugging purposes"
1785
+ ];
1786
+ "type": {
1787
+ "option": "i64";
1788
+ };
779
1789
  },
780
1790
  {
781
1791
  "name": "bumpSeed";
782
1792
  "type": "u8";
1793
+ },
1794
+ {
1795
+ "name": "initialized";
1796
+ "type": "bool";
783
1797
  }
784
1798
  ];
785
1799
  };
@@ -805,6 +1819,22 @@ export declare type HeliumSubDaos = {
805
1819
  "name": "rewardsEscrow";
806
1820
  "type": "publicKey";
807
1821
  },
1822
+ {
1823
+ "name": "delegatorPool";
1824
+ "type": "publicKey";
1825
+ },
1826
+ {
1827
+ "name": "vehntDelegated";
1828
+ "type": "u64";
1829
+ },
1830
+ {
1831
+ "name": "vehntLastCalculatedTs";
1832
+ "type": "i64";
1833
+ },
1834
+ {
1835
+ "name": "vehntFallRate";
1836
+ "type": "u128";
1837
+ },
808
1838
  {
809
1839
  "name": "authority";
810
1840
  "type": "publicKey";
@@ -872,6 +1902,48 @@ export declare type HeliumSubDaos = {
872
1902
  ];
873
1903
  };
874
1904
  },
1905
+ {
1906
+ "name": "ClaimRewardsArgsV0";
1907
+ "type": {
1908
+ "kind": "struct";
1909
+ "fields": [
1910
+ {
1911
+ "name": "epoch";
1912
+ "type": "u64";
1913
+ }
1914
+ ];
1915
+ };
1916
+ },
1917
+ {
1918
+ "name": "ResetLockupArgsV0";
1919
+ "type": {
1920
+ "kind": "struct";
1921
+ "fields": [
1922
+ {
1923
+ "name": "kind";
1924
+ "type": {
1925
+ "defined": "LockupKind";
1926
+ };
1927
+ },
1928
+ {
1929
+ "name": "periods";
1930
+ "type": "u32";
1931
+ }
1932
+ ];
1933
+ };
1934
+ },
1935
+ {
1936
+ "name": "TransferArgsV0";
1937
+ "type": {
1938
+ "kind": "struct";
1939
+ "fields": [
1940
+ {
1941
+ "name": "amount";
1942
+ "type": "u64";
1943
+ }
1944
+ ];
1945
+ };
1946
+ },
875
1947
  {
876
1948
  "name": "InitializeDaoArgsV0";
877
1949
  "type": {
@@ -888,6 +1960,22 @@ export declare type HeliumSubDaos = {
888
1960
  "defined": "EmissionScheduleItem";
889
1961
  };
890
1962
  };
1963
+ },
1964
+ {
1965
+ "name": "hstEmissionSchedule";
1966
+ "type": {
1967
+ "vec": {
1968
+ "defined": "PercentItem";
1969
+ };
1970
+ };
1971
+ },
1972
+ {
1973
+ "name": "netEmissionsCap";
1974
+ "type": "u64";
1975
+ },
1976
+ {
1977
+ "name": "registrar";
1978
+ "type": "publicKey";
891
1979
  }
892
1980
  ];
893
1981
  };
@@ -935,6 +2023,18 @@ export declare type HeliumSubDaos = {
935
2023
  ];
936
2024
  };
937
2025
  },
2026
+ {
2027
+ "name": "IssueHstPoolArgsV0";
2028
+ "type": {
2029
+ "kind": "struct";
2030
+ "fields": [
2031
+ {
2032
+ "name": "epoch";
2033
+ "type": "u64";
2034
+ }
2035
+ ];
2036
+ };
2037
+ },
938
2038
  {
939
2039
  "name": "IssueRewardsArgsV0";
940
2040
  "type": {
@@ -979,6 +2079,22 @@ export declare type HeliumSubDaos = {
979
2079
  ];
980
2080
  };
981
2081
  },
2082
+ {
2083
+ "name": "PercentItem";
2084
+ "type": {
2085
+ "kind": "struct";
2086
+ "fields": [
2087
+ {
2088
+ "name": "startUnixTime";
2089
+ "type": "i64";
2090
+ },
2091
+ {
2092
+ "name": "percent";
2093
+ "type": "u8";
2094
+ }
2095
+ ];
2096
+ };
2097
+ },
982
2098
  {
983
2099
  "name": "ThresholdType";
984
2100
  "type": {
@@ -993,6 +2109,23 @@ export declare type HeliumSubDaos = {
993
2109
  ];
994
2110
  };
995
2111
  },
2112
+ {
2113
+ "name": "LockupKind";
2114
+ "type": {
2115
+ "kind": "enum";
2116
+ "variants": [
2117
+ {
2118
+ "name": "None";
2119
+ },
2120
+ {
2121
+ "name": "Cliff";
2122
+ },
2123
+ {
2124
+ "name": "Constant";
2125
+ }
2126
+ ];
2127
+ };
2128
+ },
996
2129
  {
997
2130
  "name": "Curve";
998
2131
  "type": {
@@ -1041,6 +2174,51 @@ export declare type HeliumSubDaos = {
1041
2174
  "code": 6005;
1042
2175
  "name": "NoUtilityScore";
1043
2176
  "msg": "The subdao does not have a utility score";
2177
+ },
2178
+ {
2179
+ "code": 6006;
2180
+ "name": "NotEnoughVeHnt";
2181
+ "msg": "Not enough veHNT";
2182
+ },
2183
+ {
2184
+ "code": 6007;
2185
+ "name": "LockupNotExpired";
2186
+ "msg": "Lockup hasn't expired yet";
2187
+ },
2188
+ {
2189
+ "code": 6008;
2190
+ "name": "PositionAlreadyPurged";
2191
+ "msg": "This staking position has already been purged";
2192
+ },
2193
+ {
2194
+ "code": 6009;
2195
+ "name": "RefreshNotNeeded";
2196
+ "msg": "This position is healthy, refresh not needed";
2197
+ },
2198
+ {
2199
+ "code": 6010;
2200
+ "name": "FailedVotingPowerCalculation";
2201
+ "msg": "Failed to calculate the voting power";
2202
+ },
2203
+ {
2204
+ "code": 6011;
2205
+ "name": "InvalidClaimEpoch";
2206
+ "msg": "Rewards need to be claimed in the correct epoch order";
2207
+ },
2208
+ {
2209
+ "code": 6012;
2210
+ "name": "EpochToEarly";
2211
+ "msg": "Epochs start after the earliest emission schedule";
2212
+ },
2213
+ {
2214
+ "code": 6013;
2215
+ "name": "MustCalculateVehntLinearly";
2216
+ "msg": "Must calculate vehnt linearly. Please ensure the previous epoch has been completed";
2217
+ },
2218
+ {
2219
+ "code": 6014;
2220
+ "name": "PositionChangeWhileDelegated";
2221
+ "msg": "Cannot change a position while it is delegated";
1044
2222
  }
1045
2223
  ];
1046
2224
  };