@gitmyabi/gogo 1.0.0 → 1.0.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.
package/README.md CHANGED
@@ -1,10 +1,10 @@
1
1
  # @gitmyabi/gogo
2
2
 
3
- Auto-generated TypeScript type bindings for **GoGo**
3
+ Auto-generated TypeScript type bindings for **GOGO**
4
4
 
5
- - **Build ID**: `etherscan-gogo-f9c8631f-1787584663805`
5
+ - **Build ID**: `etherscan-gogo-9a96e767-1794627915637`
6
6
  - **Build Number**: 1
7
- - **Commit**: `01383d7`
7
+ - **Commit**: `a484da4`
8
8
  - **Branch**: `etherscan`
9
9
  - **Target**: `ethers-v6`
10
10
  - **Contracts**: 1
@@ -12,7 +12,7 @@ Auto-generated TypeScript type bindings for **GoGo**
12
12
  ## Installation
13
13
 
14
14
  ```bash
15
- npm install @gitmyabi/gogo@1.0.0
15
+ npm install @gitmyabi/gogo@1.0.1
16
16
  ```
17
17
 
18
18
  ## Usage
@@ -105,4 +105,4 @@ This package includes type bindings for 1 contract(s) generated from ABI artifac
105
105
 
106
106
  ## License
107
107
 
108
- MIT
108
+ Apache License 2.0
@@ -1,194 +1,291 @@
1
1
  import type { Address, PublicClient, WalletClient } from 'viem';
2
2
  /**
3
- * MightyMorphinPowerRangers_json ABI
3
+ * GOGOToken ABI
4
4
  *
5
5
  * This ABI is typed using viem's type system for full type safety.
6
6
  */
7
- export declare const MightyMorphinPowerRangers_jsonAbi: readonly [{
7
+ export declare const GOGOTokenAbi: readonly [{
8
+ readonly constant: true;
8
9
  readonly inputs: readonly [];
9
- readonly stateMutability: "nonpayable";
10
- readonly type: "constructor";
10
+ readonly name: "name";
11
+ readonly outputs: readonly [{
12
+ readonly name: "";
13
+ readonly type: "string";
14
+ }];
15
+ readonly payable: false;
16
+ readonly stateMutability: "view";
17
+ readonly type: "function";
11
18
  }, {
12
- readonly anonymous: false;
19
+ readonly constant: false;
13
20
  readonly inputs: readonly [{
14
- readonly indexed: true;
15
- readonly internalType: "address";
16
- readonly name: "owner";
17
- readonly type: "address";
18
- }, {
19
- readonly indexed: true;
20
- readonly internalType: "address";
21
21
  readonly name: "spender";
22
22
  readonly type: "address";
23
23
  }, {
24
- readonly indexed: false;
25
- readonly internalType: "uint256";
26
- readonly name: "value";
24
+ readonly name: "tokens";
27
25
  readonly type: "uint256";
28
26
  }];
29
- readonly name: "Approval";
30
- readonly type: "event";
31
- }, {
32
- readonly anonymous: false;
33
- readonly inputs: readonly [{
34
- readonly indexed: true;
35
- readonly internalType: "address";
36
- readonly name: "from";
37
- readonly type: "address";
38
- }, {
39
- readonly indexed: true;
40
- readonly internalType: "address";
41
- readonly name: "to";
42
- readonly type: "address";
43
- }, {
44
- readonly indexed: false;
45
- readonly internalType: "uint256";
46
- readonly name: "value";
47
- readonly type: "uint256";
27
+ readonly name: "approve";
28
+ readonly outputs: readonly [{
29
+ readonly name: "success";
30
+ readonly type: "bool";
48
31
  }];
49
- readonly name: "Transfer";
50
- readonly type: "event";
32
+ readonly payable: false;
33
+ readonly stateMutability: "nonpayable";
34
+ readonly type: "function";
51
35
  }, {
52
- readonly inputs: readonly [{
53
- readonly internalType: "address";
54
- readonly name: "";
55
- readonly type: "address";
56
- }, {
57
- readonly internalType: "address";
58
- readonly name: "";
59
- readonly type: "address";
60
- }];
61
- readonly name: "allowance";
36
+ readonly constant: true;
37
+ readonly inputs: readonly [];
38
+ readonly name: "totalSupply";
62
39
  readonly outputs: readonly [{
63
- readonly internalType: "uint256";
64
40
  readonly name: "";
65
41
  readonly type: "uint256";
66
42
  }];
43
+ readonly payable: false;
67
44
  readonly stateMutability: "view";
68
45
  readonly type: "function";
69
46
  }, {
47
+ readonly constant: false;
70
48
  readonly inputs: readonly [{
71
- readonly internalType: "address";
72
- readonly name: "spender";
49
+ readonly name: "from";
50
+ readonly type: "address";
51
+ }, {
52
+ readonly name: "to";
73
53
  readonly type: "address";
74
54
  }, {
75
- readonly internalType: "uint256";
76
- readonly name: "value";
55
+ readonly name: "tokens";
77
56
  readonly type: "uint256";
78
57
  }];
79
- readonly name: "approve";
58
+ readonly name: "transferFrom";
80
59
  readonly outputs: readonly [{
81
- readonly internalType: "bool";
82
- readonly name: "";
60
+ readonly name: "success";
83
61
  readonly type: "bool";
84
62
  }];
63
+ readonly payable: false;
85
64
  readonly stateMutability: "nonpayable";
86
65
  readonly type: "function";
87
66
  }, {
88
- readonly inputs: readonly [{
89
- readonly internalType: "address";
90
- readonly name: "";
91
- readonly type: "address";
92
- }];
93
- readonly name: "balanceOf";
67
+ readonly constant: true;
68
+ readonly inputs: readonly [];
69
+ readonly name: "decimals";
94
70
  readonly outputs: readonly [{
95
- readonly internalType: "uint256";
96
71
  readonly name: "";
97
- readonly type: "uint256";
72
+ readonly type: "uint8";
98
73
  }];
74
+ readonly payable: false;
99
75
  readonly stateMutability: "view";
100
76
  readonly type: "function";
101
77
  }, {
78
+ readonly constant: true;
102
79
  readonly inputs: readonly [];
103
- readonly name: "decimals";
80
+ readonly name: "_totalSupply";
104
81
  readonly outputs: readonly [{
105
- readonly internalType: "uint8";
106
82
  readonly name: "";
107
- readonly type: "uint8";
83
+ readonly type: "uint256";
108
84
  }];
85
+ readonly payable: false;
109
86
  readonly stateMutability: "view";
110
87
  readonly type: "function";
111
88
  }, {
112
- readonly inputs: readonly [];
113
- readonly name: "name";
89
+ readonly constant: true;
90
+ readonly inputs: readonly [{
91
+ readonly name: "tokenOwner";
92
+ readonly type: "address";
93
+ }];
94
+ readonly name: "balanceOf";
114
95
  readonly outputs: readonly [{
115
- readonly internalType: "string";
116
- readonly name: "";
117
- readonly type: "string";
96
+ readonly name: "balance";
97
+ readonly type: "uint256";
118
98
  }];
99
+ readonly payable: false;
119
100
  readonly stateMutability: "view";
120
101
  readonly type: "function";
121
102
  }, {
103
+ readonly constant: true;
122
104
  readonly inputs: readonly [];
123
105
  readonly name: "symbol";
124
106
  readonly outputs: readonly [{
125
- readonly internalType: "string";
126
107
  readonly name: "";
127
108
  readonly type: "string";
128
109
  }];
110
+ readonly payable: false;
129
111
  readonly stateMutability: "view";
130
112
  readonly type: "function";
131
113
  }, {
132
- readonly inputs: readonly [];
133
- readonly name: "totalSupply";
114
+ readonly constant: true;
115
+ readonly inputs: readonly [{
116
+ readonly name: "a";
117
+ readonly type: "uint256";
118
+ }, {
119
+ readonly name: "b";
120
+ readonly type: "uint256";
121
+ }];
122
+ readonly name: "safeSub";
134
123
  readonly outputs: readonly [{
135
- readonly internalType: "uint256";
136
- readonly name: "";
124
+ readonly name: "c";
137
125
  readonly type: "uint256";
138
126
  }];
139
- readonly stateMutability: "view";
127
+ readonly payable: false;
128
+ readonly stateMutability: "pure";
140
129
  readonly type: "function";
141
130
  }, {
131
+ readonly constant: false;
142
132
  readonly inputs: readonly [{
143
- readonly internalType: "address";
144
133
  readonly name: "to";
145
134
  readonly type: "address";
146
135
  }, {
147
- readonly internalType: "uint256";
148
- readonly name: "value";
136
+ readonly name: "tokens";
149
137
  readonly type: "uint256";
150
138
  }];
151
139
  readonly name: "transfer";
152
140
  readonly outputs: readonly [{
153
- readonly internalType: "bool";
154
- readonly name: "";
141
+ readonly name: "success";
155
142
  readonly type: "bool";
156
143
  }];
144
+ readonly payable: false;
157
145
  readonly stateMutability: "nonpayable";
158
146
  readonly type: "function";
159
147
  }, {
148
+ readonly constant: true;
160
149
  readonly inputs: readonly [{
161
- readonly internalType: "address";
162
- readonly name: "from";
163
- readonly type: "address";
150
+ readonly name: "a";
151
+ readonly type: "uint256";
164
152
  }, {
165
- readonly internalType: "address";
166
- readonly name: "to";
153
+ readonly name: "b";
154
+ readonly type: "uint256";
155
+ }];
156
+ readonly name: "safeDiv";
157
+ readonly outputs: readonly [{
158
+ readonly name: "c";
159
+ readonly type: "uint256";
160
+ }];
161
+ readonly payable: false;
162
+ readonly stateMutability: "pure";
163
+ readonly type: "function";
164
+ }, {
165
+ readonly constant: false;
166
+ readonly inputs: readonly [{
167
+ readonly name: "spender";
167
168
  readonly type: "address";
168
169
  }, {
169
- readonly internalType: "uint256";
170
- readonly name: "value";
170
+ readonly name: "tokens";
171
171
  readonly type: "uint256";
172
+ }, {
173
+ readonly name: "data";
174
+ readonly type: "bytes";
172
175
  }];
173
- readonly name: "transferFrom";
176
+ readonly name: "approveAndCall";
174
177
  readonly outputs: readonly [{
175
- readonly internalType: "bool";
176
- readonly name: "";
178
+ readonly name: "success";
177
179
  readonly type: "bool";
178
180
  }];
181
+ readonly payable: false;
179
182
  readonly stateMutability: "nonpayable";
180
183
  readonly type: "function";
184
+ }, {
185
+ readonly constant: true;
186
+ readonly inputs: readonly [{
187
+ readonly name: "a";
188
+ readonly type: "uint256";
189
+ }, {
190
+ readonly name: "b";
191
+ readonly type: "uint256";
192
+ }];
193
+ readonly name: "safeMul";
194
+ readonly outputs: readonly [{
195
+ readonly name: "c";
196
+ readonly type: "uint256";
197
+ }];
198
+ readonly payable: false;
199
+ readonly stateMutability: "pure";
200
+ readonly type: "function";
201
+ }, {
202
+ readonly constant: true;
203
+ readonly inputs: readonly [{
204
+ readonly name: "tokenOwner";
205
+ readonly type: "address";
206
+ }, {
207
+ readonly name: "spender";
208
+ readonly type: "address";
209
+ }];
210
+ readonly name: "allowance";
211
+ readonly outputs: readonly [{
212
+ readonly name: "remaining";
213
+ readonly type: "uint256";
214
+ }];
215
+ readonly payable: false;
216
+ readonly stateMutability: "view";
217
+ readonly type: "function";
218
+ }, {
219
+ readonly constant: true;
220
+ readonly inputs: readonly [{
221
+ readonly name: "a";
222
+ readonly type: "uint256";
223
+ }, {
224
+ readonly name: "b";
225
+ readonly type: "uint256";
226
+ }];
227
+ readonly name: "safeAdd";
228
+ readonly outputs: readonly [{
229
+ readonly name: "c";
230
+ readonly type: "uint256";
231
+ }];
232
+ readonly payable: false;
233
+ readonly stateMutability: "pure";
234
+ readonly type: "function";
235
+ }, {
236
+ readonly inputs: readonly [];
237
+ readonly payable: false;
238
+ readonly stateMutability: "nonpayable";
239
+ readonly type: "constructor";
240
+ }, {
241
+ readonly payable: true;
242
+ readonly stateMutability: "payable";
243
+ readonly type: "fallback";
244
+ }, {
245
+ readonly anonymous: false;
246
+ readonly inputs: readonly [{
247
+ readonly indexed: true;
248
+ readonly name: "from";
249
+ readonly type: "address";
250
+ }, {
251
+ readonly indexed: true;
252
+ readonly name: "to";
253
+ readonly type: "address";
254
+ }, {
255
+ readonly indexed: false;
256
+ readonly name: "tokens";
257
+ readonly type: "uint256";
258
+ }];
259
+ readonly name: "Transfer";
260
+ readonly type: "event";
261
+ }, {
262
+ readonly anonymous: false;
263
+ readonly inputs: readonly [{
264
+ readonly indexed: true;
265
+ readonly name: "tokenOwner";
266
+ readonly type: "address";
267
+ }, {
268
+ readonly indexed: true;
269
+ readonly name: "spender";
270
+ readonly type: "address";
271
+ }, {
272
+ readonly indexed: false;
273
+ readonly name: "tokens";
274
+ readonly type: "uint256";
275
+ }];
276
+ readonly name: "Approval";
277
+ readonly type: "event";
181
278
  }];
182
279
  /**
183
- * Type-safe ABI for MightyMorphinPowerRangers_json
280
+ * Type-safe ABI for GOGOToken
184
281
  */
185
- export type MightyMorphinPowerRangers_jsonAbi = typeof MightyMorphinPowerRangers_jsonAbi;
282
+ export type GOGOTokenAbi = typeof GOGOTokenAbi;
186
283
  /**
187
- * Contract instance type for MightyMorphinPowerRangers_json
284
+ * Contract instance type for GOGOToken
188
285
  */
189
- export type MightyMorphinPowerRangers_jsonContract = any;
286
+ export type GOGOTokenContract = any;
190
287
  /**
191
- * MightyMorphinPowerRangers_json Contract Class
288
+ * GOGOToken Contract Class
192
289
  *
193
290
  * Provides a class-based API similar to TypeChain for interacting with the contract.
194
291
  *
@@ -196,12 +293,12 @@ export type MightyMorphinPowerRangers_jsonContract = any;
196
293
  * ```typescript
197
294
  * import { createPublicClient, createWalletClient, http } from 'viem';
198
295
  * import { mainnet } from 'viem/chains';
199
- * import { MightyMorphinPowerRangers_json } from 'MightyMorphinPowerRangers_json';
296
+ * import { GOGOToken } from 'GOGOToken';
200
297
  *
201
298
  * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
202
299
  * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
203
300
  *
204
- * const contract = new MightyMorphinPowerRangers_json('0x...', { publicClient, walletClient });
301
+ * const contract = new GOGOToken('0x...', { publicClient, walletClient });
205
302
  *
206
303
  * // Read functions
207
304
  * const result = await contract.balanceOf('0x...');
@@ -219,7 +316,7 @@ export type MightyMorphinPowerRangers_jsonContract = any;
219
316
  * });
220
317
  * ```
221
318
  */
222
- export declare class MightyMorphinPowerRangers_json {
319
+ export declare class GOGOToken {
223
320
  private contract;
224
321
  private contractAddress;
225
322
  private publicClient;
@@ -232,45 +329,87 @@ export declare class MightyMorphinPowerRangers_json {
232
329
  */
233
330
  get address(): Address;
234
331
  /**
235
- * Get the underlying viem contract instance
332
+ * Get the underlying viem contract instance.
236
333
  */
237
- getContract(): MightyMorphinPowerRangers_jsonContract;
334
+ getContract(): GOGOTokenContract;
238
335
  /**
239
- * allowance
336
+ * name
240
337
  * view
241
338
  */
242
- allowance(arg0: `0x${string}`, arg1: `0x${string}`): Promise<bigint>;
339
+ name(): Promise<string>;
243
340
  /**
244
- * balanceOf
341
+ * totalSupply
245
342
  * view
246
343
  */
247
- balanceOf(arg0: `0x${string}`): Promise<bigint>;
344
+ totalSupply(): Promise<bigint>;
248
345
  /**
249
346
  * decimals
250
347
  * view
251
348
  */
252
349
  decimals(): Promise<bigint>;
253
350
  /**
254
- * name
351
+ * _totalSupply
255
352
  * view
256
353
  */
257
- name(): Promise<string>;
354
+ _totalSupply(): Promise<bigint>;
355
+ /**
356
+ * balanceOf
357
+ * view
358
+ */
359
+ balanceOf(tokenOwner: `0x${string}`): Promise<bigint>;
258
360
  /**
259
361
  * symbol
260
362
  * view
261
363
  */
262
364
  symbol(): Promise<string>;
263
365
  /**
264
- * totalSupply
366
+ * safeSub
367
+ * pure
368
+ */
369
+ safeSub(a: bigint, b: bigint): Promise<bigint>;
370
+ /**
371
+ * safeDiv
372
+ * pure
373
+ */
374
+ safeDiv(a: bigint, b: bigint): Promise<bigint>;
375
+ /**
376
+ * safeMul
377
+ * pure
378
+ */
379
+ safeMul(a: bigint, b: bigint): Promise<bigint>;
380
+ /**
381
+ * allowance
265
382
  * view
266
383
  */
267
- totalSupply(): Promise<bigint>;
384
+ allowance(tokenOwner: `0x${string}`, spender: `0x${string}`): Promise<bigint>;
385
+ /**
386
+ * safeAdd
387
+ * pure
388
+ */
389
+ safeAdd(a: bigint, b: bigint): Promise<bigint>;
268
390
  /**
269
391
  * approve
270
392
  * nonpayable
271
393
  * @param options Optional transaction parameters (value, gas, nonce, etc.)
272
394
  */
273
- approve(spender: `0x${string}`, value: bigint, options?: {
395
+ approve(spender: `0x${string}`, tokens: bigint, options?: {
396
+ accessList?: import('viem').AccessList;
397
+ authorizationList?: import('viem').AuthorizationList;
398
+ chain?: import('viem').Chain | null;
399
+ dataSuffix?: `0x${string}`;
400
+ gas?: bigint;
401
+ gasPrice?: bigint;
402
+ maxFeePerGas?: bigint;
403
+ maxPriorityFeePerGas?: bigint;
404
+ nonce?: number;
405
+ value?: bigint;
406
+ }): Promise<`0x${string}`>;
407
+ /**
408
+ * transferFrom
409
+ * nonpayable
410
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
411
+ */
412
+ transferFrom(from: `0x${string}`, to: `0x${string}`, tokens: bigint, options?: {
274
413
  accessList?: import('viem').AccessList;
275
414
  authorizationList?: import('viem').AuthorizationList;
276
415
  chain?: import('viem').Chain | null;
@@ -287,7 +426,7 @@ export declare class MightyMorphinPowerRangers_json {
287
426
  * nonpayable
288
427
  * @param options Optional transaction parameters (value, gas, nonce, etc.)
289
428
  */
290
- transfer(to: `0x${string}`, value: bigint, options?: {
429
+ transfer(to: `0x${string}`, tokens: bigint, options?: {
291
430
  accessList?: import('viem').AccessList;
292
431
  authorizationList?: import('viem').AuthorizationList;
293
432
  chain?: import('viem').Chain | null;
@@ -300,11 +439,11 @@ export declare class MightyMorphinPowerRangers_json {
300
439
  value?: bigint;
301
440
  }): Promise<`0x${string}`>;
302
441
  /**
303
- * transferFrom
442
+ * approveAndCall
304
443
  * nonpayable
305
444
  * @param options Optional transaction parameters (value, gas, nonce, etc.)
306
445
  */
307
- transferFrom(from: `0x${string}`, to: `0x${string}`, value: bigint, options?: {
446
+ approveAndCall(spender: `0x${string}`, tokens: bigint, data: `0x${string}`, options?: {
308
447
  accessList?: import('viem').AccessList;
309
448
  authorizationList?: import('viem').AuthorizationList;
310
449
  chain?: import('viem').Chain | null;
@@ -330,7 +469,24 @@ export declare class MightyMorphinPowerRangers_json {
330
469
  * Returns gas estimate and result without sending transaction
331
470
  * @param options Optional transaction parameters (value, gas, nonce, etc.)
332
471
  */
333
- approve(spender: `0x${string}`, value: bigint, options?: {
472
+ approve(spender: `0x${string}`, tokens: bigint, options?: {
473
+ accessList?: import("viem").AccessList;
474
+ authorizationList?: import("viem").AuthorizationList;
475
+ chain?: import("viem").Chain | null;
476
+ dataSuffix?: `0x${string}`;
477
+ gas?: bigint;
478
+ gasPrice?: bigint;
479
+ maxFeePerGas?: bigint;
480
+ maxPriorityFeePerGas?: bigint;
481
+ nonce?: number;
482
+ value?: bigint;
483
+ }): Promise<boolean>;
484
+ /**
485
+ * Simulate transferFrom
486
+ * Returns gas estimate and result without sending transaction
487
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
488
+ */
489
+ transferFrom(from: `0x${string}`, to: `0x${string}`, tokens: bigint, options?: {
334
490
  accessList?: import("viem").AccessList;
335
491
  authorizationList?: import("viem").AuthorizationList;
336
492
  chain?: import("viem").Chain | null;
@@ -347,7 +503,7 @@ export declare class MightyMorphinPowerRangers_json {
347
503
  * Returns gas estimate and result without sending transaction
348
504
  * @param options Optional transaction parameters (value, gas, nonce, etc.)
349
505
  */
350
- transfer(to: `0x${string}`, value: bigint, options?: {
506
+ transfer(to: `0x${string}`, tokens: bigint, options?: {
351
507
  accessList?: import("viem").AccessList;
352
508
  authorizationList?: import("viem").AuthorizationList;
353
509
  chain?: import("viem").Chain | null;
@@ -360,11 +516,11 @@ export declare class MightyMorphinPowerRangers_json {
360
516
  value?: bigint;
361
517
  }): Promise<boolean>;
362
518
  /**
363
- * Simulate transferFrom
519
+ * Simulate approveAndCall
364
520
  * Returns gas estimate and result without sending transaction
365
521
  * @param options Optional transaction parameters (value, gas, nonce, etc.)
366
522
  */
367
- transferFrom(from: `0x${string}`, to: `0x${string}`, value: bigint, options?: {
523
+ approveAndCall(spender: `0x${string}`, tokens: bigint, data: `0x${string}`, options?: {
368
524
  accessList?: import("viem").AccessList;
369
525
  authorizationList?: import("viem").AuthorizationList;
370
526
  chain?: import("viem").Chain | null;
@@ -391,32 +547,32 @@ export declare class MightyMorphinPowerRangers_json {
391
547
  */
392
548
  get watch(): {
393
549
  /**
394
- * Watch Approval events
550
+ * Watch Transfer events
395
551
  * @param callback Function to call when event is emitted
396
552
  * @param filter Optional filter for indexed parameters
397
553
  * @returns Unwatch function to stop listening
398
554
  */
399
- Approval: (callback: (event: {
400
- owner: `0x${string}`;
401
- spender: `0x${string}`;
402
- value: bigint;
555
+ Transfer: (callback: (event: {
556
+ from: `0x${string}`;
557
+ to: `0x${string}`;
558
+ tokens: bigint;
403
559
  }) => void, filter?: {
404
- owner: `0x${string}`;
405
- spender: `0x${string}`;
560
+ from?: `0x${string}` | `0x${string}`[] | null;
561
+ to?: `0x${string}` | `0x${string}`[] | null;
406
562
  }) => () => void;
407
563
  /**
408
- * Watch Transfer events
564
+ * Watch Approval events
409
565
  * @param callback Function to call when event is emitted
410
566
  * @param filter Optional filter for indexed parameters
411
567
  * @returns Unwatch function to stop listening
412
568
  */
413
- Transfer: (callback: (event: {
414
- from: `0x${string}`;
415
- to: `0x${string}`;
416
- value: bigint;
569
+ Approval: (callback: (event: {
570
+ tokenOwner: `0x${string}`;
571
+ spender: `0x${string}`;
572
+ tokens: bigint;
417
573
  }) => void, filter?: {
418
- from: `0x${string}`;
419
- to: `0x${string}`;
574
+ tokenOwner?: `0x${string}` | `0x${string}`[] | null;
575
+ spender?: `0x${string}` | `0x${string}`[] | null;
420
576
  }) => () => void;
421
577
  };
422
578
  }