@xswap-link/sdk 0.3.5 → 0.4.1

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 (199) hide show
  1. package/.eslintrc.json +9 -5
  2. package/CHANGELOG.md +16 -0
  3. package/README.md +2 -1
  4. package/dist/index.d.mts +106 -20
  5. package/dist/index.d.ts +106 -20
  6. package/dist/index.global.js +856 -307
  7. package/dist/index.global.js.map +1 -0
  8. package/dist/index.js +105 -3564
  9. package/dist/index.js.map +1 -0
  10. package/dist/index.mjs +105 -3534
  11. package/dist/index.mjs.map +1 -0
  12. package/nodemon.json +1 -1
  13. package/package.json +16 -9
  14. package/postcss.config.js +8 -1
  15. package/src/{components → assets}/icons/ArrowDownIcon.tsx +1 -2
  16. package/src/assets/icons/ArrowDownLongIcon.tsx +12 -0
  17. package/src/{components → assets}/icons/ArrowLeftIcon.tsx +1 -5
  18. package/src/{components → assets}/icons/ArrowRightIcon.tsx +1 -5
  19. package/src/assets/icons/ArrowUpIcon.tsx +12 -0
  20. package/src/{components → assets}/icons/ArrowUpRightIcon.tsx +1 -5
  21. package/src/assets/icons/CashbacklIcon.tsx +28 -0
  22. package/src/{components → assets}/icons/CheckIcon.tsx +1 -5
  23. package/src/assets/icons/ChevronDownIcon.tsx +12 -0
  24. package/src/assets/icons/ChevronUpIcon.tsx +7 -0
  25. package/src/{components → assets}/icons/CircularProgressIcon.tsx +1 -2
  26. package/src/assets/icons/CloseIcon.tsx +15 -0
  27. package/src/{components → assets}/icons/CoinsIcon.tsx +0 -2
  28. package/src/assets/icons/CopyIcon.tsx +15 -0
  29. package/src/assets/icons/DotGreenIcon.tsx +12 -0
  30. package/src/{components → assets}/icons/DownArrorIcon.tsx +0 -2
  31. package/src/{components → assets}/icons/ErrorIcon.tsx +0 -1
  32. package/src/assets/icons/ErrorModalStatusIcon.tsx +31 -0
  33. package/src/assets/icons/HelpIcon.tsx +21 -0
  34. package/src/assets/icons/HistoryGradientBgIcon.tsx +32 -0
  35. package/src/assets/icons/HistoryIcon.tsx +12 -0
  36. package/src/{components → assets}/icons/HourGlassIcon.tsx +1 -5
  37. package/src/assets/icons/Icon.tsx +5 -0
  38. package/src/{components → assets}/icons/InfoIcon.tsx +0 -1
  39. package/src/assets/icons/LinkExternalIcon.tsx +15 -0
  40. package/src/{components → assets}/icons/PercentageIcon.tsx +0 -1
  41. package/src/assets/icons/RankIcon.tsx +28 -0
  42. package/src/assets/icons/SettingsGradientBgIcon.tsx +32 -0
  43. package/src/assets/icons/SettingsIcon.tsx +12 -0
  44. package/src/{components → assets}/icons/SignIcon.tsx +0 -2
  45. package/src/{components → assets}/icons/SuccessIcon.tsx +0 -1
  46. package/src/assets/icons/SuccessModalStatusIcon.tsx +31 -0
  47. package/src/assets/icons/ThumbUpRoundedIcon.tsx +15 -0
  48. package/src/{components → assets}/icons/TimerIcon.tsx +0 -1
  49. package/src/assets/icons/TokensIcon.tsx +16 -0
  50. package/src/assets/icons/WaitingIcon.tsx +15 -0
  51. package/src/{components → assets}/icons/XMarkIcon.tsx +1 -5
  52. package/src/assets/icons/XPowerIcon.tsx +28 -0
  53. package/src/{components → assets}/icons/index.ts +16 -0
  54. package/src/components/Alert/index.tsx +1 -1
  55. package/src/components/Button/index.tsx +57 -0
  56. package/src/components/MessageBar/SnackMessage.tsx +32 -0
  57. package/src/components/MessageBar/index.tsx +44 -0
  58. package/src/components/Modal/index.tsx +52 -0
  59. package/src/components/PoweredBy/index.tsx +12 -0
  60. package/src/components/SafeInput/index.tsx +51 -0
  61. package/src/components/Skeleton/index.tsx +5 -9
  62. package/src/components/Spinner/index.tsx +6 -8
  63. package/src/components/Swap/Header/Controls/index.tsx +57 -0
  64. package/src/components/Swap/Header/index.tsx +16 -0
  65. package/src/components/Swap/HistoryView/index.tsx +34 -0
  66. package/src/components/Swap/SettingsView/Delivery/index.tsx +42 -0
  67. package/src/components/Swap/SettingsView/Slippage/index.tsx +80 -0
  68. package/src/components/Swap/SettingsView/index.tsx +11 -0
  69. package/src/components/Swap/SwapView/ConfirmationView/TxOverview/ArrowIcon.tsx +13 -0
  70. package/src/components/Swap/SwapView/ConfirmationView/TxOverview/Header/index.tsx +37 -0
  71. package/src/components/Swap/SwapView/ConfirmationView/TxOverview/Steps/index.tsx +145 -0
  72. package/src/components/Swap/SwapView/ConfirmationView/TxOverview/SwapPanel/index.tsx +61 -0
  73. package/src/components/Swap/SwapView/ConfirmationView/TxOverview/index.tsx +291 -0
  74. package/src/components/Swap/SwapView/ConfirmationView/TxResult/TokenItem/index.tsx +24 -0
  75. package/src/components/Swap/SwapView/ConfirmationView/TxResult/index.tsx +84 -0
  76. package/src/components/Swap/SwapView/ConfirmationView/index.tsx +17 -0
  77. package/src/components/Swap/SwapView/FeesPanel/DeliveryInfo/index.tsx +25 -0
  78. package/src/components/Swap/SwapView/FeesPanel/Fee/index.tsx +18 -0
  79. package/src/components/Swap/SwapView/FeesPanel/Fees/index.tsx +71 -0
  80. package/src/components/Swap/SwapView/FeesPanel/index.tsx +67 -0
  81. package/src/components/Swap/SwapView/SwapButton/index.tsx +154 -0
  82. package/src/components/Swap/SwapView/SwapPanel/AmountPanel/Balance/index.tsx +23 -0
  83. package/src/components/Swap/SwapView/SwapPanel/AmountPanel/index.tsx +56 -0
  84. package/src/components/Swap/SwapView/SwapPanel/ChainPanel/ChainPicker/ChainItem/index.tsx +70 -0
  85. package/src/components/Swap/SwapView/SwapPanel/ChainPanel/ChainPicker/index.tsx +62 -0
  86. package/src/components/Swap/SwapView/SwapPanel/ChainPanel/index.tsx +74 -0
  87. package/src/components/Swap/SwapView/SwapPanel/MaxPanel/index.tsx +35 -0
  88. package/src/components/Swap/SwapView/SwapPanel/TokenPanel/TokenPicker/QuickPickTokenItem/index.tsx +40 -0
  89. package/src/components/Swap/SwapView/SwapPanel/TokenPanel/TokenPicker/TokenItem/index.tsx +62 -0
  90. package/src/components/Swap/SwapView/SwapPanel/TokenPanel/TokenPicker/index.tsx +399 -0
  91. package/src/components/Swap/SwapView/SwapPanel/TokenPanel/index.tsx +104 -0
  92. package/src/components/Swap/SwapView/SwapPanel/index.tsx +42 -0
  93. package/src/components/Swap/SwapView/index.tsx +20 -0
  94. package/src/components/Swap/index.tsx +34 -0
  95. package/src/components/TextInput/index.tsx +67 -0
  96. package/src/components/Timer/index.tsx +57 -0
  97. package/src/components/ToggleButton/index.tsx +24 -0
  98. package/src/components/{UnknownTokenLogo/UnknownTokenLogo.tsx → TokenLogo/Unknown/index.tsx} +3 -4
  99. package/src/components/TokenLogo/WithChain/index.tsx +34 -0
  100. package/src/components/TokenLogo/index.tsx +22 -0
  101. package/src/components/Tooltip/index.tsx +108 -0
  102. package/src/components/TxConfigForm/index.tsx +63 -42
  103. package/src/components/TxDataCard/TokenDetails/index.tsx +30 -0
  104. package/src/components/TxDataCard/TxDataCardUI/index.tsx +133 -0
  105. package/src/components/TxDataCard/index.tsx +30 -0
  106. package/src/components/TxStatusButton/index.tsx +64 -108
  107. package/src/components/global.css +115 -4
  108. package/src/components/index.ts +18 -1
  109. package/src/config/fonts.ts +114 -0
  110. package/src/config/global.d.ts +4 -0
  111. package/src/config/init.tsx +35 -31
  112. package/src/constants/crosschainEstimationTimes.ts +52 -0
  113. package/src/constants/index.ts +8 -0
  114. package/src/context/GlobalDataProvider.tsx +165 -0
  115. package/src/context/HistoryProvider.tsx +339 -0
  116. package/src/context/ModalProvider.tsx +47 -0
  117. package/src/context/SwapProvider.tsx +664 -0
  118. package/src/context/TransactionProvider.tsx +86 -0
  119. package/src/context/TxUIWrapper.tsx +388 -0
  120. package/src/context/index.ts +5 -0
  121. package/src/contracts/abi/CustomXSwapRouter.json +953 -0
  122. package/src/contracts/abi/StakingStableAPR.json +1438 -0
  123. package/src/contracts/abi/XSwapRouter.json +1242 -0
  124. package/src/contracts/abi/XSwapTokenFeeDistributor.json +350 -0
  125. package/src/contracts/abi/index.ts +8 -0
  126. package/src/contracts/addresses.ts +24 -6
  127. package/src/fonts/Satoshi-Black.woff2 +0 -0
  128. package/src/fonts/Satoshi-BlackItalic.woff2 +0 -0
  129. package/src/fonts/Satoshi-Bold.woff2 +0 -0
  130. package/src/fonts/Satoshi-BoldItalic.woff2 +0 -0
  131. package/src/fonts/Satoshi-Light.woff2 +0 -0
  132. package/src/fonts/Satoshi-LightItalic.woff2 +0 -0
  133. package/src/fonts/Satoshi-Medium.woff2 +0 -0
  134. package/src/fonts/Satoshi-MediumItalic.woff2 +0 -0
  135. package/src/fonts/Satoshi-Regular.woff2 +0 -0
  136. package/src/fonts/Satoshi-RegularItalic.woff2 +0 -0
  137. package/src/fonts/Satoshi-Variable.woff2 +0 -0
  138. package/src/fonts/Satoshi-VariableItalic.woff2 +0 -0
  139. package/src/hooks/index.ts +5 -0
  140. package/src/hooks/networkManagement/clientToSigner.tsx +17 -0
  141. package/src/hooks/networkManagement/useNetworks.ts +51 -0
  142. package/src/hooks/useBatchQuery.ts +46 -0
  143. package/src/hooks/useDebounce.tsx +28 -0
  144. package/src/hooks/useEvmContractApi.ts +85 -0
  145. package/src/hooks/usePortal.ts +79 -0
  146. package/src/hooks/useXPower.ts +58 -0
  147. package/src/models/Addresses.ts +8 -2
  148. package/src/models/TokenData.ts +13 -0
  149. package/src/models/TransactionHistory.ts +2 -0
  150. package/src/models/TxUIWrapper.ts +51 -0
  151. package/src/models/XSwapConfig.ts +1 -0
  152. package/src/models/index.ts +1 -0
  153. package/src/models/payloads/GetBalancesPayload.ts +3 -0
  154. package/src/models/payloads/GetFinishedLeaderboardQuestsPayload.ts +3 -0
  155. package/src/models/payloads/GetLeaderboardChangePayload.ts +4 -0
  156. package/src/models/payloads/{GetSwapTxPayload.ts → ModalIntegrationPayload.ts} +3 -1
  157. package/src/models/payloads/index.ts +5 -2
  158. package/src/services/api.ts +34 -5
  159. package/src/services/integrations/monitoring.ts +49 -37
  160. package/src/services/integrations/transactions.ts +50 -6
  161. package/src/utils/contracts.ts +29 -0
  162. package/src/utils/index.ts +3 -3
  163. package/src/utils/numbers.ts +14 -0
  164. package/src/utils/parseWeb3Error.ts +7 -3
  165. package/tailwind.config.js +15 -5
  166. package/tsconfig.json +7 -7
  167. package/tsup.config.ts +62 -0
  168. package/xswap.config.ts +1 -0
  169. package/dist/index.css +0 -1
  170. package/src/components/TxConfigForm/BalanceComponent.tsx +0 -52
  171. package/src/components/TxConfigForm/Button.tsx +0 -20
  172. package/src/components/TxConfigForm/ChainListElement.tsx +0 -36
  173. package/src/components/TxConfigForm/ConfirmationAmount.tsx +0 -91
  174. package/src/components/TxConfigForm/ConfirmationView/ErrorView.tsx +0 -38
  175. package/src/components/TxConfigForm/ConfirmationView/SuccessView.tsx +0 -159
  176. package/src/components/TxConfigForm/ConfirmationView/index.tsx +0 -149
  177. package/src/components/TxConfigForm/ConnectWalletPrompt.tsx +0 -21
  178. package/src/components/TxConfigForm/Description.tsx +0 -17
  179. package/src/components/TxConfigForm/ErrorField.tsx +0 -19
  180. package/src/components/TxConfigForm/FeesDetails.tsx +0 -117
  181. package/src/components/TxConfigForm/Form.tsx +0 -574
  182. package/src/components/TxConfigForm/History.tsx +0 -131
  183. package/src/components/TxConfigForm/HistoryCard.tsx +0 -182
  184. package/src/components/TxConfigForm/PoweredBy.tsx +0 -12
  185. package/src/components/TxConfigForm/Settings.tsx +0 -143
  186. package/src/components/TxConfigForm/Summary.tsx +0 -105
  187. package/src/components/TxConfigForm/SwapPanel.tsx +0 -185
  188. package/src/components/TxConfigForm/TokenPicker.tsx +0 -176
  189. package/src/components/TxConfigForm/TopBar.tsx +0 -58
  190. package/src/components/TxConfigForm/UsdPrice.tsx +0 -44
  191. package/src/components/icons/ChevronDownIcon.tsx +0 -15
  192. package/src/components/icons/ChevronUpIcon.tsx +0 -10
  193. package/src/components/icons/CloseIcon.tsx +0 -15
  194. package/src/components/icons/HistoryIcon.tsx +0 -16
  195. package/src/components/icons/SettingsIcon.tsx +0 -16
  196. /package/src/{components → assets}/icons/ChainlinkCCIPIcon.tsx +0 -0
  197. /package/src/{components → assets}/icons/SearchIcon.tsx +0 -0
  198. /package/src/{components → assets}/icons/XSwapBadgeIcon.tsx +0 -0
  199. /package/src/{components → assets}/icons/XSwapLogo.tsx +0 -0
@@ -0,0 +1,1438 @@
1
+ [
2
+ {
3
+ "inputs": [],
4
+ "stateMutability": "nonpayable",
5
+ "type": "constructor"
6
+ },
7
+ {
8
+ "inputs": [],
9
+ "name": "AmountExceedStakedBalance",
10
+ "type": "error"
11
+ },
12
+ {
13
+ "inputs": [],
14
+ "name": "ClaimingPaused",
15
+ "type": "error"
16
+ },
17
+ {
18
+ "inputs": [],
19
+ "name": "InsufficientFee",
20
+ "type": "error"
21
+ },
22
+ {
23
+ "inputs": [],
24
+ "name": "InvalidAddress",
25
+ "type": "error"
26
+ },
27
+ {
28
+ "inputs": [],
29
+ "name": "NoStakedTokens",
30
+ "type": "error"
31
+ },
32
+ {
33
+ "inputs": [],
34
+ "name": "NoTokensToWithdraw",
35
+ "type": "error"
36
+ },
37
+ {
38
+ "inputs": [],
39
+ "name": "NotEnoughTokensToStake",
40
+ "type": "error"
41
+ },
42
+ {
43
+ "inputs": [],
44
+ "name": "NothingToClaim",
45
+ "type": "error"
46
+ },
47
+ {
48
+ "inputs": [],
49
+ "name": "NothingToCompound",
50
+ "type": "error"
51
+ },
52
+ {
53
+ "inputs": [],
54
+ "name": "NothingToRestake",
55
+ "type": "error"
56
+ },
57
+ {
58
+ "inputs": [],
59
+ "name": "NothingToStake",
60
+ "type": "error"
61
+ },
62
+ {
63
+ "inputs": [],
64
+ "name": "StakingPoolLimitReached",
65
+ "type": "error"
66
+ },
67
+ {
68
+ "anonymous": false,
69
+ "inputs": [
70
+ {
71
+ "indexed": false,
72
+ "internalType": "uint256",
73
+ "name": "apr",
74
+ "type": "uint256"
75
+ }
76
+ ],
77
+ "name": "APRUpdate",
78
+ "type": "event"
79
+ },
80
+ {
81
+ "anonymous": false,
82
+ "inputs": [
83
+ {
84
+ "indexed": false,
85
+ "internalType": "address",
86
+ "name": "previousAdmin",
87
+ "type": "address"
88
+ },
89
+ {
90
+ "indexed": false,
91
+ "internalType": "address",
92
+ "name": "newAdmin",
93
+ "type": "address"
94
+ }
95
+ ],
96
+ "name": "AdminChanged",
97
+ "type": "event"
98
+ },
99
+ {
100
+ "anonymous": false,
101
+ "inputs": [
102
+ {
103
+ "indexed": true,
104
+ "internalType": "address",
105
+ "name": "beacon",
106
+ "type": "address"
107
+ }
108
+ ],
109
+ "name": "BeaconUpgraded",
110
+ "type": "event"
111
+ },
112
+ {
113
+ "anonymous": false,
114
+ "inputs": [
115
+ {
116
+ "indexed": true,
117
+ "internalType": "address",
118
+ "name": "account",
119
+ "type": "address"
120
+ },
121
+ {
122
+ "indexed": false,
123
+ "internalType": "uint256",
124
+ "name": "amount",
125
+ "type": "uint256"
126
+ }
127
+ ],
128
+ "name": "Claim",
129
+ "type": "event"
130
+ },
131
+ {
132
+ "anonymous": false,
133
+ "inputs": [
134
+ {
135
+ "indexed": true,
136
+ "internalType": "address",
137
+ "name": "account",
138
+ "type": "address"
139
+ },
140
+ {
141
+ "indexed": false,
142
+ "internalType": "uint256",
143
+ "name": "amount",
144
+ "type": "uint256"
145
+ }
146
+ ],
147
+ "name": "Compound",
148
+ "type": "event"
149
+ },
150
+ {
151
+ "anonymous": false,
152
+ "inputs": [
153
+ {
154
+ "indexed": false,
155
+ "internalType": "uint8",
156
+ "name": "version",
157
+ "type": "uint8"
158
+ }
159
+ ],
160
+ "name": "Initialized",
161
+ "type": "event"
162
+ },
163
+ {
164
+ "anonymous": false,
165
+ "inputs": [
166
+ {
167
+ "indexed": true,
168
+ "internalType": "address",
169
+ "name": "previousOwner",
170
+ "type": "address"
171
+ },
172
+ {
173
+ "indexed": true,
174
+ "internalType": "address",
175
+ "name": "newOwner",
176
+ "type": "address"
177
+ }
178
+ ],
179
+ "name": "OwnershipTransferStarted",
180
+ "type": "event"
181
+ },
182
+ {
183
+ "anonymous": false,
184
+ "inputs": [
185
+ {
186
+ "indexed": true,
187
+ "internalType": "address",
188
+ "name": "previousOwner",
189
+ "type": "address"
190
+ },
191
+ {
192
+ "indexed": true,
193
+ "internalType": "address",
194
+ "name": "newOwner",
195
+ "type": "address"
196
+ }
197
+ ],
198
+ "name": "OwnershipTransferred",
199
+ "type": "event"
200
+ },
201
+ {
202
+ "anonymous": false,
203
+ "inputs": [
204
+ {
205
+ "indexed": true,
206
+ "internalType": "address",
207
+ "name": "account",
208
+ "type": "address"
209
+ },
210
+ {
211
+ "indexed": false,
212
+ "internalType": "uint256",
213
+ "name": "amount",
214
+ "type": "uint256"
215
+ }
216
+ ],
217
+ "name": "Restake",
218
+ "type": "event"
219
+ },
220
+ {
221
+ "anonymous": false,
222
+ "inputs": [
223
+ {
224
+ "components": [
225
+ {
226
+ "internalType": "uint256",
227
+ "name": "xPowerMultiplier",
228
+ "type": "uint256"
229
+ },
230
+ {
231
+ "internalType": "uint256",
232
+ "name": "startTimestamp",
233
+ "type": "uint256"
234
+ },
235
+ {
236
+ "internalType": "uint256",
237
+ "name": "endTimestamp",
238
+ "type": "uint256"
239
+ }
240
+ ],
241
+ "indexed": false,
242
+ "internalType": "struct StakingStableAPR.BoostEvent",
243
+ "name": "newBoostEvent",
244
+ "type": "tuple"
245
+ }
246
+ ],
247
+ "name": "SetBoostEvent",
248
+ "type": "event"
249
+ },
250
+ {
251
+ "anonymous": false,
252
+ "inputs": [
253
+ {
254
+ "indexed": false,
255
+ "internalType": "uint256",
256
+ "name": "compoundingBonus",
257
+ "type": "uint256"
258
+ }
259
+ ],
260
+ "name": "SetCompoundingBonus",
261
+ "type": "event"
262
+ },
263
+ {
264
+ "anonymous": false,
265
+ "inputs": [
266
+ {
267
+ "indexed": false,
268
+ "internalType": "address",
269
+ "name": "feeBurner",
270
+ "type": "address"
271
+ }
272
+ ],
273
+ "name": "SetFeeBurner",
274
+ "type": "event"
275
+ },
276
+ {
277
+ "anonymous": false,
278
+ "inputs": [
279
+ {
280
+ "indexed": false,
281
+ "internalType": "address",
282
+ "name": "feeCollector",
283
+ "type": "address"
284
+ }
285
+ ],
286
+ "name": "SetFeeCollector",
287
+ "type": "event"
288
+ },
289
+ {
290
+ "anonymous": false,
291
+ "inputs": [
292
+ {
293
+ "indexed": false,
294
+ "internalType": "bool",
295
+ "name": "isClaimingPaused",
296
+ "type": "bool"
297
+ }
298
+ ],
299
+ "name": "SetIsClaimingPaused",
300
+ "type": "event"
301
+ },
302
+ {
303
+ "anonymous": false,
304
+ "inputs": [
305
+ {
306
+ "indexed": false,
307
+ "internalType": "uint256",
308
+ "name": "nativeFeeForAction",
309
+ "type": "uint256"
310
+ }
311
+ ],
312
+ "name": "SetNativeFeeForAction",
313
+ "type": "event"
314
+ },
315
+ {
316
+ "anonymous": false,
317
+ "inputs": [
318
+ {
319
+ "indexed": false,
320
+ "internalType": "uint256",
321
+ "name": "stakingPoolLimit",
322
+ "type": "uint256"
323
+ }
324
+ ],
325
+ "name": "SetStakingPoolLimit",
326
+ "type": "event"
327
+ },
328
+ {
329
+ "anonymous": false,
330
+ "inputs": [
331
+ {
332
+ "indexed": false,
333
+ "internalType": "contract IERC20",
334
+ "name": "newStakingToken",
335
+ "type": "address"
336
+ }
337
+ ],
338
+ "name": "SetStakingToken",
339
+ "type": "event"
340
+ },
341
+ {
342
+ "anonymous": false,
343
+ "inputs": [
344
+ {
345
+ "indexed": false,
346
+ "internalType": "uint256",
347
+ "name": "newUnbondingDuration",
348
+ "type": "uint256"
349
+ }
350
+ ],
351
+ "name": "SetUnbondingDuration",
352
+ "type": "event"
353
+ },
354
+ {
355
+ "anonymous": false,
356
+ "inputs": [
357
+ {
358
+ "indexed": false,
359
+ "internalType": "uint256",
360
+ "name": "newUnbondingInitialBurnPercentage",
361
+ "type": "uint256"
362
+ }
363
+ ],
364
+ "name": "SetUnbondingInitialBurnPercentage",
365
+ "type": "event"
366
+ },
367
+ {
368
+ "anonymous": false,
369
+ "inputs": [
370
+ {
371
+ "indexed": false,
372
+ "internalType": "uint256",
373
+ "name": "newXPowerMultiplier",
374
+ "type": "uint256"
375
+ }
376
+ ],
377
+ "name": "SetXPowerMultiplier",
378
+ "type": "event"
379
+ },
380
+ {
381
+ "anonymous": false,
382
+ "inputs": [
383
+ {
384
+ "indexed": false,
385
+ "internalType": "address",
386
+ "name": "tokensFrom",
387
+ "type": "address"
388
+ },
389
+ {
390
+ "indexed": true,
391
+ "internalType": "address",
392
+ "name": "account",
393
+ "type": "address"
394
+ },
395
+ {
396
+ "indexed": false,
397
+ "internalType": "uint256",
398
+ "name": "amount",
399
+ "type": "uint256"
400
+ }
401
+ ],
402
+ "name": "Stake",
403
+ "type": "event"
404
+ },
405
+ {
406
+ "anonymous": false,
407
+ "inputs": [
408
+ {
409
+ "indexed": true,
410
+ "internalType": "address",
411
+ "name": "account",
412
+ "type": "address"
413
+ },
414
+ {
415
+ "indexed": false,
416
+ "internalType": "uint256",
417
+ "name": "amount",
418
+ "type": "uint256"
419
+ },
420
+ {
421
+ "indexed": false,
422
+ "internalType": "uint256",
423
+ "name": "endTimestamp",
424
+ "type": "uint256"
425
+ }
426
+ ],
427
+ "name": "Unstake",
428
+ "type": "event"
429
+ },
430
+ {
431
+ "anonymous": false,
432
+ "inputs": [
433
+ {
434
+ "indexed": true,
435
+ "internalType": "address",
436
+ "name": "implementation",
437
+ "type": "address"
438
+ }
439
+ ],
440
+ "name": "Upgraded",
441
+ "type": "event"
442
+ },
443
+ {
444
+ "anonymous": false,
445
+ "inputs": [
446
+ {
447
+ "indexed": true,
448
+ "internalType": "address",
449
+ "name": "account",
450
+ "type": "address"
451
+ },
452
+ {
453
+ "indexed": false,
454
+ "internalType": "uint256",
455
+ "name": "amount",
456
+ "type": "uint256"
457
+ }
458
+ ],
459
+ "name": "Withdraw",
460
+ "type": "event"
461
+ },
462
+ {
463
+ "anonymous": false,
464
+ "inputs": [
465
+ {
466
+ "indexed": true,
467
+ "internalType": "address",
468
+ "name": "account",
469
+ "type": "address"
470
+ },
471
+ {
472
+ "indexed": false,
473
+ "internalType": "uint256",
474
+ "name": "amount",
475
+ "type": "uint256"
476
+ }
477
+ ],
478
+ "name": "WithdrawTokensBurnedByUsers",
479
+ "type": "event"
480
+ },
481
+ {
482
+ "inputs": [],
483
+ "name": "acceptOwnership",
484
+ "outputs": [],
485
+ "stateMutability": "nonpayable",
486
+ "type": "function"
487
+ },
488
+ {
489
+ "inputs": [],
490
+ "name": "aprPercentage",
491
+ "outputs": [
492
+ {
493
+ "internalType": "uint256",
494
+ "name": "",
495
+ "type": "uint256"
496
+ }
497
+ ],
498
+ "stateMutability": "view",
499
+ "type": "function"
500
+ },
501
+ {
502
+ "inputs": [
503
+ {
504
+ "internalType": "uint256",
505
+ "name": "",
506
+ "type": "uint256"
507
+ }
508
+ ],
509
+ "name": "aprPeriods",
510
+ "outputs": [
511
+ {
512
+ "internalType": "uint256",
513
+ "name": "start",
514
+ "type": "uint256"
515
+ },
516
+ {
517
+ "internalType": "uint256",
518
+ "name": "apr",
519
+ "type": "uint256"
520
+ }
521
+ ],
522
+ "stateMutability": "view",
523
+ "type": "function"
524
+ },
525
+ {
526
+ "inputs": [],
527
+ "name": "boostEvent",
528
+ "outputs": [
529
+ {
530
+ "internalType": "uint256",
531
+ "name": "xPowerMultiplier",
532
+ "type": "uint256"
533
+ },
534
+ {
535
+ "internalType": "uint256",
536
+ "name": "startTimestamp",
537
+ "type": "uint256"
538
+ },
539
+ {
540
+ "internalType": "uint256",
541
+ "name": "endTimestamp",
542
+ "type": "uint256"
543
+ }
544
+ ],
545
+ "stateMutability": "view",
546
+ "type": "function"
547
+ },
548
+ {
549
+ "inputs": [],
550
+ "name": "claim",
551
+ "outputs": [],
552
+ "stateMutability": "payable",
553
+ "type": "function"
554
+ },
555
+ {
556
+ "inputs": [],
557
+ "name": "compound",
558
+ "outputs": [],
559
+ "stateMutability": "payable",
560
+ "type": "function"
561
+ },
562
+ {
563
+ "inputs": [],
564
+ "name": "compoundingBonus",
565
+ "outputs": [
566
+ {
567
+ "internalType": "uint256",
568
+ "name": "",
569
+ "type": "uint256"
570
+ }
571
+ ],
572
+ "stateMutability": "view",
573
+ "type": "function"
574
+ },
575
+ {
576
+ "inputs": [
577
+ {
578
+ "internalType": "contract IERC20",
579
+ "name": "token",
580
+ "type": "address"
581
+ }
582
+ ],
583
+ "name": "emergencyTokenWithdraw",
584
+ "outputs": [],
585
+ "stateMutability": "nonpayable",
586
+ "type": "function"
587
+ },
588
+ {
589
+ "inputs": [],
590
+ "name": "feeBurner",
591
+ "outputs": [
592
+ {
593
+ "internalType": "address",
594
+ "name": "",
595
+ "type": "address"
596
+ }
597
+ ],
598
+ "stateMutability": "view",
599
+ "type": "function"
600
+ },
601
+ {
602
+ "inputs": [],
603
+ "name": "feeCollector",
604
+ "outputs": [
605
+ {
606
+ "internalType": "address",
607
+ "name": "",
608
+ "type": "address"
609
+ }
610
+ ],
611
+ "stateMutability": "view",
612
+ "type": "function"
613
+ },
614
+ {
615
+ "inputs": [
616
+ {
617
+ "internalType": "address",
618
+ "name": "staker",
619
+ "type": "address"
620
+ }
621
+ ],
622
+ "name": "getStaker",
623
+ "outputs": [
624
+ {
625
+ "components": [
626
+ {
627
+ "internalType": "address",
628
+ "name": "walletAddress",
629
+ "type": "address"
630
+ },
631
+ {
632
+ "internalType": "uint256",
633
+ "name": "xPower",
634
+ "type": "uint256"
635
+ },
636
+ {
637
+ "internalType": "uint256",
638
+ "name": "balance",
639
+ "type": "uint256"
640
+ },
641
+ {
642
+ "internalType": "uint256",
643
+ "name": "claimableReward",
644
+ "type": "uint256"
645
+ },
646
+ {
647
+ "internalType": "uint256",
648
+ "name": "compoundableReward",
649
+ "type": "uint256"
650
+ },
651
+ {
652
+ "internalType": "uint256",
653
+ "name": "withdrawableFromUnbonding",
654
+ "type": "uint256"
655
+ }
656
+ ],
657
+ "internalType": "struct StakingStableAPR.StakerResponse",
658
+ "name": "",
659
+ "type": "tuple"
660
+ }
661
+ ],
662
+ "stateMutability": "view",
663
+ "type": "function"
664
+ },
665
+ {
666
+ "inputs": [
667
+ {
668
+ "internalType": "uint256",
669
+ "name": "limit",
670
+ "type": "uint256"
671
+ },
672
+ {
673
+ "internalType": "uint256",
674
+ "name": "offset",
675
+ "type": "uint256"
676
+ }
677
+ ],
678
+ "name": "getStakers",
679
+ "outputs": [
680
+ {
681
+ "components": [
682
+ {
683
+ "internalType": "address",
684
+ "name": "walletAddress",
685
+ "type": "address"
686
+ },
687
+ {
688
+ "internalType": "uint256",
689
+ "name": "xPower",
690
+ "type": "uint256"
691
+ },
692
+ {
693
+ "internalType": "uint256",
694
+ "name": "balance",
695
+ "type": "uint256"
696
+ },
697
+ {
698
+ "internalType": "uint256",
699
+ "name": "claimableReward",
700
+ "type": "uint256"
701
+ },
702
+ {
703
+ "internalType": "uint256",
704
+ "name": "compoundableReward",
705
+ "type": "uint256"
706
+ },
707
+ {
708
+ "internalType": "uint256",
709
+ "name": "withdrawableFromUnbonding",
710
+ "type": "uint256"
711
+ }
712
+ ],
713
+ "internalType": "struct StakingStableAPR.StakerResponse[]",
714
+ "name": "",
715
+ "type": "tuple[]"
716
+ }
717
+ ],
718
+ "stateMutability": "view",
719
+ "type": "function"
720
+ },
721
+ {
722
+ "inputs": [],
723
+ "name": "getStakingInfo",
724
+ "outputs": [
725
+ {
726
+ "components": [
727
+ {
728
+ "internalType": "uint256",
729
+ "name": "totalStakedAmount",
730
+ "type": "uint256"
731
+ },
732
+ {
733
+ "internalType": "uint256",
734
+ "name": "stakingPoolLimit",
735
+ "type": "uint256"
736
+ },
737
+ {
738
+ "internalType": "uint256",
739
+ "name": "unbondingDuration",
740
+ "type": "uint256"
741
+ },
742
+ {
743
+ "internalType": "uint256",
744
+ "name": "nativeFeeForAction",
745
+ "type": "uint256"
746
+ },
747
+ {
748
+ "internalType": "uint256",
749
+ "name": "stakersCount",
750
+ "type": "uint256"
751
+ },
752
+ {
753
+ "internalType": "uint256",
754
+ "name": "compoundingBonus",
755
+ "type": "uint256"
756
+ },
757
+ {
758
+ "internalType": "uint256",
759
+ "name": "currentAPR",
760
+ "type": "uint256"
761
+ },
762
+ {
763
+ "internalType": "uint256",
764
+ "name": "xPowerMultiplier",
765
+ "type": "uint256"
766
+ }
767
+ ],
768
+ "internalType": "struct StakingStableAPR.StakingInfo",
769
+ "name": "",
770
+ "type": "tuple"
771
+ }
772
+ ],
773
+ "stateMutability": "view",
774
+ "type": "function"
775
+ },
776
+ {
777
+ "inputs": [
778
+ {
779
+ "internalType": "address",
780
+ "name": "staker",
781
+ "type": "address"
782
+ }
783
+ ],
784
+ "name": "getUnbonding",
785
+ "outputs": [
786
+ {
787
+ "components": [
788
+ {
789
+ "internalType": "uint256",
790
+ "name": "amount",
791
+ "type": "uint256"
792
+ },
793
+ {
794
+ "internalType": "uint256",
795
+ "name": "xPower",
796
+ "type": "uint256"
797
+ },
798
+ {
799
+ "internalType": "uint256",
800
+ "name": "startTimestamp",
801
+ "type": "uint256"
802
+ },
803
+ {
804
+ "internalType": "uint256",
805
+ "name": "endTimestamp",
806
+ "type": "uint256"
807
+ }
808
+ ],
809
+ "internalType": "struct StakingStableAPR.Unbonding",
810
+ "name": "",
811
+ "type": "tuple"
812
+ }
813
+ ],
814
+ "stateMutability": "view",
815
+ "type": "function"
816
+ },
817
+ {
818
+ "inputs": [
819
+ {
820
+ "internalType": "contract IERC20",
821
+ "name": "_stakingToken",
822
+ "type": "address"
823
+ },
824
+ {
825
+ "internalType": "uint256",
826
+ "name": "_unbondingDuration",
827
+ "type": "uint256"
828
+ },
829
+ {
830
+ "internalType": "uint256",
831
+ "name": "_unbondingInitialBurnPercentage",
832
+ "type": "uint256"
833
+ },
834
+ {
835
+ "internalType": "uint256",
836
+ "name": "_stakingPoolLimit",
837
+ "type": "uint256"
838
+ },
839
+ {
840
+ "internalType": "uint256",
841
+ "name": "_nativeFeeForAction",
842
+ "type": "uint256"
843
+ },
844
+ {
845
+ "internalType": "address",
846
+ "name": "_feeCollector",
847
+ "type": "address"
848
+ },
849
+ {
850
+ "internalType": "address",
851
+ "name": "_feeBurner",
852
+ "type": "address"
853
+ },
854
+ {
855
+ "internalType": "uint256",
856
+ "name": "_compoundingBonus",
857
+ "type": "uint256"
858
+ },
859
+ {
860
+ "internalType": "uint256",
861
+ "name": "_apr",
862
+ "type": "uint256"
863
+ },
864
+ {
865
+ "internalType": "uint256",
866
+ "name": "_xPowerMultiplier",
867
+ "type": "uint256"
868
+ },
869
+ {
870
+ "internalType": "address",
871
+ "name": "_owner",
872
+ "type": "address"
873
+ }
874
+ ],
875
+ "name": "initialize",
876
+ "outputs": [],
877
+ "stateMutability": "nonpayable",
878
+ "type": "function"
879
+ },
880
+ {
881
+ "inputs": [],
882
+ "name": "isClaimingPaused",
883
+ "outputs": [
884
+ {
885
+ "internalType": "bool",
886
+ "name": "",
887
+ "type": "bool"
888
+ }
889
+ ],
890
+ "stateMutability": "view",
891
+ "type": "function"
892
+ },
893
+ {
894
+ "inputs": [],
895
+ "name": "nativeFeeForAction",
896
+ "outputs": [
897
+ {
898
+ "internalType": "uint256",
899
+ "name": "",
900
+ "type": "uint256"
901
+ }
902
+ ],
903
+ "stateMutability": "view",
904
+ "type": "function"
905
+ },
906
+ {
907
+ "inputs": [],
908
+ "name": "owner",
909
+ "outputs": [
910
+ {
911
+ "internalType": "address",
912
+ "name": "",
913
+ "type": "address"
914
+ }
915
+ ],
916
+ "stateMutability": "view",
917
+ "type": "function"
918
+ },
919
+ {
920
+ "inputs": [],
921
+ "name": "pendingOwner",
922
+ "outputs": [
923
+ {
924
+ "internalType": "address",
925
+ "name": "",
926
+ "type": "address"
927
+ }
928
+ ],
929
+ "stateMutability": "view",
930
+ "type": "function"
931
+ },
932
+ {
933
+ "inputs": [],
934
+ "name": "proxiableUUID",
935
+ "outputs": [
936
+ {
937
+ "internalType": "bytes32",
938
+ "name": "",
939
+ "type": "bytes32"
940
+ }
941
+ ],
942
+ "stateMutability": "view",
943
+ "type": "function"
944
+ },
945
+ {
946
+ "inputs": [],
947
+ "name": "renounceOwnership",
948
+ "outputs": [],
949
+ "stateMutability": "nonpayable",
950
+ "type": "function"
951
+ },
952
+ {
953
+ "inputs": [],
954
+ "name": "restake",
955
+ "outputs": [],
956
+ "stateMutability": "payable",
957
+ "type": "function"
958
+ },
959
+ {
960
+ "inputs": [],
961
+ "name": "secondsInYear",
962
+ "outputs": [
963
+ {
964
+ "internalType": "uint256",
965
+ "name": "",
966
+ "type": "uint256"
967
+ }
968
+ ],
969
+ "stateMutability": "view",
970
+ "type": "function"
971
+ },
972
+ {
973
+ "inputs": [
974
+ {
975
+ "internalType": "uint256",
976
+ "name": "_apr",
977
+ "type": "uint256"
978
+ }
979
+ ],
980
+ "name": "setAPR",
981
+ "outputs": [],
982
+ "stateMutability": "nonpayable",
983
+ "type": "function"
984
+ },
985
+ {
986
+ "inputs": [
987
+ {
988
+ "components": [
989
+ {
990
+ "internalType": "uint256",
991
+ "name": "xPowerMultiplier",
992
+ "type": "uint256"
993
+ },
994
+ {
995
+ "internalType": "uint256",
996
+ "name": "startTimestamp",
997
+ "type": "uint256"
998
+ },
999
+ {
1000
+ "internalType": "uint256",
1001
+ "name": "endTimestamp",
1002
+ "type": "uint256"
1003
+ }
1004
+ ],
1005
+ "internalType": "struct StakingStableAPR.BoostEvent",
1006
+ "name": "_boostEvent",
1007
+ "type": "tuple"
1008
+ }
1009
+ ],
1010
+ "name": "setBoostEvent",
1011
+ "outputs": [],
1012
+ "stateMutability": "nonpayable",
1013
+ "type": "function"
1014
+ },
1015
+ {
1016
+ "inputs": [
1017
+ {
1018
+ "internalType": "uint256",
1019
+ "name": "_compoundingBonus",
1020
+ "type": "uint256"
1021
+ }
1022
+ ],
1023
+ "name": "setCompoundingBonus",
1024
+ "outputs": [],
1025
+ "stateMutability": "nonpayable",
1026
+ "type": "function"
1027
+ },
1028
+ {
1029
+ "inputs": [
1030
+ {
1031
+ "internalType": "address",
1032
+ "name": "_feeBurner",
1033
+ "type": "address"
1034
+ }
1035
+ ],
1036
+ "name": "setFeeBurner",
1037
+ "outputs": [],
1038
+ "stateMutability": "nonpayable",
1039
+ "type": "function"
1040
+ },
1041
+ {
1042
+ "inputs": [
1043
+ {
1044
+ "internalType": "address",
1045
+ "name": "_feeCollector",
1046
+ "type": "address"
1047
+ }
1048
+ ],
1049
+ "name": "setFeeCollector",
1050
+ "outputs": [],
1051
+ "stateMutability": "nonpayable",
1052
+ "type": "function"
1053
+ },
1054
+ {
1055
+ "inputs": [
1056
+ {
1057
+ "internalType": "bool",
1058
+ "name": "_isClaimingPaused",
1059
+ "type": "bool"
1060
+ }
1061
+ ],
1062
+ "name": "setIsClaimingPaused",
1063
+ "outputs": [],
1064
+ "stateMutability": "nonpayable",
1065
+ "type": "function"
1066
+ },
1067
+ {
1068
+ "inputs": [
1069
+ {
1070
+ "internalType": "uint256",
1071
+ "name": "_nativeFeeForAction",
1072
+ "type": "uint256"
1073
+ }
1074
+ ],
1075
+ "name": "setNativeFeeForAction",
1076
+ "outputs": [],
1077
+ "stateMutability": "nonpayable",
1078
+ "type": "function"
1079
+ },
1080
+ {
1081
+ "inputs": [
1082
+ {
1083
+ "internalType": "uint256",
1084
+ "name": "_stakingPoolLimit",
1085
+ "type": "uint256"
1086
+ }
1087
+ ],
1088
+ "name": "setStakingPoolLimit",
1089
+ "outputs": [],
1090
+ "stateMutability": "nonpayable",
1091
+ "type": "function"
1092
+ },
1093
+ {
1094
+ "inputs": [
1095
+ {
1096
+ "internalType": "contract IERC20",
1097
+ "name": "_stakingToken",
1098
+ "type": "address"
1099
+ }
1100
+ ],
1101
+ "name": "setStakingToken",
1102
+ "outputs": [],
1103
+ "stateMutability": "nonpayable",
1104
+ "type": "function"
1105
+ },
1106
+ {
1107
+ "inputs": [
1108
+ {
1109
+ "internalType": "uint256",
1110
+ "name": "_unbondingDuration",
1111
+ "type": "uint256"
1112
+ }
1113
+ ],
1114
+ "name": "setUnbondingDuration",
1115
+ "outputs": [],
1116
+ "stateMutability": "nonpayable",
1117
+ "type": "function"
1118
+ },
1119
+ {
1120
+ "inputs": [
1121
+ {
1122
+ "internalType": "uint256",
1123
+ "name": "_unbondingInitialBurnPercentage",
1124
+ "type": "uint256"
1125
+ }
1126
+ ],
1127
+ "name": "setUnbondingInitialBurnPercentage",
1128
+ "outputs": [],
1129
+ "stateMutability": "nonpayable",
1130
+ "type": "function"
1131
+ },
1132
+ {
1133
+ "inputs": [
1134
+ {
1135
+ "internalType": "uint256",
1136
+ "name": "_xPowerMultiplier",
1137
+ "type": "uint256"
1138
+ }
1139
+ ],
1140
+ "name": "setXPowerMultiplier",
1141
+ "outputs": [],
1142
+ "stateMutability": "nonpayable",
1143
+ "type": "function"
1144
+ },
1145
+ {
1146
+ "inputs": [
1147
+ {
1148
+ "internalType": "uint256",
1149
+ "name": "amount",
1150
+ "type": "uint256"
1151
+ }
1152
+ ],
1153
+ "name": "stake",
1154
+ "outputs": [],
1155
+ "stateMutability": "payable",
1156
+ "type": "function"
1157
+ },
1158
+ {
1159
+ "inputs": [
1160
+ {
1161
+ "internalType": "uint256",
1162
+ "name": "amount",
1163
+ "type": "uint256"
1164
+ },
1165
+ {
1166
+ "internalType": "address",
1167
+ "name": "user",
1168
+ "type": "address"
1169
+ }
1170
+ ],
1171
+ "name": "stakeFor",
1172
+ "outputs": [],
1173
+ "stateMutability": "payable",
1174
+ "type": "function"
1175
+ },
1176
+ {
1177
+ "inputs": [
1178
+ {
1179
+ "internalType": "uint256",
1180
+ "name": "",
1181
+ "type": "uint256"
1182
+ }
1183
+ ],
1184
+ "name": "stakerAddresses",
1185
+ "outputs": [
1186
+ {
1187
+ "internalType": "address",
1188
+ "name": "",
1189
+ "type": "address"
1190
+ }
1191
+ ],
1192
+ "stateMutability": "view",
1193
+ "type": "function"
1194
+ },
1195
+ {
1196
+ "inputs": [
1197
+ {
1198
+ "internalType": "address",
1199
+ "name": "",
1200
+ "type": "address"
1201
+ }
1202
+ ],
1203
+ "name": "stakers",
1204
+ "outputs": [
1205
+ {
1206
+ "internalType": "uint256",
1207
+ "name": "lastUpdate",
1208
+ "type": "uint256"
1209
+ },
1210
+ {
1211
+ "internalType": "uint256",
1212
+ "name": "pendingReward",
1213
+ "type": "uint256"
1214
+ },
1215
+ {
1216
+ "internalType": "uint256",
1217
+ "name": "balance",
1218
+ "type": "uint256"
1219
+ },
1220
+ {
1221
+ "internalType": "uint256",
1222
+ "name": "xPower",
1223
+ "type": "uint256"
1224
+ }
1225
+ ],
1226
+ "stateMutability": "view",
1227
+ "type": "function"
1228
+ },
1229
+ {
1230
+ "inputs": [],
1231
+ "name": "stakersCount",
1232
+ "outputs": [
1233
+ {
1234
+ "internalType": "uint256",
1235
+ "name": "",
1236
+ "type": "uint256"
1237
+ }
1238
+ ],
1239
+ "stateMutability": "view",
1240
+ "type": "function"
1241
+ },
1242
+ {
1243
+ "inputs": [],
1244
+ "name": "stakingPoolLimit",
1245
+ "outputs": [
1246
+ {
1247
+ "internalType": "uint256",
1248
+ "name": "",
1249
+ "type": "uint256"
1250
+ }
1251
+ ],
1252
+ "stateMutability": "view",
1253
+ "type": "function"
1254
+ },
1255
+ {
1256
+ "inputs": [],
1257
+ "name": "stakingToken",
1258
+ "outputs": [
1259
+ {
1260
+ "internalType": "contract IERC20",
1261
+ "name": "",
1262
+ "type": "address"
1263
+ }
1264
+ ],
1265
+ "stateMutability": "view",
1266
+ "type": "function"
1267
+ },
1268
+ {
1269
+ "inputs": [],
1270
+ "name": "totalStakedAmount",
1271
+ "outputs": [
1272
+ {
1273
+ "internalType": "uint256",
1274
+ "name": "",
1275
+ "type": "uint256"
1276
+ }
1277
+ ],
1278
+ "stateMutability": "view",
1279
+ "type": "function"
1280
+ },
1281
+ {
1282
+ "inputs": [
1283
+ {
1284
+ "internalType": "address",
1285
+ "name": "newOwner",
1286
+ "type": "address"
1287
+ }
1288
+ ],
1289
+ "name": "transferOwnership",
1290
+ "outputs": [],
1291
+ "stateMutability": "nonpayable",
1292
+ "type": "function"
1293
+ },
1294
+ {
1295
+ "inputs": [],
1296
+ "name": "unbondingDuration",
1297
+ "outputs": [
1298
+ {
1299
+ "internalType": "uint256",
1300
+ "name": "",
1301
+ "type": "uint256"
1302
+ }
1303
+ ],
1304
+ "stateMutability": "view",
1305
+ "type": "function"
1306
+ },
1307
+ {
1308
+ "inputs": [],
1309
+ "name": "unbondingInitialBurnPercentage",
1310
+ "outputs": [
1311
+ {
1312
+ "internalType": "uint256",
1313
+ "name": "",
1314
+ "type": "uint256"
1315
+ }
1316
+ ],
1317
+ "stateMutability": "view",
1318
+ "type": "function"
1319
+ },
1320
+ {
1321
+ "inputs": [
1322
+ {
1323
+ "internalType": "address",
1324
+ "name": "",
1325
+ "type": "address"
1326
+ }
1327
+ ],
1328
+ "name": "unbondings",
1329
+ "outputs": [
1330
+ {
1331
+ "internalType": "uint256",
1332
+ "name": "amount",
1333
+ "type": "uint256"
1334
+ },
1335
+ {
1336
+ "internalType": "uint256",
1337
+ "name": "xPower",
1338
+ "type": "uint256"
1339
+ },
1340
+ {
1341
+ "internalType": "uint256",
1342
+ "name": "startTimestamp",
1343
+ "type": "uint256"
1344
+ },
1345
+ {
1346
+ "internalType": "uint256",
1347
+ "name": "endTimestamp",
1348
+ "type": "uint256"
1349
+ }
1350
+ ],
1351
+ "stateMutability": "view",
1352
+ "type": "function"
1353
+ },
1354
+ {
1355
+ "inputs": [
1356
+ {
1357
+ "internalType": "uint256",
1358
+ "name": "amountToUnstake",
1359
+ "type": "uint256"
1360
+ }
1361
+ ],
1362
+ "name": "unstake",
1363
+ "outputs": [],
1364
+ "stateMutability": "payable",
1365
+ "type": "function"
1366
+ },
1367
+ {
1368
+ "inputs": [
1369
+ {
1370
+ "internalType": "address",
1371
+ "name": "newImplementation",
1372
+ "type": "address"
1373
+ }
1374
+ ],
1375
+ "name": "upgradeTo",
1376
+ "outputs": [],
1377
+ "stateMutability": "nonpayable",
1378
+ "type": "function"
1379
+ },
1380
+ {
1381
+ "inputs": [
1382
+ {
1383
+ "internalType": "address",
1384
+ "name": "newImplementation",
1385
+ "type": "address"
1386
+ },
1387
+ {
1388
+ "internalType": "bytes",
1389
+ "name": "data",
1390
+ "type": "bytes"
1391
+ }
1392
+ ],
1393
+ "name": "upgradeToAndCall",
1394
+ "outputs": [],
1395
+ "stateMutability": "payable",
1396
+ "type": "function"
1397
+ },
1398
+ {
1399
+ "inputs": [],
1400
+ "name": "withdraw",
1401
+ "outputs": [],
1402
+ "stateMutability": "payable",
1403
+ "type": "function"
1404
+ },
1405
+ {
1406
+ "inputs": [],
1407
+ "name": "withdrawTokensBurnedByUsers",
1408
+ "outputs": [],
1409
+ "stateMutability": "nonpayable",
1410
+ "type": "function"
1411
+ },
1412
+ {
1413
+ "inputs": [],
1414
+ "name": "withdrawableTokensBurnedByUsers",
1415
+ "outputs": [
1416
+ {
1417
+ "internalType": "uint256",
1418
+ "name": "",
1419
+ "type": "uint256"
1420
+ }
1421
+ ],
1422
+ "stateMutability": "view",
1423
+ "type": "function"
1424
+ },
1425
+ {
1426
+ "inputs": [],
1427
+ "name": "xPowerMultiplier",
1428
+ "outputs": [
1429
+ {
1430
+ "internalType": "uint256",
1431
+ "name": "",
1432
+ "type": "uint256"
1433
+ }
1434
+ ],
1435
+ "stateMutability": "view",
1436
+ "type": "function"
1437
+ }
1438
+ ]