@pendle/core-v2 5.2.5-beta → 5.3.0

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 (32) hide show
  1. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +4 -0
  2. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.json +394 -0
  3. package/build/artifacts/contracts/core/erc20/PendleERC20PermitUpg.sol/PendleERC20PermitUpg.dbg.json +4 -0
  4. package/build/artifacts/contracts/core/erc20/PendleERC20PermitUpg.sol/PendleERC20PermitUpg.json +370 -0
  5. package/build/artifacts/contracts/core/erc20/PendleERC20Upg.sol/PendleERC20Upg.dbg.json +4 -0
  6. package/build/artifacts/contracts/core/erc20/PendleERC20Upg.sol/PendleERC20Upg.json +246 -0
  7. package/build/artifacts/contracts/interfaces/IPOracleForSy.sol/IPOracleForSy.dbg.json +4 -0
  8. package/build/artifacts/contracts/interfaces/IPOracleForSy.sol/IPOracleForSy.json +24 -0
  9. package/contracts/core/erc20/PendleERC20Permit.sol +80 -0
  10. package/contracts/core/erc20/PendleERC20PermitUpg.sol +82 -0
  11. package/contracts/core/erc20/PendleERC20Upg.sol +334 -0
  12. package/contracts/interfaces/IPOracleForSy.sol +7 -0
  13. package/package.json +5 -1
  14. package/typechain-types/EIP712.ts +135 -0
  15. package/typechain-types/ERC20Permit.ts +586 -0
  16. package/typechain-types/IERC5267.ts +135 -0
  17. package/typechain-types/IPOracleForSy.ts +87 -0
  18. package/typechain-types/PendleERC20Permit.ts +508 -0
  19. package/typechain-types/PendleERC20PermitUpg.ts +517 -0
  20. package/typechain-types/PendleERC20Upg.ts +348 -0
  21. package/typechain-types/ShortStrings.ts +57 -0
  22. package/typechain-types/common.ts +44 -0
  23. package/typechain-types/factories/EIP712__factory.ts +85 -0
  24. package/typechain-types/factories/ERC20Permit__factory.ts +433 -0
  25. package/typechain-types/factories/IERC5267__factory.ts +72 -0
  26. package/typechain-types/factories/IPOracleForSy__factory.ts +36 -0
  27. package/typechain-types/factories/PendleERC20PermitUpg__factory.ts +389 -0
  28. package/typechain-types/factories/PendleERC20Permit__factory.ts +470 -0
  29. package/typechain-types/factories/PendleERC20Upg__factory.ts +261 -0
  30. package/typechain-types/factories/ShortStrings__factory.ts +77 -0
  31. package/typechain-types/hardhat.d.ts +1725 -0
  32. package/typechain-types/index.ts +380 -0
@@ -0,0 +1,470 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ Signer,
6
+ utils,
7
+ Contract,
8
+ ContractFactory,
9
+ Overrides,
10
+ BigNumberish,
11
+ } from "ethers";
12
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
13
+ import type {
14
+ PendleERC20Permit,
15
+ PendleERC20PermitInterface,
16
+ } from "../PendleERC20Permit";
17
+
18
+ const _abi = [
19
+ {
20
+ inputs: [
21
+ {
22
+ internalType: "string",
23
+ name: "name_",
24
+ type: "string",
25
+ },
26
+ {
27
+ internalType: "string",
28
+ name: "symbol_",
29
+ type: "string",
30
+ },
31
+ {
32
+ internalType: "uint8",
33
+ name: "decimals_",
34
+ type: "uint8",
35
+ },
36
+ ],
37
+ stateMutability: "nonpayable",
38
+ type: "constructor",
39
+ },
40
+ {
41
+ inputs: [],
42
+ name: "InvalidShortString",
43
+ type: "error",
44
+ },
45
+ {
46
+ inputs: [
47
+ {
48
+ internalType: "string",
49
+ name: "str",
50
+ type: "string",
51
+ },
52
+ ],
53
+ name: "StringTooLong",
54
+ type: "error",
55
+ },
56
+ {
57
+ anonymous: false,
58
+ inputs: [
59
+ {
60
+ indexed: true,
61
+ internalType: "address",
62
+ name: "owner",
63
+ type: "address",
64
+ },
65
+ {
66
+ indexed: true,
67
+ internalType: "address",
68
+ name: "spender",
69
+ type: "address",
70
+ },
71
+ {
72
+ indexed: false,
73
+ internalType: "uint256",
74
+ name: "value",
75
+ type: "uint256",
76
+ },
77
+ ],
78
+ name: "Approval",
79
+ type: "event",
80
+ },
81
+ {
82
+ anonymous: false,
83
+ inputs: [],
84
+ name: "EIP712DomainChanged",
85
+ type: "event",
86
+ },
87
+ {
88
+ anonymous: false,
89
+ inputs: [
90
+ {
91
+ indexed: true,
92
+ internalType: "address",
93
+ name: "from",
94
+ type: "address",
95
+ },
96
+ {
97
+ indexed: true,
98
+ internalType: "address",
99
+ name: "to",
100
+ type: "address",
101
+ },
102
+ {
103
+ indexed: false,
104
+ internalType: "uint256",
105
+ name: "value",
106
+ type: "uint256",
107
+ },
108
+ ],
109
+ name: "Transfer",
110
+ type: "event",
111
+ },
112
+ {
113
+ inputs: [],
114
+ name: "DOMAIN_SEPARATOR",
115
+ outputs: [
116
+ {
117
+ internalType: "bytes32",
118
+ name: "",
119
+ type: "bytes32",
120
+ },
121
+ ],
122
+ stateMutability: "view",
123
+ type: "function",
124
+ },
125
+ {
126
+ inputs: [
127
+ {
128
+ internalType: "address",
129
+ name: "owner",
130
+ type: "address",
131
+ },
132
+ {
133
+ internalType: "address",
134
+ name: "spender",
135
+ type: "address",
136
+ },
137
+ ],
138
+ name: "allowance",
139
+ outputs: [
140
+ {
141
+ internalType: "uint256",
142
+ name: "",
143
+ type: "uint256",
144
+ },
145
+ ],
146
+ stateMutability: "view",
147
+ type: "function",
148
+ },
149
+ {
150
+ inputs: [
151
+ {
152
+ internalType: "address",
153
+ name: "spender",
154
+ type: "address",
155
+ },
156
+ {
157
+ internalType: "uint256",
158
+ name: "amount",
159
+ type: "uint256",
160
+ },
161
+ ],
162
+ name: "approve",
163
+ outputs: [
164
+ {
165
+ internalType: "bool",
166
+ name: "",
167
+ type: "bool",
168
+ },
169
+ ],
170
+ stateMutability: "nonpayable",
171
+ type: "function",
172
+ },
173
+ {
174
+ inputs: [
175
+ {
176
+ internalType: "address",
177
+ name: "account",
178
+ type: "address",
179
+ },
180
+ ],
181
+ name: "balanceOf",
182
+ outputs: [
183
+ {
184
+ internalType: "uint256",
185
+ name: "",
186
+ type: "uint256",
187
+ },
188
+ ],
189
+ stateMutability: "view",
190
+ type: "function",
191
+ },
192
+ {
193
+ inputs: [],
194
+ name: "decimals",
195
+ outputs: [
196
+ {
197
+ internalType: "uint8",
198
+ name: "",
199
+ type: "uint8",
200
+ },
201
+ ],
202
+ stateMutability: "view",
203
+ type: "function",
204
+ },
205
+ {
206
+ inputs: [],
207
+ name: "eip712Domain",
208
+ outputs: [
209
+ {
210
+ internalType: "bytes1",
211
+ name: "fields",
212
+ type: "bytes1",
213
+ },
214
+ {
215
+ internalType: "string",
216
+ name: "name",
217
+ type: "string",
218
+ },
219
+ {
220
+ internalType: "string",
221
+ name: "version",
222
+ type: "string",
223
+ },
224
+ {
225
+ internalType: "uint256",
226
+ name: "chainId",
227
+ type: "uint256",
228
+ },
229
+ {
230
+ internalType: "address",
231
+ name: "verifyingContract",
232
+ type: "address",
233
+ },
234
+ {
235
+ internalType: "bytes32",
236
+ name: "salt",
237
+ type: "bytes32",
238
+ },
239
+ {
240
+ internalType: "uint256[]",
241
+ name: "extensions",
242
+ type: "uint256[]",
243
+ },
244
+ ],
245
+ stateMutability: "view",
246
+ type: "function",
247
+ },
248
+ {
249
+ inputs: [],
250
+ name: "name",
251
+ outputs: [
252
+ {
253
+ internalType: "string",
254
+ name: "",
255
+ type: "string",
256
+ },
257
+ ],
258
+ stateMutability: "view",
259
+ type: "function",
260
+ },
261
+ {
262
+ inputs: [
263
+ {
264
+ internalType: "address",
265
+ name: "owner",
266
+ type: "address",
267
+ },
268
+ ],
269
+ name: "nonces",
270
+ outputs: [
271
+ {
272
+ internalType: "uint256",
273
+ name: "",
274
+ type: "uint256",
275
+ },
276
+ ],
277
+ stateMutability: "view",
278
+ type: "function",
279
+ },
280
+ {
281
+ inputs: [
282
+ {
283
+ internalType: "address",
284
+ name: "owner",
285
+ type: "address",
286
+ },
287
+ {
288
+ internalType: "address",
289
+ name: "spender",
290
+ type: "address",
291
+ },
292
+ {
293
+ internalType: "uint256",
294
+ name: "value",
295
+ type: "uint256",
296
+ },
297
+ {
298
+ internalType: "uint256",
299
+ name: "deadline",
300
+ type: "uint256",
301
+ },
302
+ {
303
+ internalType: "uint8",
304
+ name: "v",
305
+ type: "uint8",
306
+ },
307
+ {
308
+ internalType: "bytes32",
309
+ name: "r",
310
+ type: "bytes32",
311
+ },
312
+ {
313
+ internalType: "bytes32",
314
+ name: "s",
315
+ type: "bytes32",
316
+ },
317
+ ],
318
+ name: "permit",
319
+ outputs: [],
320
+ stateMutability: "nonpayable",
321
+ type: "function",
322
+ },
323
+ {
324
+ inputs: [],
325
+ name: "symbol",
326
+ outputs: [
327
+ {
328
+ internalType: "string",
329
+ name: "",
330
+ type: "string",
331
+ },
332
+ ],
333
+ stateMutability: "view",
334
+ type: "function",
335
+ },
336
+ {
337
+ inputs: [],
338
+ name: "totalSupply",
339
+ outputs: [
340
+ {
341
+ internalType: "uint256",
342
+ name: "",
343
+ type: "uint256",
344
+ },
345
+ ],
346
+ stateMutability: "view",
347
+ type: "function",
348
+ },
349
+ {
350
+ inputs: [
351
+ {
352
+ internalType: "address",
353
+ name: "to",
354
+ type: "address",
355
+ },
356
+ {
357
+ internalType: "uint256",
358
+ name: "amount",
359
+ type: "uint256",
360
+ },
361
+ ],
362
+ name: "transfer",
363
+ outputs: [
364
+ {
365
+ internalType: "bool",
366
+ name: "",
367
+ type: "bool",
368
+ },
369
+ ],
370
+ stateMutability: "nonpayable",
371
+ type: "function",
372
+ },
373
+ {
374
+ inputs: [
375
+ {
376
+ internalType: "address",
377
+ name: "from",
378
+ type: "address",
379
+ },
380
+ {
381
+ internalType: "address",
382
+ name: "to",
383
+ type: "address",
384
+ },
385
+ {
386
+ internalType: "uint256",
387
+ name: "amount",
388
+ type: "uint256",
389
+ },
390
+ ],
391
+ name: "transferFrom",
392
+ outputs: [
393
+ {
394
+ internalType: "bool",
395
+ name: "",
396
+ type: "bool",
397
+ },
398
+ ],
399
+ stateMutability: "nonpayable",
400
+ type: "function",
401
+ },
402
+ ];
403
+
404
+ const _bytecode =
405
+ "0x6101806040523480156200001257600080fd5b50604051620016d0380380620016d08339810160408190526200003591620002a0565b6040805180820190915260018152603160f81b602082015283908184846003620000608482620003b6565b5060046200006f8382620003b6565b5060ff166080525050600280546001600160f81b0316600160f81b1790556200009a8260056200014e565b61014052620000ab8160066200014e565b61016052815160208084019190912061010052815190820120610120524660c0526200013b6101005161012051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60a05250503060e05250620004dc915050565b60006020835110156200016e57620001668362000187565b905062000181565b816200017b8482620003b6565b5060ff90505b92915050565b600080829050601f81511115620001be578260405163305a27a960e01b8152600401620001b5919062000482565b60405180910390fd5b8051620001cb82620004b7565b179392505050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101562000206578181015183820152602001620001ec565b50506000910152565b600082601f8301126200022157600080fd5b81516001600160401b03808211156200023e576200023e620001d3565b604051601f8301601f19908116603f01168101908282118183101715620002695762000269620001d3565b816040528381528660208588010111156200028357600080fd5b62000296846020830160208901620001e9565b9695505050505050565b600080600060608486031215620002b657600080fd5b83516001600160401b0380821115620002ce57600080fd5b620002dc878388016200020f565b94506020860151915080821115620002f357600080fd5b5062000302868287016200020f565b925050604084015160ff811681146200031a57600080fd5b809150509250925092565b600181811c908216806200033a57607f821691505b6020821081036200035b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003b1576000816000526020600020601f850160051c810160208610156200038c5750805b601f850160051c820191505b81811015620003ad5782815560010162000398565b5050505b505050565b81516001600160401b03811115620003d257620003d2620001d3565b620003ea81620003e3845462000325565b8462000361565b602080601f831160018114620004225760008415620004095750858301515b600019600386901b1c1916600185901b178555620003ad565b600085815260208120601f198616915b82811015620004535788860151825594840194600190910190840162000432565b5085821015620004725787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020815260008251806020840152620004a3816040850160208701620001e9565b601f01601f19169190910160400192915050565b805160208083015191908110156200035b5760001960209190910360031b1b16919050565b60805160a05160c05160e0516101005161012051610140516101605161118e6200054260003960006103970152600061036c01526000610a9801526000610a70015260006109cb015260006109f501526000610a1f01526000610128015261118e6000f3fe608060405234801561001057600080fd5b50600436106100af5760003560e01c806306fdde03146100b4578063095ea7b3146100d257806318160ddd146100f557806323b872dd14610110578063313ce567146101235780633644e5151461015c57806370a08231146101645780637ecebe001461018d57806384b0196e146101a057806395d89b41146101bb578063a9059cbb146101c3578063d505accf146101d6578063dd62ed3e146101eb575b600080fd5b6100bc6101fe565b6040516100c99190610ec0565b60405180910390f35b6100e56100e0366004610ef6565b610290565b60405190151581526020016100c9565b6002546001600160f81b03165b6040519081526020016100c9565b6100e561011e366004610f20565b6102aa565b61014a7f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016100c9565b610102610331565b610102610172366004610f5c565b6001600160a01b031660009081526020819052604090205490565b61010261019b366004610f5c565b610340565b6101a861035e565b6040516100c99796959493929190610f77565b6100bc6103e7565b6100e56101d1366004610ef6565b6103f6565b6101e96101e4366004611010565b610468565b005b6101026101f9366004611083565b6105cc565b60606003805461020d906110b6565b80601f0160208091040260200160405190810160405280929190818152602001828054610239906110b6565b80156102865780601f1061025b57610100808354040283529160200191610286565b820191906000526020600020905b81548152906001019060200180831161026957829003601f168201915b5050505050905090565b60003361029e8185856105f7565b60019150505b92915050565b600254600090600119600160f81b90910460ff16016102e45760405162461bcd60e51b81526004016102db906110ea565b60405180910390fd5b600280546001600160f81b0316600160f91b1790553361030585828561071b565b610310858585610795565b6001915050600280546001600160f81b0316600160f81b1790559392505050565b600061033b6109be565b905090565b6001600160a01b0381166000908152600760205260408120546102a4565b6000606080828080836103927f00000000000000000000000000000000000000000000000000000000000000006005610ae9565b6103bd7f00000000000000000000000000000000000000000000000000000000000000006006610ae9565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b60606004805461020d906110b6565b600254600090600119600160f81b90910460ff16016104275760405162461bcd60e51b81526004016102db906110ea565b600280546001600160f81b0316600160f91b17905533610448818585610795565b6001915050600280546001600160f81b0316600160f81b17905592915050565b834211156104b85760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e6500000060448201526064016102db565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886104e78c610b94565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e001604051602081830303815290604052805190602001209050600061054282610bbc565b9050600061055282878787610be9565b9050896001600160a01b0316816001600160a01b0316146105b55760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e6174757265000060448201526064016102db565b6105c08a8a8a6105f7565b50505050505050505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166106595760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016102db565b6001600160a01b0382166106ba5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016102db565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061072784846105cc565b9050600019811461078f57818110156107825760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016102db565b61078f84848484036105f7565b50505050565b6001600160a01b0383166107f95760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016102db565b6001600160a01b03821661085b5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016102db565b816001600160a01b0316836001600160a01b0316036108b65760405162461bcd60e51b815260206004820152601760248201527622a92199181d103a3930b739b332b9103a379039b2b63360491b60448201526064016102db565b6001600160a01b0383166000908152602081905260409020548181101561092e5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016102db565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290610965908490611121565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516109b191815260200190565b60405180910390a361078f565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015610a1757507f000000000000000000000000000000000000000000000000000000000000000046145b15610a4157507f000000000000000000000000000000000000000000000000000000000000000090565b61033b604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b606060ff8314610b0357610afc83610c11565b90506102a4565b818054610b0f906110b6565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3b906110b6565b8015610b885780601f10610b5d57610100808354040283529160200191610b88565b820191906000526020600020905b815481529060010190602001808311610b6b57829003601f168201915b505050505090506102a4565b6001600160a01b03811660009081526007602052604090208054600181018255905b50919050565b60006102a4610bc96109be565b8360405161190160f01b8152600281019290925260228201526042902090565b6000806000610bfa87878787610c50565b91509150610c0781610d0a565b5095945050505050565b60606000610c1e83610e52565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b03831115610c7d5750600090506003610d01565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610cd1573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610cfa57600060019250925050610d01565b9150600090505b94509492505050565b6000816004811115610d1e57610d1e611142565b03610d265750565b6001816004811115610d3a57610d3a611142565b03610d825760405162461bcd60e51b815260206004820152601860248201527745434453413a20696e76616c6964207369676e617475726560401b60448201526064016102db565b6002816004811115610d9657610d96611142565b03610de35760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016102db565b6003816004811115610df757610df7611142565b03610e4f5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016102db565b50565b600060ff8216601f8111156102a457604051632cd44ac360e21b815260040160405180910390fd5b6000815180845260005b81811015610ea057602081850181015186830182015201610e84565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000610ed36020830184610e7a565b9392505050565b80356001600160a01b0381168114610ef157600080fd5b919050565b60008060408385031215610f0957600080fd5b610f1283610eda565b946020939093013593505050565b600080600060608486031215610f3557600080fd5b610f3e84610eda565b9250610f4c60208501610eda565b9150604084013590509250925092565b600060208284031215610f6e57600080fd5b610ed382610eda565b60ff60f81b881681526000602060e06020840152610f9860e084018a610e7a565b8381036040850152610faa818a610e7a565b606085018990526001600160a01b038816608086015260a0850187905284810360c08601528551808252602080880193509091019060005b81811015610ffe57835183529284019291840191600101610fe2565b50909c9b505050505050505050505050565b600080600080600080600060e0888a03121561102b57600080fd5b61103488610eda565b965061104260208901610eda565b95506040880135945060608801359350608088013560ff8116811461106657600080fd5b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561109657600080fd5b61109f83610eda565b91506110ad60208401610eda565b90509250929050565b600181811c908216806110ca57607f821691505b602082108103610bb657634e487b7160e01b600052602260045260246000fd5b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b808201808211156102a457634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052602160045260246000fdfea26469706673582212201195ca6c88e7d09f62a3d0be617a09da7d4d00dfee2e297d5e7e328b4858859a64736f6c63430008170033";
406
+
407
+ type PendleERC20PermitConstructorParams =
408
+ | [signer?: Signer]
409
+ | ConstructorParameters<typeof ContractFactory>;
410
+
411
+ const isSuperArgs = (
412
+ xs: PendleERC20PermitConstructorParams
413
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
414
+
415
+ export class PendleERC20Permit__factory extends ContractFactory {
416
+ constructor(...args: PendleERC20PermitConstructorParams) {
417
+ if (isSuperArgs(args)) {
418
+ super(...args);
419
+ } else {
420
+ super(_abi, _bytecode, args[0]);
421
+ }
422
+ this.contractName = "PendleERC20Permit";
423
+ }
424
+
425
+ deploy(
426
+ name_: string,
427
+ symbol_: string,
428
+ decimals_: BigNumberish,
429
+ overrides?: Overrides & { from?: string | Promise<string> }
430
+ ): Promise<PendleERC20Permit> {
431
+ return super.deploy(
432
+ name_,
433
+ symbol_,
434
+ decimals_,
435
+ overrides || {}
436
+ ) as Promise<PendleERC20Permit>;
437
+ }
438
+ getDeployTransaction(
439
+ name_: string,
440
+ symbol_: string,
441
+ decimals_: BigNumberish,
442
+ overrides?: Overrides & { from?: string | Promise<string> }
443
+ ): TransactionRequest {
444
+ return super.getDeployTransaction(
445
+ name_,
446
+ symbol_,
447
+ decimals_,
448
+ overrides || {}
449
+ );
450
+ }
451
+ attach(address: string): PendleERC20Permit {
452
+ return super.attach(address) as PendleERC20Permit;
453
+ }
454
+ connect(signer: Signer): PendleERC20Permit__factory {
455
+ return super.connect(signer) as PendleERC20Permit__factory;
456
+ }
457
+ static readonly contractName: "PendleERC20Permit";
458
+ public readonly contractName: "PendleERC20Permit";
459
+ static readonly bytecode = _bytecode;
460
+ static readonly abi = _abi;
461
+ static createInterface(): PendleERC20PermitInterface {
462
+ return new utils.Interface(_abi) as PendleERC20PermitInterface;
463
+ }
464
+ static connect(
465
+ address: string,
466
+ signerOrProvider: Signer | Provider
467
+ ): PendleERC20Permit {
468
+ return new Contract(address, _abi, signerOrProvider) as PendleERC20Permit;
469
+ }
470
+ }