@aastar/core 0.16.7 → 0.16.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/dist/abis/PaymasterV4_2.json +1193 -0
  2. package/dist/abis/SuperPaymaster.json +1 -1
  3. package/dist/abis/aPNTs.json +1160 -0
  4. package/dist/abis/abi.config.json +3 -3
  5. package/dist/abis/index.d.ts +15 -104
  6. package/dist/abis/index.js +22 -46
  7. package/dist/actions/account.d.ts +0 -15
  8. package/dist/actions/account.js +143 -108
  9. package/dist/actions/aggregator.d.ts +68 -7
  10. package/dist/actions/aggregator.js +328 -28
  11. package/dist/actions/dvt.d.ts +33 -5
  12. package/dist/actions/dvt.js +238 -38
  13. package/dist/actions/entryPoint.d.ts +3 -63
  14. package/dist/actions/entryPoint.js +52 -184
  15. package/dist/actions/factory.d.ts +48 -115
  16. package/dist/actions/factory.js +638 -438
  17. package/dist/actions/faucet.d.ts +23 -27
  18. package/dist/actions/faucet.js +150 -289
  19. package/dist/actions/index.d.ts +1 -2
  20. package/dist/actions/index.js +2 -4
  21. package/dist/actions/paymaster.d.ts +147 -0
  22. package/dist/actions/paymaster.js +706 -0
  23. package/dist/actions/paymasterV4.d.ts +26 -95
  24. package/dist/actions/paymasterV4.js +28 -121
  25. package/dist/actions/registry.d.ts +116 -165
  26. package/dist/actions/registry.js +855 -654
  27. package/dist/actions/reputation.d.ts +74 -52
  28. package/dist/actions/reputation.js +548 -242
  29. package/dist/actions/sbt.d.ts +90 -100
  30. package/dist/actions/sbt.js +801 -518
  31. package/dist/actions/staking.d.ts +45 -32
  32. package/dist/actions/staking.js +431 -260
  33. package/dist/actions/superPaymaster.d.ts +140 -158
  34. package/dist/actions/superPaymaster.js +965 -631
  35. package/dist/actions/tokens.d.ts +130 -108
  36. package/dist/actions/tokens.js +470 -414
  37. package/dist/actions/validators.d.ts +0 -73
  38. package/dist/actions/validators.js +0 -94
  39. package/dist/clients/BaseClient.d.ts +3 -3
  40. package/dist/clients/BundlerClient.d.ts +55 -0
  41. package/dist/clients/BundlerClient.js +92 -0
  42. package/dist/communities.js +2 -2
  43. package/dist/constants.js +1 -28
  44. package/dist/contract-addresses.d.ts +5 -14
  45. package/dist/contract-addresses.js +3 -9
  46. package/dist/contract-versions.d.ts +138 -0
  47. package/dist/contract-versions.js +328 -0
  48. package/dist/contracts.d.ts +6 -24
  49. package/dist/contracts.js +2 -2
  50. package/dist/errors/index.d.ts +57 -0
  51. package/dist/errors/index.js +123 -0
  52. package/dist/index.d.ts +2 -1
  53. package/dist/index.js +2 -1
  54. package/dist/requirementChecker.d.ts +35 -1
  55. package/dist/requirementChecker.js +39 -1
  56. package/dist/roles.d.ts +50 -61
  57. package/dist/roles.js +50 -61
  58. package/dist/validators/index.d.ts +35 -0
  59. package/dist/validators/index.js +60 -0
  60. package/package.json +5 -13
@@ -1,4 +1,6 @@
1
1
  import { GTokenStakingABI } from '../abis/index.js';
2
+ import { validateAddress, validateAmount, validateRequired } from '../validators/index.js';
3
+ import { AAStarError } from '../errors/index.js';
2
4
  export const stakingActions = (address) => (client) => ({
3
5
  // Staking Operations
4
6
  /**
@@ -6,325 +8,494 @@ export const stakingActions = (address) => (client) => ({
6
8
  * @warning This is a low-level internal API. Use high-level clients instead.
7
9
  */
8
10
  async lockStake({ user, roleId, stakeAmount, entryBurn, payer, account }) {
9
- return client.writeContract({
10
- address,
11
- abi: GTokenStakingABI,
12
- functionName: 'lockStake',
13
- args: [user, roleId, stakeAmount, entryBurn, payer],
14
- account: account,
15
- chain: client.chain
16
- });
11
+ try {
12
+ validateAddress(user, 'user');
13
+ validateAddress(payer, 'payer');
14
+ validateAmount(stakeAmount, 'stakeAmount');
15
+ validateAmount(entryBurn, 'entryBurn');
16
+ return await client.writeContract({
17
+ address,
18
+ abi: GTokenStakingABI,
19
+ functionName: 'lockStake',
20
+ args: [user, roleId, stakeAmount, entryBurn, payer],
21
+ account: account,
22
+ chain: client.chain
23
+ });
24
+ }
25
+ catch (error) {
26
+ throw AAStarError.fromViemError(error, 'lockStake');
27
+ }
28
+ },
29
+ async topUpStake({ user, roleId, stakeAmount, payer, account }) {
30
+ try {
31
+ validateAddress(user, 'user');
32
+ validateAddress(payer, 'payer');
33
+ validateAmount(stakeAmount, 'stakeAmount');
34
+ return await client.writeContract({
35
+ address,
36
+ abi: GTokenStakingABI,
37
+ functionName: 'topUpStake',
38
+ args: [user, roleId, stakeAmount, payer],
39
+ account: account,
40
+ chain: client.chain
41
+ });
42
+ }
43
+ catch (error) {
44
+ throw AAStarError.fromViemError(error, 'topUpStake');
45
+ }
17
46
  },
18
47
  async unlockStake({ user, roleId, account }) {
19
- return client.writeContract({
20
- address,
21
- abi: GTokenStakingABI,
22
- functionName: 'unlockAndTransfer',
23
- args: [user, roleId],
24
- account: account,
25
- chain: client.chain
26
- });
48
+ try {
49
+ validateAddress(user, 'user');
50
+ validateRequired(roleId, 'roleId');
51
+ return await client.writeContract({
52
+ address,
53
+ abi: GTokenStakingABI,
54
+ functionName: 'unlockAndTransfer',
55
+ args: [user, roleId],
56
+ account: account,
57
+ chain: client.chain
58
+ });
59
+ }
60
+ catch (error) {
61
+ throw AAStarError.fromViemError(error, 'unlockStake');
62
+ }
27
63
  },
28
64
  async unlockAndTransfer({ user, roleId, account }) {
29
- return client.writeContract({
30
- address,
31
- abi: GTokenStakingABI,
32
- functionName: 'unlockAndTransfer',
33
- args: [user, roleId],
34
- account: account,
35
- chain: client.chain
36
- });
37
- },
38
- async stake({ amount, account }) {
39
- return client.writeContract({
40
- address,
41
- abi: GTokenStakingABI,
42
- functionName: 'stake',
43
- args: [amount],
44
- account: account,
45
- chain: client.chain
46
- });
47
- },
48
- async topUpStake({ amount, account }) {
49
- // topUpStake typically calls stake internally or is a distinct function. Assuming distinct based on request.
50
- return client.writeContract({
51
- address,
52
- abi: GTokenStakingABI,
53
- functionName: 'topUpStake',
54
- args: [amount],
55
- account: account,
56
- chain: client.chain
57
- });
58
- },
59
- async unstake({ amount, account }) {
60
- return client.writeContract({
61
- address,
62
- abi: GTokenStakingABI,
63
- functionName: 'unstake',
64
- args: [amount],
65
- account: account,
66
- chain: client.chain
67
- });
65
+ try {
66
+ validateAddress(user, 'user');
67
+ validateRequired(roleId, 'roleId');
68
+ return await client.writeContract({
69
+ address,
70
+ abi: GTokenStakingABI,
71
+ functionName: 'unlockAndTransfer',
72
+ args: [user, roleId],
73
+ account: account,
74
+ chain: client.chain
75
+ });
76
+ }
77
+ catch (error) {
78
+ throw AAStarError.fromViemError(error, 'unlockAndTransfer');
79
+ }
68
80
  },
69
81
  // Slashing
70
- async slash({ user, roleId, amount, reason, account }) {
71
- return client.writeContract({
72
- address,
73
- abi: GTokenStakingABI,
74
- functionName: 'slash',
75
- args: [user, roleId, amount, reason],
76
- account: account,
77
- chain: client.chain
78
- });
79
- },
80
- async slashByDVT({ user, roleId, amount, reason, account }) {
81
- return client.writeContract({
82
- address,
83
- abi: GTokenStakingABI,
84
- functionName: 'slashByDVT',
85
- args: [user, roleId, amount, reason],
86
- account: account,
87
- chain: client.chain
88
- });
82
+ async slash({ user, amount, reason, account }) {
83
+ try {
84
+ validateAddress(user, 'user');
85
+ validateAmount(amount, 'amount');
86
+ return await client.writeContract({
87
+ address,
88
+ abi: GTokenStakingABI,
89
+ functionName: 'slash',
90
+ args: [user, amount, reason],
91
+ account: account,
92
+ chain: client.chain
93
+ });
94
+ }
95
+ catch (error) {
96
+ throw AAStarError.fromViemError(error, 'slash');
97
+ }
98
+ },
99
+ async slashByDVT({ operator, roleId, penaltyAmount, reason, account }) {
100
+ try {
101
+ validateAddress(operator, 'operator');
102
+ validateRequired(roleId, 'roleId');
103
+ validateAmount(penaltyAmount, 'penaltyAmount');
104
+ return await client.writeContract({
105
+ address,
106
+ abi: GTokenStakingABI,
107
+ functionName: 'slashByDVT',
108
+ args: [operator, roleId, penaltyAmount, reason],
109
+ account: account,
110
+ chain: client.chain
111
+ });
112
+ }
113
+ catch (error) {
114
+ throw AAStarError.fromViemError(error, 'slashByDVT');
115
+ }
89
116
  },
90
117
  async setAuthorizedSlasher({ slasher, authorized, account }) {
91
- return client.writeContract({
92
- address,
93
- abi: GTokenStakingABI,
94
- functionName: 'setAuthorizedSlasher',
95
- args: [slasher, authorized],
96
- account: account,
97
- chain: client.chain
98
- });
118
+ try {
119
+ validateAddress(slasher, 'slasher');
120
+ return await client.writeContract({
121
+ address,
122
+ abi: GTokenStakingABI,
123
+ functionName: 'setAuthorizedSlasher',
124
+ args: [slasher, authorized],
125
+ account: account,
126
+ chain: client.chain
127
+ });
128
+ }
129
+ catch (error) {
130
+ throw AAStarError.fromViemError(error, 'setAuthorizedSlasher');
131
+ }
99
132
  },
100
133
  // Query Functions
101
134
  async getStakeInfo({ operator, roleId }) {
102
- return client.readContract({
103
- address,
104
- abi: GTokenStakingABI,
105
- functionName: 'stakes',
106
- args: [operator]
107
- });
135
+ try {
136
+ validateAddress(operator, 'operator');
137
+ validateRequired(roleId, 'roleId');
138
+ const res = await client.readContract({
139
+ address,
140
+ abi: GTokenStakingABI,
141
+ functionName: 'getStakeInfo',
142
+ args: [operator, roleId]
143
+ });
144
+ return {
145
+ amount: res.amount,
146
+ slashedAmount: res.slashedAmount,
147
+ stakedAt: res.stakedAt,
148
+ unstakeRequestedAt: res.unstakeRequestedAt
149
+ };
150
+ }
151
+ catch (error) {
152
+ throw AAStarError.fromViemError(error, 'getStakeInfo');
153
+ }
108
154
  },
109
155
  async getStakingBalance({ user }) {
110
- return client.readContract({
111
- address,
112
- abi: GTokenStakingABI,
113
- functionName: 'balanceOf',
114
- args: [user]
115
- });
156
+ try {
157
+ validateAddress(user, 'user');
158
+ return await client.readContract({
159
+ address,
160
+ abi: GTokenStakingABI,
161
+ functionName: 'balanceOf',
162
+ args: [user]
163
+ });
164
+ }
165
+ catch (error) {
166
+ throw AAStarError.fromViemError(error, 'getStakingBalance');
167
+ }
116
168
  },
117
169
  async getLockedStake({ user, roleId }) {
118
- return client.readContract({
119
- address,
120
- abi: GTokenStakingABI,
121
- functionName: 'getLockedStake',
122
- args: [user, roleId]
123
- });
170
+ try {
171
+ validateAddress(user, 'user');
172
+ validateRequired(roleId, 'roleId');
173
+ return await client.readContract({
174
+ address,
175
+ abi: GTokenStakingABI,
176
+ functionName: 'getLockedStake',
177
+ args: [user, roleId]
178
+ });
179
+ }
180
+ catch (error) {
181
+ throw AAStarError.fromViemError(error, 'getLockedStake');
182
+ }
124
183
  },
125
184
  async getUserRoleLocks({ user }) {
126
- return client.readContract({
127
- address,
128
- abi: GTokenStakingABI,
129
- functionName: 'getUserRoleLocks',
130
- args: [user]
131
- });
185
+ try {
186
+ validateAddress(user, 'user');
187
+ return await client.readContract({
188
+ address,
189
+ abi: GTokenStakingABI,
190
+ functionName: 'getUserRoleLocks',
191
+ args: [user]
192
+ });
193
+ }
194
+ catch (error) {
195
+ throw AAStarError.fromViemError(error, 'getUserRoleLocks');
196
+ }
132
197
  },
133
198
  async hasRoleLock({ user, roleId }) {
134
- return client.readContract({
135
- address,
136
- abi: GTokenStakingABI,
137
- functionName: 'hasRoleLock',
138
- args: [user, roleId]
139
- });
199
+ try {
200
+ validateAddress(user, 'user');
201
+ validateRequired(roleId, 'roleId');
202
+ return await client.readContract({
203
+ address,
204
+ abi: GTokenStakingABI,
205
+ functionName: 'hasRoleLock',
206
+ args: [user, roleId]
207
+ });
208
+ }
209
+ catch (error) {
210
+ throw AAStarError.fromViemError(error, 'hasRoleLock');
211
+ }
140
212
  },
141
213
  async availableBalance({ user }) {
142
- return client.readContract({
143
- address,
144
- abi: GTokenStakingABI,
145
- functionName: 'availableBalance',
146
- args: [user]
147
- });
214
+ try {
215
+ validateAddress(user, 'user');
216
+ return await client.readContract({
217
+ address,
218
+ abi: GTokenStakingABI,
219
+ functionName: 'availableBalance',
220
+ args: [user]
221
+ });
222
+ }
223
+ catch (error) {
224
+ throw AAStarError.fromViemError(error, 'availableBalance');
225
+ }
148
226
  },
149
227
  async previewExitFee({ user, roleId }) {
150
- return client.readContract({
151
- address,
152
- abi: GTokenStakingABI,
153
- functionName: 'previewExitFee',
154
- args: [user, roleId]
155
- });
228
+ try {
229
+ validateAddress(user, 'user');
230
+ validateRequired(roleId, 'roleId');
231
+ const [fee, netAmount] = await client.readContract({
232
+ address,
233
+ abi: GTokenStakingABI,
234
+ functionName: 'previewExitFee',
235
+ args: [user, roleId]
236
+ });
237
+ return { fee, netAmount };
238
+ }
239
+ catch (error) {
240
+ throw AAStarError.fromViemError(error, 'previewExitFee');
241
+ }
156
242
  },
157
243
  // Admin Functions
158
244
  async setRegistry({ registry, account }) {
159
- return client.writeContract({
160
- address,
161
- abi: GTokenStakingABI,
162
- functionName: 'setRegistry',
163
- args: [registry],
164
- account: account,
165
- chain: client.chain
166
- });
167
- },
168
- async transferOwnership({ newOwner, account }) {
169
- return client.writeContract({
170
- address,
171
- abi: GTokenStakingABI,
172
- functionName: 'transferOwnership',
173
- args: [newOwner],
174
- account: account,
175
- chain: client.chain
176
- });
177
- },
178
- async setRoleExitFee({ roleId, feePercent, account }) {
179
- return client.writeContract({
180
- address,
181
- abi: GTokenStakingABI,
182
- functionName: 'setRoleExitFee',
183
- args: [roleId, feePercent],
184
- account: account,
185
- chain: client.chain
186
- });
245
+ try {
246
+ validateAddress(registry, 'registry');
247
+ return await client.writeContract({
248
+ address,
249
+ abi: GTokenStakingABI,
250
+ functionName: 'setRegistry',
251
+ args: [registry],
252
+ account: account,
253
+ chain: client.chain
254
+ });
255
+ }
256
+ catch (error) {
257
+ throw AAStarError.fromViemError(error, 'setRegistry');
258
+ }
259
+ },
260
+ async setRoleExitFee({ roleId, feePercent, minFee, account }) {
261
+ try {
262
+ validateRequired(roleId, 'roleId');
263
+ validateAmount(feePercent, 'feePercent');
264
+ validateAmount(minFee, 'minFee');
265
+ return await client.writeContract({
266
+ address,
267
+ abi: GTokenStakingABI,
268
+ functionName: 'setRoleExitFee',
269
+ args: [roleId, feePercent, minFee],
270
+ account: account,
271
+ chain: client.chain
272
+ });
273
+ }
274
+ catch (error) {
275
+ throw AAStarError.fromViemError(error, 'setRoleExitFee');
276
+ }
187
277
  },
188
278
  async setTreasury({ treasury, account }) {
189
- return client.writeContract({
190
- address,
191
- abi: GTokenStakingABI,
192
- functionName: 'setTreasury',
193
- args: [treasury],
194
- account: account,
195
- chain: client.chain
196
- });
279
+ try {
280
+ validateAddress(treasury, 'treasury');
281
+ return await client.writeContract({
282
+ address,
283
+ abi: GTokenStakingABI,
284
+ functionName: 'setTreasury',
285
+ args: [treasury],
286
+ account: account,
287
+ chain: client.chain
288
+ });
289
+ }
290
+ catch (error) {
291
+ throw AAStarError.fromViemError(error, 'setTreasury');
292
+ }
197
293
  },
198
294
  // View Functions
199
295
  async stakes({ user }) {
200
- return client.readContract({
201
- address,
202
- abi: GTokenStakingABI,
203
- functionName: 'stakes',
204
- args: [user]
205
- });
296
+ try {
297
+ validateAddress(user, 'user');
298
+ const res = await client.readContract({
299
+ address,
300
+ abi: GTokenStakingABI,
301
+ functionName: 'stakes',
302
+ args: [user]
303
+ });
304
+ if (Array.isArray(res)) {
305
+ return {
306
+ amount: res[0],
307
+ slashedAmount: res[1],
308
+ stakedAt: res[2],
309
+ unstakeRequestedAt: res[3]
310
+ };
311
+ }
312
+ return res;
313
+ }
314
+ catch (error) {
315
+ throw AAStarError.fromViemError(error, 'stakes');
316
+ }
206
317
  },
207
318
  async roleLocks({ user, roleId }) {
208
- return client.readContract({
209
- address,
210
- abi: GTokenStakingABI,
211
- functionName: 'roleLocks',
212
- args: [user, roleId]
213
- });
319
+ try {
320
+ validateAddress(user, 'user');
321
+ validateRequired(roleId, 'roleId');
322
+ const res = await client.readContract({
323
+ address,
324
+ abi: GTokenStakingABI,
325
+ functionName: 'roleLocks',
326
+ args: [user, roleId]
327
+ });
328
+ if (Array.isArray(res)) {
329
+ return {
330
+ amount: res[0],
331
+ entryBurn: res[1],
332
+ lockedAt: Number(res[2]),
333
+ roleId: res[3],
334
+ metadata: res[4]
335
+ };
336
+ }
337
+ return res;
338
+ }
339
+ catch (error) {
340
+ throw AAStarError.fromViemError(error, 'roleLocks');
341
+ }
214
342
  },
215
343
  async roleExitConfigs({ roleId }) {
216
- return client.readContract({
217
- address,
218
- abi: GTokenStakingABI,
219
- functionName: 'roleExitConfigs',
220
- args: [roleId]
221
- });
344
+ try {
345
+ validateRequired(roleId, 'roleId');
346
+ const [feePercent, minFee] = await client.readContract({
347
+ address,
348
+ abi: GTokenStakingABI,
349
+ functionName: 'roleExitConfigs',
350
+ args: [roleId]
351
+ });
352
+ return { feePercent, minFee };
353
+ }
354
+ catch (error) {
355
+ throw AAStarError.fromViemError(error, 'roleExitConfigs');
356
+ }
222
357
  },
223
358
  async userActiveRoles({ user, index }) {
224
- return client.readContract({
225
- address,
226
- abi: GTokenStakingABI,
227
- functionName: 'userActiveRoles',
228
- args: [user, index]
229
- });
359
+ try {
360
+ validateAddress(user, 'user');
361
+ return await client.readContract({
362
+ address,
363
+ abi: GTokenStakingABI,
364
+ functionName: 'userActiveRoles',
365
+ args: [user, index]
366
+ });
367
+ }
368
+ catch (error) {
369
+ throw AAStarError.fromViemError(error, 'userActiveRoles');
370
+ }
230
371
  },
231
372
  async authorizedSlashers({ slasher }) {
232
- return client.readContract({
233
- address,
234
- abi: GTokenStakingABI,
235
- functionName: 'authorizedSlashers',
236
- args: [slasher]
237
- });
238
- },
239
- async getStake({ account }) {
240
- return client.readContract({
241
- address,
242
- abi: GTokenStakingABI,
243
- functionName: 'getStake',
244
- args: [account]
245
- });
246
- },
247
- async balanceOf({ account }) {
248
- // GTokenStaking might implement balanceOf if it's an ERC20-like or just tracking stakes
249
- return client.readContract({
250
- address,
251
- abi: GTokenStakingABI,
252
- functionName: 'balanceOf',
253
- args: [account]
254
- });
373
+ try {
374
+ validateAddress(slasher, 'slasher');
375
+ return await client.readContract({
376
+ address,
377
+ abi: GTokenStakingABI,
378
+ functionName: 'authorizedSlashers',
379
+ args: [slasher]
380
+ });
381
+ }
382
+ catch (error) {
383
+ throw AAStarError.fromViemError(error, 'authorizedSlashers');
384
+ }
255
385
  },
256
386
  async totalStaked() {
257
- return client.readContract({
258
- address,
259
- abi: GTokenStakingABI,
260
- functionName: 'totalStaked',
261
- args: []
262
- });
387
+ try {
388
+ return await client.readContract({
389
+ address,
390
+ abi: GTokenStakingABI,
391
+ functionName: 'totalStaked',
392
+ args: []
393
+ });
394
+ }
395
+ catch (error) {
396
+ throw AAStarError.fromViemError(error, 'totalStaked');
397
+ }
263
398
  },
264
399
  async getTotalStaked() {
265
400
  return this.totalStaked();
266
401
  },
267
402
  async treasury() {
268
- return client.readContract({
269
- address,
270
- abi: GTokenStakingABI,
271
- functionName: 'treasury',
272
- args: []
273
- });
403
+ try {
404
+ return await client.readContract({
405
+ address,
406
+ abi: GTokenStakingABI,
407
+ functionName: 'treasury',
408
+ args: []
409
+ });
410
+ }
411
+ catch (error) {
412
+ throw AAStarError.fromViemError(error, 'treasury');
413
+ }
274
414
  },
275
415
  async owner() {
276
- return client.readContract({
277
- address,
278
- abi: GTokenStakingABI,
279
- functionName: 'owner',
280
- args: []
281
- });
416
+ try {
417
+ return await client.readContract({
418
+ address,
419
+ abi: GTokenStakingABI,
420
+ functionName: 'owner',
421
+ args: []
422
+ });
423
+ }
424
+ catch (error) {
425
+ throw AAStarError.fromViemError(error, 'owner');
426
+ }
282
427
  },
283
428
  // Ownership
284
- async transferStakingOwnership({ newOwner, account }) {
285
- return client.writeContract({
286
- address,
287
- abi: GTokenStakingABI,
288
- functionName: 'transferOwnership',
289
- args: [newOwner],
290
- account: account,
291
- chain: client.chain
292
- });
429
+ async transferOwnership({ newOwner, account }) {
430
+ try {
431
+ validateAddress(newOwner, 'newOwner');
432
+ return await client.writeContract({
433
+ address,
434
+ abi: GTokenStakingABI,
435
+ functionName: 'transferOwnership',
436
+ args: [newOwner],
437
+ account: account,
438
+ chain: client.chain
439
+ });
440
+ }
441
+ catch (error) {
442
+ throw AAStarError.fromViemError(error, 'transferOwnership');
443
+ }
293
444
  },
294
445
  async renounceOwnership({ account }) {
295
- return client.writeContract({
296
- address,
297
- abi: GTokenStakingABI,
298
- functionName: 'renounceOwnership',
299
- args: [],
300
- account: account,
301
- chain: client.chain
302
- });
446
+ try {
447
+ return await client.writeContract({
448
+ address,
449
+ abi: GTokenStakingABI,
450
+ functionName: 'renounceOwnership',
451
+ args: [],
452
+ account: account,
453
+ chain: client.chain
454
+ });
455
+ }
456
+ catch (error) {
457
+ throw AAStarError.fromViemError(error, 'renounceOwnership');
458
+ }
303
459
  },
304
460
  // Version
305
461
  async version() {
306
- return client.readContract({
307
- address,
308
- abi: GTokenStakingABI,
309
- functionName: 'version',
310
- args: []
311
- });
462
+ try {
463
+ return await client.readContract({
464
+ address,
465
+ abi: GTokenStakingABI,
466
+ functionName: 'version',
467
+ args: []
468
+ });
469
+ }
470
+ catch (error) {
471
+ throw AAStarError.fromViemError(error, 'version');
472
+ }
312
473
  },
313
474
  // Constants
314
475
  async REGISTRY() {
315
- return client.readContract({
316
- address,
317
- abi: GTokenStakingABI,
318
- functionName: 'REGISTRY',
319
- args: []
320
- });
476
+ try {
477
+ return await client.readContract({
478
+ address,
479
+ abi: GTokenStakingABI,
480
+ functionName: 'REGISTRY',
481
+ args: []
482
+ });
483
+ }
484
+ catch (error) {
485
+ throw AAStarError.fromViemError(error, 'REGISTRY');
486
+ }
321
487
  },
322
488
  async GTOKEN() {
323
- return client.readContract({
324
- address,
325
- abi: GTokenStakingABI,
326
- functionName: 'GTOKEN',
327
- args: []
328
- });
489
+ try {
490
+ return await client.readContract({
491
+ address,
492
+ abi: GTokenStakingABI,
493
+ functionName: 'GTOKEN',
494
+ args: []
495
+ });
496
+ }
497
+ catch (error) {
498
+ throw AAStarError.fromViemError(error, 'GTOKEN');
499
+ }
329
500
  }
330
501
  });