@gearbox-protocol/sdk 3.0.0-next.21 → 3.0.0-next.23
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.
|
@@ -303,6 +303,73 @@ export type CreditManagerDataStructOutput = [
|
|
|
303
303
|
lirm: LinearModelStructOutput;
|
|
304
304
|
isPaused: boolean;
|
|
305
305
|
};
|
|
306
|
+
export type GaugeQuotaParamsStruct = {
|
|
307
|
+
token: PromiseOrValue<string>;
|
|
308
|
+
minRate: PromiseOrValue<BigNumberish>;
|
|
309
|
+
maxRate: PromiseOrValue<BigNumberish>;
|
|
310
|
+
totalVotesLpSide: PromiseOrValue<BigNumberish>;
|
|
311
|
+
totalVotesCaSide: PromiseOrValue<BigNumberish>;
|
|
312
|
+
rate: PromiseOrValue<BigNumberish>;
|
|
313
|
+
quotaIncreaseFee: PromiseOrValue<BigNumberish>;
|
|
314
|
+
totalQuoted: PromiseOrValue<BigNumberish>;
|
|
315
|
+
limit: PromiseOrValue<BigNumberish>;
|
|
316
|
+
isActive: PromiseOrValue<boolean>;
|
|
317
|
+
stakerVotesLpSide: PromiseOrValue<BigNumberish>;
|
|
318
|
+
stakerVotesCaSide: PromiseOrValue<BigNumberish>;
|
|
319
|
+
};
|
|
320
|
+
export type GaugeQuotaParamsStructOutput = [
|
|
321
|
+
string,
|
|
322
|
+
number,
|
|
323
|
+
number,
|
|
324
|
+
BigNumber,
|
|
325
|
+
BigNumber,
|
|
326
|
+
number,
|
|
327
|
+
number,
|
|
328
|
+
BigNumber,
|
|
329
|
+
BigNumber,
|
|
330
|
+
boolean,
|
|
331
|
+
BigNumber,
|
|
332
|
+
BigNumber
|
|
333
|
+
] & {
|
|
334
|
+
token: string;
|
|
335
|
+
minRate: number;
|
|
336
|
+
maxRate: number;
|
|
337
|
+
totalVotesLpSide: BigNumber;
|
|
338
|
+
totalVotesCaSide: BigNumber;
|
|
339
|
+
rate: number;
|
|
340
|
+
quotaIncreaseFee: number;
|
|
341
|
+
totalQuoted: BigNumber;
|
|
342
|
+
limit: BigNumber;
|
|
343
|
+
isActive: boolean;
|
|
344
|
+
stakerVotesLpSide: BigNumber;
|
|
345
|
+
stakerVotesCaSide: BigNumber;
|
|
346
|
+
};
|
|
347
|
+
export type GaugeInfoStruct = {
|
|
348
|
+
addr: PromiseOrValue<string>;
|
|
349
|
+
pool: PromiseOrValue<string>;
|
|
350
|
+
symbol: PromiseOrValue<string>;
|
|
351
|
+
name: PromiseOrValue<string>;
|
|
352
|
+
currentEpoch: PromiseOrValue<BigNumberish>;
|
|
353
|
+
epochFrozen: PromiseOrValue<boolean>;
|
|
354
|
+
quotaParams: GaugeQuotaParamsStruct[];
|
|
355
|
+
};
|
|
356
|
+
export type GaugeInfoStructOutput = [
|
|
357
|
+
string,
|
|
358
|
+
string,
|
|
359
|
+
string,
|
|
360
|
+
string,
|
|
361
|
+
number,
|
|
362
|
+
boolean,
|
|
363
|
+
GaugeQuotaParamsStructOutput[]
|
|
364
|
+
] & {
|
|
365
|
+
addr: string;
|
|
366
|
+
pool: string;
|
|
367
|
+
symbol: string;
|
|
368
|
+
name: string;
|
|
369
|
+
currentEpoch: number;
|
|
370
|
+
epochFrozen: boolean;
|
|
371
|
+
quotaParams: GaugeQuotaParamsStructOutput[];
|
|
372
|
+
};
|
|
306
373
|
export type CreditManagerDebtParamsStruct = {
|
|
307
374
|
creditManager: PromiseOrValue<string>;
|
|
308
375
|
borrowed: PromiseOrValue<BigNumberish>;
|
|
@@ -420,16 +487,18 @@ export interface IDataCompressorV3_00Interface extends utils.Interface {
|
|
|
420
487
|
"getCreditAccountsByCreditManager(address,(address,bytes)[])": FunctionFragment;
|
|
421
488
|
"getCreditManagerData(address)": FunctionFragment;
|
|
422
489
|
"getCreditManagersV3List()": FunctionFragment;
|
|
490
|
+
"getGaugesV3Data(address)": FunctionFragment;
|
|
423
491
|
"getPoolData(address)": FunctionFragment;
|
|
424
492
|
"getPoolsV3List()": FunctionFragment;
|
|
425
493
|
"version()": FunctionFragment;
|
|
426
494
|
};
|
|
427
|
-
getFunction(nameOrSignatureOrTopic: "getCreditAccountData" | "getCreditAccountsByBorrower" | "getCreditAccountsByCreditManager" | "getCreditManagerData" | "getCreditManagersV3List" | "getPoolData" | "getPoolsV3List" | "version"): FunctionFragment;
|
|
495
|
+
getFunction(nameOrSignatureOrTopic: "getCreditAccountData" | "getCreditAccountsByBorrower" | "getCreditAccountsByCreditManager" | "getCreditManagerData" | "getCreditManagersV3List" | "getGaugesV3Data" | "getPoolData" | "getPoolsV3List" | "version"): FunctionFragment;
|
|
428
496
|
encodeFunctionData(functionFragment: "getCreditAccountData", values: [PromiseOrValue<string>, PriceOnDemandStruct[]]): string;
|
|
429
497
|
encodeFunctionData(functionFragment: "getCreditAccountsByBorrower", values: [PromiseOrValue<string>, PriceOnDemandStruct[]]): string;
|
|
430
498
|
encodeFunctionData(functionFragment: "getCreditAccountsByCreditManager", values: [PromiseOrValue<string>, PriceOnDemandStruct[]]): string;
|
|
431
499
|
encodeFunctionData(functionFragment: "getCreditManagerData", values: [PromiseOrValue<string>]): string;
|
|
432
500
|
encodeFunctionData(functionFragment: "getCreditManagersV3List", values?: undefined): string;
|
|
501
|
+
encodeFunctionData(functionFragment: "getGaugesV3Data", values: [PromiseOrValue<string>]): string;
|
|
433
502
|
encodeFunctionData(functionFragment: "getPoolData", values: [PromiseOrValue<string>]): string;
|
|
434
503
|
encodeFunctionData(functionFragment: "getPoolsV3List", values?: undefined): string;
|
|
435
504
|
encodeFunctionData(functionFragment: "version", values?: undefined): string;
|
|
@@ -438,6 +507,7 @@ export interface IDataCompressorV3_00Interface extends utils.Interface {
|
|
|
438
507
|
decodeFunctionResult(functionFragment: "getCreditAccountsByCreditManager", data: BytesLike): Result;
|
|
439
508
|
decodeFunctionResult(functionFragment: "getCreditManagerData", data: BytesLike): Result;
|
|
440
509
|
decodeFunctionResult(functionFragment: "getCreditManagersV3List", data: BytesLike): Result;
|
|
510
|
+
decodeFunctionResult(functionFragment: "getGaugesV3Data", data: BytesLike): Result;
|
|
441
511
|
decodeFunctionResult(functionFragment: "getPoolData", data: BytesLike): Result;
|
|
442
512
|
decodeFunctionResult(functionFragment: "getPoolsV3List", data: BytesLike): Result;
|
|
443
513
|
decodeFunctionResult(functionFragment: "version", data: BytesLike): Result;
|
|
@@ -469,6 +539,9 @@ export interface IDataCompressorV3_00 extends BaseContract {
|
|
|
469
539
|
}): Promise<ContractTransaction>;
|
|
470
540
|
getCreditManagerData(creditManager: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[CreditManagerDataStructOutput]>;
|
|
471
541
|
getCreditManagersV3List(overrides?: CallOverrides): Promise<[CreditManagerDataStructOutput[]]>;
|
|
542
|
+
getGaugesV3Data(staker: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[GaugeInfoStructOutput[]] & {
|
|
543
|
+
result: GaugeInfoStructOutput[];
|
|
544
|
+
}>;
|
|
472
545
|
getPoolData(_pool: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[PoolDataStructOutput]>;
|
|
473
546
|
getPoolsV3List(overrides?: CallOverrides): Promise<[PoolDataStructOutput[]]>;
|
|
474
547
|
version(overrides?: CallOverrides): Promise<[BigNumber]>;
|
|
@@ -484,6 +557,7 @@ export interface IDataCompressorV3_00 extends BaseContract {
|
|
|
484
557
|
}): Promise<ContractTransaction>;
|
|
485
558
|
getCreditManagerData(creditManager: PromiseOrValue<string>, overrides?: CallOverrides): Promise<CreditManagerDataStructOutput>;
|
|
486
559
|
getCreditManagersV3List(overrides?: CallOverrides): Promise<CreditManagerDataStructOutput[]>;
|
|
560
|
+
getGaugesV3Data(staker: PromiseOrValue<string>, overrides?: CallOverrides): Promise<GaugeInfoStructOutput[]>;
|
|
487
561
|
getPoolData(_pool: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PoolDataStructOutput>;
|
|
488
562
|
getPoolsV3List(overrides?: CallOverrides): Promise<PoolDataStructOutput[]>;
|
|
489
563
|
version(overrides?: CallOverrides): Promise<BigNumber>;
|
|
@@ -493,6 +567,7 @@ export interface IDataCompressorV3_00 extends BaseContract {
|
|
|
493
567
|
getCreditAccountsByCreditManager(creditManager: PromiseOrValue<string>, priceUpdates: PriceOnDemandStruct[], overrides?: CallOverrides): Promise<CreditAccountDataStructOutput[]>;
|
|
494
568
|
getCreditManagerData(creditManager: PromiseOrValue<string>, overrides?: CallOverrides): Promise<CreditManagerDataStructOutput>;
|
|
495
569
|
getCreditManagersV3List(overrides?: CallOverrides): Promise<CreditManagerDataStructOutput[]>;
|
|
570
|
+
getGaugesV3Data(staker: PromiseOrValue<string>, overrides?: CallOverrides): Promise<GaugeInfoStructOutput[]>;
|
|
496
571
|
getPoolData(_pool: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PoolDataStructOutput>;
|
|
497
572
|
getPoolsV3List(overrides?: CallOverrides): Promise<PoolDataStructOutput[]>;
|
|
498
573
|
version(overrides?: CallOverrides): Promise<BigNumber>;
|
|
@@ -510,6 +585,7 @@ export interface IDataCompressorV3_00 extends BaseContract {
|
|
|
510
585
|
}): Promise<BigNumber>;
|
|
511
586
|
getCreditManagerData(creditManager: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
512
587
|
getCreditManagersV3List(overrides?: CallOverrides): Promise<BigNumber>;
|
|
588
|
+
getGaugesV3Data(staker: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
513
589
|
getPoolData(_pool: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
514
590
|
getPoolsV3List(overrides?: CallOverrides): Promise<BigNumber>;
|
|
515
591
|
version(overrides?: CallOverrides): Promise<BigNumber>;
|
|
@@ -526,6 +602,7 @@ export interface IDataCompressorV3_00 extends BaseContract {
|
|
|
526
602
|
}): Promise<PopulatedTransaction>;
|
|
527
603
|
getCreditManagerData(creditManager: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
528
604
|
getCreditManagersV3List(overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
605
|
+
getGaugesV3Data(staker: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
529
606
|
getPoolData(_pool: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
530
607
|
getPoolsV3List(overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
531
608
|
version(overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
@@ -964,6 +964,98 @@ export declare class IDataCompressorV3_00__factory {
|
|
|
964
964
|
}];
|
|
965
965
|
readonly stateMutability: "view";
|
|
966
966
|
readonly type: "function";
|
|
967
|
+
}, {
|
|
968
|
+
readonly inputs: readonly [{
|
|
969
|
+
readonly internalType: "address";
|
|
970
|
+
readonly name: "staker";
|
|
971
|
+
readonly type: "address";
|
|
972
|
+
}];
|
|
973
|
+
readonly name: "getGaugesV3Data";
|
|
974
|
+
readonly outputs: readonly [{
|
|
975
|
+
readonly components: readonly [{
|
|
976
|
+
readonly internalType: "address";
|
|
977
|
+
readonly name: "addr";
|
|
978
|
+
readonly type: "address";
|
|
979
|
+
}, {
|
|
980
|
+
readonly internalType: "address";
|
|
981
|
+
readonly name: "pool";
|
|
982
|
+
readonly type: "address";
|
|
983
|
+
}, {
|
|
984
|
+
readonly internalType: "string";
|
|
985
|
+
readonly name: "symbol";
|
|
986
|
+
readonly type: "string";
|
|
987
|
+
}, {
|
|
988
|
+
readonly internalType: "string";
|
|
989
|
+
readonly name: "name";
|
|
990
|
+
readonly type: "string";
|
|
991
|
+
}, {
|
|
992
|
+
readonly internalType: "uint16";
|
|
993
|
+
readonly name: "currentEpoch";
|
|
994
|
+
readonly type: "uint16";
|
|
995
|
+
}, {
|
|
996
|
+
readonly internalType: "bool";
|
|
997
|
+
readonly name: "epochFrozen";
|
|
998
|
+
readonly type: "bool";
|
|
999
|
+
}, {
|
|
1000
|
+
readonly components: readonly [{
|
|
1001
|
+
readonly internalType: "address";
|
|
1002
|
+
readonly name: "token";
|
|
1003
|
+
readonly type: "address";
|
|
1004
|
+
}, {
|
|
1005
|
+
readonly internalType: "uint16";
|
|
1006
|
+
readonly name: "minRate";
|
|
1007
|
+
readonly type: "uint16";
|
|
1008
|
+
}, {
|
|
1009
|
+
readonly internalType: "uint16";
|
|
1010
|
+
readonly name: "maxRate";
|
|
1011
|
+
readonly type: "uint16";
|
|
1012
|
+
}, {
|
|
1013
|
+
readonly internalType: "uint96";
|
|
1014
|
+
readonly name: "totalVotesLpSide";
|
|
1015
|
+
readonly type: "uint96";
|
|
1016
|
+
}, {
|
|
1017
|
+
readonly internalType: "uint96";
|
|
1018
|
+
readonly name: "totalVotesCaSide";
|
|
1019
|
+
readonly type: "uint96";
|
|
1020
|
+
}, {
|
|
1021
|
+
readonly internalType: "uint16";
|
|
1022
|
+
readonly name: "rate";
|
|
1023
|
+
readonly type: "uint16";
|
|
1024
|
+
}, {
|
|
1025
|
+
readonly internalType: "uint16";
|
|
1026
|
+
readonly name: "quotaIncreaseFee";
|
|
1027
|
+
readonly type: "uint16";
|
|
1028
|
+
}, {
|
|
1029
|
+
readonly internalType: "uint96";
|
|
1030
|
+
readonly name: "totalQuoted";
|
|
1031
|
+
readonly type: "uint96";
|
|
1032
|
+
}, {
|
|
1033
|
+
readonly internalType: "uint96";
|
|
1034
|
+
readonly name: "limit";
|
|
1035
|
+
readonly type: "uint96";
|
|
1036
|
+
}, {
|
|
1037
|
+
readonly internalType: "bool";
|
|
1038
|
+
readonly name: "isActive";
|
|
1039
|
+
readonly type: "bool";
|
|
1040
|
+
}, {
|
|
1041
|
+
readonly internalType: "uint96";
|
|
1042
|
+
readonly name: "stakerVotesLpSide";
|
|
1043
|
+
readonly type: "uint96";
|
|
1044
|
+
}, {
|
|
1045
|
+
readonly internalType: "uint96";
|
|
1046
|
+
readonly name: "stakerVotesCaSide";
|
|
1047
|
+
readonly type: "uint96";
|
|
1048
|
+
}];
|
|
1049
|
+
readonly internalType: "struct GaugeQuotaParams[]";
|
|
1050
|
+
readonly name: "quotaParams";
|
|
1051
|
+
readonly type: "tuple[]";
|
|
1052
|
+
}];
|
|
1053
|
+
readonly internalType: "struct GaugeInfo[]";
|
|
1054
|
+
readonly name: "result";
|
|
1055
|
+
readonly type: "tuple[]";
|
|
1056
|
+
}];
|
|
1057
|
+
readonly stateMutability: "view";
|
|
1058
|
+
readonly type: "function";
|
|
967
1059
|
}, {
|
|
968
1060
|
readonly inputs: readonly [{
|
|
969
1061
|
readonly internalType: "address";
|
|
@@ -1230,6 +1230,124 @@ const _abi = [
|
|
|
1230
1230
|
stateMutability: "view",
|
|
1231
1231
|
type: "function",
|
|
1232
1232
|
},
|
|
1233
|
+
{
|
|
1234
|
+
inputs: [
|
|
1235
|
+
{
|
|
1236
|
+
internalType: "address",
|
|
1237
|
+
name: "staker",
|
|
1238
|
+
type: "address",
|
|
1239
|
+
},
|
|
1240
|
+
],
|
|
1241
|
+
name: "getGaugesV3Data",
|
|
1242
|
+
outputs: [
|
|
1243
|
+
{
|
|
1244
|
+
components: [
|
|
1245
|
+
{
|
|
1246
|
+
internalType: "address",
|
|
1247
|
+
name: "addr",
|
|
1248
|
+
type: "address",
|
|
1249
|
+
},
|
|
1250
|
+
{
|
|
1251
|
+
internalType: "address",
|
|
1252
|
+
name: "pool",
|
|
1253
|
+
type: "address",
|
|
1254
|
+
},
|
|
1255
|
+
{
|
|
1256
|
+
internalType: "string",
|
|
1257
|
+
name: "symbol",
|
|
1258
|
+
type: "string",
|
|
1259
|
+
},
|
|
1260
|
+
{
|
|
1261
|
+
internalType: "string",
|
|
1262
|
+
name: "name",
|
|
1263
|
+
type: "string",
|
|
1264
|
+
},
|
|
1265
|
+
{
|
|
1266
|
+
internalType: "uint16",
|
|
1267
|
+
name: "currentEpoch",
|
|
1268
|
+
type: "uint16",
|
|
1269
|
+
},
|
|
1270
|
+
{
|
|
1271
|
+
internalType: "bool",
|
|
1272
|
+
name: "epochFrozen",
|
|
1273
|
+
type: "bool",
|
|
1274
|
+
},
|
|
1275
|
+
{
|
|
1276
|
+
components: [
|
|
1277
|
+
{
|
|
1278
|
+
internalType: "address",
|
|
1279
|
+
name: "token",
|
|
1280
|
+
type: "address",
|
|
1281
|
+
},
|
|
1282
|
+
{
|
|
1283
|
+
internalType: "uint16",
|
|
1284
|
+
name: "minRate",
|
|
1285
|
+
type: "uint16",
|
|
1286
|
+
},
|
|
1287
|
+
{
|
|
1288
|
+
internalType: "uint16",
|
|
1289
|
+
name: "maxRate",
|
|
1290
|
+
type: "uint16",
|
|
1291
|
+
},
|
|
1292
|
+
{
|
|
1293
|
+
internalType: "uint96",
|
|
1294
|
+
name: "totalVotesLpSide",
|
|
1295
|
+
type: "uint96",
|
|
1296
|
+
},
|
|
1297
|
+
{
|
|
1298
|
+
internalType: "uint96",
|
|
1299
|
+
name: "totalVotesCaSide",
|
|
1300
|
+
type: "uint96",
|
|
1301
|
+
},
|
|
1302
|
+
{
|
|
1303
|
+
internalType: "uint16",
|
|
1304
|
+
name: "rate",
|
|
1305
|
+
type: "uint16",
|
|
1306
|
+
},
|
|
1307
|
+
{
|
|
1308
|
+
internalType: "uint16",
|
|
1309
|
+
name: "quotaIncreaseFee",
|
|
1310
|
+
type: "uint16",
|
|
1311
|
+
},
|
|
1312
|
+
{
|
|
1313
|
+
internalType: "uint96",
|
|
1314
|
+
name: "totalQuoted",
|
|
1315
|
+
type: "uint96",
|
|
1316
|
+
},
|
|
1317
|
+
{
|
|
1318
|
+
internalType: "uint96",
|
|
1319
|
+
name: "limit",
|
|
1320
|
+
type: "uint96",
|
|
1321
|
+
},
|
|
1322
|
+
{
|
|
1323
|
+
internalType: "bool",
|
|
1324
|
+
name: "isActive",
|
|
1325
|
+
type: "bool",
|
|
1326
|
+
},
|
|
1327
|
+
{
|
|
1328
|
+
internalType: "uint96",
|
|
1329
|
+
name: "stakerVotesLpSide",
|
|
1330
|
+
type: "uint96",
|
|
1331
|
+
},
|
|
1332
|
+
{
|
|
1333
|
+
internalType: "uint96",
|
|
1334
|
+
name: "stakerVotesCaSide",
|
|
1335
|
+
type: "uint96",
|
|
1336
|
+
},
|
|
1337
|
+
],
|
|
1338
|
+
internalType: "struct GaugeQuotaParams[]",
|
|
1339
|
+
name: "quotaParams",
|
|
1340
|
+
type: "tuple[]",
|
|
1341
|
+
},
|
|
1342
|
+
],
|
|
1343
|
+
internalType: "struct GaugeInfo[]",
|
|
1344
|
+
name: "result",
|
|
1345
|
+
type: "tuple[]",
|
|
1346
|
+
},
|
|
1347
|
+
],
|
|
1348
|
+
stateMutability: "view",
|
|
1349
|
+
type: "function",
|
|
1350
|
+
},
|
|
1233
1351
|
{
|
|
1234
1352
|
inputs: [
|
|
1235
1353
|
{
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gearbox-protocol/sdk",
|
|
3
|
-
"version": "3.0.0-next.
|
|
3
|
+
"version": "3.0.0-next.23",
|
|
4
4
|
"description": "Gearbox SDK",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -34,8 +34,7 @@
|
|
|
34
34
|
"axios": "^1.2.6",
|
|
35
35
|
"decimal.js-light": "^2.5.1",
|
|
36
36
|
"deep-eql": "^4.1.0",
|
|
37
|
-
"moment": "^2.29.4"
|
|
38
|
-
"zod": "^3.22.2"
|
|
37
|
+
"moment": "^2.29.4"
|
|
39
38
|
},
|
|
40
39
|
"devDependencies": {
|
|
41
40
|
"@1inch/solidity-utils": "^2.2.27",
|
|
@@ -46,7 +45,7 @@
|
|
|
46
45
|
"@gearbox-protocol/eslint-config": "^1.4.1",
|
|
47
46
|
"@gearbox-protocol/integrations-v3": "^1.18.0",
|
|
48
47
|
"@gearbox-protocol/oracles-v3": "^1.7.6",
|
|
49
|
-
"@gearbox-protocol/periphery-v3": "^1.
|
|
48
|
+
"@gearbox-protocol/periphery-v3": "^1.3.0",
|
|
50
49
|
"@gearbox-protocol/prettier-config": "^1.4.1",
|
|
51
50
|
"@openzeppelin/contracts": "^4.9.3",
|
|
52
51
|
"@typechain/ethers-v5": "^10.1.0",
|