@pancakeswap/pools 4.0.3

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 (101) hide show
  1. package/.turbo/turbo-build.log +18 -0
  2. package/CHANGELOG.md +91 -0
  3. package/LICENSE +674 -0
  4. package/dist/abis/ICake.d.ts +92 -0
  5. package/dist/abis/ICake.d.ts.map +1 -0
  6. package/dist/abis/ICakeFlexibleSideVaultV2.d.ts +378 -0
  7. package/dist/abis/ICakeFlexibleSideVaultV2.d.ts.map +1 -0
  8. package/dist/abis/ICakeVaultV2.d.ts +750 -0
  9. package/dist/abis/ICakeVaultV2.d.ts.map +1 -0
  10. package/dist/abis/ISmartChef.d.ts +523 -0
  11. package/dist/abis/ISmartChef.d.ts.map +1 -0
  12. package/dist/abis/ISousChef.d.ts +212 -0
  13. package/dist/abis/ISousChef.d.ts.map +1 -0
  14. package/dist/abis/ISousChefBNB.d.ts +279 -0
  15. package/dist/abis/ISousChefBNB.d.ts.map +1 -0
  16. package/dist/abis/ISousChefV2.d.ts +264 -0
  17. package/dist/abis/ISousChefV2.d.ts.map +1 -0
  18. package/dist/abis/ISousChefV3.d.ts +523 -0
  19. package/dist/abis/ISousChefV3.d.ts.map +1 -0
  20. package/dist/constants/contracts.d.ts +22 -0
  21. package/dist/constants/contracts.d.ts.map +1 -0
  22. package/dist/constants/index.d.ts +8 -0
  23. package/dist/constants/index.d.ts.map +1 -0
  24. package/dist/constants/pools/1.d.ts +5 -0
  25. package/dist/constants/pools/1.d.ts.map +1 -0
  26. package/dist/constants/pools/56.d.ts +4 -0
  27. package/dist/constants/pools/56.d.ts.map +1 -0
  28. package/dist/constants/pools/97.d.ts +5 -0
  29. package/dist/constants/pools/97.d.ts.map +1 -0
  30. package/dist/constants/pools/index.d.ts +15 -0
  31. package/dist/constants/pools/index.d.ts.map +1 -0
  32. package/dist/constants/supportedChains.d.ts +4 -0
  33. package/dist/constants/supportedChains.d.ts.map +1 -0
  34. package/dist/index.d.ts +13 -0
  35. package/dist/index.d.ts.map +1 -0
  36. package/dist/index.js +6288 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/index.mjs +6224 -0
  39. package/dist/index.mjs.map +1 -0
  40. package/dist/queries/fetchPools.d.ts +37 -0
  41. package/dist/queries/fetchPools.d.ts.map +1 -0
  42. package/dist/queries/fetchUserIfo.d.ts +16 -0
  43. package/dist/queries/fetchUserIfo.d.ts.map +1 -0
  44. package/dist/queries/fetchUserPoolsData.d.ts +16 -0
  45. package/dist/queries/fetchUserPoolsData.d.ts.map +1 -0
  46. package/dist/queries/fetchVaultPublic.d.ts +39 -0
  47. package/dist/queries/fetchVaultPublic.d.ts.map +1 -0
  48. package/dist/queries/fetchVaultUser.d.ts +12 -0
  49. package/dist/queries/fetchVaultUser.d.ts.map +1 -0
  50. package/dist/queries/getAddresses.d.ts +4 -0
  51. package/dist/queries/getAddresses.d.ts.map +1 -0
  52. package/dist/queries/index.d.ts +7 -0
  53. package/dist/queries/index.d.ts.map +1 -0
  54. package/dist/types.d.ts +176 -0
  55. package/dist/types.d.ts.map +1 -0
  56. package/dist/utils/apr.d.ts +11 -0
  57. package/dist/utils/apr.d.ts.map +1 -0
  58. package/dist/utils/getContractAddress.d.ts +4 -0
  59. package/dist/utils/getContractAddress.d.ts.map +1 -0
  60. package/dist/utils/getPoolContractBySousId.d.ts +35 -0
  61. package/dist/utils/getPoolContractBySousId.d.ts.map +1 -0
  62. package/dist/utils/index.d.ts +6 -0
  63. package/dist/utils/index.d.ts.map +1 -0
  64. package/dist/utils/isLegacyPool.d.ts +4 -0
  65. package/dist/utils/isLegacyPool.d.ts.map +1 -0
  66. package/dist/utils/isPoolsSupported.d.ts +3 -0
  67. package/dist/utils/isPoolsSupported.d.ts.map +1 -0
  68. package/package.json +40 -0
  69. package/src/abis/ICake.ts +59 -0
  70. package/src/abis/ICakeFlexibleSideVaultV2.ts +487 -0
  71. package/src/abis/ICakeVaultV2.ts +487 -0
  72. package/src/abis/ISmartChef.ts +326 -0
  73. package/src/abis/ISousChef.ts +122 -0
  74. package/src/abis/ISousChefBNB.ts +166 -0
  75. package/src/abis/ISousChefV2.ts +341 -0
  76. package/src/abis/ISousChefV3.ts +326 -0
  77. package/src/constants/contracts.ts +26 -0
  78. package/src/constants/index.ts +10 -0
  79. package/src/constants/pools/1.ts +80 -0
  80. package/src/constants/pools/56.ts +2933 -0
  81. package/src/constants/pools/97.ts +74 -0
  82. package/src/constants/pools/index.ts +44 -0
  83. package/src/constants/supportedChains.ts +5 -0
  84. package/src/index.ts +14 -0
  85. package/src/queries/fetchPools.ts +350 -0
  86. package/src/queries/fetchUserIfo.ts +53 -0
  87. package/src/queries/fetchUserPoolsData.ts +143 -0
  88. package/src/queries/fetchVaultPublic.ts +175 -0
  89. package/src/queries/fetchVaultUser.ts +106 -0
  90. package/src/queries/getAddresses.ts +12 -0
  91. package/src/queries/index.ts +6 -0
  92. package/src/types.ts +207 -0
  93. package/src/utils/apr.ts +35 -0
  94. package/src/utils/getContractAddress.ts +11 -0
  95. package/src/utils/getPoolContractBySousId.ts +111 -0
  96. package/src/utils/index.ts +5 -0
  97. package/src/utils/isLegacyPool.ts +15 -0
  98. package/src/utils/isPoolsSupported.ts +5 -0
  99. package/tsconfig.json +14 -0
  100. package/tsup.config.ts +26 -0
  101. package/vitest.config.ts +9 -0
@@ -0,0 +1,341 @@
1
+ export const sousChefV2ABI = [
2
+ {
3
+ inputs: [],
4
+ name: 'PRECISION_FACTOR',
5
+ outputs: [
6
+ {
7
+ internalType: 'uint256',
8
+ name: '',
9
+ type: 'uint256',
10
+ },
11
+ ],
12
+ stateMutability: 'view',
13
+ type: 'function',
14
+ },
15
+ {
16
+ inputs: [],
17
+ name: 'accTokenPerShare',
18
+ outputs: [
19
+ {
20
+ internalType: 'uint256',
21
+ name: '',
22
+ type: 'uint256',
23
+ },
24
+ ],
25
+ stateMutability: 'view',
26
+ type: 'function',
27
+ },
28
+ {
29
+ inputs: [],
30
+ name: 'bonusEndBlock',
31
+ outputs: [
32
+ {
33
+ internalType: 'uint256',
34
+ name: '',
35
+ type: 'uint256',
36
+ },
37
+ ],
38
+ stateMutability: 'view',
39
+ type: 'function',
40
+ },
41
+ {
42
+ inputs: [
43
+ {
44
+ internalType: 'uint256',
45
+ name: '_amount',
46
+ type: 'uint256',
47
+ },
48
+ ],
49
+ name: 'deposit',
50
+ outputs: [],
51
+ stateMutability: 'nonpayable',
52
+ type: 'function',
53
+ },
54
+ {
55
+ inputs: [
56
+ {
57
+ internalType: 'uint256',
58
+ name: '_amount',
59
+ type: 'uint256',
60
+ },
61
+ ],
62
+ name: 'emergencyRewardWithdraw',
63
+ outputs: [],
64
+ stateMutability: 'nonpayable',
65
+ type: 'function',
66
+ },
67
+ {
68
+ inputs: [],
69
+ name: 'emergencyWithdraw',
70
+ outputs: [],
71
+ stateMutability: 'nonpayable',
72
+ type: 'function',
73
+ },
74
+ {
75
+ inputs: [],
76
+ name: 'hasUserLimit',
77
+ outputs: [
78
+ {
79
+ internalType: 'bool',
80
+ name: '',
81
+ type: 'bool',
82
+ },
83
+ ],
84
+ stateMutability: 'view',
85
+ type: 'function',
86
+ },
87
+ {
88
+ inputs: [],
89
+ name: 'lastRewardBlock',
90
+ outputs: [
91
+ {
92
+ internalType: 'uint256',
93
+ name: '',
94
+ type: 'uint256',
95
+ },
96
+ ],
97
+ stateMutability: 'view',
98
+ type: 'function',
99
+ },
100
+ {
101
+ inputs: [],
102
+ name: 'numberBlocksForUserLimit',
103
+ outputs: [
104
+ {
105
+ internalType: 'uint256',
106
+ name: '',
107
+ type: 'uint256',
108
+ },
109
+ ],
110
+ stateMutability: 'view',
111
+ type: 'function',
112
+ },
113
+ {
114
+ inputs: [],
115
+ name: 'owner',
116
+ outputs: [
117
+ {
118
+ internalType: 'address',
119
+ name: '',
120
+ type: 'address',
121
+ },
122
+ ],
123
+ stateMutability: 'view',
124
+ type: 'function',
125
+ },
126
+ {
127
+ inputs: [
128
+ {
129
+ internalType: 'address',
130
+ name: '_user',
131
+ type: 'address',
132
+ },
133
+ ],
134
+ name: 'pendingReward',
135
+ outputs: [
136
+ {
137
+ internalType: 'uint256',
138
+ name: '',
139
+ type: 'uint256',
140
+ },
141
+ ],
142
+ stateMutability: 'view',
143
+ type: 'function',
144
+ },
145
+ {
146
+ inputs: [],
147
+ name: 'poolLimitPerUser',
148
+ outputs: [
149
+ {
150
+ internalType: 'uint256',
151
+ name: '',
152
+ type: 'uint256',
153
+ },
154
+ ],
155
+ stateMutability: 'view',
156
+ type: 'function',
157
+ },
158
+ {
159
+ inputs: [
160
+ {
161
+ internalType: 'address',
162
+ name: '_tokenAddress',
163
+ type: 'address',
164
+ },
165
+ {
166
+ internalType: 'uint256',
167
+ name: '_tokenAmount',
168
+ type: 'uint256',
169
+ },
170
+ ],
171
+ name: 'recoverWrongTokens',
172
+ outputs: [],
173
+ stateMutability: 'nonpayable',
174
+ type: 'function',
175
+ },
176
+ {
177
+ inputs: [],
178
+ name: 'renounceOwnership',
179
+ outputs: [],
180
+ stateMutability: 'nonpayable',
181
+ type: 'function',
182
+ },
183
+ {
184
+ inputs: [],
185
+ name: 'rewardPerBlock',
186
+ outputs: [
187
+ {
188
+ internalType: 'uint256',
189
+ name: '',
190
+ type: 'uint256',
191
+ },
192
+ ],
193
+ stateMutability: 'view',
194
+ type: 'function',
195
+ },
196
+ {
197
+ inputs: [],
198
+ name: 'rewardToken',
199
+ outputs: [
200
+ {
201
+ internalType: 'contract IBEP20',
202
+ name: '',
203
+ type: 'address',
204
+ },
205
+ ],
206
+ stateMutability: 'view',
207
+ type: 'function',
208
+ },
209
+ {
210
+ inputs: [],
211
+ name: 'stakedToken',
212
+ outputs: [
213
+ {
214
+ internalType: 'contract IBEP20',
215
+ name: '',
216
+ type: 'address',
217
+ },
218
+ ],
219
+ stateMutability: 'view',
220
+ type: 'function',
221
+ },
222
+ {
223
+ inputs: [],
224
+ name: 'startBlock',
225
+ outputs: [
226
+ {
227
+ internalType: 'uint256',
228
+ name: '',
229
+ type: 'uint256',
230
+ },
231
+ ],
232
+ stateMutability: 'view',
233
+ type: 'function',
234
+ },
235
+ {
236
+ inputs: [],
237
+ name: 'stopReward',
238
+ outputs: [],
239
+ stateMutability: 'nonpayable',
240
+ type: 'function',
241
+ },
242
+ {
243
+ inputs: [
244
+ {
245
+ internalType: 'address',
246
+ name: 'newOwner',
247
+ type: 'address',
248
+ },
249
+ ],
250
+ name: 'transferOwnership',
251
+ outputs: [],
252
+ stateMutability: 'nonpayable',
253
+ type: 'function',
254
+ },
255
+ {
256
+ inputs: [
257
+ {
258
+ internalType: 'bool',
259
+ name: '_hasUserLimit',
260
+ type: 'bool',
261
+ },
262
+ {
263
+ internalType: 'uint256',
264
+ name: '_poolLimitPerUser',
265
+ type: 'uint256',
266
+ },
267
+ ],
268
+ name: 'updatePoolLimitPerUser',
269
+ outputs: [],
270
+ stateMutability: 'nonpayable',
271
+ type: 'function',
272
+ },
273
+ {
274
+ inputs: [
275
+ {
276
+ internalType: 'uint256',
277
+ name: '_rewardPerBlock',
278
+ type: 'uint256',
279
+ },
280
+ ],
281
+ name: 'updateRewardPerBlock',
282
+ outputs: [],
283
+ stateMutability: 'nonpayable',
284
+ type: 'function',
285
+ },
286
+ {
287
+ inputs: [
288
+ {
289
+ internalType: 'uint256',
290
+ name: '_startBlock',
291
+ type: 'uint256',
292
+ },
293
+ {
294
+ internalType: 'uint256',
295
+ name: '_bonusEndBlock',
296
+ type: 'uint256',
297
+ },
298
+ ],
299
+ name: 'updateStartAndEndBlocks',
300
+ outputs: [],
301
+ stateMutability: 'nonpayable',
302
+ type: 'function',
303
+ },
304
+ {
305
+ inputs: [
306
+ {
307
+ internalType: 'address',
308
+ name: '',
309
+ type: 'address',
310
+ },
311
+ ],
312
+ name: 'userInfo',
313
+ outputs: [
314
+ {
315
+ internalType: 'uint256',
316
+ name: 'amount',
317
+ type: 'uint256',
318
+ },
319
+ {
320
+ internalType: 'uint256',
321
+ name: 'rewardDebt',
322
+ type: 'uint256',
323
+ },
324
+ ],
325
+ stateMutability: 'view',
326
+ type: 'function',
327
+ },
328
+ {
329
+ inputs: [
330
+ {
331
+ internalType: 'uint256',
332
+ name: '_amount',
333
+ type: 'uint256',
334
+ },
335
+ ],
336
+ name: 'withdraw',
337
+ outputs: [],
338
+ stateMutability: 'nonpayable',
339
+ type: 'function',
340
+ },
341
+ ] as const
@@ -0,0 +1,326 @@
1
+ export const sousChefV3ABI = [
2
+ {
3
+ inputs: [
4
+ { internalType: 'address', name: '_pancakeProfile', type: 'address' },
5
+ { internalType: 'bool', name: '_pancakeProfileIsRequested', type: 'bool' },
6
+ { internalType: 'uint256', name: '_pancakeProfileThresholdPoints', type: 'uint256' },
7
+ ],
8
+ stateMutability: 'nonpayable',
9
+ type: 'constructor',
10
+ },
11
+ {
12
+ anonymous: false,
13
+ inputs: [
14
+ { indexed: true, internalType: 'address', name: 'user', type: 'address' },
15
+ { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },
16
+ ],
17
+ name: 'Deposit',
18
+ type: 'event',
19
+ },
20
+ {
21
+ anonymous: false,
22
+ inputs: [
23
+ { indexed: true, internalType: 'address', name: 'user', type: 'address' },
24
+ { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },
25
+ ],
26
+ name: 'EmergencyWithdraw',
27
+ type: 'event',
28
+ },
29
+ {
30
+ anonymous: false,
31
+ inputs: [{ indexed: false, internalType: 'uint256', name: 'poolLimitPerUser', type: 'uint256' }],
32
+ name: 'NewPoolLimit',
33
+ type: 'event',
34
+ },
35
+ {
36
+ anonymous: false,
37
+ inputs: [{ indexed: false, internalType: 'uint256', name: 'rewardPerBlock', type: 'uint256' }],
38
+ name: 'NewRewardPerBlock',
39
+ type: 'event',
40
+ },
41
+ {
42
+ anonymous: false,
43
+ inputs: [
44
+ { indexed: false, internalType: 'uint256', name: 'startBlock', type: 'uint256' },
45
+ { indexed: false, internalType: 'uint256', name: 'endBlock', type: 'uint256' },
46
+ ],
47
+ name: 'NewStartAndEndBlocks',
48
+ type: 'event',
49
+ },
50
+ {
51
+ anonymous: false,
52
+ inputs: [
53
+ { indexed: true, internalType: 'address', name: 'previousOwner', type: 'address' },
54
+ { indexed: true, internalType: 'address', name: 'newOwner', type: 'address' },
55
+ ],
56
+ name: 'OwnershipTransferred',
57
+ type: 'event',
58
+ },
59
+ {
60
+ anonymous: false,
61
+ inputs: [{ indexed: false, internalType: 'uint256', name: 'blockNumber', type: 'uint256' }],
62
+ name: 'RewardsStop',
63
+ type: 'event',
64
+ },
65
+ {
66
+ anonymous: false,
67
+ inputs: [
68
+ { indexed: true, internalType: 'address', name: 'token', type: 'address' },
69
+ { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },
70
+ ],
71
+ name: 'TokenRecovery',
72
+ type: 'event',
73
+ },
74
+ {
75
+ anonymous: false,
76
+ inputs: [
77
+ { indexed: false, internalType: 'bool', name: 'isProfileRequested', type: 'bool' },
78
+ { indexed: false, internalType: 'uint256', name: 'thresholdPoints', type: 'uint256' },
79
+ ],
80
+ name: 'UpdateProfileAndThresholdPointsRequirement',
81
+ type: 'event',
82
+ },
83
+ {
84
+ anonymous: false,
85
+ inputs: [
86
+ { indexed: true, internalType: 'address', name: 'user', type: 'address' },
87
+ { indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' },
88
+ ],
89
+ name: 'Withdraw',
90
+ type: 'event',
91
+ },
92
+ {
93
+ inputs: [],
94
+ name: 'PRECISION_FACTOR',
95
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
96
+ stateMutability: 'view',
97
+ type: 'function',
98
+ },
99
+ {
100
+ inputs: [],
101
+ name: 'SMART_CHEF_FACTORY',
102
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
103
+ stateMutability: 'view',
104
+ type: 'function',
105
+ },
106
+ {
107
+ inputs: [],
108
+ name: 'accTokenPerShare',
109
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
110
+ stateMutability: 'view',
111
+ type: 'function',
112
+ },
113
+ {
114
+ inputs: [],
115
+ name: 'bonusEndBlock',
116
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
117
+ stateMutability: 'view',
118
+ type: 'function',
119
+ },
120
+ {
121
+ inputs: [{ internalType: 'uint256', name: '_amount', type: 'uint256' }],
122
+ name: 'deposit',
123
+ outputs: [],
124
+ stateMutability: 'nonpayable',
125
+ type: 'function',
126
+ },
127
+ {
128
+ inputs: [{ internalType: 'uint256', name: '_amount', type: 'uint256' }],
129
+ name: 'emergencyRewardWithdraw',
130
+ outputs: [],
131
+ stateMutability: 'nonpayable',
132
+ type: 'function',
133
+ },
134
+ { inputs: [], name: 'emergencyWithdraw', outputs: [], stateMutability: 'nonpayable', type: 'function' },
135
+ {
136
+ inputs: [],
137
+ name: 'hasUserLimit',
138
+ outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
139
+ stateMutability: 'view',
140
+ type: 'function',
141
+ },
142
+ {
143
+ inputs: [
144
+ { internalType: 'contract IERC20Metadata', name: '_stakedToken', type: 'address' },
145
+ { internalType: 'contract IERC20Metadata', name: '_rewardToken', type: 'address' },
146
+ { internalType: 'uint256', name: '_rewardPerBlock', type: 'uint256' },
147
+ { internalType: 'uint256', name: '_startBlock', type: 'uint256' },
148
+ { internalType: 'uint256', name: '_bonusEndBlock', type: 'uint256' },
149
+ { internalType: 'uint256', name: '_poolLimitPerUser', type: 'uint256' },
150
+ { internalType: 'uint256', name: '_numberBlocksForUserLimit', type: 'uint256' },
151
+ { internalType: 'address', name: '_admin', type: 'address' },
152
+ ],
153
+ name: 'initialize',
154
+ outputs: [],
155
+ stateMutability: 'nonpayable',
156
+ type: 'function',
157
+ },
158
+ {
159
+ inputs: [],
160
+ name: 'isInitialized',
161
+ outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
162
+ stateMutability: 'view',
163
+ type: 'function',
164
+ },
165
+ {
166
+ inputs: [],
167
+ name: 'lastRewardBlock',
168
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
169
+ stateMutability: 'view',
170
+ type: 'function',
171
+ },
172
+ {
173
+ inputs: [],
174
+ name: 'numberBlocksForUserLimit',
175
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
176
+ stateMutability: 'view',
177
+ type: 'function',
178
+ },
179
+ {
180
+ inputs: [],
181
+ name: 'owner',
182
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
183
+ stateMutability: 'view',
184
+ type: 'function',
185
+ },
186
+ {
187
+ inputs: [],
188
+ name: 'pancakeProfile',
189
+ outputs: [{ internalType: 'contract IPancakeProfile', name: '', type: 'address' }],
190
+ stateMutability: 'view',
191
+ type: 'function',
192
+ },
193
+ {
194
+ inputs: [],
195
+ name: 'pancakeProfileIsRequested',
196
+ outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
197
+ stateMutability: 'view',
198
+ type: 'function',
199
+ },
200
+ {
201
+ inputs: [],
202
+ name: 'pancakeProfileThresholdPoints',
203
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
204
+ stateMutability: 'view',
205
+ type: 'function',
206
+ },
207
+ {
208
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
209
+ name: 'pendingReward',
210
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
211
+ stateMutability: 'view',
212
+ type: 'function',
213
+ },
214
+ {
215
+ inputs: [],
216
+ name: 'poolLimitPerUser',
217
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
218
+ stateMutability: 'view',
219
+ type: 'function',
220
+ },
221
+ {
222
+ inputs: [{ internalType: 'address', name: '_token', type: 'address' }],
223
+ name: 'recoverToken',
224
+ outputs: [],
225
+ stateMutability: 'nonpayable',
226
+ type: 'function',
227
+ },
228
+ { inputs: [], name: 'renounceOwnership', outputs: [], stateMutability: 'nonpayable', type: 'function' },
229
+ {
230
+ inputs: [],
231
+ name: 'rewardPerBlock',
232
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
233
+ stateMutability: 'view',
234
+ type: 'function',
235
+ },
236
+ {
237
+ inputs: [],
238
+ name: 'rewardToken',
239
+ outputs: [{ internalType: 'contract IERC20Metadata', name: '', type: 'address' }],
240
+ stateMutability: 'view',
241
+ type: 'function',
242
+ },
243
+ {
244
+ inputs: [],
245
+ name: 'stakedToken',
246
+ outputs: [{ internalType: 'contract IERC20Metadata', name: '', type: 'address' }],
247
+ stateMutability: 'view',
248
+ type: 'function',
249
+ },
250
+ {
251
+ inputs: [],
252
+ name: 'startBlock',
253
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
254
+ stateMutability: 'view',
255
+ type: 'function',
256
+ },
257
+ { inputs: [], name: 'stopReward', outputs: [], stateMutability: 'nonpayable', type: 'function' },
258
+ {
259
+ inputs: [{ internalType: 'address', name: 'newOwner', type: 'address' }],
260
+ name: 'transferOwnership',
261
+ outputs: [],
262
+ stateMutability: 'nonpayable',
263
+ type: 'function',
264
+ },
265
+ {
266
+ inputs: [
267
+ { internalType: 'bool', name: '_userLimit', type: 'bool' },
268
+ { internalType: 'uint256', name: '_poolLimitPerUser', type: 'uint256' },
269
+ ],
270
+ name: 'updatePoolLimitPerUser',
271
+ outputs: [],
272
+ stateMutability: 'nonpayable',
273
+ type: 'function',
274
+ },
275
+ {
276
+ inputs: [
277
+ { internalType: 'bool', name: '_isRequested', type: 'bool' },
278
+ { internalType: 'uint256', name: '_thresholdPoints', type: 'uint256' },
279
+ ],
280
+ name: 'updateProfileAndThresholdPointsRequirement',
281
+ outputs: [],
282
+ stateMutability: 'nonpayable',
283
+ type: 'function',
284
+ },
285
+ {
286
+ inputs: [{ internalType: 'uint256', name: '_rewardPerBlock', type: 'uint256' }],
287
+ name: 'updateRewardPerBlock',
288
+ outputs: [],
289
+ stateMutability: 'nonpayable',
290
+ type: 'function',
291
+ },
292
+ {
293
+ inputs: [
294
+ { internalType: 'uint256', name: '_startBlock', type: 'uint256' },
295
+ { internalType: 'uint256', name: '_bonusEndBlock', type: 'uint256' },
296
+ ],
297
+ name: 'updateStartAndEndBlocks',
298
+ outputs: [],
299
+ stateMutability: 'nonpayable',
300
+ type: 'function',
301
+ },
302
+ {
303
+ inputs: [{ internalType: 'address', name: '', type: 'address' }],
304
+ name: 'userInfo',
305
+ outputs: [
306
+ { internalType: 'uint256', name: 'amount', type: 'uint256' },
307
+ { internalType: 'uint256', name: 'rewardDebt', type: 'uint256' },
308
+ ],
309
+ stateMutability: 'view',
310
+ type: 'function',
311
+ },
312
+ {
313
+ inputs: [],
314
+ name: 'userLimit',
315
+ outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
316
+ stateMutability: 'view',
317
+ type: 'function',
318
+ },
319
+ {
320
+ inputs: [{ internalType: 'uint256', name: '_amount', type: 'uint256' }],
321
+ name: 'withdraw',
322
+ outputs: [],
323
+ stateMutability: 'nonpayable',
324
+ type: 'function',
325
+ },
326
+ ] as const
@@ -0,0 +1,26 @@
1
+ import { ChainId } from '@pancakeswap/sdk'
2
+ import { Address } from 'viem'
3
+
4
+ import { SupportedChainId } from './supportedChains'
5
+
6
+ export type ContractAddresses<T extends ChainId = SupportedChainId> = {
7
+ [chainId in T]: Address
8
+ }
9
+
10
+ export const ICAKE = {
11
+ [ChainId.BSC]: '0x3C458828D1622F5f4d526eb0d24Da8C4Eb8F07b1',
12
+ [ChainId.BSC_TESTNET]: '0x',
13
+ [ChainId.ETHEREUM]: '0x',
14
+ } as const satisfies ContractAddresses<SupportedChainId>
15
+
16
+ export const CAKE_VAULT = {
17
+ [ChainId.BSC]: '0x45c54210128a065de780C4B0Df3d16664f7f859e',
18
+ [ChainId.BSC_TESTNET]: '0x1088Fb24053F03802F673b84d16AE1A7023E400b',
19
+ [ChainId.ETHEREUM]: '0x',
20
+ } as const satisfies ContractAddresses<SupportedChainId>
21
+
22
+ export const CAKE_FLEXIBLE_SIDE_VAULT = {
23
+ [ChainId.BSC]: '0x615e896A8C2CA8470A2e9dc2E9552998f8658Ea0',
24
+ [ChainId.BSC_TESTNET]: '0x',
25
+ [ChainId.ETHEREUM]: '0x',
26
+ } as const satisfies ContractAddresses<SupportedChainId>
@@ -0,0 +1,10 @@
1
+ export * from './pools'
2
+ export * from './contracts'
3
+ export * from './supportedChains'
4
+
5
+ export const BSC_BLOCK_TIME = 3
6
+
7
+ export const BLOCKS_PER_DAY = (60 / BSC_BLOCK_TIME) * 60 * 24
8
+ export const BLOCKS_PER_YEAR = BLOCKS_PER_DAY * 365 // 10512000
9
+
10
+ export const SECONDS_IN_YEAR = 31536000 // 365 * 24 * 60 * 60