levr-sdk 0.3.1 → 0.4.0

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 (115) hide show
  1. package/dist/esm/abis/IClankerFeeLocker.js +215 -0
  2. package/dist/esm/abis/IClankerLpLockerFeeConversion.js +26 -0
  3. package/dist/esm/abis/LevrDeployer_v1.js +86 -0
  4. package/dist/esm/abis/LevrFactory_v1.js +603 -66
  5. package/dist/esm/abis/LevrFeeSplitter_v1.js +5 -58
  6. package/dist/esm/abis/LevrGovernor_v1.js +215 -14
  7. package/dist/esm/abis/LevrStakedToken_v1.js +15 -0
  8. package/dist/esm/abis/LevrStaking_v1.js +318 -63
  9. package/dist/esm/abis/LevrTreasury_v1.js +34 -38
  10. package/dist/esm/abis/index.js +2 -0
  11. package/dist/esm/airdrop.js +29 -14
  12. package/dist/esm/airdrop.js.map +1 -1
  13. package/dist/esm/build-calldatas-v4.js +2 -1
  14. package/dist/esm/build-calldatas-v4.js.map +1 -1
  15. package/dist/esm/build-clanker-v4.js +6 -1
  16. package/dist/esm/build-clanker-v4.js.map +1 -1
  17. package/dist/esm/client/hook/use-project.js +6 -3
  18. package/dist/esm/client/hook/use-project.js.map +1 -1
  19. package/dist/esm/client/hook/use-register.js +1 -1
  20. package/dist/esm/client/hook/use-stake.js +1 -1
  21. package/dist/esm/client/levr-provider.js +43 -72
  22. package/dist/esm/client/levr-provider.js.map +1 -1
  23. package/dist/esm/client/query-keys.js +1 -1
  24. package/dist/esm/client/query-keys.js.map +1 -1
  25. package/dist/esm/constants/clanker.js +84 -0
  26. package/dist/esm/constants/clanker.js.map +1 -0
  27. package/dist/esm/constants/config.js +71 -0
  28. package/dist/esm/constants/config.js.map +1 -0
  29. package/dist/esm/constants/index.js +52 -0
  30. package/dist/esm/constants/index.js.map +1 -0
  31. package/dist/esm/constants/levr.js +34 -0
  32. package/dist/esm/constants/levr.js.map +1 -0
  33. package/dist/esm/constants/uniswap.js +86 -0
  34. package/dist/esm/constants/uniswap.js.map +1 -0
  35. package/dist/esm/deploy-v4.js +1 -1
  36. package/dist/esm/factory.js +84 -7
  37. package/dist/esm/factory.js.map +1 -1
  38. package/dist/esm/fee-receivers.js +1 -1
  39. package/dist/esm/fee-splitter.js +1 -1
  40. package/dist/esm/governance.js +4 -3
  41. package/dist/esm/governance.js.map +1 -1
  42. package/dist/esm/index.js +1 -1
  43. package/dist/esm/pool-key.js +1 -1
  44. package/dist/esm/pool.js +1 -1
  45. package/dist/esm/project.js +194 -55
  46. package/dist/esm/project.js.map +1 -1
  47. package/dist/esm/proposal.js +1 -0
  48. package/dist/esm/proposal.js.map +1 -1
  49. package/dist/esm/quote/v4.js +1 -1
  50. package/dist/esm/schema/levr.schema.js +37 -10
  51. package/dist/esm/schema/levr.schema.js.map +1 -1
  52. package/dist/esm/stake.js +137 -61
  53. package/dist/esm/stake.js.map +1 -1
  54. package/dist/esm/swap-v4.js +1 -1
  55. package/dist/esm/usd-price.js +1 -1
  56. package/dist/esm/user.js +13 -6
  57. package/dist/esm/user.js.map +1 -1
  58. package/dist/esm/util.js +58 -2
  59. package/dist/esm/util.js.map +1 -1
  60. package/dist/esm/vault.js +1 -1
  61. package/dist/types/abis/IClankerFeeLocker.d.ts +169 -0
  62. package/dist/types/abis/IClankerLpLockerFeeConversion.d.ts +20 -0
  63. package/dist/types/abis/LevrDeployer_v1.d.ts +67 -0
  64. package/dist/types/abis/LevrFactory_v1.d.ts +454 -39
  65. package/dist/types/abis/LevrFeeSplitter_v1.d.ts +4 -44
  66. package/dist/types/abis/LevrGovernor_v1.d.ts +172 -14
  67. package/dist/types/abis/LevrStakedToken_v1.d.ts +12 -0
  68. package/dist/types/abis/LevrStaking_v1.d.ts +258 -61
  69. package/dist/types/abis/LevrTreasury_v1.d.ts +29 -31
  70. package/dist/types/abis/index.d.ts +2 -0
  71. package/dist/types/airdrop.d.ts +2 -1
  72. package/dist/types/airdrop.d.ts.map +1 -1
  73. package/dist/types/build-calldatas-v4.d.ts +1 -0
  74. package/dist/types/build-calldatas-v4.d.ts.map +1 -1
  75. package/dist/types/build-clanker-v4.d.ts +2 -1
  76. package/dist/types/build-clanker-v4.d.ts.map +1 -1
  77. package/dist/types/client/hook/use-factory.d.ts +2 -0
  78. package/dist/types/client/hook/use-factory.d.ts.map +1 -1
  79. package/dist/types/client/hook/use-project.d.ts.map +1 -1
  80. package/dist/types/client/levr-provider.d.ts.map +1 -1
  81. package/dist/types/client/query-keys.d.ts +1 -1
  82. package/dist/types/client/query-keys.d.ts.map +1 -1
  83. package/dist/types/constants/clanker.d.ts +31 -0
  84. package/dist/types/constants/clanker.d.ts.map +1 -0
  85. package/dist/types/constants/config.d.ts +71 -0
  86. package/dist/types/constants/config.d.ts.map +1 -0
  87. package/dist/types/constants/index.d.ts +35 -0
  88. package/dist/types/constants/index.d.ts.map +1 -0
  89. package/dist/types/constants/levr.d.ts +17 -0
  90. package/dist/types/constants/levr.d.ts.map +1 -0
  91. package/dist/types/constants/uniswap.d.ts +37 -0
  92. package/dist/types/constants/uniswap.d.ts.map +1 -0
  93. package/dist/types/factory.d.ts +20 -3
  94. package/dist/types/factory.d.ts.map +1 -1
  95. package/dist/types/fee-receivers.d.ts +17 -177
  96. package/dist/types/fee-receivers.d.ts.map +1 -1
  97. package/dist/types/governance.d.ts +2 -0
  98. package/dist/types/governance.d.ts.map +1 -1
  99. package/dist/types/project.d.ts +17 -2
  100. package/dist/types/project.d.ts.map +1 -1
  101. package/dist/types/proposal.d.ts +344 -28
  102. package/dist/types/proposal.d.ts.map +1 -1
  103. package/dist/types/schema/levr.schema.d.ts +21 -0
  104. package/dist/types/schema/levr.schema.d.ts.map +1 -1
  105. package/dist/types/stake.d.ts +20 -34
  106. package/dist/types/stake.d.ts.map +1 -1
  107. package/dist/types/user.d.ts +813 -1
  108. package/dist/types/user.d.ts.map +1 -1
  109. package/dist/types/util.d.ts +4 -0
  110. package/dist/types/util.d.ts.map +1 -1
  111. package/package.json +2 -1
  112. package/dist/esm/constants.js +0 -300
  113. package/dist/esm/constants.js.map +0 -1
  114. package/dist/types/constants.d.ts +0 -177
  115. package/dist/types/constants.d.ts.map +0 -1
@@ -37,26 +37,46 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
37
37
  readonly type: "address";
38
38
  readonly internalType: "address";
39
39
  }, {
40
- readonly name: "treasury_";
40
+ readonly name: "trustedForwarder";
41
41
  readonly type: "address";
42
42
  readonly internalType: "address";
43
+ }];
44
+ readonly stateMutability: "nonpayable";
45
+ }, {
46
+ readonly type: "function";
47
+ readonly name: "EXECUTION_ATTEMPT_DELAY";
48
+ readonly inputs: readonly [];
49
+ readonly outputs: readonly [{
50
+ readonly name: "";
51
+ readonly type: "uint32";
52
+ readonly internalType: "uint32";
53
+ }];
54
+ readonly stateMutability: "view";
55
+ }, {
56
+ readonly type: "function";
57
+ readonly name: "_executeProposal";
58
+ readonly inputs: readonly [{
59
+ readonly name: "";
60
+ readonly type: "uint256";
61
+ readonly internalType: "uint256";
43
62
  }, {
44
- readonly name: "staking_";
45
- readonly type: "address";
46
- readonly internalType: "address";
63
+ readonly name: "proposalType";
64
+ readonly type: "uint8";
65
+ readonly internalType: "enum ILevrGovernor_v1.ProposalType";
47
66
  }, {
48
- readonly name: "stakedToken_";
67
+ readonly name: "token";
49
68
  readonly type: "address";
50
69
  readonly internalType: "address";
51
70
  }, {
52
- readonly name: "underlying_";
53
- readonly type: "address";
54
- readonly internalType: "address";
71
+ readonly name: "amount";
72
+ readonly type: "uint256";
73
+ readonly internalType: "uint256";
55
74
  }, {
56
- readonly name: "trustedForwarder";
75
+ readonly name: "recipient";
57
76
  readonly type: "address";
58
77
  readonly internalType: "address";
59
78
  }];
79
+ readonly outputs: readonly [];
60
80
  readonly stateMutability: "nonpayable";
61
81
  }, {
62
82
  readonly type: "function";
@@ -92,6 +112,29 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
92
112
  }];
93
113
  readonly outputs: readonly [];
94
114
  readonly stateMutability: "nonpayable";
115
+ }, {
116
+ readonly type: "function";
117
+ readonly name: "executionAttempts";
118
+ readonly inputs: readonly [{
119
+ readonly name: "proposalId";
120
+ readonly type: "uint256";
121
+ readonly internalType: "uint256";
122
+ }];
123
+ readonly outputs: readonly [{
124
+ readonly name: "";
125
+ readonly type: "tuple";
126
+ readonly internalType: "struct ILevrGovernor_v1.ExecutionAttemptInfo";
127
+ readonly components: readonly [{
128
+ readonly name: "count";
129
+ readonly type: "uint8";
130
+ readonly internalType: "uint8";
131
+ }, {
132
+ readonly name: "lastAttemptTime";
133
+ readonly type: "uint64";
134
+ readonly internalType: "uint64";
135
+ }];
136
+ }];
137
+ readonly stateMutability: "view";
95
138
  }, {
96
139
  readonly type: "function";
97
140
  readonly name: "factory";
@@ -126,6 +169,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
126
169
  readonly name: "proposer";
127
170
  readonly type: "address";
128
171
  readonly internalType: "address";
172
+ }, {
173
+ readonly name: "token";
174
+ readonly type: "address";
175
+ readonly internalType: "address";
129
176
  }, {
130
177
  readonly name: "amount";
131
178
  readonly type: "uint256";
@@ -182,6 +229,18 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
182
229
  readonly name: "meetsApproval";
183
230
  readonly type: "bool";
184
231
  readonly internalType: "bool";
232
+ }, {
233
+ readonly name: "totalSupplySnapshot";
234
+ readonly type: "uint256";
235
+ readonly internalType: "uint256";
236
+ }, {
237
+ readonly name: "quorumBpsSnapshot";
238
+ readonly type: "uint16";
239
+ readonly internalType: "uint16";
240
+ }, {
241
+ readonly name: "approvalBpsSnapshot";
242
+ readonly type: "uint16";
243
+ readonly internalType: "uint16";
185
244
  }];
186
245
  }];
187
246
  readonly stateMutability: "view";
@@ -244,6 +303,28 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
244
303
  readonly internalType: "uint256";
245
304
  }];
246
305
  readonly stateMutability: "view";
306
+ }, {
307
+ readonly type: "function";
308
+ readonly name: "initialize";
309
+ readonly inputs: readonly [{
310
+ readonly name: "treasury_";
311
+ readonly type: "address";
312
+ readonly internalType: "address";
313
+ }, {
314
+ readonly name: "staking_";
315
+ readonly type: "address";
316
+ readonly internalType: "address";
317
+ }, {
318
+ readonly name: "stakedToken_";
319
+ readonly type: "address";
320
+ readonly internalType: "address";
321
+ }, {
322
+ readonly name: "underlying_";
323
+ readonly type: "address";
324
+ readonly internalType: "address";
325
+ }];
326
+ readonly outputs: readonly [];
327
+ readonly stateMutability: "nonpayable";
247
328
  }, {
248
329
  readonly type: "function";
249
330
  readonly name: "isTrustedForwarder";
@@ -290,6 +371,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
290
371
  readonly type: "function";
291
372
  readonly name: "proposeBoost";
292
373
  readonly inputs: readonly [{
374
+ readonly name: "token";
375
+ readonly type: "address";
376
+ readonly internalType: "address";
377
+ }, {
293
378
  readonly name: "amount";
294
379
  readonly type: "uint256";
295
380
  readonly internalType: "uint256";
@@ -304,6 +389,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
304
389
  readonly type: "function";
305
390
  readonly name: "proposeTransfer";
306
391
  readonly inputs: readonly [{
392
+ readonly name: "token";
393
+ readonly type: "address";
394
+ readonly internalType: "address";
395
+ }, {
307
396
  readonly name: "recipient";
308
397
  readonly type: "address";
309
398
  readonly internalType: "address";
@@ -431,6 +520,31 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
431
520
  readonly internalType: "uint256";
432
521
  }];
433
522
  readonly anonymous: false;
523
+ }, {
524
+ readonly type: "event";
525
+ readonly name: "Initialized";
526
+ readonly inputs: readonly [{
527
+ readonly name: "treasury";
528
+ readonly type: "address";
529
+ readonly indexed: false;
530
+ readonly internalType: "address";
531
+ }, {
532
+ readonly name: "staking";
533
+ readonly type: "address";
534
+ readonly indexed: false;
535
+ readonly internalType: "address";
536
+ }, {
537
+ readonly name: "stakedToken";
538
+ readonly type: "address";
539
+ readonly indexed: false;
540
+ readonly internalType: "address";
541
+ }, {
542
+ readonly name: "underlying";
543
+ readonly type: "address";
544
+ readonly indexed: false;
545
+ readonly internalType: "address";
546
+ }];
547
+ readonly anonymous: false;
434
548
  }, {
435
549
  readonly type: "event";
436
550
  readonly name: "ProposalCreated";
@@ -449,6 +563,11 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
449
563
  readonly type: "uint8";
450
564
  readonly indexed: false;
451
565
  readonly internalType: "enum ILevrGovernor_v1.ProposalType";
566
+ }, {
567
+ readonly name: "token";
568
+ readonly type: "address";
569
+ readonly indexed: true;
570
+ readonly internalType: "address";
452
571
  }, {
453
572
  readonly name: "amount";
454
573
  readonly type: "uint256";
@@ -491,6 +610,21 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
491
610
  readonly internalType: "address";
492
611
  }];
493
612
  readonly anonymous: false;
613
+ }, {
614
+ readonly type: "event";
615
+ readonly name: "ProposalExecutionFailed";
616
+ readonly inputs: readonly [{
617
+ readonly name: "proposalId";
618
+ readonly type: "uint256";
619
+ readonly indexed: true;
620
+ readonly internalType: "uint256";
621
+ }, {
622
+ readonly name: "reason";
623
+ readonly type: "string";
624
+ readonly indexed: false;
625
+ readonly internalType: "string";
626
+ }];
627
+ readonly anonymous: false;
494
628
  }, {
495
629
  readonly type: "event";
496
630
  readonly name: "VoteCast";
@@ -520,6 +654,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
520
654
  readonly type: "error";
521
655
  readonly name: "AlreadyExecuted";
522
656
  readonly inputs: readonly [];
657
+ }, {
658
+ readonly type: "error";
659
+ readonly name: "AlreadyInitialized";
660
+ readonly inputs: readonly [];
523
661
  }, {
524
662
  readonly type: "error";
525
663
  readonly name: "AlreadyProposedInCycle";
@@ -532,6 +670,14 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
532
670
  readonly type: "error";
533
671
  readonly name: "CycleStillActive";
534
672
  readonly inputs: readonly [];
673
+ }, {
674
+ readonly type: "error";
675
+ readonly name: "ExecutableProposalsRemaining";
676
+ readonly inputs: readonly [];
677
+ }, {
678
+ readonly type: "error";
679
+ readonly name: "ExecutionAttemptTooSoon";
680
+ readonly inputs: readonly [];
535
681
  }, {
536
682
  readonly type: "error";
537
683
  readonly name: "InsufficientStake";
@@ -544,6 +690,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
544
690
  readonly type: "error";
545
691
  readonly name: "InsufficientVotingPower";
546
692
  readonly inputs: readonly [];
693
+ }, {
694
+ readonly type: "error";
695
+ readonly name: "InternalOnly";
696
+ readonly inputs: readonly [];
547
697
  }, {
548
698
  readonly type: "error";
549
699
  readonly name: "InvalidAmount";
@@ -562,23 +712,23 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
562
712
  readonly inputs: readonly [];
563
713
  }, {
564
714
  readonly type: "error";
565
- readonly name: "NoActiveCycle";
715
+ readonly name: "NotWinner";
566
716
  readonly inputs: readonly [];
567
717
  }, {
568
718
  readonly type: "error";
569
- readonly name: "NotAuthorized";
719
+ readonly name: "OnlyFactory";
570
720
  readonly inputs: readonly [];
571
721
  }, {
572
722
  readonly type: "error";
573
- readonly name: "NotWinner";
723
+ readonly name: "ProposalAmountExceedsLimit";
574
724
  readonly inputs: readonly [];
575
725
  }, {
576
726
  readonly type: "error";
577
- readonly name: "ProposalAmountExceedsLimit";
727
+ readonly name: "ProposalNotFound";
578
728
  readonly inputs: readonly [];
579
729
  }, {
580
730
  readonly type: "error";
581
- readonly name: "ProposalNotSucceeded";
731
+ readonly name: "ProposalNotInCurrentCycle";
582
732
  readonly inputs: readonly [];
583
733
  }, {
584
734
  readonly type: "error";
@@ -588,10 +738,18 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
588
738
  readonly type: "error";
589
739
  readonly name: "ReentrancyGuardReentrantCall";
590
740
  readonly inputs: readonly [];
741
+ }, {
742
+ readonly type: "error";
743
+ readonly name: "StakeActionTooRecent";
744
+ readonly inputs: readonly [];
591
745
  }, {
592
746
  readonly type: "error";
593
747
  readonly name: "VotingNotActive";
594
748
  readonly inputs: readonly [];
749
+ }, {
750
+ readonly type: "error";
751
+ readonly name: "VotingNotEnded";
752
+ readonly inputs: readonly [];
595
753
  }];
596
754
  functionName: "getProposal";
597
755
  args: bigint[];
@@ -604,26 +762,46 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
604
762
  readonly type: "address";
605
763
  readonly internalType: "address";
606
764
  }, {
607
- readonly name: "treasury_";
765
+ readonly name: "trustedForwarder";
608
766
  readonly type: "address";
609
767
  readonly internalType: "address";
768
+ }];
769
+ readonly stateMutability: "nonpayable";
770
+ }, {
771
+ readonly type: "function";
772
+ readonly name: "EXECUTION_ATTEMPT_DELAY";
773
+ readonly inputs: readonly [];
774
+ readonly outputs: readonly [{
775
+ readonly name: "";
776
+ readonly type: "uint32";
777
+ readonly internalType: "uint32";
778
+ }];
779
+ readonly stateMutability: "view";
780
+ }, {
781
+ readonly type: "function";
782
+ readonly name: "_executeProposal";
783
+ readonly inputs: readonly [{
784
+ readonly name: "";
785
+ readonly type: "uint256";
786
+ readonly internalType: "uint256";
610
787
  }, {
611
- readonly name: "staking_";
612
- readonly type: "address";
613
- readonly internalType: "address";
788
+ readonly name: "proposalType";
789
+ readonly type: "uint8";
790
+ readonly internalType: "enum ILevrGovernor_v1.ProposalType";
614
791
  }, {
615
- readonly name: "stakedToken_";
792
+ readonly name: "token";
616
793
  readonly type: "address";
617
794
  readonly internalType: "address";
618
795
  }, {
619
- readonly name: "underlying_";
620
- readonly type: "address";
621
- readonly internalType: "address";
796
+ readonly name: "amount";
797
+ readonly type: "uint256";
798
+ readonly internalType: "uint256";
622
799
  }, {
623
- readonly name: "trustedForwarder";
800
+ readonly name: "recipient";
624
801
  readonly type: "address";
625
802
  readonly internalType: "address";
626
803
  }];
804
+ readonly outputs: readonly [];
627
805
  readonly stateMutability: "nonpayable";
628
806
  }, {
629
807
  readonly type: "function";
@@ -659,6 +837,29 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
659
837
  }];
660
838
  readonly outputs: readonly [];
661
839
  readonly stateMutability: "nonpayable";
840
+ }, {
841
+ readonly type: "function";
842
+ readonly name: "executionAttempts";
843
+ readonly inputs: readonly [{
844
+ readonly name: "proposalId";
845
+ readonly type: "uint256";
846
+ readonly internalType: "uint256";
847
+ }];
848
+ readonly outputs: readonly [{
849
+ readonly name: "";
850
+ readonly type: "tuple";
851
+ readonly internalType: "struct ILevrGovernor_v1.ExecutionAttemptInfo";
852
+ readonly components: readonly [{
853
+ readonly name: "count";
854
+ readonly type: "uint8";
855
+ readonly internalType: "uint8";
856
+ }, {
857
+ readonly name: "lastAttemptTime";
858
+ readonly type: "uint64";
859
+ readonly internalType: "uint64";
860
+ }];
861
+ }];
862
+ readonly stateMutability: "view";
662
863
  }, {
663
864
  readonly type: "function";
664
865
  readonly name: "factory";
@@ -693,6 +894,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
693
894
  readonly name: "proposer";
694
895
  readonly type: "address";
695
896
  readonly internalType: "address";
897
+ }, {
898
+ readonly name: "token";
899
+ readonly type: "address";
900
+ readonly internalType: "address";
696
901
  }, {
697
902
  readonly name: "amount";
698
903
  readonly type: "uint256";
@@ -749,6 +954,18 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
749
954
  readonly name: "meetsApproval";
750
955
  readonly type: "bool";
751
956
  readonly internalType: "bool";
957
+ }, {
958
+ readonly name: "totalSupplySnapshot";
959
+ readonly type: "uint256";
960
+ readonly internalType: "uint256";
961
+ }, {
962
+ readonly name: "quorumBpsSnapshot";
963
+ readonly type: "uint16";
964
+ readonly internalType: "uint16";
965
+ }, {
966
+ readonly name: "approvalBpsSnapshot";
967
+ readonly type: "uint16";
968
+ readonly internalType: "uint16";
752
969
  }];
753
970
  }];
754
971
  readonly stateMutability: "view";
@@ -811,6 +1028,28 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
811
1028
  readonly internalType: "uint256";
812
1029
  }];
813
1030
  readonly stateMutability: "view";
1031
+ }, {
1032
+ readonly type: "function";
1033
+ readonly name: "initialize";
1034
+ readonly inputs: readonly [{
1035
+ readonly name: "treasury_";
1036
+ readonly type: "address";
1037
+ readonly internalType: "address";
1038
+ }, {
1039
+ readonly name: "staking_";
1040
+ readonly type: "address";
1041
+ readonly internalType: "address";
1042
+ }, {
1043
+ readonly name: "stakedToken_";
1044
+ readonly type: "address";
1045
+ readonly internalType: "address";
1046
+ }, {
1047
+ readonly name: "underlying_";
1048
+ readonly type: "address";
1049
+ readonly internalType: "address";
1050
+ }];
1051
+ readonly outputs: readonly [];
1052
+ readonly stateMutability: "nonpayable";
814
1053
  }, {
815
1054
  readonly type: "function";
816
1055
  readonly name: "isTrustedForwarder";
@@ -857,6 +1096,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
857
1096
  readonly type: "function";
858
1097
  readonly name: "proposeBoost";
859
1098
  readonly inputs: readonly [{
1099
+ readonly name: "token";
1100
+ readonly type: "address";
1101
+ readonly internalType: "address";
1102
+ }, {
860
1103
  readonly name: "amount";
861
1104
  readonly type: "uint256";
862
1105
  readonly internalType: "uint256";
@@ -871,6 +1114,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
871
1114
  readonly type: "function";
872
1115
  readonly name: "proposeTransfer";
873
1116
  readonly inputs: readonly [{
1117
+ readonly name: "token";
1118
+ readonly type: "address";
1119
+ readonly internalType: "address";
1120
+ }, {
874
1121
  readonly name: "recipient";
875
1122
  readonly type: "address";
876
1123
  readonly internalType: "address";
@@ -998,6 +1245,31 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
998
1245
  readonly internalType: "uint256";
999
1246
  }];
1000
1247
  readonly anonymous: false;
1248
+ }, {
1249
+ readonly type: "event";
1250
+ readonly name: "Initialized";
1251
+ readonly inputs: readonly [{
1252
+ readonly name: "treasury";
1253
+ readonly type: "address";
1254
+ readonly indexed: false;
1255
+ readonly internalType: "address";
1256
+ }, {
1257
+ readonly name: "staking";
1258
+ readonly type: "address";
1259
+ readonly indexed: false;
1260
+ readonly internalType: "address";
1261
+ }, {
1262
+ readonly name: "stakedToken";
1263
+ readonly type: "address";
1264
+ readonly indexed: false;
1265
+ readonly internalType: "address";
1266
+ }, {
1267
+ readonly name: "underlying";
1268
+ readonly type: "address";
1269
+ readonly indexed: false;
1270
+ readonly internalType: "address";
1271
+ }];
1272
+ readonly anonymous: false;
1001
1273
  }, {
1002
1274
  readonly type: "event";
1003
1275
  readonly name: "ProposalCreated";
@@ -1016,6 +1288,11 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
1016
1288
  readonly type: "uint8";
1017
1289
  readonly indexed: false;
1018
1290
  readonly internalType: "enum ILevrGovernor_v1.ProposalType";
1291
+ }, {
1292
+ readonly name: "token";
1293
+ readonly type: "address";
1294
+ readonly indexed: true;
1295
+ readonly internalType: "address";
1019
1296
  }, {
1020
1297
  readonly name: "amount";
1021
1298
  readonly type: "uint256";
@@ -1058,6 +1335,21 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
1058
1335
  readonly internalType: "address";
1059
1336
  }];
1060
1337
  readonly anonymous: false;
1338
+ }, {
1339
+ readonly type: "event";
1340
+ readonly name: "ProposalExecutionFailed";
1341
+ readonly inputs: readonly [{
1342
+ readonly name: "proposalId";
1343
+ readonly type: "uint256";
1344
+ readonly indexed: true;
1345
+ readonly internalType: "uint256";
1346
+ }, {
1347
+ readonly name: "reason";
1348
+ readonly type: "string";
1349
+ readonly indexed: false;
1350
+ readonly internalType: "string";
1351
+ }];
1352
+ readonly anonymous: false;
1061
1353
  }, {
1062
1354
  readonly type: "event";
1063
1355
  readonly name: "VoteCast";
@@ -1087,6 +1379,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
1087
1379
  readonly type: "error";
1088
1380
  readonly name: "AlreadyExecuted";
1089
1381
  readonly inputs: readonly [];
1382
+ }, {
1383
+ readonly type: "error";
1384
+ readonly name: "AlreadyInitialized";
1385
+ readonly inputs: readonly [];
1090
1386
  }, {
1091
1387
  readonly type: "error";
1092
1388
  readonly name: "AlreadyProposedInCycle";
@@ -1099,6 +1395,14 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
1099
1395
  readonly type: "error";
1100
1396
  readonly name: "CycleStillActive";
1101
1397
  readonly inputs: readonly [];
1398
+ }, {
1399
+ readonly type: "error";
1400
+ readonly name: "ExecutableProposalsRemaining";
1401
+ readonly inputs: readonly [];
1402
+ }, {
1403
+ readonly type: "error";
1404
+ readonly name: "ExecutionAttemptTooSoon";
1405
+ readonly inputs: readonly [];
1102
1406
  }, {
1103
1407
  readonly type: "error";
1104
1408
  readonly name: "InsufficientStake";
@@ -1111,6 +1415,10 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
1111
1415
  readonly type: "error";
1112
1416
  readonly name: "InsufficientVotingPower";
1113
1417
  readonly inputs: readonly [];
1418
+ }, {
1419
+ readonly type: "error";
1420
+ readonly name: "InternalOnly";
1421
+ readonly inputs: readonly [];
1114
1422
  }, {
1115
1423
  readonly type: "error";
1116
1424
  readonly name: "InvalidAmount";
@@ -1129,23 +1437,23 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
1129
1437
  readonly inputs: readonly [];
1130
1438
  }, {
1131
1439
  readonly type: "error";
1132
- readonly name: "NoActiveCycle";
1440
+ readonly name: "NotWinner";
1133
1441
  readonly inputs: readonly [];
1134
1442
  }, {
1135
1443
  readonly type: "error";
1136
- readonly name: "NotAuthorized";
1444
+ readonly name: "OnlyFactory";
1137
1445
  readonly inputs: readonly [];
1138
1446
  }, {
1139
1447
  readonly type: "error";
1140
- readonly name: "NotWinner";
1448
+ readonly name: "ProposalAmountExceedsLimit";
1141
1449
  readonly inputs: readonly [];
1142
1450
  }, {
1143
1451
  readonly type: "error";
1144
- readonly name: "ProposalAmountExceedsLimit";
1452
+ readonly name: "ProposalNotFound";
1145
1453
  readonly inputs: readonly [];
1146
1454
  }, {
1147
1455
  readonly type: "error";
1148
- readonly name: "ProposalNotSucceeded";
1456
+ readonly name: "ProposalNotInCurrentCycle";
1149
1457
  readonly inputs: readonly [];
1150
1458
  }, {
1151
1459
  readonly type: "error";
@@ -1155,10 +1463,18 @@ export declare function proposalCallData(governorAddress: `0x${string}`, proposa
1155
1463
  readonly type: "error";
1156
1464
  readonly name: "ReentrancyGuardReentrantCall";
1157
1465
  readonly inputs: readonly [];
1466
+ }, {
1467
+ readonly type: "error";
1468
+ readonly name: "StakeActionTooRecent";
1469
+ readonly inputs: readonly [];
1158
1470
  }, {
1159
1471
  readonly type: "error";
1160
1472
  readonly name: "VotingNotActive";
1161
1473
  readonly inputs: readonly [];
1474
+ }, {
1475
+ readonly type: "error";
1476
+ readonly name: "VotingNotEnded";
1477
+ readonly inputs: readonly [];
1162
1478
  }];
1163
1479
  functionName: "getVoteReceipt";
1164
1480
  args: (bigint | `0x${string}`)[];
@@ -1 +1 @@
1
- {"version":3,"file":"proposal.d.ts","sourceRoot":"","sources":["../../src/proposal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proposal.d.ts","sourceRoot":"","sources":["../../src/proposal.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAA;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE7D,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,EAAE,eAAe,CAAA;IAC7B,eAAe,EAAE,KAAK,MAAM,EAAE,CAAA;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,uBAAuB,EAAE,CAAA;IACpC,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,wBAAwB,GAAG;IAC/D,WAAW,EAAE,OAAO,CAAA;IACpB,aAAa,EAAE,OAAO,CAAA;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE;QACZ,QAAQ,EAAE,OAAO,CAAA;QACjB,OAAO,EAAE,OAAO,CAAA;QAChB,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;CACF,CAAA;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,eAAe,EAAE,KAAK,MAAM,EAAE,EAC9B,UAAU,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,KAAK,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyB5B;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,SAAS,GAAG,EAAE,EACvB,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,aAAa,GACtB,uBAAuB,CAyDzB;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,EAC9B,YAAY,EACZ,eAAe,EACf,OAAO,EACP,aAAkB,EAClB,OAAO,EACP,QAAa,EACb,WAAW,GACZ,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAuE5C;AAED,wBAAsB,QAAQ,CAC5B,YAAY,EAAE,eAAe,EAC7B,eAAe,EAAE,KAAK,MAAM,EAAE,EAC9B,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,aAAa,EACvB,WAAW,CAAC,EAAE,KAAK,MAAM,EAAE,oCAU5B"}
@@ -43,4 +43,25 @@ export declare const LevrFeeSplitterConfigSchema: Schema.filter<Schema.filter<Sc
43
43
  }>>;
44
44
  }>>>;
45
45
  export type LevrFeeSplitterConfigSchemaType = typeof LevrFeeSplitterConfigSchema.Type;
46
+ export type SupplyAllocationInput = Partial<Pick<LevrClankerDeploymentSchemaType, 'airdrop' | 'vault' | 'treasuryFunding'>>;
47
+ export type SupplyAllocationBreakdown = {
48
+ airdropPercentage: number;
49
+ treasuryPercentage: number;
50
+ vaultPercentage: number;
51
+ totalAllocatedPercentage: number;
52
+ liquidityPercentage: number;
53
+ };
54
+ export type CalculateAllocationBreakdownOptions = {
55
+ /**
56
+ * Percentage used when treasury allocation is undefined (defaults to 0 to avoid inflating totals)
57
+ */
58
+ fallbackTreasuryPercentage?: number;
59
+ };
60
+ /**
61
+ * @description Calculates how the total token supply is allocated between treasury, vault, airdrop, and liquidity
62
+ * @param {SupplyAllocationInput} data - Deployment configuration containing allocation fields
63
+ * @param {CalculateAllocationBreakdownOptions} options - Optional overrides for calculation defaults
64
+ * @returns {SupplyAllocationBreakdown} Breakdown of allocations including the implied liquidity percentage
65
+ */
66
+ export declare function calculateAllocationBreakdown(data?: SupplyAllocationInput, options?: CalculateAllocationBreakdownOptions): SupplyAllocationBreakdown;
46
67
  //# sourceMappingURL=levr.schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"levr.schema.d.ts","sourceRoot":"","sources":["../../../src/schema/levr.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAiK/B,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwDvC,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG,OAAO,2BAA2B,CAAC,IAAI,CAAA;AAgBrF,eAAO,MAAM,2BAA2B;;;;;IAuBvC,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG,OAAO,2BAA2B,CAAC,IAAI,CAAA"}
1
+ {"version":3,"file":"levr.schema.d.ts","sourceRoot":"","sources":["../../../src/schema/levr.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AA2K/B,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiDvC,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG,OAAO,2BAA2B,CAAC,IAAI,CAAA;AAgBrF,eAAO,MAAM,2BAA2B;;;;;IAuBvC,CAAA;AAED,MAAM,MAAM,+BAA+B,GAAG,OAAO,2BAA2B,CAAC,IAAI,CAAA;AAErF,MAAM,MAAM,qBAAqB,GAAG,OAAO,CACzC,IAAI,CAAC,+BAA+B,EAAE,SAAS,GAAG,OAAO,GAAG,iBAAiB,CAAC,CAC/E,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,iBAAiB,EAAE,MAAM,CAAA;IACzB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,eAAe,EAAE,MAAM,CAAA;IACvB,wBAAwB,EAAE,MAAM,CAAA;IAChC,mBAAmB,EAAE,MAAM,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,mCAAmC,GAAG;IAChD;;OAEG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAA;CACpC,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,CAAC,EAAE,qBAAqB,EAC5B,OAAO,GAAE,mCAAwC,GAChD,yBAAyB,CA2B3B"}