levr-sdk 0.3.0 → 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
@@ -211,44 +211,6 @@ export default [
211
211
  ],
212
212
  stateMutability: 'view',
213
213
  },
214
- {
215
- type: 'function',
216
- name: 'pendingFees',
217
- inputs: [
218
- {
219
- name: 'rewardToken',
220
- type: 'address',
221
- internalType: 'address',
222
- },
223
- ],
224
- outputs: [
225
- {
226
- name: 'pending',
227
- type: 'uint256',
228
- internalType: 'uint256',
229
- },
230
- ],
231
- stateMutability: 'view',
232
- },
233
- {
234
- type: 'function',
235
- name: 'pendingFeesInclBalance',
236
- inputs: [
237
- {
238
- name: 'rewardToken',
239
- type: 'address',
240
- internalType: 'address',
241
- },
242
- ],
243
- outputs: [
244
- {
245
- name: 'pending',
246
- type: 'uint256',
247
- internalType: 'uint256',
248
- },
249
- ],
250
- stateMutability: 'view',
251
- },
252
214
  {
253
215
  type: 'function',
254
216
  name: 'recoverDust',
@@ -455,11 +417,6 @@ export default [
455
417
  ],
456
418
  anonymous: false,
457
419
  },
458
- {
459
- type: 'error',
460
- name: 'ClankerMetadataNotFound',
461
- inputs: [],
462
- },
463
420
  {
464
421
  type: 'error',
465
422
  name: 'DuplicateReceiver',
@@ -470,26 +427,11 @@ export default [
470
427
  name: 'DuplicateStakingReceiver',
471
428
  inputs: [],
472
429
  },
473
- {
474
- type: 'error',
475
- name: 'InvalidSplits',
476
- inputs: [],
477
- },
478
430
  {
479
431
  type: 'error',
480
432
  name: 'InvalidTotalBps',
481
433
  inputs: [],
482
434
  },
483
- {
484
- type: 'error',
485
- name: 'LpLockerNotConfigured',
486
- inputs: [],
487
- },
488
- {
489
- type: 'error',
490
- name: 'NoPendingFees',
491
- inputs: [],
492
- },
493
435
  {
494
436
  type: 'error',
495
437
  name: 'NoReceivers',
@@ -526,6 +468,11 @@ export default [
526
468
  name: 'SplitsNotConfigured',
527
469
  inputs: [],
528
470
  },
471
+ {
472
+ type: 'error',
473
+ name: 'TokenNotTrusted',
474
+ inputs: [],
475
+ },
529
476
  {
530
477
  type: 'error',
531
478
  name: 'TooManyReceivers',
@@ -8,31 +8,57 @@ export default [
8
8
  internalType: 'address',
9
9
  },
10
10
  {
11
- name: 'treasury_',
11
+ name: 'trustedForwarder',
12
12
  type: 'address',
13
13
  internalType: 'address',
14
14
  },
15
+ ],
16
+ stateMutability: 'nonpayable',
17
+ },
18
+ {
19
+ type: 'function',
20
+ name: 'EXECUTION_ATTEMPT_DELAY',
21
+ inputs: [],
22
+ outputs: [
15
23
  {
16
- name: 'staking_',
17
- type: 'address',
18
- internalType: 'address',
24
+ name: '',
25
+ type: 'uint32',
26
+ internalType: 'uint32',
19
27
  },
28
+ ],
29
+ stateMutability: 'view',
30
+ },
31
+ {
32
+ type: 'function',
33
+ name: '_executeProposal',
34
+ inputs: [
20
35
  {
21
- name: 'stakedToken_',
22
- type: 'address',
23
- internalType: 'address',
36
+ name: '',
37
+ type: 'uint256',
38
+ internalType: 'uint256',
24
39
  },
25
40
  {
26
- name: 'underlying_',
41
+ name: 'proposalType',
42
+ type: 'uint8',
43
+ internalType: 'enum ILevrGovernor_v1.ProposalType',
44
+ },
45
+ {
46
+ name: 'token',
27
47
  type: 'address',
28
48
  internalType: 'address',
29
49
  },
30
50
  {
31
- name: 'trustedForwarder',
51
+ name: 'amount',
52
+ type: 'uint256',
53
+ internalType: 'uint256',
54
+ },
55
+ {
56
+ name: 'recipient',
32
57
  type: 'address',
33
58
  internalType: 'address',
34
59
  },
35
60
  ],
61
+ outputs: [],
36
62
  stateMutability: 'nonpayable',
37
63
  },
38
64
  {
@@ -80,6 +106,37 @@ export default [
80
106
  outputs: [],
81
107
  stateMutability: 'nonpayable',
82
108
  },
109
+ {
110
+ type: 'function',
111
+ name: 'executionAttempts',
112
+ inputs: [
113
+ {
114
+ name: 'proposalId',
115
+ type: 'uint256',
116
+ internalType: 'uint256',
117
+ },
118
+ ],
119
+ outputs: [
120
+ {
121
+ name: '',
122
+ type: 'tuple',
123
+ internalType: 'struct ILevrGovernor_v1.ExecutionAttemptInfo',
124
+ components: [
125
+ {
126
+ name: 'count',
127
+ type: 'uint8',
128
+ internalType: 'uint8',
129
+ },
130
+ {
131
+ name: 'lastAttemptTime',
132
+ type: 'uint64',
133
+ internalType: 'uint64',
134
+ },
135
+ ],
136
+ },
137
+ ],
138
+ stateMutability: 'view',
139
+ },
83
140
  {
84
141
  type: 'function',
85
142
  name: 'factory',
@@ -124,6 +181,11 @@ export default [
124
181
  type: 'address',
125
182
  internalType: 'address',
126
183
  },
184
+ {
185
+ name: 'token',
186
+ type: 'address',
187
+ internalType: 'address',
188
+ },
127
189
  {
128
190
  name: 'amount',
129
191
  type: 'uint256',
@@ -194,6 +256,21 @@ export default [
194
256
  type: 'bool',
195
257
  internalType: 'bool',
196
258
  },
259
+ {
260
+ name: 'totalSupplySnapshot',
261
+ type: 'uint256',
262
+ internalType: 'uint256',
263
+ },
264
+ {
265
+ name: 'quorumBpsSnapshot',
266
+ type: 'uint16',
267
+ internalType: 'uint16',
268
+ },
269
+ {
270
+ name: 'approvalBpsSnapshot',
271
+ type: 'uint16',
272
+ internalType: 'uint16',
273
+ },
197
274
  ],
198
275
  },
199
276
  ],
@@ -278,6 +355,34 @@ export default [
278
355
  ],
279
356
  stateMutability: 'view',
280
357
  },
358
+ {
359
+ type: 'function',
360
+ name: 'initialize',
361
+ inputs: [
362
+ {
363
+ name: 'treasury_',
364
+ type: 'address',
365
+ internalType: 'address',
366
+ },
367
+ {
368
+ name: 'staking_',
369
+ type: 'address',
370
+ internalType: 'address',
371
+ },
372
+ {
373
+ name: 'stakedToken_',
374
+ type: 'address',
375
+ internalType: 'address',
376
+ },
377
+ {
378
+ name: 'underlying_',
379
+ type: 'address',
380
+ internalType: 'address',
381
+ },
382
+ ],
383
+ outputs: [],
384
+ stateMutability: 'nonpayable',
385
+ },
281
386
  {
282
387
  type: 'function',
283
388
  name: 'isTrustedForwarder',
@@ -339,6 +444,11 @@ export default [
339
444
  type: 'function',
340
445
  name: 'proposeBoost',
341
446
  inputs: [
447
+ {
448
+ name: 'token',
449
+ type: 'address',
450
+ internalType: 'address',
451
+ },
342
452
  {
343
453
  name: 'amount',
344
454
  type: 'uint256',
@@ -358,6 +468,11 @@ export default [
358
468
  type: 'function',
359
469
  name: 'proposeTransfer',
360
470
  inputs: [
471
+ {
472
+ name: 'token',
473
+ type: 'address',
474
+ internalType: 'address',
475
+ },
361
476
  {
362
477
  name: 'recipient',
363
478
  type: 'address',
@@ -523,6 +638,37 @@ export default [
523
638
  ],
524
639
  anonymous: false,
525
640
  },
641
+ {
642
+ type: 'event',
643
+ name: 'Initialized',
644
+ inputs: [
645
+ {
646
+ name: 'treasury',
647
+ type: 'address',
648
+ indexed: false,
649
+ internalType: 'address',
650
+ },
651
+ {
652
+ name: 'staking',
653
+ type: 'address',
654
+ indexed: false,
655
+ internalType: 'address',
656
+ },
657
+ {
658
+ name: 'stakedToken',
659
+ type: 'address',
660
+ indexed: false,
661
+ internalType: 'address',
662
+ },
663
+ {
664
+ name: 'underlying',
665
+ type: 'address',
666
+ indexed: false,
667
+ internalType: 'address',
668
+ },
669
+ ],
670
+ anonymous: false,
671
+ },
526
672
  {
527
673
  type: 'event',
528
674
  name: 'ProposalCreated',
@@ -545,6 +691,12 @@ export default [
545
691
  indexed: false,
546
692
  internalType: 'enum ILevrGovernor_v1.ProposalType',
547
693
  },
694
+ {
695
+ name: 'token',
696
+ type: 'address',
697
+ indexed: true,
698
+ internalType: 'address',
699
+ },
548
700
  {
549
701
  name: 'amount',
550
702
  type: 'uint256',
@@ -598,6 +750,25 @@ export default [
598
750
  ],
599
751
  anonymous: false,
600
752
  },
753
+ {
754
+ type: 'event',
755
+ name: 'ProposalExecutionFailed',
756
+ inputs: [
757
+ {
758
+ name: 'proposalId',
759
+ type: 'uint256',
760
+ indexed: true,
761
+ internalType: 'uint256',
762
+ },
763
+ {
764
+ name: 'reason',
765
+ type: 'string',
766
+ indexed: false,
767
+ internalType: 'string',
768
+ },
769
+ ],
770
+ anonymous: false,
771
+ },
601
772
  {
602
773
  type: 'event',
603
774
  name: 'VoteCast',
@@ -634,6 +805,11 @@ export default [
634
805
  name: 'AlreadyExecuted',
635
806
  inputs: [],
636
807
  },
808
+ {
809
+ type: 'error',
810
+ name: 'AlreadyInitialized',
811
+ inputs: [],
812
+ },
637
813
  {
638
814
  type: 'error',
639
815
  name: 'AlreadyProposedInCycle',
@@ -649,6 +825,16 @@ export default [
649
825
  name: 'CycleStillActive',
650
826
  inputs: [],
651
827
  },
828
+ {
829
+ type: 'error',
830
+ name: 'ExecutableProposalsRemaining',
831
+ inputs: [],
832
+ },
833
+ {
834
+ type: 'error',
835
+ name: 'ExecutionAttemptTooSoon',
836
+ inputs: [],
837
+ },
652
838
  {
653
839
  type: 'error',
654
840
  name: 'InsufficientStake',
@@ -664,6 +850,11 @@ export default [
664
850
  name: 'InsufficientVotingPower',
665
851
  inputs: [],
666
852
  },
853
+ {
854
+ type: 'error',
855
+ name: 'InternalOnly',
856
+ inputs: [],
857
+ },
667
858
  {
668
859
  type: 'error',
669
860
  name: 'InvalidAmount',
@@ -686,27 +877,27 @@ export default [
686
877
  },
687
878
  {
688
879
  type: 'error',
689
- name: 'NoActiveCycle',
880
+ name: 'NotWinner',
690
881
  inputs: [],
691
882
  },
692
883
  {
693
884
  type: 'error',
694
- name: 'NotAuthorized',
885
+ name: 'OnlyFactory',
695
886
  inputs: [],
696
887
  },
697
888
  {
698
889
  type: 'error',
699
- name: 'NotWinner',
890
+ name: 'ProposalAmountExceedsLimit',
700
891
  inputs: [],
701
892
  },
702
893
  {
703
894
  type: 'error',
704
- name: 'ProposalAmountExceedsLimit',
895
+ name: 'ProposalNotFound',
705
896
  inputs: [],
706
897
  },
707
898
  {
708
899
  type: 'error',
709
- name: 'ProposalNotSucceeded',
900
+ name: 'ProposalNotInCurrentCycle',
710
901
  inputs: [],
711
902
  },
712
903
  {
@@ -719,9 +910,19 @@ export default [
719
910
  name: 'ReentrancyGuardReentrantCall',
720
911
  inputs: [],
721
912
  },
913
+ {
914
+ type: 'error',
915
+ name: 'StakeActionTooRecent',
916
+ inputs: [],
917
+ },
722
918
  {
723
919
  type: 'error',
724
920
  name: 'VotingNotActive',
725
921
  inputs: [],
726
922
  },
923
+ {
924
+ type: 'error',
925
+ name: 'VotingNotEnded',
926
+ inputs: [],
927
+ },
727
928
  ];
@@ -352,6 +352,11 @@ export default [
352
352
  ],
353
353
  anonymous: false,
354
354
  },
355
+ {
356
+ type: 'error',
357
+ name: 'CannotModifyUnderlying',
358
+ inputs: [],
359
+ },
355
360
  {
356
361
  type: 'error',
357
362
  name: 'ERC20InsufficientAllowance',
@@ -438,4 +443,14 @@ export default [
438
443
  },
439
444
  ],
440
445
  },
446
+ {
447
+ type: 'error',
448
+ name: 'OnlyStaking',
449
+ inputs: [],
450
+ },
451
+ {
452
+ type: 'error',
453
+ name: 'ZeroAddress',
454
+ inputs: [],
455
+ },
441
456
  ];