github.com/ethereum-optimism/optimism@v1.7.2/packages/contracts-ts/src/react.ts (about) 1 import { 2 useNetwork, 3 useChainId, 4 useContractRead, 5 UseContractReadConfig, 6 useContractWrite, 7 Address, 8 UseContractWriteConfig, 9 useContractEvent, 10 UseContractEventConfig, 11 } from 'wagmi' 12 import { 13 ReadContractResult, 14 WriteContractMode, 15 PrepareWriteContractResult, 16 } from 'wagmi/actions' 17 18 /* eslint-disable */ 19 20 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 21 // AddressManager 22 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 23 24 /** 25 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F) 26 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xa6f73589243a6A7a9023b1Fa0651b1d89c177111) 27 */ 28 export const addressManagerABI = [ 29 { 30 type: 'event', 31 anonymous: false, 32 inputs: [ 33 { name: '_name', internalType: 'string', type: 'string', indexed: true }, 34 { 35 name: '_newAddress', 36 internalType: 'address', 37 type: 'address', 38 indexed: false, 39 }, 40 { 41 name: '_oldAddress', 42 internalType: 'address', 43 type: 'address', 44 indexed: false, 45 }, 46 ], 47 name: 'AddressSet', 48 }, 49 { 50 type: 'event', 51 anonymous: false, 52 inputs: [ 53 { 54 name: 'previousOwner', 55 internalType: 'address', 56 type: 'address', 57 indexed: true, 58 }, 59 { 60 name: 'newOwner', 61 internalType: 'address', 62 type: 'address', 63 indexed: true, 64 }, 65 ], 66 name: 'OwnershipTransferred', 67 }, 68 { 69 stateMutability: 'view', 70 type: 'function', 71 inputs: [{ name: '_name', internalType: 'string', type: 'string' }], 72 name: 'getAddress', 73 outputs: [{ name: '', internalType: 'address', type: 'address' }], 74 }, 75 { 76 stateMutability: 'view', 77 type: 'function', 78 inputs: [], 79 name: 'owner', 80 outputs: [{ name: '', internalType: 'address', type: 'address' }], 81 }, 82 { 83 stateMutability: 'nonpayable', 84 type: 'function', 85 inputs: [], 86 name: 'renounceOwnership', 87 outputs: [], 88 }, 89 { 90 stateMutability: 'nonpayable', 91 type: 'function', 92 inputs: [ 93 { name: '_name', internalType: 'string', type: 'string' }, 94 { name: '_address', internalType: 'address', type: 'address' }, 95 ], 96 name: 'setAddress', 97 outputs: [], 98 }, 99 { 100 stateMutability: 'nonpayable', 101 type: 'function', 102 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 103 name: 'transferOwnership', 104 outputs: [], 105 }, 106 ] as const 107 108 /** 109 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F) 110 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xa6f73589243a6A7a9023b1Fa0651b1d89c177111) 111 */ 112 export const addressManagerAddress = { 113 1: '0xdE1FCfB0851916CA5101820A69b13a4E276bd81F', 114 5: '0xa6f73589243a6A7a9023b1Fa0651b1d89c177111', 115 } as const 116 117 /** 118 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F) 119 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xa6f73589243a6A7a9023b1Fa0651b1d89c177111) 120 */ 121 export const addressManagerConfig = { 122 address: addressManagerAddress, 123 abi: addressManagerABI, 124 } as const 125 126 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 127 // AssetReceiver 128 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 129 130 /** 131 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 132 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 133 */ 134 export const assetReceiverABI = [ 135 { 136 stateMutability: 'nonpayable', 137 type: 'constructor', 138 inputs: [{ name: '_owner', internalType: 'address', type: 'address' }], 139 }, 140 { 141 type: 'event', 142 anonymous: false, 143 inputs: [ 144 { name: 'user', internalType: 'address', type: 'address', indexed: true }, 145 { 146 name: 'newOwner', 147 internalType: 'address', 148 type: 'address', 149 indexed: true, 150 }, 151 ], 152 name: 'OwnerUpdated', 153 }, 154 { 155 type: 'event', 156 anonymous: false, 157 inputs: [ 158 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 159 { 160 name: 'amount', 161 internalType: 'uint256', 162 type: 'uint256', 163 indexed: false, 164 }, 165 ], 166 name: 'ReceivedETH', 167 }, 168 { 169 type: 'event', 170 anonymous: false, 171 inputs: [ 172 { 173 name: 'withdrawer', 174 internalType: 'address', 175 type: 'address', 176 indexed: true, 177 }, 178 { 179 name: 'recipient', 180 internalType: 'address', 181 type: 'address', 182 indexed: true, 183 }, 184 { 185 name: 'asset', 186 internalType: 'address', 187 type: 'address', 188 indexed: true, 189 }, 190 { 191 name: 'amount', 192 internalType: 'uint256', 193 type: 'uint256', 194 indexed: false, 195 }, 196 ], 197 name: 'WithdrewERC20', 198 }, 199 { 200 type: 'event', 201 anonymous: false, 202 inputs: [ 203 { 204 name: 'withdrawer', 205 internalType: 'address', 206 type: 'address', 207 indexed: true, 208 }, 209 { 210 name: 'recipient', 211 internalType: 'address', 212 type: 'address', 213 indexed: true, 214 }, 215 { 216 name: 'asset', 217 internalType: 'address', 218 type: 'address', 219 indexed: true, 220 }, 221 { name: 'id', internalType: 'uint256', type: 'uint256', indexed: false }, 222 ], 223 name: 'WithdrewERC721', 224 }, 225 { 226 type: 'event', 227 anonymous: false, 228 inputs: [ 229 { 230 name: 'withdrawer', 231 internalType: 'address', 232 type: 'address', 233 indexed: true, 234 }, 235 { 236 name: 'recipient', 237 internalType: 'address', 238 type: 'address', 239 indexed: true, 240 }, 241 { 242 name: 'amount', 243 internalType: 'uint256', 244 type: 'uint256', 245 indexed: false, 246 }, 247 ], 248 name: 'WithdrewETH', 249 }, 250 { 251 stateMutability: 'payable', 252 type: 'function', 253 inputs: [ 254 { name: '_target', internalType: 'address', type: 'address' }, 255 { name: '_data', internalType: 'bytes', type: 'bytes' }, 256 { name: '_gas', internalType: 'uint256', type: 'uint256' }, 257 { name: '_value', internalType: 'uint256', type: 'uint256' }, 258 ], 259 name: 'CALL', 260 outputs: [ 261 { name: '', internalType: 'bool', type: 'bool' }, 262 { name: '', internalType: 'bytes', type: 'bytes' }, 263 ], 264 }, 265 { 266 stateMutability: 'payable', 267 type: 'function', 268 inputs: [ 269 { name: '_target', internalType: 'address', type: 'address' }, 270 { name: '_data', internalType: 'bytes', type: 'bytes' }, 271 { name: '_gas', internalType: 'uint256', type: 'uint256' }, 272 ], 273 name: 'DELEGATECALL', 274 outputs: [ 275 { name: '', internalType: 'bool', type: 'bool' }, 276 { name: '', internalType: 'bytes', type: 'bytes' }, 277 ], 278 }, 279 { 280 stateMutability: 'view', 281 type: 'function', 282 inputs: [], 283 name: 'owner', 284 outputs: [{ name: '', internalType: 'address', type: 'address' }], 285 }, 286 { 287 stateMutability: 'nonpayable', 288 type: 'function', 289 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 290 name: 'setOwner', 291 outputs: [], 292 }, 293 { 294 stateMutability: 'nonpayable', 295 type: 'function', 296 inputs: [ 297 { name: '_asset', internalType: 'contract ERC20', type: 'address' }, 298 { name: '_to', internalType: 'address', type: 'address' }, 299 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 300 ], 301 name: 'withdrawERC20', 302 outputs: [], 303 }, 304 { 305 stateMutability: 'nonpayable', 306 type: 'function', 307 inputs: [ 308 { name: '_asset', internalType: 'contract ERC20', type: 'address' }, 309 { name: '_to', internalType: 'address', type: 'address' }, 310 ], 311 name: 'withdrawERC20', 312 outputs: [], 313 }, 314 { 315 stateMutability: 'nonpayable', 316 type: 'function', 317 inputs: [ 318 { name: '_asset', internalType: 'contract ERC721', type: 'address' }, 319 { name: '_to', internalType: 'address', type: 'address' }, 320 { name: '_id', internalType: 'uint256', type: 'uint256' }, 321 ], 322 name: 'withdrawERC721', 323 outputs: [], 324 }, 325 { 326 stateMutability: 'nonpayable', 327 type: 'function', 328 inputs: [ 329 { name: '_to', internalType: 'address payable', type: 'address' }, 330 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 331 ], 332 name: 'withdrawETH', 333 outputs: [], 334 }, 335 { 336 stateMutability: 'nonpayable', 337 type: 'function', 338 inputs: [{ name: '_to', internalType: 'address payable', type: 'address' }], 339 name: 'withdrawETH', 340 outputs: [], 341 }, 342 { stateMutability: 'payable', type: 'receive' }, 343 ] as const 344 345 /** 346 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 347 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 348 */ 349 export const assetReceiverAddress = { 350 1: '0x15DdA60616Ffca20371ED1659dBB78E888f65556', 351 10: '0x15DdA60616Ffca20371ED1659dBB78E888f65556', 352 } as const 353 354 /** 355 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 356 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 357 */ 358 export const assetReceiverConfig = { 359 address: assetReceiverAddress, 360 abi: assetReceiverABI, 361 } as const 362 363 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 364 // AttestationStation 365 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 366 367 /** 368 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 369 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 370 */ 371 export const attestationStationABI = [ 372 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 373 { 374 type: 'event', 375 anonymous: false, 376 inputs: [ 377 { 378 name: 'creator', 379 internalType: 'address', 380 type: 'address', 381 indexed: true, 382 }, 383 { 384 name: 'about', 385 internalType: 'address', 386 type: 'address', 387 indexed: true, 388 }, 389 { name: 'key', internalType: 'bytes32', type: 'bytes32', indexed: true }, 390 { name: 'val', internalType: 'bytes', type: 'bytes', indexed: false }, 391 ], 392 name: 'AttestationCreated', 393 }, 394 { 395 stateMutability: 'nonpayable', 396 type: 'function', 397 inputs: [ 398 { 399 name: '_attestations', 400 internalType: 'struct AttestationStation.AttestationData[]', 401 type: 'tuple[]', 402 components: [ 403 { name: 'about', internalType: 'address', type: 'address' }, 404 { name: 'key', internalType: 'bytes32', type: 'bytes32' }, 405 { name: 'val', internalType: 'bytes', type: 'bytes' }, 406 ], 407 }, 408 ], 409 name: 'attest', 410 outputs: [], 411 }, 412 { 413 stateMutability: 'nonpayable', 414 type: 'function', 415 inputs: [ 416 { name: '_about', internalType: 'address', type: 'address' }, 417 { name: '_key', internalType: 'bytes32', type: 'bytes32' }, 418 { name: '_val', internalType: 'bytes', type: 'bytes' }, 419 ], 420 name: 'attest', 421 outputs: [], 422 }, 423 { 424 stateMutability: 'view', 425 type: 'function', 426 inputs: [ 427 { name: '', internalType: 'address', type: 'address' }, 428 { name: '', internalType: 'address', type: 'address' }, 429 { name: '', internalType: 'bytes32', type: 'bytes32' }, 430 ], 431 name: 'attestations', 432 outputs: [{ name: '', internalType: 'bytes', type: 'bytes' }], 433 }, 434 { 435 stateMutability: 'view', 436 type: 'function', 437 inputs: [], 438 name: 'version', 439 outputs: [{ name: '', internalType: 'string', type: 'string' }], 440 }, 441 ] as const 442 443 /** 444 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 445 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 446 */ 447 export const attestationStationAddress = { 448 10: '0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77', 449 420: '0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77', 450 } as const 451 452 /** 453 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 454 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 455 */ 456 export const attestationStationConfig = { 457 address: attestationStationAddress, 458 abi: attestationStationABI, 459 } as const 460 461 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 462 // BaseFeeVault 463 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 464 465 /** 466 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000019) 467 */ 468 export const baseFeeVaultABI = [ 469 { 470 stateMutability: 'nonpayable', 471 type: 'constructor', 472 inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }], 473 }, 474 { 475 type: 'event', 476 anonymous: false, 477 inputs: [ 478 { 479 name: 'value', 480 internalType: 'uint256', 481 type: 'uint256', 482 indexed: false, 483 }, 484 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 485 { 486 name: 'from', 487 internalType: 'address', 488 type: 'address', 489 indexed: false, 490 }, 491 ], 492 name: 'Withdrawal', 493 }, 494 { 495 stateMutability: 'view', 496 type: 'function', 497 inputs: [], 498 name: 'MIN_WITHDRAWAL_AMOUNT', 499 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 500 }, 501 { 502 stateMutability: 'view', 503 type: 'function', 504 inputs: [], 505 name: 'RECIPIENT', 506 outputs: [{ name: '', internalType: 'address', type: 'address' }], 507 }, 508 { 509 stateMutability: 'view', 510 type: 'function', 511 inputs: [], 512 name: 'totalProcessed', 513 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 514 }, 515 { 516 stateMutability: 'view', 517 type: 'function', 518 inputs: [], 519 name: 'version', 520 outputs: [{ name: '', internalType: 'string', type: 'string' }], 521 }, 522 { 523 stateMutability: 'nonpayable', 524 type: 'function', 525 inputs: [], 526 name: 'withdraw', 527 outputs: [], 528 }, 529 { stateMutability: 'payable', type: 'receive' }, 530 ] as const 531 532 /** 533 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000019) 534 */ 535 export const baseFeeVaultAddress = { 536 420: '0x4200000000000000000000000000000000000019', 537 } as const 538 539 /** 540 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000019) 541 */ 542 export const baseFeeVaultConfig = { 543 address: baseFeeVaultAddress, 544 abi: baseFeeVaultABI, 545 } as const 546 547 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 548 // CheckBalanceHigh 549 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 550 551 /** 552 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F) 553 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F) 554 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5d7103853f12109A7d27F118e54BbC654ad847E9) 555 */ 556 export const checkBalanceHighABI = [ 557 { 558 type: 'event', 559 anonymous: false, 560 inputs: [ 561 { 562 name: 'params', 563 internalType: 'struct CheckBalanceHigh.Params', 564 type: 'tuple', 565 components: [ 566 { name: 'target', internalType: 'address', type: 'address' }, 567 { name: 'threshold', internalType: 'uint256', type: 'uint256' }, 568 ], 569 indexed: false, 570 }, 571 ], 572 name: '_EventToExposeStructInABI__Params', 573 }, 574 { 575 stateMutability: 'view', 576 type: 'function', 577 inputs: [{ name: '_params', internalType: 'bytes', type: 'bytes' }], 578 name: 'check', 579 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 580 }, 581 ] as const 582 583 /** 584 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F) 585 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F) 586 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5d7103853f12109A7d27F118e54BbC654ad847E9) 587 */ 588 export const checkBalanceHighAddress = { 589 1: '0x7eC64a8a591bFf829ff6C8be76074D540ACb813F', 590 5: '0x7eC64a8a591bFf829ff6C8be76074D540ACb813F', 591 420: '0x5d7103853f12109A7d27F118e54BbC654ad847E9', 592 } as const 593 594 /** 595 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F) 596 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F) 597 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5d7103853f12109A7d27F118e54BbC654ad847E9) 598 */ 599 export const checkBalanceHighConfig = { 600 address: checkBalanceHighAddress, 601 abi: checkBalanceHighABI, 602 } as const 603 604 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 605 // CheckBalanceLow 606 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 607 608 /** 609 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640) 610 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640) 611 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x7Ce13D154FAEE5C8B3E6b19d4Add16f21d884474) 612 */ 613 export const checkBalanceLowABI = [ 614 { 615 type: 'event', 616 anonymous: false, 617 inputs: [ 618 { 619 name: 'params', 620 internalType: 'struct CheckBalanceLow.Params', 621 type: 'tuple', 622 components: [ 623 { name: 'target', internalType: 'address', type: 'address' }, 624 { name: 'threshold', internalType: 'uint256', type: 'uint256' }, 625 ], 626 indexed: false, 627 }, 628 ], 629 name: '_EventToExposeStructInABI__Params', 630 }, 631 { 632 stateMutability: 'view', 633 type: 'function', 634 inputs: [{ name: '_params', internalType: 'bytes', type: 'bytes' }], 635 name: 'check', 636 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 637 }, 638 ] as const 639 640 /** 641 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640) 642 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640) 643 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x7Ce13D154FAEE5C8B3E6b19d4Add16f21d884474) 644 */ 645 export const checkBalanceLowAddress = { 646 1: '0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640', 647 5: '0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640', 648 420: '0x7Ce13D154FAEE5C8B3E6b19d4Add16f21d884474', 649 } as const 650 651 /** 652 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640) 653 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640) 654 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x7Ce13D154FAEE5C8B3E6b19d4Add16f21d884474) 655 */ 656 export const checkBalanceLowConfig = { 657 address: checkBalanceLowAddress, 658 abi: checkBalanceLowABI, 659 } as const 660 661 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 662 // CheckGelatoLow 663 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 664 665 /** 666 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa) 667 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa) 668 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xF9c8a4Cb4021f57F9f6d69799cA9BefF64524862) 669 */ 670 export const checkGelatoLowABI = [ 671 { 672 type: 'event', 673 anonymous: false, 674 inputs: [ 675 { 676 name: 'params', 677 internalType: 'struct CheckGelatoLow.Params', 678 type: 'tuple', 679 components: [ 680 { name: 'treasury', internalType: 'address', type: 'address' }, 681 { name: 'threshold', internalType: 'uint256', type: 'uint256' }, 682 { name: 'recipient', internalType: 'address', type: 'address' }, 683 ], 684 indexed: false, 685 }, 686 ], 687 name: '_EventToExposeStructInABI__Params', 688 }, 689 { 690 stateMutability: 'view', 691 type: 'function', 692 inputs: [{ name: '_params', internalType: 'bytes', type: 'bytes' }], 693 name: 'check', 694 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 695 }, 696 ] as const 697 698 /** 699 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa) 700 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa) 701 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xF9c8a4Cb4021f57F9f6d69799cA9BefF64524862) 702 */ 703 export const checkGelatoLowAddress = { 704 1: '0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa', 705 5: '0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa', 706 420: '0xF9c8a4Cb4021f57F9f6d69799cA9BefF64524862', 707 } as const 708 709 /** 710 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa) 711 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa) 712 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xF9c8a4Cb4021f57F9f6d69799cA9BefF64524862) 713 */ 714 export const checkGelatoLowConfig = { 715 address: checkGelatoLowAddress, 716 abi: checkGelatoLowABI, 717 } as const 718 719 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 720 // CheckTrue 721 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 722 723 /** 724 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D) 725 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D) 726 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x47443D0C184e022F19BD1578F5bca6B8a9F58E32) 727 */ 728 export const checkTrueABI = [ 729 { 730 stateMutability: 'pure', 731 type: 'function', 732 inputs: [{ name: '', internalType: 'bytes', type: 'bytes' }], 733 name: 'check', 734 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 735 }, 736 ] as const 737 738 /** 739 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D) 740 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D) 741 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x47443D0C184e022F19BD1578F5bca6B8a9F58E32) 742 */ 743 export const checkTrueAddress = { 744 1: '0x5c741a38cb11424711231777D71689C458eE835D', 745 5: '0x5c741a38cb11424711231777D71689C458eE835D', 746 420: '0x47443D0C184e022F19BD1578F5bca6B8a9F58E32', 747 } as const 748 749 /** 750 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D) 751 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D) 752 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x47443D0C184e022F19BD1578F5bca6B8a9F58E32) 753 */ 754 export const checkTrueConfig = { 755 address: checkTrueAddress, 756 abi: checkTrueABI, 757 } as const 758 759 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 760 // Drippie 761 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 762 763 /** 764 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 765 */ 766 export const drippieABI = [ 767 { 768 stateMutability: 'nonpayable', 769 type: 'constructor', 770 inputs: [{ name: '_owner', internalType: 'address', type: 'address' }], 771 }, 772 { 773 type: 'event', 774 anonymous: false, 775 inputs: [ 776 { 777 name: 'nameref', 778 internalType: 'string', 779 type: 'string', 780 indexed: true, 781 }, 782 { name: 'name', internalType: 'string', type: 'string', indexed: false }, 783 { 784 name: 'config', 785 internalType: 'struct Drippie.DripConfig', 786 type: 'tuple', 787 components: [ 788 { name: 'reentrant', internalType: 'bool', type: 'bool' }, 789 { name: 'interval', internalType: 'uint256', type: 'uint256' }, 790 { 791 name: 'dripcheck', 792 internalType: 'contract IDripCheck', 793 type: 'address', 794 }, 795 { name: 'checkparams', internalType: 'bytes', type: 'bytes' }, 796 { 797 name: 'actions', 798 internalType: 'struct Drippie.DripAction[]', 799 type: 'tuple[]', 800 components: [ 801 { 802 name: 'target', 803 internalType: 'address payable', 804 type: 'address', 805 }, 806 { name: 'data', internalType: 'bytes', type: 'bytes' }, 807 { name: 'value', internalType: 'uint256', type: 'uint256' }, 808 ], 809 }, 810 ], 811 indexed: false, 812 }, 813 ], 814 name: 'DripCreated', 815 }, 816 { 817 type: 'event', 818 anonymous: false, 819 inputs: [ 820 { 821 name: 'nameref', 822 internalType: 'string', 823 type: 'string', 824 indexed: true, 825 }, 826 { name: 'name', internalType: 'string', type: 'string', indexed: false }, 827 { 828 name: 'executor', 829 internalType: 'address', 830 type: 'address', 831 indexed: false, 832 }, 833 { 834 name: 'timestamp', 835 internalType: 'uint256', 836 type: 'uint256', 837 indexed: false, 838 }, 839 ], 840 name: 'DripExecuted', 841 }, 842 { 843 type: 'event', 844 anonymous: false, 845 inputs: [ 846 { 847 name: 'nameref', 848 internalType: 'string', 849 type: 'string', 850 indexed: true, 851 }, 852 { name: 'name', internalType: 'string', type: 'string', indexed: false }, 853 { 854 name: 'status', 855 internalType: 'enum Drippie.DripStatus', 856 type: 'uint8', 857 indexed: false, 858 }, 859 ], 860 name: 'DripStatusUpdated', 861 }, 862 { 863 type: 'event', 864 anonymous: false, 865 inputs: [ 866 { name: 'user', internalType: 'address', type: 'address', indexed: true }, 867 { 868 name: 'newOwner', 869 internalType: 'address', 870 type: 'address', 871 indexed: true, 872 }, 873 ], 874 name: 'OwnerUpdated', 875 }, 876 { 877 type: 'event', 878 anonymous: false, 879 inputs: [ 880 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 881 { 882 name: 'amount', 883 internalType: 'uint256', 884 type: 'uint256', 885 indexed: false, 886 }, 887 ], 888 name: 'ReceivedETH', 889 }, 890 { 891 type: 'event', 892 anonymous: false, 893 inputs: [ 894 { 895 name: 'withdrawer', 896 internalType: 'address', 897 type: 'address', 898 indexed: true, 899 }, 900 { 901 name: 'recipient', 902 internalType: 'address', 903 type: 'address', 904 indexed: true, 905 }, 906 { 907 name: 'asset', 908 internalType: 'address', 909 type: 'address', 910 indexed: true, 911 }, 912 { 913 name: 'amount', 914 internalType: 'uint256', 915 type: 'uint256', 916 indexed: false, 917 }, 918 ], 919 name: 'WithdrewERC20', 920 }, 921 { 922 type: 'event', 923 anonymous: false, 924 inputs: [ 925 { 926 name: 'withdrawer', 927 internalType: 'address', 928 type: 'address', 929 indexed: true, 930 }, 931 { 932 name: 'recipient', 933 internalType: 'address', 934 type: 'address', 935 indexed: true, 936 }, 937 { 938 name: 'asset', 939 internalType: 'address', 940 type: 'address', 941 indexed: true, 942 }, 943 { name: 'id', internalType: 'uint256', type: 'uint256', indexed: false }, 944 ], 945 name: 'WithdrewERC721', 946 }, 947 { 948 type: 'event', 949 anonymous: false, 950 inputs: [ 951 { 952 name: 'withdrawer', 953 internalType: 'address', 954 type: 'address', 955 indexed: true, 956 }, 957 { 958 name: 'recipient', 959 internalType: 'address', 960 type: 'address', 961 indexed: true, 962 }, 963 { 964 name: 'amount', 965 internalType: 'uint256', 966 type: 'uint256', 967 indexed: false, 968 }, 969 ], 970 name: 'WithdrewETH', 971 }, 972 { 973 stateMutability: 'payable', 974 type: 'function', 975 inputs: [ 976 { name: '_target', internalType: 'address', type: 'address' }, 977 { name: '_data', internalType: 'bytes', type: 'bytes' }, 978 { name: '_value', internalType: 'uint256', type: 'uint256' }, 979 ], 980 name: 'CALL', 981 outputs: [ 982 { name: '', internalType: 'bool', type: 'bool' }, 983 { name: '', internalType: 'bytes', type: 'bytes' }, 984 ], 985 }, 986 { 987 stateMutability: 'payable', 988 type: 'function', 989 inputs: [ 990 { name: '_target', internalType: 'address', type: 'address' }, 991 { name: '_data', internalType: 'bytes', type: 'bytes' }, 992 ], 993 name: 'DELEGATECALL', 994 outputs: [ 995 { name: '', internalType: 'bool', type: 'bool' }, 996 { name: '', internalType: 'bytes', type: 'bytes' }, 997 ], 998 }, 999 { 1000 stateMutability: 'nonpayable', 1001 type: 'function', 1002 inputs: [ 1003 { name: '_name', internalType: 'string', type: 'string' }, 1004 { 1005 name: '_config', 1006 internalType: 'struct Drippie.DripConfig', 1007 type: 'tuple', 1008 components: [ 1009 { name: 'reentrant', internalType: 'bool', type: 'bool' }, 1010 { name: 'interval', internalType: 'uint256', type: 'uint256' }, 1011 { 1012 name: 'dripcheck', 1013 internalType: 'contract IDripCheck', 1014 type: 'address', 1015 }, 1016 { name: 'checkparams', internalType: 'bytes', type: 'bytes' }, 1017 { 1018 name: 'actions', 1019 internalType: 'struct Drippie.DripAction[]', 1020 type: 'tuple[]', 1021 components: [ 1022 { 1023 name: 'target', 1024 internalType: 'address payable', 1025 type: 'address', 1026 }, 1027 { name: 'data', internalType: 'bytes', type: 'bytes' }, 1028 { name: 'value', internalType: 'uint256', type: 'uint256' }, 1029 ], 1030 }, 1031 ], 1032 }, 1033 ], 1034 name: 'create', 1035 outputs: [], 1036 }, 1037 { 1038 stateMutability: 'nonpayable', 1039 type: 'function', 1040 inputs: [{ name: '_name', internalType: 'string', type: 'string' }], 1041 name: 'drip', 1042 outputs: [], 1043 }, 1044 { 1045 stateMutability: 'view', 1046 type: 'function', 1047 inputs: [{ name: '', internalType: 'string', type: 'string' }], 1048 name: 'drips', 1049 outputs: [ 1050 { 1051 name: 'status', 1052 internalType: 'enum Drippie.DripStatus', 1053 type: 'uint8', 1054 }, 1055 { 1056 name: 'config', 1057 internalType: 'struct Drippie.DripConfig', 1058 type: 'tuple', 1059 components: [ 1060 { name: 'reentrant', internalType: 'bool', type: 'bool' }, 1061 { name: 'interval', internalType: 'uint256', type: 'uint256' }, 1062 { 1063 name: 'dripcheck', 1064 internalType: 'contract IDripCheck', 1065 type: 'address', 1066 }, 1067 { name: 'checkparams', internalType: 'bytes', type: 'bytes' }, 1068 { 1069 name: 'actions', 1070 internalType: 'struct Drippie.DripAction[]', 1071 type: 'tuple[]', 1072 components: [ 1073 { 1074 name: 'target', 1075 internalType: 'address payable', 1076 type: 'address', 1077 }, 1078 { name: 'data', internalType: 'bytes', type: 'bytes' }, 1079 { name: 'value', internalType: 'uint256', type: 'uint256' }, 1080 ], 1081 }, 1082 ], 1083 }, 1084 { name: 'last', internalType: 'uint256', type: 'uint256' }, 1085 { name: 'count', internalType: 'uint256', type: 'uint256' }, 1086 ], 1087 }, 1088 { 1089 stateMutability: 'view', 1090 type: 'function', 1091 inputs: [{ name: '_name', internalType: 'string', type: 'string' }], 1092 name: 'executable', 1093 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 1094 }, 1095 { 1096 stateMutability: 'view', 1097 type: 'function', 1098 inputs: [], 1099 name: 'owner', 1100 outputs: [{ name: '', internalType: 'address', type: 'address' }], 1101 }, 1102 { 1103 stateMutability: 'nonpayable', 1104 type: 'function', 1105 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 1106 name: 'setOwner', 1107 outputs: [], 1108 }, 1109 { 1110 stateMutability: 'nonpayable', 1111 type: 'function', 1112 inputs: [ 1113 { name: '_name', internalType: 'string', type: 'string' }, 1114 { 1115 name: '_status', 1116 internalType: 'enum Drippie.DripStatus', 1117 type: 'uint8', 1118 }, 1119 ], 1120 name: 'status', 1121 outputs: [], 1122 }, 1123 { 1124 stateMutability: 'nonpayable', 1125 type: 'function', 1126 inputs: [ 1127 { name: '_asset', internalType: 'contract ERC20', type: 'address' }, 1128 { name: '_to', internalType: 'address', type: 'address' }, 1129 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 1130 ], 1131 name: 'withdrawERC20', 1132 outputs: [], 1133 }, 1134 { 1135 stateMutability: 'nonpayable', 1136 type: 'function', 1137 inputs: [ 1138 { name: '_asset', internalType: 'contract ERC20', type: 'address' }, 1139 { name: '_to', internalType: 'address', type: 'address' }, 1140 ], 1141 name: 'withdrawERC20', 1142 outputs: [], 1143 }, 1144 { 1145 stateMutability: 'nonpayable', 1146 type: 'function', 1147 inputs: [ 1148 { name: '_asset', internalType: 'contract ERC721', type: 'address' }, 1149 { name: '_to', internalType: 'address', type: 'address' }, 1150 { name: '_id', internalType: 'uint256', type: 'uint256' }, 1151 ], 1152 name: 'withdrawERC721', 1153 outputs: [], 1154 }, 1155 { 1156 stateMutability: 'nonpayable', 1157 type: 'function', 1158 inputs: [ 1159 { name: '_to', internalType: 'address payable', type: 'address' }, 1160 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 1161 ], 1162 name: 'withdrawETH', 1163 outputs: [], 1164 }, 1165 { 1166 stateMutability: 'nonpayable', 1167 type: 'function', 1168 inputs: [{ name: '_to', internalType: 'address payable', type: 'address' }], 1169 name: 'withdrawETH', 1170 outputs: [], 1171 }, 1172 { stateMutability: 'payable', type: 'receive' }, 1173 ] as const 1174 1175 /** 1176 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 1177 */ 1178 export const drippieAddress = { 1179 1: '0x44b3A2a040057eBafC601A78647e805fd58B1f50', 1180 } as const 1181 1182 /** 1183 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 1184 */ 1185 export const drippieConfig = { 1186 address: drippieAddress, 1187 abi: drippieABI, 1188 } as const 1189 1190 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 1191 // Drippie_goerli 1192 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 1193 1194 /** 1195 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 1196 */ 1197 export const drippieGoerliABI = [ 1198 { 1199 stateMutability: 'nonpayable', 1200 type: 'constructor', 1201 inputs: [{ name: '_owner', internalType: 'address', type: 'address' }], 1202 }, 1203 { 1204 type: 'event', 1205 anonymous: false, 1206 inputs: [ 1207 { 1208 name: 'nameref', 1209 internalType: 'string', 1210 type: 'string', 1211 indexed: true, 1212 }, 1213 { name: 'name', internalType: 'string', type: 'string', indexed: false }, 1214 { 1215 name: 'config', 1216 internalType: 'struct Drippie.DripConfig', 1217 type: 'tuple', 1218 components: [ 1219 { name: 'reentrant', internalType: 'bool', type: 'bool' }, 1220 { name: 'interval', internalType: 'uint256', type: 'uint256' }, 1221 { 1222 name: 'dripcheck', 1223 internalType: 'contract IDripCheck', 1224 type: 'address', 1225 }, 1226 { name: 'checkparams', internalType: 'bytes', type: 'bytes' }, 1227 { 1228 name: 'actions', 1229 internalType: 'struct Drippie.DripAction[]', 1230 type: 'tuple[]', 1231 components: [ 1232 { 1233 name: 'target', 1234 internalType: 'address payable', 1235 type: 'address', 1236 }, 1237 { name: 'data', internalType: 'bytes', type: 'bytes' }, 1238 { name: 'value', internalType: 'uint256', type: 'uint256' }, 1239 ], 1240 }, 1241 ], 1242 indexed: false, 1243 }, 1244 ], 1245 name: 'DripCreated', 1246 }, 1247 { 1248 type: 'event', 1249 anonymous: false, 1250 inputs: [ 1251 { 1252 name: 'nameref', 1253 internalType: 'string', 1254 type: 'string', 1255 indexed: true, 1256 }, 1257 { name: 'name', internalType: 'string', type: 'string', indexed: false }, 1258 { 1259 name: 'executor', 1260 internalType: 'address', 1261 type: 'address', 1262 indexed: false, 1263 }, 1264 { 1265 name: 'timestamp', 1266 internalType: 'uint256', 1267 type: 'uint256', 1268 indexed: false, 1269 }, 1270 ], 1271 name: 'DripExecuted', 1272 }, 1273 { 1274 type: 'event', 1275 anonymous: false, 1276 inputs: [ 1277 { 1278 name: 'nameref', 1279 internalType: 'string', 1280 type: 'string', 1281 indexed: true, 1282 }, 1283 { name: 'name', internalType: 'string', type: 'string', indexed: false }, 1284 { 1285 name: 'status', 1286 internalType: 'enum Drippie.DripStatus', 1287 type: 'uint8', 1288 indexed: false, 1289 }, 1290 ], 1291 name: 'DripStatusUpdated', 1292 }, 1293 { 1294 type: 'event', 1295 anonymous: false, 1296 inputs: [ 1297 { name: 'user', internalType: 'address', type: 'address', indexed: true }, 1298 { 1299 name: 'newOwner', 1300 internalType: 'address', 1301 type: 'address', 1302 indexed: true, 1303 }, 1304 ], 1305 name: 'OwnerUpdated', 1306 }, 1307 { 1308 type: 'event', 1309 anonymous: false, 1310 inputs: [ 1311 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 1312 { 1313 name: 'amount', 1314 internalType: 'uint256', 1315 type: 'uint256', 1316 indexed: false, 1317 }, 1318 ], 1319 name: 'ReceivedETH', 1320 }, 1321 { 1322 type: 'event', 1323 anonymous: false, 1324 inputs: [ 1325 { 1326 name: 'withdrawer', 1327 internalType: 'address', 1328 type: 'address', 1329 indexed: true, 1330 }, 1331 { 1332 name: 'recipient', 1333 internalType: 'address', 1334 type: 'address', 1335 indexed: true, 1336 }, 1337 { 1338 name: 'asset', 1339 internalType: 'address', 1340 type: 'address', 1341 indexed: true, 1342 }, 1343 { 1344 name: 'amount', 1345 internalType: 'uint256', 1346 type: 'uint256', 1347 indexed: false, 1348 }, 1349 ], 1350 name: 'WithdrewERC20', 1351 }, 1352 { 1353 type: 'event', 1354 anonymous: false, 1355 inputs: [ 1356 { 1357 name: 'withdrawer', 1358 internalType: 'address', 1359 type: 'address', 1360 indexed: true, 1361 }, 1362 { 1363 name: 'recipient', 1364 internalType: 'address', 1365 type: 'address', 1366 indexed: true, 1367 }, 1368 { 1369 name: 'asset', 1370 internalType: 'address', 1371 type: 'address', 1372 indexed: true, 1373 }, 1374 { name: 'id', internalType: 'uint256', type: 'uint256', indexed: false }, 1375 ], 1376 name: 'WithdrewERC721', 1377 }, 1378 { 1379 type: 'event', 1380 anonymous: false, 1381 inputs: [ 1382 { 1383 name: 'withdrawer', 1384 internalType: 'address', 1385 type: 'address', 1386 indexed: true, 1387 }, 1388 { 1389 name: 'recipient', 1390 internalType: 'address', 1391 type: 'address', 1392 indexed: true, 1393 }, 1394 { 1395 name: 'amount', 1396 internalType: 'uint256', 1397 type: 'uint256', 1398 indexed: false, 1399 }, 1400 ], 1401 name: 'WithdrewETH', 1402 }, 1403 { 1404 stateMutability: 'payable', 1405 type: 'function', 1406 inputs: [ 1407 { name: '_target', internalType: 'address', type: 'address' }, 1408 { name: '_data', internalType: 'bytes', type: 'bytes' }, 1409 { name: '_value', internalType: 'uint256', type: 'uint256' }, 1410 ], 1411 name: 'CALL', 1412 outputs: [ 1413 { name: '', internalType: 'bool', type: 'bool' }, 1414 { name: '', internalType: 'bytes', type: 'bytes' }, 1415 ], 1416 }, 1417 { 1418 stateMutability: 'payable', 1419 type: 'function', 1420 inputs: [ 1421 { name: '_target', internalType: 'address', type: 'address' }, 1422 { name: '_data', internalType: 'bytes', type: 'bytes' }, 1423 ], 1424 name: 'DELEGATECALL', 1425 outputs: [ 1426 { name: '', internalType: 'bool', type: 'bool' }, 1427 { name: '', internalType: 'bytes', type: 'bytes' }, 1428 ], 1429 }, 1430 { 1431 stateMutability: 'nonpayable', 1432 type: 'function', 1433 inputs: [ 1434 { name: '_name', internalType: 'string', type: 'string' }, 1435 { 1436 name: '_config', 1437 internalType: 'struct Drippie.DripConfig', 1438 type: 'tuple', 1439 components: [ 1440 { name: 'reentrant', internalType: 'bool', type: 'bool' }, 1441 { name: 'interval', internalType: 'uint256', type: 'uint256' }, 1442 { 1443 name: 'dripcheck', 1444 internalType: 'contract IDripCheck', 1445 type: 'address', 1446 }, 1447 { name: 'checkparams', internalType: 'bytes', type: 'bytes' }, 1448 { 1449 name: 'actions', 1450 internalType: 'struct Drippie.DripAction[]', 1451 type: 'tuple[]', 1452 components: [ 1453 { 1454 name: 'target', 1455 internalType: 'address payable', 1456 type: 'address', 1457 }, 1458 { name: 'data', internalType: 'bytes', type: 'bytes' }, 1459 { name: 'value', internalType: 'uint256', type: 'uint256' }, 1460 ], 1461 }, 1462 ], 1463 }, 1464 ], 1465 name: 'create', 1466 outputs: [], 1467 }, 1468 { 1469 stateMutability: 'nonpayable', 1470 type: 'function', 1471 inputs: [{ name: '_name', internalType: 'string', type: 'string' }], 1472 name: 'drip', 1473 outputs: [], 1474 }, 1475 { 1476 stateMutability: 'view', 1477 type: 'function', 1478 inputs: [{ name: '', internalType: 'string', type: 'string' }], 1479 name: 'drips', 1480 outputs: [ 1481 { 1482 name: 'status', 1483 internalType: 'enum Drippie.DripStatus', 1484 type: 'uint8', 1485 }, 1486 { 1487 name: 'config', 1488 internalType: 'struct Drippie.DripConfig', 1489 type: 'tuple', 1490 components: [ 1491 { name: 'reentrant', internalType: 'bool', type: 'bool' }, 1492 { name: 'interval', internalType: 'uint256', type: 'uint256' }, 1493 { 1494 name: 'dripcheck', 1495 internalType: 'contract IDripCheck', 1496 type: 'address', 1497 }, 1498 { name: 'checkparams', internalType: 'bytes', type: 'bytes' }, 1499 { 1500 name: 'actions', 1501 internalType: 'struct Drippie.DripAction[]', 1502 type: 'tuple[]', 1503 components: [ 1504 { 1505 name: 'target', 1506 internalType: 'address payable', 1507 type: 'address', 1508 }, 1509 { name: 'data', internalType: 'bytes', type: 'bytes' }, 1510 { name: 'value', internalType: 'uint256', type: 'uint256' }, 1511 ], 1512 }, 1513 ], 1514 }, 1515 { name: 'last', internalType: 'uint256', type: 'uint256' }, 1516 { name: 'count', internalType: 'uint256', type: 'uint256' }, 1517 ], 1518 }, 1519 { 1520 stateMutability: 'view', 1521 type: 'function', 1522 inputs: [{ name: '_name', internalType: 'string', type: 'string' }], 1523 name: 'executable', 1524 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 1525 }, 1526 { 1527 stateMutability: 'view', 1528 type: 'function', 1529 inputs: [], 1530 name: 'owner', 1531 outputs: [{ name: '', internalType: 'address', type: 'address' }], 1532 }, 1533 { 1534 stateMutability: 'nonpayable', 1535 type: 'function', 1536 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 1537 name: 'setOwner', 1538 outputs: [], 1539 }, 1540 { 1541 stateMutability: 'nonpayable', 1542 type: 'function', 1543 inputs: [ 1544 { name: '_name', internalType: 'string', type: 'string' }, 1545 { 1546 name: '_status', 1547 internalType: 'enum Drippie.DripStatus', 1548 type: 'uint8', 1549 }, 1550 ], 1551 name: 'status', 1552 outputs: [], 1553 }, 1554 { 1555 stateMutability: 'nonpayable', 1556 type: 'function', 1557 inputs: [ 1558 { name: '_asset', internalType: 'contract ERC20', type: 'address' }, 1559 { name: '_to', internalType: 'address', type: 'address' }, 1560 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 1561 ], 1562 name: 'withdrawERC20', 1563 outputs: [], 1564 }, 1565 { 1566 stateMutability: 'nonpayable', 1567 type: 'function', 1568 inputs: [ 1569 { name: '_asset', internalType: 'contract ERC20', type: 'address' }, 1570 { name: '_to', internalType: 'address', type: 'address' }, 1571 ], 1572 name: 'withdrawERC20', 1573 outputs: [], 1574 }, 1575 { 1576 stateMutability: 'nonpayable', 1577 type: 'function', 1578 inputs: [ 1579 { name: '_asset', internalType: 'contract ERC721', type: 'address' }, 1580 { name: '_to', internalType: 'address', type: 'address' }, 1581 { name: '_id', internalType: 'uint256', type: 'uint256' }, 1582 ], 1583 name: 'withdrawERC721', 1584 outputs: [], 1585 }, 1586 { 1587 stateMutability: 'nonpayable', 1588 type: 'function', 1589 inputs: [ 1590 { name: '_to', internalType: 'address payable', type: 'address' }, 1591 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 1592 ], 1593 name: 'withdrawETH', 1594 outputs: [], 1595 }, 1596 { 1597 stateMutability: 'nonpayable', 1598 type: 'function', 1599 inputs: [{ name: '_to', internalType: 'address payable', type: 'address' }], 1600 name: 'withdrawETH', 1601 outputs: [], 1602 }, 1603 { stateMutability: 'payable', type: 'receive' }, 1604 ] as const 1605 1606 /** 1607 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 1608 */ 1609 export const drippieGoerliAddress = { 1610 5: '0x44b3A2a040057eBafC601A78647e805fd58B1f50', 1611 } as const 1612 1613 /** 1614 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 1615 */ 1616 export const drippieGoerliConfig = { 1617 address: drippieGoerliAddress, 1618 abi: drippieGoerliABI, 1619 } as const 1620 1621 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 1622 // Drippie_optimism-goerli 1623 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 1624 1625 /** 1626 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x8D8d533C16D23847EB04EEB0925be8900Dd3af86) 1627 */ 1628 export const drippieOptimismGoerliABI = [ 1629 { 1630 stateMutability: 'nonpayable', 1631 type: 'constructor', 1632 inputs: [{ name: '_owner', internalType: 'address', type: 'address' }], 1633 }, 1634 { 1635 type: 'event', 1636 anonymous: false, 1637 inputs: [ 1638 { 1639 name: 'nameref', 1640 internalType: 'string', 1641 type: 'string', 1642 indexed: true, 1643 }, 1644 { name: 'name', internalType: 'string', type: 'string', indexed: false }, 1645 { 1646 name: 'config', 1647 internalType: 'struct Drippie.DripConfig', 1648 type: 'tuple', 1649 components: [ 1650 { name: 'interval', internalType: 'uint256', type: 'uint256' }, 1651 { 1652 name: 'dripcheck', 1653 internalType: 'contract IDripCheck', 1654 type: 'address', 1655 }, 1656 { name: 'checkparams', internalType: 'bytes', type: 'bytes' }, 1657 { 1658 name: 'actions', 1659 internalType: 'struct Drippie.DripAction[]', 1660 type: 'tuple[]', 1661 components: [ 1662 { 1663 name: 'target', 1664 internalType: 'address payable', 1665 type: 'address', 1666 }, 1667 { name: 'data', internalType: 'bytes', type: 'bytes' }, 1668 { name: 'value', internalType: 'uint256', type: 'uint256' }, 1669 ], 1670 }, 1671 ], 1672 indexed: false, 1673 }, 1674 ], 1675 name: 'DripCreated', 1676 }, 1677 { 1678 type: 'event', 1679 anonymous: false, 1680 inputs: [ 1681 { 1682 name: 'nameref', 1683 internalType: 'string', 1684 type: 'string', 1685 indexed: true, 1686 }, 1687 { name: 'name', internalType: 'string', type: 'string', indexed: false }, 1688 { 1689 name: 'executor', 1690 internalType: 'address', 1691 type: 'address', 1692 indexed: false, 1693 }, 1694 { 1695 name: 'timestamp', 1696 internalType: 'uint256', 1697 type: 'uint256', 1698 indexed: false, 1699 }, 1700 ], 1701 name: 'DripExecuted', 1702 }, 1703 { 1704 type: 'event', 1705 anonymous: false, 1706 inputs: [ 1707 { 1708 name: 'nameref', 1709 internalType: 'string', 1710 type: 'string', 1711 indexed: true, 1712 }, 1713 { name: 'name', internalType: 'string', type: 'string', indexed: false }, 1714 { 1715 name: 'status', 1716 internalType: 'enum Drippie.DripStatus', 1717 type: 'uint8', 1718 indexed: false, 1719 }, 1720 ], 1721 name: 'DripStatusUpdated', 1722 }, 1723 { 1724 type: 'event', 1725 anonymous: false, 1726 inputs: [ 1727 { name: 'user', internalType: 'address', type: 'address', indexed: true }, 1728 { 1729 name: 'newOwner', 1730 internalType: 'address', 1731 type: 'address', 1732 indexed: true, 1733 }, 1734 ], 1735 name: 'OwnerUpdated', 1736 }, 1737 { 1738 type: 'event', 1739 anonymous: false, 1740 inputs: [ 1741 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 1742 { 1743 name: 'amount', 1744 internalType: 'uint256', 1745 type: 'uint256', 1746 indexed: false, 1747 }, 1748 ], 1749 name: 'ReceivedETH', 1750 }, 1751 { 1752 type: 'event', 1753 anonymous: false, 1754 inputs: [ 1755 { 1756 name: 'withdrawer', 1757 internalType: 'address', 1758 type: 'address', 1759 indexed: true, 1760 }, 1761 { 1762 name: 'recipient', 1763 internalType: 'address', 1764 type: 'address', 1765 indexed: true, 1766 }, 1767 { 1768 name: 'asset', 1769 internalType: 'address', 1770 type: 'address', 1771 indexed: true, 1772 }, 1773 { 1774 name: 'amount', 1775 internalType: 'uint256', 1776 type: 'uint256', 1777 indexed: false, 1778 }, 1779 ], 1780 name: 'WithdrewERC20', 1781 }, 1782 { 1783 type: 'event', 1784 anonymous: false, 1785 inputs: [ 1786 { 1787 name: 'withdrawer', 1788 internalType: 'address', 1789 type: 'address', 1790 indexed: true, 1791 }, 1792 { 1793 name: 'recipient', 1794 internalType: 'address', 1795 type: 'address', 1796 indexed: true, 1797 }, 1798 { 1799 name: 'asset', 1800 internalType: 'address', 1801 type: 'address', 1802 indexed: true, 1803 }, 1804 { name: 'id', internalType: 'uint256', type: 'uint256', indexed: false }, 1805 ], 1806 name: 'WithdrewERC721', 1807 }, 1808 { 1809 type: 'event', 1810 anonymous: false, 1811 inputs: [ 1812 { 1813 name: 'withdrawer', 1814 internalType: 'address', 1815 type: 'address', 1816 indexed: true, 1817 }, 1818 { 1819 name: 'recipient', 1820 internalType: 'address', 1821 type: 'address', 1822 indexed: true, 1823 }, 1824 { 1825 name: 'amount', 1826 internalType: 'uint256', 1827 type: 'uint256', 1828 indexed: false, 1829 }, 1830 ], 1831 name: 'WithdrewETH', 1832 }, 1833 { 1834 stateMutability: 'payable', 1835 type: 'function', 1836 inputs: [ 1837 { name: '_target', internalType: 'address', type: 'address' }, 1838 { name: '_data', internalType: 'bytes', type: 'bytes' }, 1839 { name: '_gas', internalType: 'uint256', type: 'uint256' }, 1840 { name: '_value', internalType: 'uint256', type: 'uint256' }, 1841 ], 1842 name: 'CALL', 1843 outputs: [ 1844 { name: '', internalType: 'bool', type: 'bool' }, 1845 { name: '', internalType: 'bytes', type: 'bytes' }, 1846 ], 1847 }, 1848 { 1849 stateMutability: 'payable', 1850 type: 'function', 1851 inputs: [ 1852 { name: '_target', internalType: 'address', type: 'address' }, 1853 { name: '_data', internalType: 'bytes', type: 'bytes' }, 1854 { name: '_gas', internalType: 'uint256', type: 'uint256' }, 1855 ], 1856 name: 'DELEGATECALL', 1857 outputs: [ 1858 { name: '', internalType: 'bool', type: 'bool' }, 1859 { name: '', internalType: 'bytes', type: 'bytes' }, 1860 ], 1861 }, 1862 { 1863 stateMutability: 'nonpayable', 1864 type: 'function', 1865 inputs: [ 1866 { name: '_name', internalType: 'string', type: 'string' }, 1867 { 1868 name: '_config', 1869 internalType: 'struct Drippie.DripConfig', 1870 type: 'tuple', 1871 components: [ 1872 { name: 'interval', internalType: 'uint256', type: 'uint256' }, 1873 { 1874 name: 'dripcheck', 1875 internalType: 'contract IDripCheck', 1876 type: 'address', 1877 }, 1878 { name: 'checkparams', internalType: 'bytes', type: 'bytes' }, 1879 { 1880 name: 'actions', 1881 internalType: 'struct Drippie.DripAction[]', 1882 type: 'tuple[]', 1883 components: [ 1884 { 1885 name: 'target', 1886 internalType: 'address payable', 1887 type: 'address', 1888 }, 1889 { name: 'data', internalType: 'bytes', type: 'bytes' }, 1890 { name: 'value', internalType: 'uint256', type: 'uint256' }, 1891 ], 1892 }, 1893 ], 1894 }, 1895 ], 1896 name: 'create', 1897 outputs: [], 1898 }, 1899 { 1900 stateMutability: 'nonpayable', 1901 type: 'function', 1902 inputs: [{ name: '_name', internalType: 'string', type: 'string' }], 1903 name: 'drip', 1904 outputs: [], 1905 }, 1906 { 1907 stateMutability: 'view', 1908 type: 'function', 1909 inputs: [{ name: '', internalType: 'string', type: 'string' }], 1910 name: 'drips', 1911 outputs: [ 1912 { 1913 name: 'status', 1914 internalType: 'enum Drippie.DripStatus', 1915 type: 'uint8', 1916 }, 1917 { 1918 name: 'config', 1919 internalType: 'struct Drippie.DripConfig', 1920 type: 'tuple', 1921 components: [ 1922 { name: 'interval', internalType: 'uint256', type: 'uint256' }, 1923 { 1924 name: 'dripcheck', 1925 internalType: 'contract IDripCheck', 1926 type: 'address', 1927 }, 1928 { name: 'checkparams', internalType: 'bytes', type: 'bytes' }, 1929 { 1930 name: 'actions', 1931 internalType: 'struct Drippie.DripAction[]', 1932 type: 'tuple[]', 1933 components: [ 1934 { 1935 name: 'target', 1936 internalType: 'address payable', 1937 type: 'address', 1938 }, 1939 { name: 'data', internalType: 'bytes', type: 'bytes' }, 1940 { name: 'value', internalType: 'uint256', type: 'uint256' }, 1941 ], 1942 }, 1943 ], 1944 }, 1945 { name: 'last', internalType: 'uint256', type: 'uint256' }, 1946 { name: 'count', internalType: 'uint256', type: 'uint256' }, 1947 ], 1948 }, 1949 { 1950 stateMutability: 'view', 1951 type: 'function', 1952 inputs: [{ name: '_name', internalType: 'string', type: 'string' }], 1953 name: 'executable', 1954 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 1955 }, 1956 { 1957 stateMutability: 'view', 1958 type: 'function', 1959 inputs: [], 1960 name: 'owner', 1961 outputs: [{ name: '', internalType: 'address', type: 'address' }], 1962 }, 1963 { 1964 stateMutability: 'nonpayable', 1965 type: 'function', 1966 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 1967 name: 'setOwner', 1968 outputs: [], 1969 }, 1970 { 1971 stateMutability: 'nonpayable', 1972 type: 'function', 1973 inputs: [ 1974 { name: '_name', internalType: 'string', type: 'string' }, 1975 { 1976 name: '_status', 1977 internalType: 'enum Drippie.DripStatus', 1978 type: 'uint8', 1979 }, 1980 ], 1981 name: 'status', 1982 outputs: [], 1983 }, 1984 { 1985 stateMutability: 'nonpayable', 1986 type: 'function', 1987 inputs: [ 1988 { name: '_asset', internalType: 'contract ERC20', type: 'address' }, 1989 { name: '_to', internalType: 'address', type: 'address' }, 1990 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 1991 ], 1992 name: 'withdrawERC20', 1993 outputs: [], 1994 }, 1995 { 1996 stateMutability: 'nonpayable', 1997 type: 'function', 1998 inputs: [ 1999 { name: '_asset', internalType: 'contract ERC20', type: 'address' }, 2000 { name: '_to', internalType: 'address', type: 'address' }, 2001 ], 2002 name: 'withdrawERC20', 2003 outputs: [], 2004 }, 2005 { 2006 stateMutability: 'nonpayable', 2007 type: 'function', 2008 inputs: [ 2009 { name: '_asset', internalType: 'contract ERC721', type: 'address' }, 2010 { name: '_to', internalType: 'address', type: 'address' }, 2011 { name: '_id', internalType: 'uint256', type: 'uint256' }, 2012 ], 2013 name: 'withdrawERC721', 2014 outputs: [], 2015 }, 2016 { 2017 stateMutability: 'nonpayable', 2018 type: 'function', 2019 inputs: [ 2020 { name: '_to', internalType: 'address payable', type: 'address' }, 2021 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 2022 ], 2023 name: 'withdrawETH', 2024 outputs: [], 2025 }, 2026 { 2027 stateMutability: 'nonpayable', 2028 type: 'function', 2029 inputs: [{ name: '_to', internalType: 'address payable', type: 'address' }], 2030 name: 'withdrawETH', 2031 outputs: [], 2032 }, 2033 { stateMutability: 'payable', type: 'receive' }, 2034 ] as const 2035 2036 /** 2037 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x8D8d533C16D23847EB04EEB0925be8900Dd3af86) 2038 */ 2039 export const drippieOptimismGoerliAddress = { 2040 420: '0x8D8d533C16D23847EB04EEB0925be8900Dd3af86', 2041 } as const 2042 2043 /** 2044 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x8D8d533C16D23847EB04EEB0925be8900Dd3af86) 2045 */ 2046 export const drippieOptimismGoerliConfig = { 2047 address: drippieOptimismGoerliAddress, 2048 abi: drippieOptimismGoerliABI, 2049 } as const 2050 2051 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 2052 // EAS 2053 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 2054 2055 /** 2056 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088) 2057 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5A633F1cc84B03F7588486CF2F386c102061E6e1) 2058 */ 2059 export const easABI = [ 2060 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 2061 { type: 'error', inputs: [], name: 'AccessDenied' }, 2062 { type: 'error', inputs: [], name: 'AlreadyRevoked' }, 2063 { type: 'error', inputs: [], name: 'AlreadyRevokedOffchain' }, 2064 { type: 'error', inputs: [], name: 'AlreadyTimestamped' }, 2065 { type: 'error', inputs: [], name: 'InsufficientValue' }, 2066 { type: 'error', inputs: [], name: 'InvalidAttestation' }, 2067 { type: 'error', inputs: [], name: 'InvalidAttestations' }, 2068 { type: 'error', inputs: [], name: 'InvalidExpirationTime' }, 2069 { type: 'error', inputs: [], name: 'InvalidLength' }, 2070 { type: 'error', inputs: [], name: 'InvalidOffset' }, 2071 { type: 'error', inputs: [], name: 'InvalidRegistry' }, 2072 { type: 'error', inputs: [], name: 'InvalidRevocation' }, 2073 { type: 'error', inputs: [], name: 'InvalidRevocations' }, 2074 { type: 'error', inputs: [], name: 'InvalidSchema' }, 2075 { type: 'error', inputs: [], name: 'InvalidSignature' }, 2076 { type: 'error', inputs: [], name: 'InvalidVerifier' }, 2077 { type: 'error', inputs: [], name: 'Irrevocable' }, 2078 { type: 'error', inputs: [], name: 'NotFound' }, 2079 { type: 'error', inputs: [], name: 'NotPayable' }, 2080 { type: 'error', inputs: [], name: 'WrongSchema' }, 2081 { 2082 type: 'event', 2083 anonymous: false, 2084 inputs: [ 2085 { 2086 name: 'recipient', 2087 internalType: 'address', 2088 type: 'address', 2089 indexed: true, 2090 }, 2091 { 2092 name: 'attester', 2093 internalType: 'address', 2094 type: 'address', 2095 indexed: true, 2096 }, 2097 { name: 'uid', internalType: 'bytes32', type: 'bytes32', indexed: false }, 2098 { 2099 name: 'schema', 2100 internalType: 'bytes32', 2101 type: 'bytes32', 2102 indexed: true, 2103 }, 2104 ], 2105 name: 'Attested', 2106 }, 2107 { 2108 type: 'event', 2109 anonymous: false, 2110 inputs: [ 2111 { 2112 name: 'recipient', 2113 internalType: 'address', 2114 type: 'address', 2115 indexed: true, 2116 }, 2117 { 2118 name: 'attester', 2119 internalType: 'address', 2120 type: 'address', 2121 indexed: true, 2122 }, 2123 { name: 'uid', internalType: 'bytes32', type: 'bytes32', indexed: false }, 2124 { 2125 name: 'schema', 2126 internalType: 'bytes32', 2127 type: 'bytes32', 2128 indexed: true, 2129 }, 2130 ], 2131 name: 'Revoked', 2132 }, 2133 { 2134 type: 'event', 2135 anonymous: false, 2136 inputs: [ 2137 { 2138 name: 'revoker', 2139 internalType: 'address', 2140 type: 'address', 2141 indexed: true, 2142 }, 2143 { name: 'data', internalType: 'bytes32', type: 'bytes32', indexed: true }, 2144 { 2145 name: 'timestamp', 2146 internalType: 'uint64', 2147 type: 'uint64', 2148 indexed: true, 2149 }, 2150 ], 2151 name: 'RevokedOffchain', 2152 }, 2153 { 2154 type: 'event', 2155 anonymous: false, 2156 inputs: [ 2157 { name: 'data', internalType: 'bytes32', type: 'bytes32', indexed: true }, 2158 { 2159 name: 'timestamp', 2160 internalType: 'uint64', 2161 type: 'uint64', 2162 indexed: true, 2163 }, 2164 ], 2165 name: 'Timestamped', 2166 }, 2167 { 2168 stateMutability: 'payable', 2169 type: 'function', 2170 inputs: [ 2171 { 2172 name: 'request', 2173 internalType: 'struct AttestationRequest', 2174 type: 'tuple', 2175 components: [ 2176 { name: 'schema', internalType: 'bytes32', type: 'bytes32' }, 2177 { 2178 name: 'data', 2179 internalType: 'struct AttestationRequestData', 2180 type: 'tuple', 2181 components: [ 2182 { name: 'recipient', internalType: 'address', type: 'address' }, 2183 { 2184 name: 'expirationTime', 2185 internalType: 'uint64', 2186 type: 'uint64', 2187 }, 2188 { name: 'revocable', internalType: 'bool', type: 'bool' }, 2189 { name: 'refUID', internalType: 'bytes32', type: 'bytes32' }, 2190 { name: 'data', internalType: 'bytes', type: 'bytes' }, 2191 { name: 'value', internalType: 'uint256', type: 'uint256' }, 2192 ], 2193 }, 2194 ], 2195 }, 2196 ], 2197 name: 'attest', 2198 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 2199 }, 2200 { 2201 stateMutability: 'payable', 2202 type: 'function', 2203 inputs: [ 2204 { 2205 name: 'delegatedRequest', 2206 internalType: 'struct DelegatedAttestationRequest', 2207 type: 'tuple', 2208 components: [ 2209 { name: 'schema', internalType: 'bytes32', type: 'bytes32' }, 2210 { 2211 name: 'data', 2212 internalType: 'struct AttestationRequestData', 2213 type: 'tuple', 2214 components: [ 2215 { name: 'recipient', internalType: 'address', type: 'address' }, 2216 { 2217 name: 'expirationTime', 2218 internalType: 'uint64', 2219 type: 'uint64', 2220 }, 2221 { name: 'revocable', internalType: 'bool', type: 'bool' }, 2222 { name: 'refUID', internalType: 'bytes32', type: 'bytes32' }, 2223 { name: 'data', internalType: 'bytes', type: 'bytes' }, 2224 { name: 'value', internalType: 'uint256', type: 'uint256' }, 2225 ], 2226 }, 2227 { 2228 name: 'signature', 2229 internalType: 'struct EIP712Signature', 2230 type: 'tuple', 2231 components: [ 2232 { name: 'v', internalType: 'uint8', type: 'uint8' }, 2233 { name: 'r', internalType: 'bytes32', type: 'bytes32' }, 2234 { name: 's', internalType: 'bytes32', type: 'bytes32' }, 2235 ], 2236 }, 2237 { name: 'attester', internalType: 'address', type: 'address' }, 2238 ], 2239 }, 2240 ], 2241 name: 'attestByDelegation', 2242 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 2243 }, 2244 { 2245 stateMutability: 'pure', 2246 type: 'function', 2247 inputs: [], 2248 name: 'getAttestTypeHash', 2249 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 2250 }, 2251 { 2252 stateMutability: 'view', 2253 type: 'function', 2254 inputs: [{ name: 'uid', internalType: 'bytes32', type: 'bytes32' }], 2255 name: 'getAttestation', 2256 outputs: [ 2257 { 2258 name: '', 2259 internalType: 'struct Attestation', 2260 type: 'tuple', 2261 components: [ 2262 { name: 'uid', internalType: 'bytes32', type: 'bytes32' }, 2263 { name: 'schema', internalType: 'bytes32', type: 'bytes32' }, 2264 { name: 'time', internalType: 'uint64', type: 'uint64' }, 2265 { name: 'expirationTime', internalType: 'uint64', type: 'uint64' }, 2266 { name: 'revocationTime', internalType: 'uint64', type: 'uint64' }, 2267 { name: 'refUID', internalType: 'bytes32', type: 'bytes32' }, 2268 { name: 'recipient', internalType: 'address', type: 'address' }, 2269 { name: 'attester', internalType: 'address', type: 'address' }, 2270 { name: 'revocable', internalType: 'bool', type: 'bool' }, 2271 { name: 'data', internalType: 'bytes', type: 'bytes' }, 2272 ], 2273 }, 2274 ], 2275 }, 2276 { 2277 stateMutability: 'view', 2278 type: 'function', 2279 inputs: [], 2280 name: 'getDomainSeparator', 2281 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 2282 }, 2283 { 2284 stateMutability: 'view', 2285 type: 'function', 2286 inputs: [], 2287 name: 'getName', 2288 outputs: [{ name: '', internalType: 'string', type: 'string' }], 2289 }, 2290 { 2291 stateMutability: 'view', 2292 type: 'function', 2293 inputs: [{ name: 'account', internalType: 'address', type: 'address' }], 2294 name: 'getNonce', 2295 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2296 }, 2297 { 2298 stateMutability: 'view', 2299 type: 'function', 2300 inputs: [ 2301 { name: 'revoker', internalType: 'address', type: 'address' }, 2302 { name: 'data', internalType: 'bytes32', type: 'bytes32' }, 2303 ], 2304 name: 'getRevokeOffchain', 2305 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2306 }, 2307 { 2308 stateMutability: 'pure', 2309 type: 'function', 2310 inputs: [], 2311 name: 'getRevokeTypeHash', 2312 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 2313 }, 2314 { 2315 stateMutability: 'pure', 2316 type: 'function', 2317 inputs: [], 2318 name: 'getSchemaRegistry', 2319 outputs: [ 2320 { name: '', internalType: 'contract ISchemaRegistry', type: 'address' }, 2321 ], 2322 }, 2323 { 2324 stateMutability: 'view', 2325 type: 'function', 2326 inputs: [{ name: 'data', internalType: 'bytes32', type: 'bytes32' }], 2327 name: 'getTimestamp', 2328 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2329 }, 2330 { 2331 stateMutability: 'view', 2332 type: 'function', 2333 inputs: [{ name: 'uid', internalType: 'bytes32', type: 'bytes32' }], 2334 name: 'isAttestationValid', 2335 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 2336 }, 2337 { 2338 stateMutability: 'payable', 2339 type: 'function', 2340 inputs: [ 2341 { 2342 name: 'multiRequests', 2343 internalType: 'struct MultiAttestationRequest[]', 2344 type: 'tuple[]', 2345 components: [ 2346 { name: 'schema', internalType: 'bytes32', type: 'bytes32' }, 2347 { 2348 name: 'data', 2349 internalType: 'struct AttestationRequestData[]', 2350 type: 'tuple[]', 2351 components: [ 2352 { name: 'recipient', internalType: 'address', type: 'address' }, 2353 { 2354 name: 'expirationTime', 2355 internalType: 'uint64', 2356 type: 'uint64', 2357 }, 2358 { name: 'revocable', internalType: 'bool', type: 'bool' }, 2359 { name: 'refUID', internalType: 'bytes32', type: 'bytes32' }, 2360 { name: 'data', internalType: 'bytes', type: 'bytes' }, 2361 { name: 'value', internalType: 'uint256', type: 'uint256' }, 2362 ], 2363 }, 2364 ], 2365 }, 2366 ], 2367 name: 'multiAttest', 2368 outputs: [{ name: '', internalType: 'bytes32[]', type: 'bytes32[]' }], 2369 }, 2370 { 2371 stateMutability: 'payable', 2372 type: 'function', 2373 inputs: [ 2374 { 2375 name: 'multiDelegatedRequests', 2376 internalType: 'struct MultiDelegatedAttestationRequest[]', 2377 type: 'tuple[]', 2378 components: [ 2379 { name: 'schema', internalType: 'bytes32', type: 'bytes32' }, 2380 { 2381 name: 'data', 2382 internalType: 'struct AttestationRequestData[]', 2383 type: 'tuple[]', 2384 components: [ 2385 { name: 'recipient', internalType: 'address', type: 'address' }, 2386 { 2387 name: 'expirationTime', 2388 internalType: 'uint64', 2389 type: 'uint64', 2390 }, 2391 { name: 'revocable', internalType: 'bool', type: 'bool' }, 2392 { name: 'refUID', internalType: 'bytes32', type: 'bytes32' }, 2393 { name: 'data', internalType: 'bytes', type: 'bytes' }, 2394 { name: 'value', internalType: 'uint256', type: 'uint256' }, 2395 ], 2396 }, 2397 { 2398 name: 'signatures', 2399 internalType: 'struct EIP712Signature[]', 2400 type: 'tuple[]', 2401 components: [ 2402 { name: 'v', internalType: 'uint8', type: 'uint8' }, 2403 { name: 'r', internalType: 'bytes32', type: 'bytes32' }, 2404 { name: 's', internalType: 'bytes32', type: 'bytes32' }, 2405 ], 2406 }, 2407 { name: 'attester', internalType: 'address', type: 'address' }, 2408 ], 2409 }, 2410 ], 2411 name: 'multiAttestByDelegation', 2412 outputs: [{ name: '', internalType: 'bytes32[]', type: 'bytes32[]' }], 2413 }, 2414 { 2415 stateMutability: 'payable', 2416 type: 'function', 2417 inputs: [ 2418 { 2419 name: 'multiRequests', 2420 internalType: 'struct MultiRevocationRequest[]', 2421 type: 'tuple[]', 2422 components: [ 2423 { name: 'schema', internalType: 'bytes32', type: 'bytes32' }, 2424 { 2425 name: 'data', 2426 internalType: 'struct RevocationRequestData[]', 2427 type: 'tuple[]', 2428 components: [ 2429 { name: 'uid', internalType: 'bytes32', type: 'bytes32' }, 2430 { name: 'value', internalType: 'uint256', type: 'uint256' }, 2431 ], 2432 }, 2433 ], 2434 }, 2435 ], 2436 name: 'multiRevoke', 2437 outputs: [], 2438 }, 2439 { 2440 stateMutability: 'payable', 2441 type: 'function', 2442 inputs: [ 2443 { 2444 name: 'multiDelegatedRequests', 2445 internalType: 'struct MultiDelegatedRevocationRequest[]', 2446 type: 'tuple[]', 2447 components: [ 2448 { name: 'schema', internalType: 'bytes32', type: 'bytes32' }, 2449 { 2450 name: 'data', 2451 internalType: 'struct RevocationRequestData[]', 2452 type: 'tuple[]', 2453 components: [ 2454 { name: 'uid', internalType: 'bytes32', type: 'bytes32' }, 2455 { name: 'value', internalType: 'uint256', type: 'uint256' }, 2456 ], 2457 }, 2458 { 2459 name: 'signatures', 2460 internalType: 'struct EIP712Signature[]', 2461 type: 'tuple[]', 2462 components: [ 2463 { name: 'v', internalType: 'uint8', type: 'uint8' }, 2464 { name: 'r', internalType: 'bytes32', type: 'bytes32' }, 2465 { name: 's', internalType: 'bytes32', type: 'bytes32' }, 2466 ], 2467 }, 2468 { name: 'revoker', internalType: 'address', type: 'address' }, 2469 ], 2470 }, 2471 ], 2472 name: 'multiRevokeByDelegation', 2473 outputs: [], 2474 }, 2475 { 2476 stateMutability: 'nonpayable', 2477 type: 'function', 2478 inputs: [{ name: 'data', internalType: 'bytes32[]', type: 'bytes32[]' }], 2479 name: 'multiRevokeOffchain', 2480 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2481 }, 2482 { 2483 stateMutability: 'nonpayable', 2484 type: 'function', 2485 inputs: [{ name: 'data', internalType: 'bytes32[]', type: 'bytes32[]' }], 2486 name: 'multiTimestamp', 2487 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2488 }, 2489 { 2490 stateMutability: 'payable', 2491 type: 'function', 2492 inputs: [ 2493 { 2494 name: 'request', 2495 internalType: 'struct RevocationRequest', 2496 type: 'tuple', 2497 components: [ 2498 { name: 'schema', internalType: 'bytes32', type: 'bytes32' }, 2499 { 2500 name: 'data', 2501 internalType: 'struct RevocationRequestData', 2502 type: 'tuple', 2503 components: [ 2504 { name: 'uid', internalType: 'bytes32', type: 'bytes32' }, 2505 { name: 'value', internalType: 'uint256', type: 'uint256' }, 2506 ], 2507 }, 2508 ], 2509 }, 2510 ], 2511 name: 'revoke', 2512 outputs: [], 2513 }, 2514 { 2515 stateMutability: 'payable', 2516 type: 'function', 2517 inputs: [ 2518 { 2519 name: 'delegatedRequest', 2520 internalType: 'struct DelegatedRevocationRequest', 2521 type: 'tuple', 2522 components: [ 2523 { name: 'schema', internalType: 'bytes32', type: 'bytes32' }, 2524 { 2525 name: 'data', 2526 internalType: 'struct RevocationRequestData', 2527 type: 'tuple', 2528 components: [ 2529 { name: 'uid', internalType: 'bytes32', type: 'bytes32' }, 2530 { name: 'value', internalType: 'uint256', type: 'uint256' }, 2531 ], 2532 }, 2533 { 2534 name: 'signature', 2535 internalType: 'struct EIP712Signature', 2536 type: 'tuple', 2537 components: [ 2538 { name: 'v', internalType: 'uint8', type: 'uint8' }, 2539 { name: 'r', internalType: 'bytes32', type: 'bytes32' }, 2540 { name: 's', internalType: 'bytes32', type: 'bytes32' }, 2541 ], 2542 }, 2543 { name: 'revoker', internalType: 'address', type: 'address' }, 2544 ], 2545 }, 2546 ], 2547 name: 'revokeByDelegation', 2548 outputs: [], 2549 }, 2550 { 2551 stateMutability: 'nonpayable', 2552 type: 'function', 2553 inputs: [{ name: 'data', internalType: 'bytes32', type: 'bytes32' }], 2554 name: 'revokeOffchain', 2555 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2556 }, 2557 { 2558 stateMutability: 'nonpayable', 2559 type: 'function', 2560 inputs: [{ name: 'data', internalType: 'bytes32', type: 'bytes32' }], 2561 name: 'timestamp', 2562 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2563 }, 2564 { 2565 stateMutability: 'view', 2566 type: 'function', 2567 inputs: [], 2568 name: 'version', 2569 outputs: [{ name: '', internalType: 'string', type: 'string' }], 2570 }, 2571 ] as const 2572 2573 /** 2574 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088) 2575 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5A633F1cc84B03F7588486CF2F386c102061E6e1) 2576 */ 2577 export const easAddress = { 2578 10: '0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088', 2579 420: '0x5A633F1cc84B03F7588486CF2F386c102061E6e1', 2580 } as const 2581 2582 /** 2583 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088) 2584 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5A633F1cc84B03F7588486CF2F386c102061E6e1) 2585 */ 2586 export const easConfig = { address: easAddress, abi: easABI } as const 2587 2588 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 2589 // GasPriceOracle 2590 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 2591 2592 /** 2593 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000000F) 2594 */ 2595 export const gasPriceOracleABI = [ 2596 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 2597 { 2598 stateMutability: 'view', 2599 type: 'function', 2600 inputs: [], 2601 name: 'baseFee', 2602 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2603 }, 2604 { 2605 stateMutability: 'pure', 2606 type: 'function', 2607 inputs: [], 2608 name: 'decimals', 2609 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2610 }, 2611 { 2612 stateMutability: 'view', 2613 type: 'function', 2614 inputs: [], 2615 name: 'gasPrice', 2616 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2617 }, 2618 { 2619 stateMutability: 'view', 2620 type: 'function', 2621 inputs: [{ name: '_data', internalType: 'bytes', type: 'bytes' }], 2622 name: 'getL1Fee', 2623 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2624 }, 2625 { 2626 stateMutability: 'view', 2627 type: 'function', 2628 inputs: [{ name: '_data', internalType: 'bytes', type: 'bytes' }], 2629 name: 'getL1GasUsed', 2630 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2631 }, 2632 { 2633 stateMutability: 'view', 2634 type: 'function', 2635 inputs: [], 2636 name: 'l1BaseFee', 2637 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2638 }, 2639 { 2640 stateMutability: 'view', 2641 type: 'function', 2642 inputs: [], 2643 name: 'overhead', 2644 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2645 }, 2646 { 2647 stateMutability: 'view', 2648 type: 'function', 2649 inputs: [], 2650 name: 'scalar', 2651 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2652 }, 2653 { 2654 stateMutability: 'view', 2655 type: 'function', 2656 inputs: [], 2657 name: 'version', 2658 outputs: [{ name: '', internalType: 'string', type: 'string' }], 2659 }, 2660 ] as const 2661 2662 /** 2663 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000000F) 2664 */ 2665 export const gasPriceOracleAddress = { 2666 420: '0x420000000000000000000000000000000000000F', 2667 } as const 2668 2669 /** 2670 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000000F) 2671 */ 2672 export const gasPriceOracleConfig = { 2673 address: gasPriceOracleAddress, 2674 abi: gasPriceOracleABI, 2675 } as const 2676 2677 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 2678 // L1Block 2679 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 2680 2681 /** 2682 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000015) 2683 */ 2684 export const l1BlockABI = [ 2685 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 2686 { 2687 stateMutability: 'view', 2688 type: 'function', 2689 inputs: [], 2690 name: 'DEPOSITOR_ACCOUNT', 2691 outputs: [{ name: '', internalType: 'address', type: 'address' }], 2692 }, 2693 { 2694 stateMutability: 'view', 2695 type: 'function', 2696 inputs: [], 2697 name: 'basefee', 2698 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2699 }, 2700 { 2701 stateMutability: 'view', 2702 type: 'function', 2703 inputs: [], 2704 name: 'batcherHash', 2705 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 2706 }, 2707 { 2708 stateMutability: 'view', 2709 type: 'function', 2710 inputs: [], 2711 name: 'hash', 2712 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 2713 }, 2714 { 2715 stateMutability: 'view', 2716 type: 'function', 2717 inputs: [], 2718 name: 'l1FeeOverhead', 2719 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2720 }, 2721 { 2722 stateMutability: 'view', 2723 type: 'function', 2724 inputs: [], 2725 name: 'l1FeeScalar', 2726 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2727 }, 2728 { 2729 stateMutability: 'view', 2730 type: 'function', 2731 inputs: [], 2732 name: 'number', 2733 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2734 }, 2735 { 2736 stateMutability: 'view', 2737 type: 'function', 2738 inputs: [], 2739 name: 'sequenceNumber', 2740 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2741 }, 2742 { 2743 stateMutability: 'nonpayable', 2744 type: 'function', 2745 inputs: [ 2746 { name: '_number', internalType: 'uint64', type: 'uint64' }, 2747 { name: '_timestamp', internalType: 'uint64', type: 'uint64' }, 2748 { name: '_basefee', internalType: 'uint256', type: 'uint256' }, 2749 { name: '_hash', internalType: 'bytes32', type: 'bytes32' }, 2750 { name: '_sequenceNumber', internalType: 'uint64', type: 'uint64' }, 2751 { name: '_batcherHash', internalType: 'bytes32', type: 'bytes32' }, 2752 { name: '_l1FeeOverhead', internalType: 'uint256', type: 'uint256' }, 2753 { name: '_l1FeeScalar', internalType: 'uint256', type: 'uint256' }, 2754 ], 2755 name: 'setL1BlockValues', 2756 outputs: [], 2757 }, 2758 { 2759 stateMutability: 'view', 2760 type: 'function', 2761 inputs: [], 2762 name: 'timestamp', 2763 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2764 }, 2765 { 2766 stateMutability: 'view', 2767 type: 'function', 2768 inputs: [], 2769 name: 'version', 2770 outputs: [{ name: '', internalType: 'string', type: 'string' }], 2771 }, 2772 ] as const 2773 2774 /** 2775 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000015) 2776 */ 2777 export const l1BlockAddress = { 2778 420: '0x4200000000000000000000000000000000000015', 2779 } as const 2780 2781 /** 2782 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000015) 2783 */ 2784 export const l1BlockConfig = { 2785 address: l1BlockAddress, 2786 abi: l1BlockABI, 2787 } as const 2788 2789 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 2790 // L1CrossDomainMessenger 2791 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 2792 2793 /** 2794 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1) 2795 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5086d1eEF304eb5284A0f6720f79403b4e9bE294) 2796 */ 2797 export const l1CrossDomainMessengerABI = [ 2798 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 2799 { 2800 type: 'event', 2801 anonymous: false, 2802 inputs: [ 2803 { 2804 name: 'msgHash', 2805 internalType: 'bytes32', 2806 type: 'bytes32', 2807 indexed: true, 2808 }, 2809 ], 2810 name: 'FailedRelayedMessage', 2811 }, 2812 { 2813 type: 'event', 2814 anonymous: false, 2815 inputs: [ 2816 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 2817 ], 2818 name: 'Initialized', 2819 }, 2820 { 2821 type: 'event', 2822 anonymous: false, 2823 inputs: [ 2824 { 2825 name: 'msgHash', 2826 internalType: 'bytes32', 2827 type: 'bytes32', 2828 indexed: true, 2829 }, 2830 ], 2831 name: 'RelayedMessage', 2832 }, 2833 { 2834 type: 'event', 2835 anonymous: false, 2836 inputs: [ 2837 { 2838 name: 'target', 2839 internalType: 'address', 2840 type: 'address', 2841 indexed: true, 2842 }, 2843 { 2844 name: 'sender', 2845 internalType: 'address', 2846 type: 'address', 2847 indexed: false, 2848 }, 2849 { name: 'message', internalType: 'bytes', type: 'bytes', indexed: false }, 2850 { 2851 name: 'messageNonce', 2852 internalType: 'uint256', 2853 type: 'uint256', 2854 indexed: false, 2855 }, 2856 { 2857 name: 'gasLimit', 2858 internalType: 'uint256', 2859 type: 'uint256', 2860 indexed: false, 2861 }, 2862 ], 2863 name: 'SentMessage', 2864 }, 2865 { 2866 type: 'event', 2867 anonymous: false, 2868 inputs: [ 2869 { 2870 name: 'sender', 2871 internalType: 'address', 2872 type: 'address', 2873 indexed: true, 2874 }, 2875 { 2876 name: 'value', 2877 internalType: 'uint256', 2878 type: 'uint256', 2879 indexed: false, 2880 }, 2881 ], 2882 name: 'SentMessageExtension1', 2883 }, 2884 { 2885 stateMutability: 'view', 2886 type: 'function', 2887 inputs: [], 2888 name: 'MESSAGE_VERSION', 2889 outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }], 2890 }, 2891 { 2892 stateMutability: 'view', 2893 type: 'function', 2894 inputs: [], 2895 name: 'MIN_GAS_CALLDATA_OVERHEAD', 2896 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2897 }, 2898 { 2899 stateMutability: 'view', 2900 type: 'function', 2901 inputs: [], 2902 name: 'MIN_GAS_DYNAMIC_OVERHEAD_DENOMINATOR', 2903 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2904 }, 2905 { 2906 stateMutability: 'view', 2907 type: 'function', 2908 inputs: [], 2909 name: 'MIN_GAS_DYNAMIC_OVERHEAD_NUMERATOR', 2910 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2911 }, 2912 { 2913 stateMutability: 'view', 2914 type: 'function', 2915 inputs: [], 2916 name: 'OTHER_MESSENGER', 2917 outputs: [{ name: '', internalType: 'address', type: 'address' }], 2918 }, 2919 { 2920 stateMutability: 'view', 2921 type: 'function', 2922 inputs: [], 2923 name: 'RELAY_CALL_OVERHEAD', 2924 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2925 }, 2926 { 2927 stateMutability: 'view', 2928 type: 'function', 2929 inputs: [], 2930 name: 'RELAY_CONSTANT_OVERHEAD', 2931 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2932 }, 2933 { 2934 stateMutability: 'view', 2935 type: 'function', 2936 inputs: [], 2937 name: 'RELAY_GAS_CHECK_BUFFER', 2938 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2939 }, 2940 { 2941 stateMutability: 'view', 2942 type: 'function', 2943 inputs: [], 2944 name: 'RELAY_RESERVED_GAS', 2945 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2946 }, 2947 { 2948 stateMutability: 'pure', 2949 type: 'function', 2950 inputs: [ 2951 { name: '_message', internalType: 'bytes', type: 'bytes' }, 2952 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 2953 ], 2954 name: 'baseGas', 2955 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 2956 }, 2957 { 2958 stateMutability: 'view', 2959 type: 'function', 2960 inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 2961 name: 'failedMessages', 2962 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 2963 }, 2964 { 2965 stateMutability: 'nonpayable', 2966 type: 'function', 2967 inputs: [ 2968 { 2969 name: '_portal', 2970 internalType: 'contract OptimismPortal', 2971 type: 'address', 2972 }, 2973 ], 2974 name: 'initialize', 2975 outputs: [], 2976 }, 2977 { 2978 stateMutability: 'view', 2979 type: 'function', 2980 inputs: [], 2981 name: 'messageNonce', 2982 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 2983 }, 2984 { 2985 stateMutability: 'view', 2986 type: 'function', 2987 inputs: [], 2988 name: 'portal', 2989 outputs: [{ name: '', internalType: 'address', type: 'address' }], 2990 }, 2991 { 2992 stateMutability: 'payable', 2993 type: 'function', 2994 inputs: [ 2995 { name: '_nonce', internalType: 'uint256', type: 'uint256' }, 2996 { name: '_sender', internalType: 'address', type: 'address' }, 2997 { name: '_target', internalType: 'address', type: 'address' }, 2998 { name: '_value', internalType: 'uint256', type: 'uint256' }, 2999 { name: '_minGasLimit', internalType: 'uint256', type: 'uint256' }, 3000 { name: '_message', internalType: 'bytes', type: 'bytes' }, 3001 ], 3002 name: 'relayMessage', 3003 outputs: [], 3004 }, 3005 { 3006 stateMutability: 'payable', 3007 type: 'function', 3008 inputs: [ 3009 { name: '_target', internalType: 'address', type: 'address' }, 3010 { name: '_message', internalType: 'bytes', type: 'bytes' }, 3011 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3012 ], 3013 name: 'sendMessage', 3014 outputs: [], 3015 }, 3016 { 3017 stateMutability: 'view', 3018 type: 'function', 3019 inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 3020 name: 'successfulMessages', 3021 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 3022 }, 3023 { 3024 stateMutability: 'view', 3025 type: 'function', 3026 inputs: [], 3027 name: 'version', 3028 outputs: [{ name: '', internalType: 'string', type: 'string' }], 3029 }, 3030 { 3031 stateMutability: 'view', 3032 type: 'function', 3033 inputs: [], 3034 name: 'xDomainMessageSender', 3035 outputs: [{ name: '', internalType: 'address', type: 'address' }], 3036 }, 3037 ] as const 3038 3039 /** 3040 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1) 3041 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5086d1eEF304eb5284A0f6720f79403b4e9bE294) 3042 */ 3043 export const l1CrossDomainMessengerAddress = { 3044 1: '0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1', 3045 5: '0x5086d1eEF304eb5284A0f6720f79403b4e9bE294', 3046 } as const 3047 3048 /** 3049 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1) 3050 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5086d1eEF304eb5284A0f6720f79403b4e9bE294) 3051 */ 3052 export const l1CrossDomainMessengerConfig = { 3053 address: l1CrossDomainMessengerAddress, 3054 abi: l1CrossDomainMessengerABI, 3055 } as const 3056 3057 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 3058 // L1ERC721Bridge 3059 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 3060 3061 /** 3062 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5a7749f83b81B301cAb5f48EB8516B986DAef23D) 3063 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9) 3064 */ 3065 export const l1Erc721BridgeABI = [ 3066 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 3067 { 3068 type: 'event', 3069 anonymous: false, 3070 inputs: [ 3071 { 3072 name: 'localToken', 3073 internalType: 'address', 3074 type: 'address', 3075 indexed: true, 3076 }, 3077 { 3078 name: 'remoteToken', 3079 internalType: 'address', 3080 type: 'address', 3081 indexed: true, 3082 }, 3083 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 3084 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 3085 { 3086 name: 'tokenId', 3087 internalType: 'uint256', 3088 type: 'uint256', 3089 indexed: false, 3090 }, 3091 { 3092 name: 'extraData', 3093 internalType: 'bytes', 3094 type: 'bytes', 3095 indexed: false, 3096 }, 3097 ], 3098 name: 'ERC721BridgeFinalized', 3099 }, 3100 { 3101 type: 'event', 3102 anonymous: false, 3103 inputs: [ 3104 { 3105 name: 'localToken', 3106 internalType: 'address', 3107 type: 'address', 3108 indexed: true, 3109 }, 3110 { 3111 name: 'remoteToken', 3112 internalType: 'address', 3113 type: 'address', 3114 indexed: true, 3115 }, 3116 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 3117 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 3118 { 3119 name: 'tokenId', 3120 internalType: 'uint256', 3121 type: 'uint256', 3122 indexed: false, 3123 }, 3124 { 3125 name: 'extraData', 3126 internalType: 'bytes', 3127 type: 'bytes', 3128 indexed: false, 3129 }, 3130 ], 3131 name: 'ERC721BridgeInitiated', 3132 }, 3133 { 3134 type: 'event', 3135 anonymous: false, 3136 inputs: [ 3137 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 3138 ], 3139 name: 'Initialized', 3140 }, 3141 { 3142 stateMutability: 'nonpayable', 3143 type: 'function', 3144 inputs: [ 3145 { name: '_localToken', internalType: 'address', type: 'address' }, 3146 { name: '_remoteToken', internalType: 'address', type: 'address' }, 3147 { name: '_tokenId', internalType: 'uint256', type: 'uint256' }, 3148 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3149 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3150 ], 3151 name: 'bridgeERC721', 3152 outputs: [], 3153 }, 3154 { 3155 stateMutability: 'nonpayable', 3156 type: 'function', 3157 inputs: [ 3158 { name: '_localToken', internalType: 'address', type: 'address' }, 3159 { name: '_remoteToken', internalType: 'address', type: 'address' }, 3160 { name: '_to', internalType: 'address', type: 'address' }, 3161 { name: '_tokenId', internalType: 'uint256', type: 'uint256' }, 3162 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3163 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3164 ], 3165 name: 'bridgeERC721To', 3166 outputs: [], 3167 }, 3168 { 3169 stateMutability: 'view', 3170 type: 'function', 3171 inputs: [ 3172 { name: '', internalType: 'address', type: 'address' }, 3173 { name: '', internalType: 'address', type: 'address' }, 3174 { name: '', internalType: 'uint256', type: 'uint256' }, 3175 ], 3176 name: 'deposits', 3177 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 3178 }, 3179 { 3180 stateMutability: 'nonpayable', 3181 type: 'function', 3182 inputs: [ 3183 { name: '_localToken', internalType: 'address', type: 'address' }, 3184 { name: '_remoteToken', internalType: 'address', type: 'address' }, 3185 { name: '_from', internalType: 'address', type: 'address' }, 3186 { name: '_to', internalType: 'address', type: 'address' }, 3187 { name: '_tokenId', internalType: 'uint256', type: 'uint256' }, 3188 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3189 ], 3190 name: 'finalizeBridgeERC721', 3191 outputs: [], 3192 }, 3193 { 3194 stateMutability: 'nonpayable', 3195 type: 'function', 3196 inputs: [ 3197 { 3198 name: '_messenger', 3199 internalType: 'contract CrossDomainMessenger', 3200 type: 'address', 3201 }, 3202 ], 3203 name: 'initialize', 3204 outputs: [], 3205 }, 3206 { 3207 stateMutability: 'view', 3208 type: 'function', 3209 inputs: [], 3210 name: 'messenger', 3211 outputs: [ 3212 { 3213 name: '', 3214 internalType: 'contract CrossDomainMessenger', 3215 type: 'address', 3216 }, 3217 ], 3218 }, 3219 { 3220 stateMutability: 'view', 3221 type: 'function', 3222 inputs: [], 3223 name: 'otherBridge', 3224 outputs: [{ name: '', internalType: 'address', type: 'address' }], 3225 }, 3226 { 3227 stateMutability: 'view', 3228 type: 'function', 3229 inputs: [], 3230 name: 'version', 3231 outputs: [{ name: '', internalType: 'string', type: 'string' }], 3232 }, 3233 ] as const 3234 3235 /** 3236 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5a7749f83b81B301cAb5f48EB8516B986DAef23D) 3237 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9) 3238 */ 3239 export const l1Erc721BridgeAddress = { 3240 1: '0x5a7749f83b81B301cAb5f48EB8516B986DAef23D', 3241 5: '0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9', 3242 } as const 3243 3244 /** 3245 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5a7749f83b81B301cAb5f48EB8516B986DAef23D) 3246 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9) 3247 */ 3248 export const l1Erc721BridgeConfig = { 3249 address: l1Erc721BridgeAddress, 3250 abi: l1Erc721BridgeABI, 3251 } as const 3252 3253 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 3254 // L1FeeVault 3255 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 3256 3257 /** 3258 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000001a) 3259 */ 3260 export const l1FeeVaultABI = [ 3261 { 3262 stateMutability: 'nonpayable', 3263 type: 'constructor', 3264 inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }], 3265 }, 3266 { 3267 type: 'event', 3268 anonymous: false, 3269 inputs: [ 3270 { 3271 name: 'value', 3272 internalType: 'uint256', 3273 type: 'uint256', 3274 indexed: false, 3275 }, 3276 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 3277 { 3278 name: 'from', 3279 internalType: 'address', 3280 type: 'address', 3281 indexed: false, 3282 }, 3283 ], 3284 name: 'Withdrawal', 3285 }, 3286 { 3287 stateMutability: 'view', 3288 type: 'function', 3289 inputs: [], 3290 name: 'MIN_WITHDRAWAL_AMOUNT', 3291 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 3292 }, 3293 { 3294 stateMutability: 'view', 3295 type: 'function', 3296 inputs: [], 3297 name: 'RECIPIENT', 3298 outputs: [{ name: '', internalType: 'address', type: 'address' }], 3299 }, 3300 { 3301 stateMutability: 'view', 3302 type: 'function', 3303 inputs: [], 3304 name: 'totalProcessed', 3305 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 3306 }, 3307 { 3308 stateMutability: 'view', 3309 type: 'function', 3310 inputs: [], 3311 name: 'version', 3312 outputs: [{ name: '', internalType: 'string', type: 'string' }], 3313 }, 3314 { 3315 stateMutability: 'nonpayable', 3316 type: 'function', 3317 inputs: [], 3318 name: 'withdraw', 3319 outputs: [], 3320 }, 3321 { stateMutability: 'payable', type: 'receive' }, 3322 ] as const 3323 3324 /** 3325 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000001a) 3326 */ 3327 export const l1FeeVaultAddress = { 3328 420: '0x420000000000000000000000000000000000001A', 3329 } as const 3330 3331 /** 3332 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000001a) 3333 */ 3334 export const l1FeeVaultConfig = { 3335 address: l1FeeVaultAddress, 3336 abi: l1FeeVaultABI, 3337 } as const 3338 3339 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 3340 // L1StandardBridge 3341 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 3342 3343 /** 3344 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1) 3345 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x636Af16bf2f682dD3109e60102b8E1A089FedAa8) 3346 */ 3347 export const l1StandardBridgeABI = [ 3348 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 3349 { 3350 type: 'event', 3351 anonymous: false, 3352 inputs: [ 3353 { 3354 name: 'localToken', 3355 internalType: 'address', 3356 type: 'address', 3357 indexed: true, 3358 }, 3359 { 3360 name: 'remoteToken', 3361 internalType: 'address', 3362 type: 'address', 3363 indexed: true, 3364 }, 3365 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 3366 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 3367 { 3368 name: 'amount', 3369 internalType: 'uint256', 3370 type: 'uint256', 3371 indexed: false, 3372 }, 3373 { 3374 name: 'extraData', 3375 internalType: 'bytes', 3376 type: 'bytes', 3377 indexed: false, 3378 }, 3379 ], 3380 name: 'ERC20BridgeFinalized', 3381 }, 3382 { 3383 type: 'event', 3384 anonymous: false, 3385 inputs: [ 3386 { 3387 name: 'localToken', 3388 internalType: 'address', 3389 type: 'address', 3390 indexed: true, 3391 }, 3392 { 3393 name: 'remoteToken', 3394 internalType: 'address', 3395 type: 'address', 3396 indexed: true, 3397 }, 3398 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 3399 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 3400 { 3401 name: 'amount', 3402 internalType: 'uint256', 3403 type: 'uint256', 3404 indexed: false, 3405 }, 3406 { 3407 name: 'extraData', 3408 internalType: 'bytes', 3409 type: 'bytes', 3410 indexed: false, 3411 }, 3412 ], 3413 name: 'ERC20BridgeInitiated', 3414 }, 3415 { 3416 type: 'event', 3417 anonymous: false, 3418 inputs: [ 3419 { 3420 name: 'l1Token', 3421 internalType: 'address', 3422 type: 'address', 3423 indexed: true, 3424 }, 3425 { 3426 name: 'l2Token', 3427 internalType: 'address', 3428 type: 'address', 3429 indexed: true, 3430 }, 3431 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 3432 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 3433 { 3434 name: 'amount', 3435 internalType: 'uint256', 3436 type: 'uint256', 3437 indexed: false, 3438 }, 3439 { 3440 name: 'extraData', 3441 internalType: 'bytes', 3442 type: 'bytes', 3443 indexed: false, 3444 }, 3445 ], 3446 name: 'ERC20DepositInitiated', 3447 }, 3448 { 3449 type: 'event', 3450 anonymous: false, 3451 inputs: [ 3452 { 3453 name: 'l1Token', 3454 internalType: 'address', 3455 type: 'address', 3456 indexed: true, 3457 }, 3458 { 3459 name: 'l2Token', 3460 internalType: 'address', 3461 type: 'address', 3462 indexed: true, 3463 }, 3464 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 3465 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 3466 { 3467 name: 'amount', 3468 internalType: 'uint256', 3469 type: 'uint256', 3470 indexed: false, 3471 }, 3472 { 3473 name: 'extraData', 3474 internalType: 'bytes', 3475 type: 'bytes', 3476 indexed: false, 3477 }, 3478 ], 3479 name: 'ERC20WithdrawalFinalized', 3480 }, 3481 { 3482 type: 'event', 3483 anonymous: false, 3484 inputs: [ 3485 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 3486 { name: 'to', internalType: 'address', type: 'address', indexed: true }, 3487 { 3488 name: 'amount', 3489 internalType: 'uint256', 3490 type: 'uint256', 3491 indexed: false, 3492 }, 3493 { 3494 name: 'extraData', 3495 internalType: 'bytes', 3496 type: 'bytes', 3497 indexed: false, 3498 }, 3499 ], 3500 name: 'ETHBridgeFinalized', 3501 }, 3502 { 3503 type: 'event', 3504 anonymous: false, 3505 inputs: [ 3506 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 3507 { name: 'to', internalType: 'address', type: 'address', indexed: true }, 3508 { 3509 name: 'amount', 3510 internalType: 'uint256', 3511 type: 'uint256', 3512 indexed: false, 3513 }, 3514 { 3515 name: 'extraData', 3516 internalType: 'bytes', 3517 type: 'bytes', 3518 indexed: false, 3519 }, 3520 ], 3521 name: 'ETHBridgeInitiated', 3522 }, 3523 { 3524 type: 'event', 3525 anonymous: false, 3526 inputs: [ 3527 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 3528 { name: 'to', internalType: 'address', type: 'address', indexed: true }, 3529 { 3530 name: 'amount', 3531 internalType: 'uint256', 3532 type: 'uint256', 3533 indexed: false, 3534 }, 3535 { 3536 name: 'extraData', 3537 internalType: 'bytes', 3538 type: 'bytes', 3539 indexed: false, 3540 }, 3541 ], 3542 name: 'ETHDepositInitiated', 3543 }, 3544 { 3545 type: 'event', 3546 anonymous: false, 3547 inputs: [ 3548 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 3549 { name: 'to', internalType: 'address', type: 'address', indexed: true }, 3550 { 3551 name: 'amount', 3552 internalType: 'uint256', 3553 type: 'uint256', 3554 indexed: false, 3555 }, 3556 { 3557 name: 'extraData', 3558 internalType: 'bytes', 3559 type: 'bytes', 3560 indexed: false, 3561 }, 3562 ], 3563 name: 'ETHWithdrawalFinalized', 3564 }, 3565 { 3566 type: 'event', 3567 anonymous: false, 3568 inputs: [ 3569 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 3570 ], 3571 name: 'Initialized', 3572 }, 3573 { 3574 stateMutability: 'nonpayable', 3575 type: 'function', 3576 inputs: [ 3577 { name: '_localToken', internalType: 'address', type: 'address' }, 3578 { name: '_remoteToken', internalType: 'address', type: 'address' }, 3579 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 3580 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3581 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3582 ], 3583 name: 'bridgeERC20', 3584 outputs: [], 3585 }, 3586 { 3587 stateMutability: 'nonpayable', 3588 type: 'function', 3589 inputs: [ 3590 { name: '_localToken', internalType: 'address', type: 'address' }, 3591 { name: '_remoteToken', internalType: 'address', type: 'address' }, 3592 { name: '_to', internalType: 'address', type: 'address' }, 3593 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 3594 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3595 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3596 ], 3597 name: 'bridgeERC20To', 3598 outputs: [], 3599 }, 3600 { 3601 stateMutability: 'payable', 3602 type: 'function', 3603 inputs: [ 3604 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3605 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3606 ], 3607 name: 'bridgeETH', 3608 outputs: [], 3609 }, 3610 { 3611 stateMutability: 'payable', 3612 type: 'function', 3613 inputs: [ 3614 { name: '_to', internalType: 'address', type: 'address' }, 3615 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3616 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3617 ], 3618 name: 'bridgeETHTo', 3619 outputs: [], 3620 }, 3621 { 3622 stateMutability: 'nonpayable', 3623 type: 'function', 3624 inputs: [ 3625 { name: '_l1Token', internalType: 'address', type: 'address' }, 3626 { name: '_l2Token', internalType: 'address', type: 'address' }, 3627 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 3628 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3629 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3630 ], 3631 name: 'depositERC20', 3632 outputs: [], 3633 }, 3634 { 3635 stateMutability: 'nonpayable', 3636 type: 'function', 3637 inputs: [ 3638 { name: '_l1Token', internalType: 'address', type: 'address' }, 3639 { name: '_l2Token', internalType: 'address', type: 'address' }, 3640 { name: '_to', internalType: 'address', type: 'address' }, 3641 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 3642 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3643 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3644 ], 3645 name: 'depositERC20To', 3646 outputs: [], 3647 }, 3648 { 3649 stateMutability: 'payable', 3650 type: 'function', 3651 inputs: [ 3652 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3653 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3654 ], 3655 name: 'depositETH', 3656 outputs: [], 3657 }, 3658 { 3659 stateMutability: 'payable', 3660 type: 'function', 3661 inputs: [ 3662 { name: '_to', internalType: 'address', type: 'address' }, 3663 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3664 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3665 ], 3666 name: 'depositETHTo', 3667 outputs: [], 3668 }, 3669 { 3670 stateMutability: 'view', 3671 type: 'function', 3672 inputs: [ 3673 { name: '', internalType: 'address', type: 'address' }, 3674 { name: '', internalType: 'address', type: 'address' }, 3675 ], 3676 name: 'deposits', 3677 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 3678 }, 3679 { 3680 stateMutability: 'nonpayable', 3681 type: 'function', 3682 inputs: [ 3683 { name: '_localToken', internalType: 'address', type: 'address' }, 3684 { name: '_remoteToken', internalType: 'address', type: 'address' }, 3685 { name: '_from', internalType: 'address', type: 'address' }, 3686 { name: '_to', internalType: 'address', type: 'address' }, 3687 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 3688 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3689 ], 3690 name: 'finalizeBridgeERC20', 3691 outputs: [], 3692 }, 3693 { 3694 stateMutability: 'payable', 3695 type: 'function', 3696 inputs: [ 3697 { name: '_from', internalType: 'address', type: 'address' }, 3698 { name: '_to', internalType: 'address', type: 'address' }, 3699 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 3700 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3701 ], 3702 name: 'finalizeBridgeETH', 3703 outputs: [], 3704 }, 3705 { 3706 stateMutability: 'nonpayable', 3707 type: 'function', 3708 inputs: [ 3709 { name: '_l1Token', internalType: 'address', type: 'address' }, 3710 { name: '_l2Token', internalType: 'address', type: 'address' }, 3711 { name: '_from', internalType: 'address', type: 'address' }, 3712 { name: '_to', internalType: 'address', type: 'address' }, 3713 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 3714 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3715 ], 3716 name: 'finalizeERC20Withdrawal', 3717 outputs: [], 3718 }, 3719 { 3720 stateMutability: 'payable', 3721 type: 'function', 3722 inputs: [ 3723 { name: '_from', internalType: 'address', type: 'address' }, 3724 { name: '_to', internalType: 'address', type: 'address' }, 3725 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 3726 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 3727 ], 3728 name: 'finalizeETHWithdrawal', 3729 outputs: [], 3730 }, 3731 { 3732 stateMutability: 'nonpayable', 3733 type: 'function', 3734 inputs: [ 3735 { 3736 name: '_messenger', 3737 internalType: 'contract CrossDomainMessenger', 3738 type: 'address', 3739 }, 3740 ], 3741 name: 'initialize', 3742 outputs: [], 3743 }, 3744 { 3745 stateMutability: 'view', 3746 type: 'function', 3747 inputs: [], 3748 name: 'l2TokenBridge', 3749 outputs: [{ name: '', internalType: 'address', type: 'address' }], 3750 }, 3751 { 3752 stateMutability: 'view', 3753 type: 'function', 3754 inputs: [], 3755 name: 'messenger', 3756 outputs: [ 3757 { 3758 name: '', 3759 internalType: 'contract CrossDomainMessenger', 3760 type: 'address', 3761 }, 3762 ], 3763 }, 3764 { 3765 stateMutability: 'view', 3766 type: 'function', 3767 inputs: [], 3768 name: 'otherBridge', 3769 outputs: [ 3770 { name: '', internalType: 'contract StandardBridge', type: 'address' }, 3771 ], 3772 }, 3773 { 3774 stateMutability: 'view', 3775 type: 'function', 3776 inputs: [], 3777 name: 'version', 3778 outputs: [{ name: '', internalType: 'string', type: 'string' }], 3779 }, 3780 { stateMutability: 'payable', type: 'receive' }, 3781 ] as const 3782 3783 /** 3784 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1) 3785 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x636Af16bf2f682dD3109e60102b8E1A089FedAa8) 3786 */ 3787 export const l1StandardBridgeAddress = { 3788 1: '0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1', 3789 5: '0x636Af16bf2f682dD3109e60102b8E1A089FedAa8', 3790 } as const 3791 3792 /** 3793 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1) 3794 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x636Af16bf2f682dD3109e60102b8E1A089FedAa8) 3795 */ 3796 export const l1StandardBridgeConfig = { 3797 address: l1StandardBridgeAddress, 3798 abi: l1StandardBridgeABI, 3799 } as const 3800 3801 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 3802 // L2CrossDomainMessenger 3803 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 3804 3805 /** 3806 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000007) 3807 */ 3808 export const l2CrossDomainMessengerABI = [ 3809 { 3810 stateMutability: 'nonpayable', 3811 type: 'constructor', 3812 inputs: [ 3813 { 3814 name: '_l1CrossDomainMessenger', 3815 internalType: 'address', 3816 type: 'address', 3817 }, 3818 ], 3819 }, 3820 { 3821 type: 'event', 3822 anonymous: false, 3823 inputs: [ 3824 { 3825 name: 'msgHash', 3826 internalType: 'bytes32', 3827 type: 'bytes32', 3828 indexed: true, 3829 }, 3830 ], 3831 name: 'FailedRelayedMessage', 3832 }, 3833 { 3834 type: 'event', 3835 anonymous: false, 3836 inputs: [ 3837 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 3838 ], 3839 name: 'Initialized', 3840 }, 3841 { 3842 type: 'event', 3843 anonymous: false, 3844 inputs: [ 3845 { 3846 name: 'msgHash', 3847 internalType: 'bytes32', 3848 type: 'bytes32', 3849 indexed: true, 3850 }, 3851 ], 3852 name: 'RelayedMessage', 3853 }, 3854 { 3855 type: 'event', 3856 anonymous: false, 3857 inputs: [ 3858 { 3859 name: 'target', 3860 internalType: 'address', 3861 type: 'address', 3862 indexed: true, 3863 }, 3864 { 3865 name: 'sender', 3866 internalType: 'address', 3867 type: 'address', 3868 indexed: false, 3869 }, 3870 { name: 'message', internalType: 'bytes', type: 'bytes', indexed: false }, 3871 { 3872 name: 'messageNonce', 3873 internalType: 'uint256', 3874 type: 'uint256', 3875 indexed: false, 3876 }, 3877 { 3878 name: 'gasLimit', 3879 internalType: 'uint256', 3880 type: 'uint256', 3881 indexed: false, 3882 }, 3883 ], 3884 name: 'SentMessage', 3885 }, 3886 { 3887 type: 'event', 3888 anonymous: false, 3889 inputs: [ 3890 { 3891 name: 'sender', 3892 internalType: 'address', 3893 type: 'address', 3894 indexed: true, 3895 }, 3896 { 3897 name: 'value', 3898 internalType: 'uint256', 3899 type: 'uint256', 3900 indexed: false, 3901 }, 3902 ], 3903 name: 'SentMessageExtension1', 3904 }, 3905 { 3906 stateMutability: 'view', 3907 type: 'function', 3908 inputs: [], 3909 name: 'MESSAGE_VERSION', 3910 outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }], 3911 }, 3912 { 3913 stateMutability: 'view', 3914 type: 'function', 3915 inputs: [], 3916 name: 'MIN_GAS_CALLDATA_OVERHEAD', 3917 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 3918 }, 3919 { 3920 stateMutability: 'view', 3921 type: 'function', 3922 inputs: [], 3923 name: 'MIN_GAS_DYNAMIC_OVERHEAD_DENOMINATOR', 3924 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 3925 }, 3926 { 3927 stateMutability: 'view', 3928 type: 'function', 3929 inputs: [], 3930 name: 'MIN_GAS_DYNAMIC_OVERHEAD_NUMERATOR', 3931 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 3932 }, 3933 { 3934 stateMutability: 'view', 3935 type: 'function', 3936 inputs: [], 3937 name: 'OTHER_MESSENGER', 3938 outputs: [{ name: '', internalType: 'address', type: 'address' }], 3939 }, 3940 { 3941 stateMutability: 'view', 3942 type: 'function', 3943 inputs: [], 3944 name: 'RELAY_CALL_OVERHEAD', 3945 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 3946 }, 3947 { 3948 stateMutability: 'view', 3949 type: 'function', 3950 inputs: [], 3951 name: 'RELAY_CONSTANT_OVERHEAD', 3952 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 3953 }, 3954 { 3955 stateMutability: 'view', 3956 type: 'function', 3957 inputs: [], 3958 name: 'RELAY_GAS_CHECK_BUFFER', 3959 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 3960 }, 3961 { 3962 stateMutability: 'view', 3963 type: 'function', 3964 inputs: [], 3965 name: 'RELAY_RESERVED_GAS', 3966 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 3967 }, 3968 { 3969 stateMutability: 'pure', 3970 type: 'function', 3971 inputs: [ 3972 { name: '_message', internalType: 'bytes', type: 'bytes' }, 3973 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 3974 ], 3975 name: 'baseGas', 3976 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 3977 }, 3978 { 3979 stateMutability: 'view', 3980 type: 'function', 3981 inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 3982 name: 'failedMessages', 3983 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 3984 }, 3985 { 3986 stateMutability: 'nonpayable', 3987 type: 'function', 3988 inputs: [], 3989 name: 'initialize', 3990 outputs: [], 3991 }, 3992 { 3993 stateMutability: 'view', 3994 type: 'function', 3995 inputs: [], 3996 name: 'l1CrossDomainMessenger', 3997 outputs: [{ name: '', internalType: 'address', type: 'address' }], 3998 }, 3999 { 4000 stateMutability: 'view', 4001 type: 'function', 4002 inputs: [], 4003 name: 'messageNonce', 4004 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4005 }, 4006 { 4007 stateMutability: 'payable', 4008 type: 'function', 4009 inputs: [ 4010 { name: '_nonce', internalType: 'uint256', type: 'uint256' }, 4011 { name: '_sender', internalType: 'address', type: 'address' }, 4012 { name: '_target', internalType: 'address', type: 'address' }, 4013 { name: '_value', internalType: 'uint256', type: 'uint256' }, 4014 { name: '_minGasLimit', internalType: 'uint256', type: 'uint256' }, 4015 { name: '_message', internalType: 'bytes', type: 'bytes' }, 4016 ], 4017 name: 'relayMessage', 4018 outputs: [], 4019 }, 4020 { 4021 stateMutability: 'payable', 4022 type: 'function', 4023 inputs: [ 4024 { name: '_target', internalType: 'address', type: 'address' }, 4025 { name: '_message', internalType: 'bytes', type: 'bytes' }, 4026 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 4027 ], 4028 name: 'sendMessage', 4029 outputs: [], 4030 }, 4031 { 4032 stateMutability: 'view', 4033 type: 'function', 4034 inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 4035 name: 'successfulMessages', 4036 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 4037 }, 4038 { 4039 stateMutability: 'view', 4040 type: 'function', 4041 inputs: [], 4042 name: 'version', 4043 outputs: [{ name: '', internalType: 'string', type: 'string' }], 4044 }, 4045 { 4046 stateMutability: 'view', 4047 type: 'function', 4048 inputs: [], 4049 name: 'xDomainMessageSender', 4050 outputs: [{ name: '', internalType: 'address', type: 'address' }], 4051 }, 4052 ] as const 4053 4054 /** 4055 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000007) 4056 */ 4057 export const l2CrossDomainMessengerAddress = { 4058 420: '0x4200000000000000000000000000000000000007', 4059 } as const 4060 4061 /** 4062 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000007) 4063 */ 4064 export const l2CrossDomainMessengerConfig = { 4065 address: l2CrossDomainMessengerAddress, 4066 abi: l2CrossDomainMessengerABI, 4067 } as const 4068 4069 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 4070 // L2ERC721Bridge 4071 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 4072 4073 /** 4074 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000014) 4075 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000014) 4076 */ 4077 export const l2Erc721BridgeABI = [ 4078 { 4079 stateMutability: 'nonpayable', 4080 type: 'constructor', 4081 inputs: [ 4082 { name: '_messenger', internalType: 'address', type: 'address' }, 4083 { name: '_otherBridge', internalType: 'address', type: 'address' }, 4084 ], 4085 }, 4086 { 4087 type: 'event', 4088 anonymous: false, 4089 inputs: [ 4090 { 4091 name: 'localToken', 4092 internalType: 'address', 4093 type: 'address', 4094 indexed: true, 4095 }, 4096 { 4097 name: 'remoteToken', 4098 internalType: 'address', 4099 type: 'address', 4100 indexed: true, 4101 }, 4102 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 4103 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 4104 { 4105 name: 'tokenId', 4106 internalType: 'uint256', 4107 type: 'uint256', 4108 indexed: false, 4109 }, 4110 { 4111 name: 'extraData', 4112 internalType: 'bytes', 4113 type: 'bytes', 4114 indexed: false, 4115 }, 4116 ], 4117 name: 'ERC721BridgeFinalized', 4118 }, 4119 { 4120 type: 'event', 4121 anonymous: false, 4122 inputs: [ 4123 { 4124 name: 'localToken', 4125 internalType: 'address', 4126 type: 'address', 4127 indexed: true, 4128 }, 4129 { 4130 name: 'remoteToken', 4131 internalType: 'address', 4132 type: 'address', 4133 indexed: true, 4134 }, 4135 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 4136 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 4137 { 4138 name: 'tokenId', 4139 internalType: 'uint256', 4140 type: 'uint256', 4141 indexed: false, 4142 }, 4143 { 4144 name: 'extraData', 4145 internalType: 'bytes', 4146 type: 'bytes', 4147 indexed: false, 4148 }, 4149 ], 4150 name: 'ERC721BridgeInitiated', 4151 }, 4152 { 4153 stateMutability: 'nonpayable', 4154 type: 'function', 4155 inputs: [ 4156 { name: '_localToken', internalType: 'address', type: 'address' }, 4157 { name: '_remoteToken', internalType: 'address', type: 'address' }, 4158 { name: '_tokenId', internalType: 'uint256', type: 'uint256' }, 4159 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 4160 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4161 ], 4162 name: 'bridgeERC721', 4163 outputs: [], 4164 }, 4165 { 4166 stateMutability: 'nonpayable', 4167 type: 'function', 4168 inputs: [ 4169 { name: '_localToken', internalType: 'address', type: 'address' }, 4170 { name: '_remoteToken', internalType: 'address', type: 'address' }, 4171 { name: '_to', internalType: 'address', type: 'address' }, 4172 { name: '_tokenId', internalType: 'uint256', type: 'uint256' }, 4173 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 4174 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4175 ], 4176 name: 'bridgeERC721To', 4177 outputs: [], 4178 }, 4179 { 4180 stateMutability: 'nonpayable', 4181 type: 'function', 4182 inputs: [ 4183 { name: '_localToken', internalType: 'address', type: 'address' }, 4184 { name: '_remoteToken', internalType: 'address', type: 'address' }, 4185 { name: '_from', internalType: 'address', type: 'address' }, 4186 { name: '_to', internalType: 'address', type: 'address' }, 4187 { name: '_tokenId', internalType: 'uint256', type: 'uint256' }, 4188 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4189 ], 4190 name: 'finalizeBridgeERC721', 4191 outputs: [], 4192 }, 4193 { 4194 stateMutability: 'view', 4195 type: 'function', 4196 inputs: [], 4197 name: 'messenger', 4198 outputs: [ 4199 { 4200 name: '', 4201 internalType: 'contract CrossDomainMessenger', 4202 type: 'address', 4203 }, 4204 ], 4205 }, 4206 { 4207 stateMutability: 'view', 4208 type: 'function', 4209 inputs: [], 4210 name: 'otherBridge', 4211 outputs: [{ name: '', internalType: 'address', type: 'address' }], 4212 }, 4213 { 4214 stateMutability: 'view', 4215 type: 'function', 4216 inputs: [], 4217 name: 'version', 4218 outputs: [{ name: '', internalType: 'string', type: 'string' }], 4219 }, 4220 ] as const 4221 4222 /** 4223 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000014) 4224 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000014) 4225 */ 4226 export const l2Erc721BridgeAddress = { 4227 10: '0x4200000000000000000000000000000000000014', 4228 420: '0x4200000000000000000000000000000000000014', 4229 } as const 4230 4231 /** 4232 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000014) 4233 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000014) 4234 */ 4235 export const l2Erc721BridgeConfig = { 4236 address: l2Erc721BridgeAddress, 4237 abi: l2Erc721BridgeABI, 4238 } as const 4239 4240 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 4241 // L2OutputOracle 4242 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 4243 4244 /** 4245 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdfe97868233d1aa22e815a266982f2cf17685a27) 4246 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0) 4247 */ 4248 export const l2OutputOracleABI = [ 4249 { 4250 stateMutability: 'nonpayable', 4251 type: 'constructor', 4252 inputs: [ 4253 { name: '_submissionInterval', internalType: 'uint256', type: 'uint256' }, 4254 { name: '_l2BlockTime', internalType: 'uint256', type: 'uint256' }, 4255 { 4256 name: '_finalizationPeriodSeconds', 4257 internalType: 'uint256', 4258 type: 'uint256', 4259 }, 4260 ], 4261 }, 4262 { 4263 type: 'event', 4264 anonymous: false, 4265 inputs: [ 4266 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 4267 ], 4268 name: 'Initialized', 4269 }, 4270 { 4271 type: 'event', 4272 anonymous: false, 4273 inputs: [ 4274 { 4275 name: 'outputRoot', 4276 internalType: 'bytes32', 4277 type: 'bytes32', 4278 indexed: true, 4279 }, 4280 { 4281 name: 'l2OutputIndex', 4282 internalType: 'uint256', 4283 type: 'uint256', 4284 indexed: true, 4285 }, 4286 { 4287 name: 'l2BlockNumber', 4288 internalType: 'uint256', 4289 type: 'uint256', 4290 indexed: true, 4291 }, 4292 { 4293 name: 'l1Timestamp', 4294 internalType: 'uint256', 4295 type: 'uint256', 4296 indexed: false, 4297 }, 4298 ], 4299 name: 'OutputProposed', 4300 }, 4301 { 4302 type: 'event', 4303 anonymous: false, 4304 inputs: [ 4305 { 4306 name: 'prevNextOutputIndex', 4307 internalType: 'uint256', 4308 type: 'uint256', 4309 indexed: true, 4310 }, 4311 { 4312 name: 'newNextOutputIndex', 4313 internalType: 'uint256', 4314 type: 'uint256', 4315 indexed: true, 4316 }, 4317 ], 4318 name: 'OutputsDeleted', 4319 }, 4320 { 4321 stateMutability: 'view', 4322 type: 'function', 4323 inputs: [], 4324 name: 'challenger', 4325 outputs: [{ name: '', internalType: 'address', type: 'address' }], 4326 }, 4327 { 4328 stateMutability: 'view', 4329 type: 'function', 4330 inputs: [ 4331 { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' }, 4332 ], 4333 name: 'computeL2Timestamp', 4334 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4335 }, 4336 { 4337 stateMutability: 'nonpayable', 4338 type: 'function', 4339 inputs: [ 4340 { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' }, 4341 ], 4342 name: 'deleteL2Outputs', 4343 outputs: [], 4344 }, 4345 { 4346 stateMutability: 'view', 4347 type: 'function', 4348 inputs: [], 4349 name: 'finalizationPeriodSeconds', 4350 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4351 }, 4352 { 4353 stateMutability: 'view', 4354 type: 'function', 4355 inputs: [ 4356 { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' }, 4357 ], 4358 name: 'getL2Output', 4359 outputs: [ 4360 { 4361 name: '', 4362 internalType: 'struct Types.OutputProposal', 4363 type: 'tuple', 4364 components: [ 4365 { name: 'outputRoot', internalType: 'bytes32', type: 'bytes32' }, 4366 { name: 'timestamp', internalType: 'uint128', type: 'uint128' }, 4367 { name: 'l2BlockNumber', internalType: 'uint128', type: 'uint128' }, 4368 ], 4369 }, 4370 ], 4371 }, 4372 { 4373 stateMutability: 'view', 4374 type: 'function', 4375 inputs: [ 4376 { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' }, 4377 ], 4378 name: 'getL2OutputAfter', 4379 outputs: [ 4380 { 4381 name: '', 4382 internalType: 'struct Types.OutputProposal', 4383 type: 'tuple', 4384 components: [ 4385 { name: 'outputRoot', internalType: 'bytes32', type: 'bytes32' }, 4386 { name: 'timestamp', internalType: 'uint128', type: 'uint128' }, 4387 { name: 'l2BlockNumber', internalType: 'uint128', type: 'uint128' }, 4388 ], 4389 }, 4390 ], 4391 }, 4392 { 4393 stateMutability: 'view', 4394 type: 'function', 4395 inputs: [ 4396 { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' }, 4397 ], 4398 name: 'getL2OutputIndexAfter', 4399 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4400 }, 4401 { 4402 stateMutability: 'nonpayable', 4403 type: 'function', 4404 inputs: [ 4405 { 4406 name: '_startingBlockNumber', 4407 internalType: 'uint256', 4408 type: 'uint256', 4409 }, 4410 { name: '_startingTimestamp', internalType: 'uint256', type: 'uint256' }, 4411 { name: '_proposer', internalType: 'address', type: 'address' }, 4412 { name: '_challenger', internalType: 'address', type: 'address' }, 4413 ], 4414 name: 'initialize', 4415 outputs: [], 4416 }, 4417 { 4418 stateMutability: 'view', 4419 type: 'function', 4420 inputs: [], 4421 name: 'l2BlockTime', 4422 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4423 }, 4424 { 4425 stateMutability: 'view', 4426 type: 'function', 4427 inputs: [], 4428 name: 'latestBlockNumber', 4429 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4430 }, 4431 { 4432 stateMutability: 'view', 4433 type: 'function', 4434 inputs: [], 4435 name: 'latestOutputIndex', 4436 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4437 }, 4438 { 4439 stateMutability: 'view', 4440 type: 'function', 4441 inputs: [], 4442 name: 'nextBlockNumber', 4443 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4444 }, 4445 { 4446 stateMutability: 'view', 4447 type: 'function', 4448 inputs: [], 4449 name: 'nextOutputIndex', 4450 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4451 }, 4452 { 4453 stateMutability: 'payable', 4454 type: 'function', 4455 inputs: [ 4456 { name: '_outputRoot', internalType: 'bytes32', type: 'bytes32' }, 4457 { name: '_l2BlockNumber', internalType: 'uint256', type: 'uint256' }, 4458 { name: '_l1BlockHash', internalType: 'bytes32', type: 'bytes32' }, 4459 { name: '_l1BlockNumber', internalType: 'uint256', type: 'uint256' }, 4460 ], 4461 name: 'proposeL2Output', 4462 outputs: [], 4463 }, 4464 { 4465 stateMutability: 'view', 4466 type: 'function', 4467 inputs: [], 4468 name: 'proposer', 4469 outputs: [{ name: '', internalType: 'address', type: 'address' }], 4470 }, 4471 { 4472 stateMutability: 'view', 4473 type: 'function', 4474 inputs: [], 4475 name: 'startingBlockNumber', 4476 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4477 }, 4478 { 4479 stateMutability: 'view', 4480 type: 'function', 4481 inputs: [], 4482 name: 'startingTimestamp', 4483 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4484 }, 4485 { 4486 stateMutability: 'view', 4487 type: 'function', 4488 inputs: [], 4489 name: 'submissionInterval', 4490 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4491 }, 4492 { 4493 stateMutability: 'view', 4494 type: 'function', 4495 inputs: [], 4496 name: 'version', 4497 outputs: [{ name: '', internalType: 'string', type: 'string' }], 4498 }, 4499 ] as const 4500 4501 /** 4502 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdfe97868233d1aa22e815a266982f2cf17685a27) 4503 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0) 4504 */ 4505 export const l2OutputOracleAddress = { 4506 1: '0xdfe97868233d1aa22e815a266982f2cf17685a27', 4507 5: '0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0', 4508 } as const 4509 4510 /** 4511 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdfe97868233d1aa22e815a266982f2cf17685a27) 4512 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0) 4513 */ 4514 export const l2OutputOracleConfig = { 4515 address: l2OutputOracleAddress, 4516 abi: l2OutputOracleABI, 4517 } as const 4518 4519 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 4520 // L2StandardBridge 4521 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 4522 4523 /** 4524 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000010) 4525 */ 4526 export const l2StandardBridgeABI = [ 4527 { 4528 stateMutability: 'nonpayable', 4529 type: 'constructor', 4530 inputs: [ 4531 { 4532 name: '_otherBridge', 4533 internalType: 'address payable', 4534 type: 'address', 4535 }, 4536 ], 4537 }, 4538 { 4539 type: 'event', 4540 anonymous: false, 4541 inputs: [ 4542 { 4543 name: 'l1Token', 4544 internalType: 'address', 4545 type: 'address', 4546 indexed: true, 4547 }, 4548 { 4549 name: 'l2Token', 4550 internalType: 'address', 4551 type: 'address', 4552 indexed: true, 4553 }, 4554 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 4555 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 4556 { 4557 name: 'amount', 4558 internalType: 'uint256', 4559 type: 'uint256', 4560 indexed: false, 4561 }, 4562 { 4563 name: 'extraData', 4564 internalType: 'bytes', 4565 type: 'bytes', 4566 indexed: false, 4567 }, 4568 ], 4569 name: 'DepositFinalized', 4570 }, 4571 { 4572 type: 'event', 4573 anonymous: false, 4574 inputs: [ 4575 { 4576 name: 'localToken', 4577 internalType: 'address', 4578 type: 'address', 4579 indexed: true, 4580 }, 4581 { 4582 name: 'remoteToken', 4583 internalType: 'address', 4584 type: 'address', 4585 indexed: true, 4586 }, 4587 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 4588 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 4589 { 4590 name: 'amount', 4591 internalType: 'uint256', 4592 type: 'uint256', 4593 indexed: false, 4594 }, 4595 { 4596 name: 'extraData', 4597 internalType: 'bytes', 4598 type: 'bytes', 4599 indexed: false, 4600 }, 4601 ], 4602 name: 'ERC20BridgeFinalized', 4603 }, 4604 { 4605 type: 'event', 4606 anonymous: false, 4607 inputs: [ 4608 { 4609 name: 'localToken', 4610 internalType: 'address', 4611 type: 'address', 4612 indexed: true, 4613 }, 4614 { 4615 name: 'remoteToken', 4616 internalType: 'address', 4617 type: 'address', 4618 indexed: true, 4619 }, 4620 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 4621 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 4622 { 4623 name: 'amount', 4624 internalType: 'uint256', 4625 type: 'uint256', 4626 indexed: false, 4627 }, 4628 { 4629 name: 'extraData', 4630 internalType: 'bytes', 4631 type: 'bytes', 4632 indexed: false, 4633 }, 4634 ], 4635 name: 'ERC20BridgeInitiated', 4636 }, 4637 { 4638 type: 'event', 4639 anonymous: false, 4640 inputs: [ 4641 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 4642 { name: 'to', internalType: 'address', type: 'address', indexed: true }, 4643 { 4644 name: 'amount', 4645 internalType: 'uint256', 4646 type: 'uint256', 4647 indexed: false, 4648 }, 4649 { 4650 name: 'extraData', 4651 internalType: 'bytes', 4652 type: 'bytes', 4653 indexed: false, 4654 }, 4655 ], 4656 name: 'ETHBridgeFinalized', 4657 }, 4658 { 4659 type: 'event', 4660 anonymous: false, 4661 inputs: [ 4662 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 4663 { name: 'to', internalType: 'address', type: 'address', indexed: true }, 4664 { 4665 name: 'amount', 4666 internalType: 'uint256', 4667 type: 'uint256', 4668 indexed: false, 4669 }, 4670 { 4671 name: 'extraData', 4672 internalType: 'bytes', 4673 type: 'bytes', 4674 indexed: false, 4675 }, 4676 ], 4677 name: 'ETHBridgeInitiated', 4678 }, 4679 { 4680 type: 'event', 4681 anonymous: false, 4682 inputs: [ 4683 { 4684 name: 'l1Token', 4685 internalType: 'address', 4686 type: 'address', 4687 indexed: true, 4688 }, 4689 { 4690 name: 'l2Token', 4691 internalType: 'address', 4692 type: 'address', 4693 indexed: true, 4694 }, 4695 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 4696 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 4697 { 4698 name: 'amount', 4699 internalType: 'uint256', 4700 type: 'uint256', 4701 indexed: false, 4702 }, 4703 { 4704 name: 'extraData', 4705 internalType: 'bytes', 4706 type: 'bytes', 4707 indexed: false, 4708 }, 4709 ], 4710 name: 'WithdrawalInitiated', 4711 }, 4712 { 4713 stateMutability: 'view', 4714 type: 'function', 4715 inputs: [], 4716 name: 'OTHER_BRIDGE', 4717 outputs: [ 4718 { name: '', internalType: 'contract StandardBridge', type: 'address' }, 4719 ], 4720 }, 4721 { 4722 stateMutability: 'nonpayable', 4723 type: 'function', 4724 inputs: [ 4725 { name: '_localToken', internalType: 'address', type: 'address' }, 4726 { name: '_remoteToken', internalType: 'address', type: 'address' }, 4727 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 4728 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 4729 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4730 ], 4731 name: 'bridgeERC20', 4732 outputs: [], 4733 }, 4734 { 4735 stateMutability: 'nonpayable', 4736 type: 'function', 4737 inputs: [ 4738 { name: '_localToken', internalType: 'address', type: 'address' }, 4739 { name: '_remoteToken', internalType: 'address', type: 'address' }, 4740 { name: '_to', internalType: 'address', type: 'address' }, 4741 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 4742 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 4743 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4744 ], 4745 name: 'bridgeERC20To', 4746 outputs: [], 4747 }, 4748 { 4749 stateMutability: 'payable', 4750 type: 'function', 4751 inputs: [ 4752 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 4753 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4754 ], 4755 name: 'bridgeETH', 4756 outputs: [], 4757 }, 4758 { 4759 stateMutability: 'payable', 4760 type: 'function', 4761 inputs: [ 4762 { name: '_to', internalType: 'address', type: 'address' }, 4763 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 4764 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4765 ], 4766 name: 'bridgeETHTo', 4767 outputs: [], 4768 }, 4769 { 4770 stateMutability: 'view', 4771 type: 'function', 4772 inputs: [ 4773 { name: '', internalType: 'address', type: 'address' }, 4774 { name: '', internalType: 'address', type: 'address' }, 4775 ], 4776 name: 'deposits', 4777 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4778 }, 4779 { 4780 stateMutability: 'nonpayable', 4781 type: 'function', 4782 inputs: [ 4783 { name: '_localToken', internalType: 'address', type: 'address' }, 4784 { name: '_remoteToken', internalType: 'address', type: 'address' }, 4785 { name: '_from', internalType: 'address', type: 'address' }, 4786 { name: '_to', internalType: 'address', type: 'address' }, 4787 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 4788 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4789 ], 4790 name: 'finalizeBridgeERC20', 4791 outputs: [], 4792 }, 4793 { 4794 stateMutability: 'payable', 4795 type: 'function', 4796 inputs: [ 4797 { name: '_from', internalType: 'address', type: 'address' }, 4798 { name: '_to', internalType: 'address', type: 'address' }, 4799 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 4800 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4801 ], 4802 name: 'finalizeBridgeETH', 4803 outputs: [], 4804 }, 4805 { 4806 stateMutability: 'payable', 4807 type: 'function', 4808 inputs: [ 4809 { name: '_l1Token', internalType: 'address', type: 'address' }, 4810 { name: '_l2Token', internalType: 'address', type: 'address' }, 4811 { name: '_from', internalType: 'address', type: 'address' }, 4812 { name: '_to', internalType: 'address', type: 'address' }, 4813 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 4814 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4815 ], 4816 name: 'finalizeDeposit', 4817 outputs: [], 4818 }, 4819 { 4820 stateMutability: 'view', 4821 type: 'function', 4822 inputs: [], 4823 name: 'l1TokenBridge', 4824 outputs: [{ name: '', internalType: 'address', type: 'address' }], 4825 }, 4826 { 4827 stateMutability: 'view', 4828 type: 'function', 4829 inputs: [], 4830 name: 'messenger', 4831 outputs: [ 4832 { 4833 name: '', 4834 internalType: 'contract CrossDomainMessenger', 4835 type: 'address', 4836 }, 4837 ], 4838 }, 4839 { 4840 stateMutability: 'view', 4841 type: 'function', 4842 inputs: [], 4843 name: 'version', 4844 outputs: [{ name: '', internalType: 'string', type: 'string' }], 4845 }, 4846 { 4847 stateMutability: 'payable', 4848 type: 'function', 4849 inputs: [ 4850 { name: '_l2Token', internalType: 'address', type: 'address' }, 4851 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 4852 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 4853 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4854 ], 4855 name: 'withdraw', 4856 outputs: [], 4857 }, 4858 { 4859 stateMutability: 'payable', 4860 type: 'function', 4861 inputs: [ 4862 { name: '_l2Token', internalType: 'address', type: 'address' }, 4863 { name: '_to', internalType: 'address', type: 'address' }, 4864 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 4865 { name: '_minGasLimit', internalType: 'uint32', type: 'uint32' }, 4866 { name: '_extraData', internalType: 'bytes', type: 'bytes' }, 4867 ], 4868 name: 'withdrawTo', 4869 outputs: [], 4870 }, 4871 { stateMutability: 'payable', type: 'receive' }, 4872 ] as const 4873 4874 /** 4875 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000010) 4876 */ 4877 export const l2StandardBridgeAddress = { 4878 420: '0x4200000000000000000000000000000000000010', 4879 } as const 4880 4881 /** 4882 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000010) 4883 */ 4884 export const l2StandardBridgeConfig = { 4885 address: l2StandardBridgeAddress, 4886 abi: l2StandardBridgeABI, 4887 } as const 4888 4889 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 4890 // L2ToL1MessagePasser 4891 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 4892 4893 /** 4894 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000016) 4895 */ 4896 export const l2ToL1MessagePasserABI = [ 4897 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 4898 { 4899 type: 'event', 4900 anonymous: false, 4901 inputs: [ 4902 { 4903 name: 'nonce', 4904 internalType: 'uint256', 4905 type: 'uint256', 4906 indexed: true, 4907 }, 4908 { 4909 name: 'sender', 4910 internalType: 'address', 4911 type: 'address', 4912 indexed: true, 4913 }, 4914 { 4915 name: 'target', 4916 internalType: 'address', 4917 type: 'address', 4918 indexed: true, 4919 }, 4920 { 4921 name: 'value', 4922 internalType: 'uint256', 4923 type: 'uint256', 4924 indexed: false, 4925 }, 4926 { 4927 name: 'gasLimit', 4928 internalType: 'uint256', 4929 type: 'uint256', 4930 indexed: false, 4931 }, 4932 { name: 'data', internalType: 'bytes', type: 'bytes', indexed: false }, 4933 { 4934 name: 'withdrawalHash', 4935 internalType: 'bytes32', 4936 type: 'bytes32', 4937 indexed: false, 4938 }, 4939 ], 4940 name: 'MessagePassed', 4941 }, 4942 { 4943 type: 'event', 4944 anonymous: false, 4945 inputs: [ 4946 { 4947 name: 'amount', 4948 internalType: 'uint256', 4949 type: 'uint256', 4950 indexed: true, 4951 }, 4952 ], 4953 name: 'WithdrawerBalanceBurnt', 4954 }, 4955 { 4956 stateMutability: 'view', 4957 type: 'function', 4958 inputs: [], 4959 name: 'MESSAGE_VERSION', 4960 outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }], 4961 }, 4962 { 4963 stateMutability: 'nonpayable', 4964 type: 'function', 4965 inputs: [], 4966 name: 'burn', 4967 outputs: [], 4968 }, 4969 { 4970 stateMutability: 'payable', 4971 type: 'function', 4972 inputs: [ 4973 { name: '_target', internalType: 'address', type: 'address' }, 4974 { name: '_gasLimit', internalType: 'uint256', type: 'uint256' }, 4975 { name: '_data', internalType: 'bytes', type: 'bytes' }, 4976 ], 4977 name: 'initiateWithdrawal', 4978 outputs: [], 4979 }, 4980 { 4981 stateMutability: 'view', 4982 type: 'function', 4983 inputs: [], 4984 name: 'messageNonce', 4985 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 4986 }, 4987 { 4988 stateMutability: 'view', 4989 type: 'function', 4990 inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 4991 name: 'sentMessages', 4992 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 4993 }, 4994 { 4995 stateMutability: 'view', 4996 type: 'function', 4997 inputs: [], 4998 name: 'version', 4999 outputs: [{ name: '', internalType: 'string', type: 'string' }], 5000 }, 5001 { stateMutability: 'payable', type: 'receive' }, 5002 ] as const 5003 5004 /** 5005 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000016) 5006 */ 5007 export const l2ToL1MessagePasserAddress = { 5008 420: '0x4200000000000000000000000000000000000016', 5009 } as const 5010 5011 /** 5012 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000016) 5013 */ 5014 export const l2ToL1MessagePasserConfig = { 5015 address: l2ToL1MessagePasserAddress, 5016 abi: l2ToL1MessagePasserABI, 5017 } as const 5018 5019 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5020 // MintManager 5021 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5022 5023 /** 5024 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x5C4e7Ba1E219E47948e6e3F55019A647bA501005) 5025 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76) 5026 */ 5027 export const mintManagerABI = [ 5028 { 5029 stateMutability: 'nonpayable', 5030 type: 'constructor', 5031 inputs: [ 5032 { name: '_upgrader', internalType: 'address', type: 'address' }, 5033 { name: '_governanceToken', internalType: 'address', type: 'address' }, 5034 ], 5035 }, 5036 { 5037 type: 'event', 5038 anonymous: false, 5039 inputs: [ 5040 { 5041 name: 'previousOwner', 5042 internalType: 'address', 5043 type: 'address', 5044 indexed: true, 5045 }, 5046 { 5047 name: 'newOwner', 5048 internalType: 'address', 5049 type: 'address', 5050 indexed: true, 5051 }, 5052 ], 5053 name: 'OwnershipTransferred', 5054 }, 5055 { 5056 stateMutability: 'view', 5057 type: 'function', 5058 inputs: [], 5059 name: 'DENOMINATOR', 5060 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 5061 }, 5062 { 5063 stateMutability: 'view', 5064 type: 'function', 5065 inputs: [], 5066 name: 'MINT_CAP', 5067 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 5068 }, 5069 { 5070 stateMutability: 'view', 5071 type: 'function', 5072 inputs: [], 5073 name: 'MINT_PERIOD', 5074 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 5075 }, 5076 { 5077 stateMutability: 'view', 5078 type: 'function', 5079 inputs: [], 5080 name: 'governanceToken', 5081 outputs: [ 5082 { name: '', internalType: 'contract GovernanceToken', type: 'address' }, 5083 ], 5084 }, 5085 { 5086 stateMutability: 'nonpayable', 5087 type: 'function', 5088 inputs: [ 5089 { name: '_account', internalType: 'address', type: 'address' }, 5090 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 5091 ], 5092 name: 'mint', 5093 outputs: [], 5094 }, 5095 { 5096 stateMutability: 'view', 5097 type: 'function', 5098 inputs: [], 5099 name: 'mintPermittedAfter', 5100 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 5101 }, 5102 { 5103 stateMutability: 'view', 5104 type: 'function', 5105 inputs: [], 5106 name: 'owner', 5107 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5108 }, 5109 { 5110 stateMutability: 'nonpayable', 5111 type: 'function', 5112 inputs: [], 5113 name: 'renounceOwnership', 5114 outputs: [], 5115 }, 5116 { 5117 stateMutability: 'nonpayable', 5118 type: 'function', 5119 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 5120 name: 'transferOwnership', 5121 outputs: [], 5122 }, 5123 { 5124 stateMutability: 'nonpayable', 5125 type: 'function', 5126 inputs: [ 5127 { name: '_newMintManager', internalType: 'address', type: 'address' }, 5128 ], 5129 name: 'upgrade', 5130 outputs: [], 5131 }, 5132 ] as const 5133 5134 /** 5135 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x5C4e7Ba1E219E47948e6e3F55019A647bA501005) 5136 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76) 5137 */ 5138 export const mintManagerAddress = { 5139 10: '0x5C4e7Ba1E219E47948e6e3F55019A647bA501005', 5140 420: '0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76', 5141 } as const 5142 5143 /** 5144 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x5C4e7Ba1E219E47948e6e3F55019A647bA501005) 5145 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76) 5146 */ 5147 export const mintManagerConfig = { 5148 address: mintManagerAddress, 5149 abi: mintManagerABI, 5150 } as const 5151 5152 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5153 // OptimismMintableERC20Factory 5154 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5155 5156 /** 5157 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000012) 5158 */ 5159 export const optimismMintableErc20FactoryABI = [ 5160 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 5161 { 5162 type: 'event', 5163 anonymous: false, 5164 inputs: [ 5165 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 5166 ], 5167 name: 'Initialized', 5168 }, 5169 { 5170 type: 'event', 5171 anonymous: false, 5172 inputs: [ 5173 { 5174 name: 'localToken', 5175 internalType: 'address', 5176 type: 'address', 5177 indexed: true, 5178 }, 5179 { 5180 name: 'remoteToken', 5181 internalType: 'address', 5182 type: 'address', 5183 indexed: true, 5184 }, 5185 { 5186 name: 'deployer', 5187 internalType: 'address', 5188 type: 'address', 5189 indexed: false, 5190 }, 5191 ], 5192 name: 'OptimismMintableERC20Created', 5193 }, 5194 { 5195 type: 'event', 5196 anonymous: false, 5197 inputs: [ 5198 { 5199 name: 'remoteToken', 5200 internalType: 'address', 5201 type: 'address', 5202 indexed: true, 5203 }, 5204 { 5205 name: 'localToken', 5206 internalType: 'address', 5207 type: 'address', 5208 indexed: true, 5209 }, 5210 ], 5211 name: 'StandardL2TokenCreated', 5212 }, 5213 { 5214 stateMutability: 'view', 5215 type: 'function', 5216 inputs: [], 5217 name: 'bridge', 5218 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5219 }, 5220 { 5221 stateMutability: 'nonpayable', 5222 type: 'function', 5223 inputs: [ 5224 { name: '_remoteToken', internalType: 'address', type: 'address' }, 5225 { name: '_name', internalType: 'string', type: 'string' }, 5226 { name: '_symbol', internalType: 'string', type: 'string' }, 5227 ], 5228 name: 'createOptimismMintableERC20', 5229 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5230 }, 5231 { 5232 stateMutability: 'nonpayable', 5233 type: 'function', 5234 inputs: [ 5235 { name: '_remoteToken', internalType: 'address', type: 'address' }, 5236 { name: '_name', internalType: 'string', type: 'string' }, 5237 { name: '_symbol', internalType: 'string', type: 'string' }, 5238 { name: '_decimals', internalType: 'uint8', type: 'uint8' }, 5239 ], 5240 name: 'createOptimismMintableERC20WithDecimals', 5241 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5242 }, 5243 { 5244 stateMutability: 'nonpayable', 5245 type: 'function', 5246 inputs: [ 5247 { name: '_remoteToken', internalType: 'address', type: 'address' }, 5248 { name: '_name', internalType: 'string', type: 'string' }, 5249 { name: '_symbol', internalType: 'string', type: 'string' }, 5250 ], 5251 name: 'createStandardL2Token', 5252 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5253 }, 5254 { 5255 stateMutability: 'nonpayable', 5256 type: 'function', 5257 inputs: [{ name: '_bridge', internalType: 'address', type: 'address' }], 5258 name: 'initialize', 5259 outputs: [], 5260 }, 5261 { 5262 stateMutability: 'view', 5263 type: 'function', 5264 inputs: [], 5265 name: 'version', 5266 outputs: [{ name: '', internalType: 'string', type: 'string' }], 5267 }, 5268 ] as const 5269 5270 /** 5271 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000012) 5272 */ 5273 export const optimismMintableErc20FactoryAddress = { 5274 1: '0x4200000000000000000000000000000000000012', 5275 } as const 5276 5277 /** 5278 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000012) 5279 */ 5280 export const optimismMintableErc20FactoryConfig = { 5281 address: optimismMintableErc20FactoryAddress, 5282 abi: optimismMintableErc20FactoryABI, 5283 } as const 5284 5285 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5286 // OptimismMintableERC20Factory_goerli 5287 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5288 5289 /** 5290 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000012) 5291 */ 5292 export const optimismMintableErc20FactoryGoerliABI = [ 5293 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 5294 { 5295 type: 'event', 5296 anonymous: false, 5297 inputs: [ 5298 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 5299 ], 5300 name: 'Initialized', 5301 }, 5302 { 5303 type: 'event', 5304 anonymous: false, 5305 inputs: [ 5306 { 5307 name: 'localToken', 5308 internalType: 'address', 5309 type: 'address', 5310 indexed: true, 5311 }, 5312 { 5313 name: 'remoteToken', 5314 internalType: 'address', 5315 type: 'address', 5316 indexed: true, 5317 }, 5318 { 5319 name: 'deployer', 5320 internalType: 'address', 5321 type: 'address', 5322 indexed: false, 5323 }, 5324 ], 5325 name: 'OptimismMintableERC20Created', 5326 }, 5327 { 5328 type: 'event', 5329 anonymous: false, 5330 inputs: [ 5331 { 5332 name: 'remoteToken', 5333 internalType: 'address', 5334 type: 'address', 5335 indexed: true, 5336 }, 5337 { 5338 name: 'localToken', 5339 internalType: 'address', 5340 type: 'address', 5341 indexed: true, 5342 }, 5343 ], 5344 name: 'StandardL2TokenCreated', 5345 }, 5346 { 5347 stateMutability: 'view', 5348 type: 'function', 5349 inputs: [], 5350 name: 'bridge', 5351 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5352 }, 5353 { 5354 stateMutability: 'nonpayable', 5355 type: 'function', 5356 inputs: [ 5357 { name: '_remoteToken', internalType: 'address', type: 'address' }, 5358 { name: '_name', internalType: 'string', type: 'string' }, 5359 { name: '_symbol', internalType: 'string', type: 'string' }, 5360 ], 5361 name: 'createOptimismMintableERC20', 5362 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5363 }, 5364 { 5365 stateMutability: 'nonpayable', 5366 type: 'function', 5367 inputs: [ 5368 { name: '_remoteToken', internalType: 'address', type: 'address' }, 5369 { name: '_name', internalType: 'string', type: 'string' }, 5370 { name: '_symbol', internalType: 'string', type: 'string' }, 5371 { name: '_decimals', internalType: 'uint8', type: 'uint8' }, 5372 ], 5373 name: 'createOptimismMintableERC20WithDecimals', 5374 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5375 }, 5376 { 5377 stateMutability: 'nonpayable', 5378 type: 'function', 5379 inputs: [ 5380 { name: '_remoteToken', internalType: 'address', type: 'address' }, 5381 { name: '_name', internalType: 'string', type: 'string' }, 5382 { name: '_symbol', internalType: 'string', type: 'string' }, 5383 ], 5384 name: 'createStandardL2Token', 5385 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5386 }, 5387 { 5388 stateMutability: 'nonpayable', 5389 type: 'function', 5390 inputs: [{ name: '_bridge', internalType: 'address', type: 'address' }], 5391 name: 'initialize', 5392 outputs: [], 5393 }, 5394 { 5395 stateMutability: 'view', 5396 type: 'function', 5397 inputs: [], 5398 name: 'version', 5399 outputs: [{ name: '', internalType: 'string', type: 'string' }], 5400 }, 5401 ] as const 5402 5403 /** 5404 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000012) 5405 */ 5406 export const optimismMintableErc20FactoryGoerliAddress = { 5407 5: '0x4200000000000000000000000000000000000012', 5408 } as const 5409 5410 /** 5411 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000012) 5412 */ 5413 export const optimismMintableErc20FactoryGoerliConfig = { 5414 address: optimismMintableErc20FactoryGoerliAddress, 5415 abi: optimismMintableErc20FactoryGoerliABI, 5416 } as const 5417 5418 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5419 // OptimismMintableERC20Factory_optimism-goerli 5420 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5421 5422 /** 5423 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000012) 5424 */ 5425 export const optimismMintableErc20FactoryOptimismGoerliABI = [ 5426 { 5427 stateMutability: 'nonpayable', 5428 type: 'constructor', 5429 inputs: [{ name: '_bridge', internalType: 'address', type: 'address' }], 5430 }, 5431 { 5432 type: 'event', 5433 anonymous: false, 5434 inputs: [ 5435 { 5436 name: 'localToken', 5437 internalType: 'address', 5438 type: 'address', 5439 indexed: true, 5440 }, 5441 { 5442 name: 'remoteToken', 5443 internalType: 'address', 5444 type: 'address', 5445 indexed: true, 5446 }, 5447 { 5448 name: 'deployer', 5449 internalType: 'address', 5450 type: 'address', 5451 indexed: false, 5452 }, 5453 ], 5454 name: 'OptimismMintableERC20Created', 5455 }, 5456 { 5457 type: 'event', 5458 anonymous: false, 5459 inputs: [ 5460 { 5461 name: 'remoteToken', 5462 internalType: 'address', 5463 type: 'address', 5464 indexed: true, 5465 }, 5466 { 5467 name: 'localToken', 5468 internalType: 'address', 5469 type: 'address', 5470 indexed: true, 5471 }, 5472 ], 5473 name: 'StandardL2TokenCreated', 5474 }, 5475 { 5476 stateMutability: 'view', 5477 type: 'function', 5478 inputs: [], 5479 name: 'BRIDGE', 5480 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5481 }, 5482 { 5483 stateMutability: 'nonpayable', 5484 type: 'function', 5485 inputs: [ 5486 { name: '_remoteToken', internalType: 'address', type: 'address' }, 5487 { name: '_name', internalType: 'string', type: 'string' }, 5488 { name: '_symbol', internalType: 'string', type: 'string' }, 5489 ], 5490 name: 'createOptimismMintableERC20', 5491 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5492 }, 5493 { 5494 stateMutability: 'nonpayable', 5495 type: 'function', 5496 inputs: [ 5497 { name: '_remoteToken', internalType: 'address', type: 'address' }, 5498 { name: '_name', internalType: 'string', type: 'string' }, 5499 { name: '_symbol', internalType: 'string', type: 'string' }, 5500 ], 5501 name: 'createStandardL2Token', 5502 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5503 }, 5504 { 5505 stateMutability: 'view', 5506 type: 'function', 5507 inputs: [], 5508 name: 'version', 5509 outputs: [{ name: '', internalType: 'string', type: 'string' }], 5510 }, 5511 ] as const 5512 5513 /** 5514 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000012) 5515 */ 5516 export const optimismMintableErc20FactoryOptimismGoerliAddress = { 5517 420: '0x4200000000000000000000000000000000000012', 5518 } as const 5519 5520 /** 5521 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000012) 5522 */ 5523 export const optimismMintableErc20FactoryOptimismGoerliConfig = { 5524 address: optimismMintableErc20FactoryOptimismGoerliAddress, 5525 abi: optimismMintableErc20FactoryOptimismGoerliABI, 5526 } as const 5527 5528 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5529 // OptimismMintableERC721Factory 5530 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5531 5532 /** 5533 * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000017) 5534 */ 5535 export const optimismMintableErc721FactoryABI = [ 5536 { 5537 stateMutability: 'nonpayable', 5538 type: 'constructor', 5539 inputs: [ 5540 { name: '_bridge', internalType: 'address', type: 'address' }, 5541 { name: '_remoteChainId', internalType: 'uint256', type: 'uint256' }, 5542 ], 5543 }, 5544 { 5545 type: 'event', 5546 anonymous: false, 5547 inputs: [ 5548 { 5549 name: 'localToken', 5550 internalType: 'address', 5551 type: 'address', 5552 indexed: true, 5553 }, 5554 { 5555 name: 'remoteToken', 5556 internalType: 'address', 5557 type: 'address', 5558 indexed: true, 5559 }, 5560 { 5561 name: 'deployer', 5562 internalType: 'address', 5563 type: 'address', 5564 indexed: false, 5565 }, 5566 ], 5567 name: 'OptimismMintableERC721Created', 5568 }, 5569 { 5570 stateMutability: 'view', 5571 type: 'function', 5572 inputs: [], 5573 name: 'bridge', 5574 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5575 }, 5576 { 5577 stateMutability: 'nonpayable', 5578 type: 'function', 5579 inputs: [ 5580 { name: '_remoteToken', internalType: 'address', type: 'address' }, 5581 { name: '_name', internalType: 'string', type: 'string' }, 5582 { name: '_symbol', internalType: 'string', type: 'string' }, 5583 ], 5584 name: 'createOptimismMintableERC721', 5585 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5586 }, 5587 { 5588 stateMutability: 'view', 5589 type: 'function', 5590 inputs: [{ name: '', internalType: 'address', type: 'address' }], 5591 name: 'isOptimismMintableERC721', 5592 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 5593 }, 5594 { 5595 stateMutability: 'view', 5596 type: 'function', 5597 inputs: [], 5598 name: 'remoteChainId', 5599 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 5600 }, 5601 { 5602 stateMutability: 'view', 5603 type: 'function', 5604 inputs: [], 5605 name: 'version', 5606 outputs: [{ name: '', internalType: 'string', type: 'string' }], 5607 }, 5608 ] as const 5609 5610 /** 5611 * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000017) 5612 */ 5613 export const optimismMintableErc721FactoryAddress = { 5614 10: '0x4200000000000000000000000000000000000017', 5615 } as const 5616 5617 /** 5618 * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000017) 5619 */ 5620 export const optimismMintableErc721FactoryConfig = { 5621 address: optimismMintableErc721FactoryAddress, 5622 abi: optimismMintableErc721FactoryABI, 5623 } as const 5624 5625 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5626 // OptimismMintableERC721Factory_optimism-goerli 5627 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5628 5629 /** 5630 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000017) 5631 */ 5632 export const optimismMintableErc721FactoryOptimismGoerliABI = [ 5633 { 5634 stateMutability: 'nonpayable', 5635 type: 'constructor', 5636 inputs: [ 5637 { name: '_bridge', internalType: 'address', type: 'address' }, 5638 { name: '_remoteChainId', internalType: 'uint256', type: 'uint256' }, 5639 ], 5640 }, 5641 { 5642 type: 'event', 5643 anonymous: false, 5644 inputs: [ 5645 { 5646 name: 'localToken', 5647 internalType: 'address', 5648 type: 'address', 5649 indexed: true, 5650 }, 5651 { 5652 name: 'remoteToken', 5653 internalType: 'address', 5654 type: 'address', 5655 indexed: true, 5656 }, 5657 { 5658 name: 'deployer', 5659 internalType: 'address', 5660 type: 'address', 5661 indexed: false, 5662 }, 5663 ], 5664 name: 'OptimismMintableERC721Created', 5665 }, 5666 { 5667 stateMutability: 'view', 5668 type: 'function', 5669 inputs: [], 5670 name: 'BRIDGE', 5671 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5672 }, 5673 { 5674 stateMutability: 'view', 5675 type: 'function', 5676 inputs: [], 5677 name: 'REMOTE_CHAIN_ID', 5678 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 5679 }, 5680 { 5681 stateMutability: 'nonpayable', 5682 type: 'function', 5683 inputs: [ 5684 { name: '_remoteToken', internalType: 'address', type: 'address' }, 5685 { name: '_name', internalType: 'string', type: 'string' }, 5686 { name: '_symbol', internalType: 'string', type: 'string' }, 5687 ], 5688 name: 'createOptimismMintableERC721', 5689 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5690 }, 5691 { 5692 stateMutability: 'view', 5693 type: 'function', 5694 inputs: [{ name: '', internalType: 'address', type: 'address' }], 5695 name: 'isOptimismMintableERC721', 5696 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 5697 }, 5698 { 5699 stateMutability: 'view', 5700 type: 'function', 5701 inputs: [], 5702 name: 'version', 5703 outputs: [{ name: '', internalType: 'string', type: 'string' }], 5704 }, 5705 ] as const 5706 5707 /** 5708 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000017) 5709 */ 5710 export const optimismMintableErc721FactoryOptimismGoerliAddress = { 5711 420: '0x4200000000000000000000000000000000000017', 5712 } as const 5713 5714 /** 5715 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000017) 5716 */ 5717 export const optimismMintableErc721FactoryOptimismGoerliConfig = { 5718 address: optimismMintableErc721FactoryOptimismGoerliAddress, 5719 abi: optimismMintableErc721FactoryOptimismGoerliABI, 5720 } as const 5721 5722 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5723 // OptimismPortal 5724 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 5725 5726 /** 5727 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xbEb5Fc579115071764c7423A4f12eDde41f106Ed) 5728 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383) 5729 */ 5730 export const optimismPortalABI = [ 5731 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 5732 { 5733 type: 'event', 5734 anonymous: false, 5735 inputs: [ 5736 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 5737 ], 5738 name: 'Initialized', 5739 }, 5740 { 5741 type: 'event', 5742 anonymous: false, 5743 inputs: [ 5744 { 5745 name: 'account', 5746 internalType: 'address', 5747 type: 'address', 5748 indexed: false, 5749 }, 5750 ], 5751 name: 'Paused', 5752 }, 5753 { 5754 type: 'event', 5755 anonymous: false, 5756 inputs: [ 5757 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 5758 { name: 'to', internalType: 'address', type: 'address', indexed: true }, 5759 { 5760 name: 'version', 5761 internalType: 'uint256', 5762 type: 'uint256', 5763 indexed: true, 5764 }, 5765 { 5766 name: 'opaqueData', 5767 internalType: 'bytes', 5768 type: 'bytes', 5769 indexed: false, 5770 }, 5771 ], 5772 name: 'TransactionDeposited', 5773 }, 5774 { 5775 type: 'event', 5776 anonymous: false, 5777 inputs: [ 5778 { 5779 name: 'account', 5780 internalType: 'address', 5781 type: 'address', 5782 indexed: false, 5783 }, 5784 ], 5785 name: 'Unpaused', 5786 }, 5787 { 5788 type: 'event', 5789 anonymous: false, 5790 inputs: [ 5791 { 5792 name: 'withdrawalHash', 5793 internalType: 'bytes32', 5794 type: 'bytes32', 5795 indexed: true, 5796 }, 5797 { name: 'success', internalType: 'bool', type: 'bool', indexed: false }, 5798 ], 5799 name: 'WithdrawalFinalized', 5800 }, 5801 { 5802 type: 'event', 5803 anonymous: false, 5804 inputs: [ 5805 { 5806 name: 'withdrawalHash', 5807 internalType: 'bytes32', 5808 type: 'bytes32', 5809 indexed: true, 5810 }, 5811 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 5812 { name: 'to', internalType: 'address', type: 'address', indexed: true }, 5813 ], 5814 name: 'WithdrawalProven', 5815 }, 5816 { 5817 stateMutability: 'payable', 5818 type: 'function', 5819 inputs: [ 5820 { name: '_to', internalType: 'address', type: 'address' }, 5821 { name: '_value', internalType: 'uint256', type: 'uint256' }, 5822 { name: '_gasLimit', internalType: 'uint64', type: 'uint64' }, 5823 { name: '_isCreation', internalType: 'bool', type: 'bool' }, 5824 { name: '_data', internalType: 'bytes', type: 'bytes' }, 5825 ], 5826 name: 'depositTransaction', 5827 outputs: [], 5828 }, 5829 { 5830 stateMutability: 'payable', 5831 type: 'function', 5832 inputs: [], 5833 name: 'donateETH', 5834 outputs: [], 5835 }, 5836 { 5837 stateMutability: 'nonpayable', 5838 type: 'function', 5839 inputs: [ 5840 { 5841 name: '_tx', 5842 internalType: 'struct Types.WithdrawalTransaction', 5843 type: 'tuple', 5844 components: [ 5845 { name: 'nonce', internalType: 'uint256', type: 'uint256' }, 5846 { name: 'sender', internalType: 'address', type: 'address' }, 5847 { name: 'target', internalType: 'address', type: 'address' }, 5848 { name: 'value', internalType: 'uint256', type: 'uint256' }, 5849 { name: 'gasLimit', internalType: 'uint256', type: 'uint256' }, 5850 { name: 'data', internalType: 'bytes', type: 'bytes' }, 5851 ], 5852 }, 5853 ], 5854 name: 'finalizeWithdrawalTransaction', 5855 outputs: [], 5856 }, 5857 { 5858 stateMutability: 'view', 5859 type: 'function', 5860 inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 5861 name: 'finalizedWithdrawals', 5862 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 5863 }, 5864 { 5865 stateMutability: 'view', 5866 type: 'function', 5867 inputs: [], 5868 name: 'guardian', 5869 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5870 }, 5871 { 5872 stateMutability: 'nonpayable', 5873 type: 'function', 5874 inputs: [ 5875 { 5876 name: '_l2Oracle', 5877 internalType: 'contract L2OutputOracle', 5878 type: 'address', 5879 }, 5880 { name: '_guardian', internalType: 'address', type: 'address' }, 5881 { 5882 name: '_systemConfig', 5883 internalType: 'contract SystemConfig', 5884 type: 'address', 5885 }, 5886 { name: '_paused', internalType: 'bool', type: 'bool' }, 5887 ], 5888 name: 'initialize', 5889 outputs: [], 5890 }, 5891 { 5892 stateMutability: 'view', 5893 type: 'function', 5894 inputs: [ 5895 { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' }, 5896 ], 5897 name: 'isOutputFinalized', 5898 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 5899 }, 5900 { 5901 stateMutability: 'view', 5902 type: 'function', 5903 inputs: [], 5904 name: 'l2Oracle', 5905 outputs: [ 5906 { name: '', internalType: 'contract L2OutputOracle', type: 'address' }, 5907 ], 5908 }, 5909 { 5910 stateMutability: 'view', 5911 type: 'function', 5912 inputs: [], 5913 name: 'l2Sender', 5914 outputs: [{ name: '', internalType: 'address', type: 'address' }], 5915 }, 5916 { 5917 stateMutability: 'pure', 5918 type: 'function', 5919 inputs: [{ name: '_byteCount', internalType: 'uint64', type: 'uint64' }], 5920 name: 'minimumGasLimit', 5921 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 5922 }, 5923 { 5924 stateMutability: 'view', 5925 type: 'function', 5926 inputs: [], 5927 name: 'params', 5928 outputs: [ 5929 { name: 'prevBaseFee', internalType: 'uint128', type: 'uint128' }, 5930 { name: 'prevBoughtGas', internalType: 'uint64', type: 'uint64' }, 5931 { name: 'prevBlockNum', internalType: 'uint64', type: 'uint64' }, 5932 ], 5933 }, 5934 { 5935 stateMutability: 'nonpayable', 5936 type: 'function', 5937 inputs: [], 5938 name: 'pause', 5939 outputs: [], 5940 }, 5941 { 5942 stateMutability: 'view', 5943 type: 'function', 5944 inputs: [], 5945 name: 'paused', 5946 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 5947 }, 5948 { 5949 stateMutability: 'nonpayable', 5950 type: 'function', 5951 inputs: [ 5952 { 5953 name: '_tx', 5954 internalType: 'struct Types.WithdrawalTransaction', 5955 type: 'tuple', 5956 components: [ 5957 { name: 'nonce', internalType: 'uint256', type: 'uint256' }, 5958 { name: 'sender', internalType: 'address', type: 'address' }, 5959 { name: 'target', internalType: 'address', type: 'address' }, 5960 { name: 'value', internalType: 'uint256', type: 'uint256' }, 5961 { name: 'gasLimit', internalType: 'uint256', type: 'uint256' }, 5962 { name: 'data', internalType: 'bytes', type: 'bytes' }, 5963 ], 5964 }, 5965 { name: '_l2OutputIndex', internalType: 'uint256', type: 'uint256' }, 5966 { 5967 name: '_outputRootProof', 5968 internalType: 'struct Types.OutputRootProof', 5969 type: 'tuple', 5970 components: [ 5971 { name: 'version', internalType: 'bytes32', type: 'bytes32' }, 5972 { name: 'stateRoot', internalType: 'bytes32', type: 'bytes32' }, 5973 { 5974 name: 'messagePasserStorageRoot', 5975 internalType: 'bytes32', 5976 type: 'bytes32', 5977 }, 5978 { name: 'latestBlockhash', internalType: 'bytes32', type: 'bytes32' }, 5979 ], 5980 }, 5981 { name: '_withdrawalProof', internalType: 'bytes[]', type: 'bytes[]' }, 5982 ], 5983 name: 'proveWithdrawalTransaction', 5984 outputs: [], 5985 }, 5986 { 5987 stateMutability: 'view', 5988 type: 'function', 5989 inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 5990 name: 'provenWithdrawals', 5991 outputs: [ 5992 { name: 'outputRoot', internalType: 'bytes32', type: 'bytes32' }, 5993 { name: 'timestamp', internalType: 'uint128', type: 'uint128' }, 5994 { name: 'l2OutputIndex', internalType: 'uint128', type: 'uint128' }, 5995 ], 5996 }, 5997 { 5998 stateMutability: 'view', 5999 type: 'function', 6000 inputs: [], 6001 name: 'systemConfig', 6002 outputs: [ 6003 { name: '', internalType: 'contract SystemConfig', type: 'address' }, 6004 ], 6005 }, 6006 { 6007 stateMutability: 'nonpayable', 6008 type: 'function', 6009 inputs: [], 6010 name: 'unpause', 6011 outputs: [], 6012 }, 6013 { 6014 stateMutability: 'view', 6015 type: 'function', 6016 inputs: [], 6017 name: 'version', 6018 outputs: [{ name: '', internalType: 'string', type: 'string' }], 6019 }, 6020 { stateMutability: 'payable', type: 'receive' }, 6021 ] as const 6022 6023 /** 6024 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xbEb5Fc579115071764c7423A4f12eDde41f106Ed) 6025 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383) 6026 */ 6027 export const optimismPortalAddress = { 6028 1: '0xbEb5Fc579115071764c7423A4f12eDde41f106Ed', 6029 5: '0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383', 6030 } as const 6031 6032 /** 6033 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xbEb5Fc579115071764c7423A4f12eDde41f106Ed) 6034 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383) 6035 */ 6036 export const optimismPortalConfig = { 6037 address: optimismPortalAddress, 6038 abi: optimismPortalABI, 6039 } as const 6040 6041 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6042 // Optimist 6043 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6044 6045 /** 6046 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 6047 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 6048 */ 6049 export const optimistABI = [ 6050 { 6051 stateMutability: 'nonpayable', 6052 type: 'constructor', 6053 inputs: [ 6054 { name: '_name', internalType: 'string', type: 'string' }, 6055 { name: '_symbol', internalType: 'string', type: 'string' }, 6056 { name: '_baseURIAttestor', internalType: 'address', type: 'address' }, 6057 { 6058 name: '_attestationStation', 6059 internalType: 'contract AttestationStation', 6060 type: 'address', 6061 }, 6062 { 6063 name: '_optimistAllowlist', 6064 internalType: 'contract OptimistAllowlist', 6065 type: 'address', 6066 }, 6067 ], 6068 }, 6069 { 6070 type: 'event', 6071 anonymous: false, 6072 inputs: [ 6073 { 6074 name: 'owner', 6075 internalType: 'address', 6076 type: 'address', 6077 indexed: true, 6078 }, 6079 { 6080 name: 'approved', 6081 internalType: 'address', 6082 type: 'address', 6083 indexed: true, 6084 }, 6085 { 6086 name: 'tokenId', 6087 internalType: 'uint256', 6088 type: 'uint256', 6089 indexed: true, 6090 }, 6091 ], 6092 name: 'Approval', 6093 }, 6094 { 6095 type: 'event', 6096 anonymous: false, 6097 inputs: [ 6098 { 6099 name: 'owner', 6100 internalType: 'address', 6101 type: 'address', 6102 indexed: true, 6103 }, 6104 { 6105 name: 'operator', 6106 internalType: 'address', 6107 type: 'address', 6108 indexed: true, 6109 }, 6110 { name: 'approved', internalType: 'bool', type: 'bool', indexed: false }, 6111 ], 6112 name: 'ApprovalForAll', 6113 }, 6114 { 6115 type: 'event', 6116 anonymous: false, 6117 inputs: [ 6118 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 6119 ], 6120 name: 'Initialized', 6121 }, 6122 { 6123 type: 'event', 6124 anonymous: false, 6125 inputs: [ 6126 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 6127 { name: 'to', internalType: 'address', type: 'address', indexed: true }, 6128 { 6129 name: 'tokenId', 6130 internalType: 'uint256', 6131 type: 'uint256', 6132 indexed: true, 6133 }, 6134 ], 6135 name: 'Transfer', 6136 }, 6137 { 6138 stateMutability: 'view', 6139 type: 'function', 6140 inputs: [], 6141 name: 'ATTESTATION_STATION', 6142 outputs: [ 6143 { 6144 name: '', 6145 internalType: 'contract AttestationStation', 6146 type: 'address', 6147 }, 6148 ], 6149 }, 6150 { 6151 stateMutability: 'view', 6152 type: 'function', 6153 inputs: [], 6154 name: 'BASE_URI_ATTESTATION_KEY', 6155 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 6156 }, 6157 { 6158 stateMutability: 'view', 6159 type: 'function', 6160 inputs: [], 6161 name: 'BASE_URI_ATTESTOR', 6162 outputs: [{ name: '', internalType: 'address', type: 'address' }], 6163 }, 6164 { 6165 stateMutability: 'view', 6166 type: 'function', 6167 inputs: [], 6168 name: 'OPTIMIST_ALLOWLIST', 6169 outputs: [ 6170 { name: '', internalType: 'contract OptimistAllowlist', type: 'address' }, 6171 ], 6172 }, 6173 { 6174 stateMutability: 'pure', 6175 type: 'function', 6176 inputs: [ 6177 { name: '', internalType: 'address', type: 'address' }, 6178 { name: '', internalType: 'uint256', type: 'uint256' }, 6179 ], 6180 name: 'approve', 6181 outputs: [], 6182 }, 6183 { 6184 stateMutability: 'view', 6185 type: 'function', 6186 inputs: [{ name: 'owner', internalType: 'address', type: 'address' }], 6187 name: 'balanceOf', 6188 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 6189 }, 6190 { 6191 stateMutability: 'view', 6192 type: 'function', 6193 inputs: [], 6194 name: 'baseURI', 6195 outputs: [{ name: '', internalType: 'string', type: 'string' }], 6196 }, 6197 { 6198 stateMutability: 'nonpayable', 6199 type: 'function', 6200 inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }], 6201 name: 'burn', 6202 outputs: [], 6203 }, 6204 { 6205 stateMutability: 'view', 6206 type: 'function', 6207 inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }], 6208 name: 'getApproved', 6209 outputs: [{ name: '', internalType: 'address', type: 'address' }], 6210 }, 6211 { 6212 stateMutability: 'nonpayable', 6213 type: 'function', 6214 inputs: [ 6215 { name: '_name', internalType: 'string', type: 'string' }, 6216 { name: '_symbol', internalType: 'string', type: 'string' }, 6217 ], 6218 name: 'initialize', 6219 outputs: [], 6220 }, 6221 { 6222 stateMutability: 'view', 6223 type: 'function', 6224 inputs: [ 6225 { name: 'owner', internalType: 'address', type: 'address' }, 6226 { name: 'operator', internalType: 'address', type: 'address' }, 6227 ], 6228 name: 'isApprovedForAll', 6229 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 6230 }, 6231 { 6232 stateMutability: 'view', 6233 type: 'function', 6234 inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }], 6235 name: 'isOnAllowList', 6236 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 6237 }, 6238 { 6239 stateMutability: 'nonpayable', 6240 type: 'function', 6241 inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }], 6242 name: 'mint', 6243 outputs: [], 6244 }, 6245 { 6246 stateMutability: 'view', 6247 type: 'function', 6248 inputs: [], 6249 name: 'name', 6250 outputs: [{ name: '', internalType: 'string', type: 'string' }], 6251 }, 6252 { 6253 stateMutability: 'view', 6254 type: 'function', 6255 inputs: [{ name: 'tokenId', internalType: 'uint256', type: 'uint256' }], 6256 name: 'ownerOf', 6257 outputs: [{ name: '', internalType: 'address', type: 'address' }], 6258 }, 6259 { 6260 stateMutability: 'nonpayable', 6261 type: 'function', 6262 inputs: [ 6263 { name: 'from', internalType: 'address', type: 'address' }, 6264 { name: 'to', internalType: 'address', type: 'address' }, 6265 { name: 'tokenId', internalType: 'uint256', type: 'uint256' }, 6266 ], 6267 name: 'safeTransferFrom', 6268 outputs: [], 6269 }, 6270 { 6271 stateMutability: 'nonpayable', 6272 type: 'function', 6273 inputs: [ 6274 { name: 'from', internalType: 'address', type: 'address' }, 6275 { name: 'to', internalType: 'address', type: 'address' }, 6276 { name: 'tokenId', internalType: 'uint256', type: 'uint256' }, 6277 { name: 'data', internalType: 'bytes', type: 'bytes' }, 6278 ], 6279 name: 'safeTransferFrom', 6280 outputs: [], 6281 }, 6282 { 6283 stateMutability: 'nonpayable', 6284 type: 'function', 6285 inputs: [ 6286 { name: '', internalType: 'address', type: 'address' }, 6287 { name: '', internalType: 'bool', type: 'bool' }, 6288 ], 6289 name: 'setApprovalForAll', 6290 outputs: [], 6291 }, 6292 { 6293 stateMutability: 'view', 6294 type: 'function', 6295 inputs: [{ name: 'interfaceId', internalType: 'bytes4', type: 'bytes4' }], 6296 name: 'supportsInterface', 6297 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 6298 }, 6299 { 6300 stateMutability: 'view', 6301 type: 'function', 6302 inputs: [], 6303 name: 'symbol', 6304 outputs: [{ name: '', internalType: 'string', type: 'string' }], 6305 }, 6306 { 6307 stateMutability: 'pure', 6308 type: 'function', 6309 inputs: [{ name: '_owner', internalType: 'address', type: 'address' }], 6310 name: 'tokenIdOfAddress', 6311 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 6312 }, 6313 { 6314 stateMutability: 'view', 6315 type: 'function', 6316 inputs: [{ name: '_tokenId', internalType: 'uint256', type: 'uint256' }], 6317 name: 'tokenURI', 6318 outputs: [{ name: '', internalType: 'string', type: 'string' }], 6319 }, 6320 { 6321 stateMutability: 'nonpayable', 6322 type: 'function', 6323 inputs: [ 6324 { name: 'from', internalType: 'address', type: 'address' }, 6325 { name: 'to', internalType: 'address', type: 'address' }, 6326 { name: 'tokenId', internalType: 'uint256', type: 'uint256' }, 6327 ], 6328 name: 'transferFrom', 6329 outputs: [], 6330 }, 6331 { 6332 stateMutability: 'view', 6333 type: 'function', 6334 inputs: [], 6335 name: 'version', 6336 outputs: [{ name: '', internalType: 'string', type: 'string' }], 6337 }, 6338 ] as const 6339 6340 /** 6341 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 6342 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 6343 */ 6344 export const optimistAddress = { 6345 10: '0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5', 6346 420: '0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5', 6347 } as const 6348 6349 /** 6350 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 6351 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 6352 */ 6353 export const optimistConfig = { 6354 address: optimistAddress, 6355 abi: optimistABI, 6356 } as const 6357 6358 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6359 // OptimistAllowlist 6360 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6361 6362 /** 6363 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180) 6364 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180) 6365 */ 6366 export const optimistAllowlistABI = [ 6367 { 6368 stateMutability: 'nonpayable', 6369 type: 'constructor', 6370 inputs: [ 6371 { 6372 name: '_attestationStation', 6373 internalType: 'contract AttestationStation', 6374 type: 'address', 6375 }, 6376 { name: '_allowlistAttestor', internalType: 'address', type: 'address' }, 6377 { 6378 name: '_coinbaseQuestAttestor', 6379 internalType: 'address', 6380 type: 'address', 6381 }, 6382 { name: '_optimistInviter', internalType: 'address', type: 'address' }, 6383 ], 6384 }, 6385 { 6386 stateMutability: 'view', 6387 type: 'function', 6388 inputs: [], 6389 name: 'ALLOWLIST_ATTESTOR', 6390 outputs: [{ name: '', internalType: 'address', type: 'address' }], 6391 }, 6392 { 6393 stateMutability: 'view', 6394 type: 'function', 6395 inputs: [], 6396 name: 'ATTESTATION_STATION', 6397 outputs: [ 6398 { 6399 name: '', 6400 internalType: 'contract AttestationStation', 6401 type: 'address', 6402 }, 6403 ], 6404 }, 6405 { 6406 stateMutability: 'view', 6407 type: 'function', 6408 inputs: [], 6409 name: 'COINBASE_QUEST_ATTESTOR', 6410 outputs: [{ name: '', internalType: 'address', type: 'address' }], 6411 }, 6412 { 6413 stateMutability: 'view', 6414 type: 'function', 6415 inputs: [], 6416 name: 'COINBASE_QUEST_ELIGIBLE_ATTESTATION_KEY', 6417 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 6418 }, 6419 { 6420 stateMutability: 'view', 6421 type: 'function', 6422 inputs: [], 6423 name: 'OPTIMIST_CAN_MINT_ATTESTATION_KEY', 6424 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 6425 }, 6426 { 6427 stateMutability: 'view', 6428 type: 'function', 6429 inputs: [], 6430 name: 'OPTIMIST_INVITER', 6431 outputs: [{ name: '', internalType: 'address', type: 'address' }], 6432 }, 6433 { 6434 stateMutability: 'view', 6435 type: 'function', 6436 inputs: [{ name: '_claimer', internalType: 'address', type: 'address' }], 6437 name: 'isAllowedToMint', 6438 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 6439 }, 6440 { 6441 stateMutability: 'view', 6442 type: 'function', 6443 inputs: [], 6444 name: 'version', 6445 outputs: [{ name: '', internalType: 'string', type: 'string' }], 6446 }, 6447 ] as const 6448 6449 /** 6450 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180) 6451 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180) 6452 */ 6453 export const optimistAllowlistAddress = { 6454 10: '0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180', 6455 420: '0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180', 6456 } as const 6457 6458 /** 6459 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180) 6460 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180) 6461 */ 6462 export const optimistAllowlistConfig = { 6463 address: optimistAllowlistAddress, 6464 abi: optimistAllowlistABI, 6465 } as const 6466 6467 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6468 // OptimistInviter 6469 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6470 6471 /** 6472 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 6473 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 6474 */ 6475 export const optimistInviterABI = [ 6476 { 6477 stateMutability: 'nonpayable', 6478 type: 'constructor', 6479 inputs: [ 6480 { name: '_inviteGranter', internalType: 'address', type: 'address' }, 6481 { 6482 name: '_attestationStation', 6483 internalType: 'contract AttestationStation', 6484 type: 'address', 6485 }, 6486 ], 6487 }, 6488 { 6489 type: 'event', 6490 anonymous: false, 6491 inputs: [ 6492 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 6493 ], 6494 name: 'Initialized', 6495 }, 6496 { 6497 type: 'event', 6498 anonymous: false, 6499 inputs: [ 6500 { 6501 name: 'issuer', 6502 internalType: 'address', 6503 type: 'address', 6504 indexed: true, 6505 }, 6506 { 6507 name: 'claimer', 6508 internalType: 'address', 6509 type: 'address', 6510 indexed: true, 6511 }, 6512 ], 6513 name: 'InviteClaimed', 6514 }, 6515 { 6516 stateMutability: 'view', 6517 type: 'function', 6518 inputs: [], 6519 name: 'ATTESTATION_STATION', 6520 outputs: [ 6521 { 6522 name: '', 6523 internalType: 'contract AttestationStation', 6524 type: 'address', 6525 }, 6526 ], 6527 }, 6528 { 6529 stateMutability: 'view', 6530 type: 'function', 6531 inputs: [], 6532 name: 'CAN_INVITE_ATTESTATION_KEY', 6533 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 6534 }, 6535 { 6536 stateMutability: 'view', 6537 type: 'function', 6538 inputs: [], 6539 name: 'CLAIMABLE_INVITE_TYPEHASH', 6540 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 6541 }, 6542 { 6543 stateMutability: 'view', 6544 type: 'function', 6545 inputs: [], 6546 name: 'EIP712_VERSION', 6547 outputs: [{ name: '', internalType: 'string', type: 'string' }], 6548 }, 6549 { 6550 stateMutability: 'view', 6551 type: 'function', 6552 inputs: [], 6553 name: 'INVITE_GRANTER', 6554 outputs: [{ name: '', internalType: 'address', type: 'address' }], 6555 }, 6556 { 6557 stateMutability: 'view', 6558 type: 'function', 6559 inputs: [], 6560 name: 'MIN_COMMITMENT_PERIOD', 6561 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 6562 }, 6563 { 6564 stateMutability: 'nonpayable', 6565 type: 'function', 6566 inputs: [ 6567 { name: '_claimer', internalType: 'address', type: 'address' }, 6568 { 6569 name: '_claimableInvite', 6570 internalType: 'struct OptimistInviter.ClaimableInvite', 6571 type: 'tuple', 6572 components: [ 6573 { name: 'issuer', internalType: 'address', type: 'address' }, 6574 { name: 'nonce', internalType: 'bytes32', type: 'bytes32' }, 6575 ], 6576 }, 6577 { name: '_signature', internalType: 'bytes', type: 'bytes' }, 6578 ], 6579 name: 'claimInvite', 6580 outputs: [], 6581 }, 6582 { 6583 stateMutability: 'nonpayable', 6584 type: 'function', 6585 inputs: [{ name: '_commitment', internalType: 'bytes32', type: 'bytes32' }], 6586 name: 'commitInvite', 6587 outputs: [], 6588 }, 6589 { 6590 stateMutability: 'view', 6591 type: 'function', 6592 inputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 6593 name: 'commitmentTimestamps', 6594 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 6595 }, 6596 { 6597 stateMutability: 'nonpayable', 6598 type: 'function', 6599 inputs: [{ name: '_name', internalType: 'string', type: 'string' }], 6600 name: 'initialize', 6601 outputs: [], 6602 }, 6603 { 6604 stateMutability: 'view', 6605 type: 'function', 6606 inputs: [{ name: '', internalType: 'address', type: 'address' }], 6607 name: 'inviteCounts', 6608 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 6609 }, 6610 { 6611 stateMutability: 'nonpayable', 6612 type: 'function', 6613 inputs: [ 6614 { name: '_accounts', internalType: 'address[]', type: 'address[]' }, 6615 { name: '_inviteCount', internalType: 'uint256', type: 'uint256' }, 6616 ], 6617 name: 'setInviteCounts', 6618 outputs: [], 6619 }, 6620 { 6621 stateMutability: 'view', 6622 type: 'function', 6623 inputs: [ 6624 { name: '', internalType: 'address', type: 'address' }, 6625 { name: '', internalType: 'bytes32', type: 'bytes32' }, 6626 ], 6627 name: 'usedNonces', 6628 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 6629 }, 6630 { 6631 stateMutability: 'view', 6632 type: 'function', 6633 inputs: [], 6634 name: 'version', 6635 outputs: [{ name: '', internalType: 'string', type: 'string' }], 6636 }, 6637 ] as const 6638 6639 /** 6640 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 6641 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 6642 */ 6643 export const optimistInviterAddress = { 6644 10: '0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929', 6645 420: '0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929', 6646 } as const 6647 6648 /** 6649 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 6650 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 6651 */ 6652 export const optimistInviterConfig = { 6653 address: optimistInviterAddress, 6654 abi: optimistInviterABI, 6655 } as const 6656 6657 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6658 // PortalSender 6659 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6660 6661 /** 6662 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x0A893d9576b9cFD9EF78595963dc973238E78210) 6663 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xe7FACd39531ee3C313330E93B4d7a8B8A3c84Aa4) 6664 */ 6665 export const portalSenderABI = [ 6666 { 6667 stateMutability: 'nonpayable', 6668 type: 'constructor', 6669 inputs: [ 6670 { 6671 name: '_portal', 6672 internalType: 'contract OptimismPortal', 6673 type: 'address', 6674 }, 6675 ], 6676 }, 6677 { 6678 stateMutability: 'view', 6679 type: 'function', 6680 inputs: [], 6681 name: 'PORTAL', 6682 outputs: [ 6683 { name: '', internalType: 'contract OptimismPortal', type: 'address' }, 6684 ], 6685 }, 6686 { 6687 stateMutability: 'nonpayable', 6688 type: 'function', 6689 inputs: [], 6690 name: 'donate', 6691 outputs: [], 6692 }, 6693 ] as const 6694 6695 /** 6696 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x0A893d9576b9cFD9EF78595963dc973238E78210) 6697 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xe7FACd39531ee3C313330E93B4d7a8B8A3c84Aa4) 6698 */ 6699 export const portalSenderAddress = { 6700 1: '0x0A893d9576b9cFD9EF78595963dc973238E78210', 6701 5: '0xe7FACd39531ee3C313330E93B4d7a8B8A3c84Aa4', 6702 } as const 6703 6704 /** 6705 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x0A893d9576b9cFD9EF78595963dc973238E78210) 6706 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xe7FACd39531ee3C313330E93B4d7a8B8A3c84Aa4) 6707 */ 6708 export const portalSenderConfig = { 6709 address: portalSenderAddress, 6710 abi: portalSenderABI, 6711 } as const 6712 6713 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6714 // ProtocolVersions 6715 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6716 6717 /** 6718 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x0C24F5098774aA366827D667494e9F889f7cFc08) 6719 */ 6720 export const protocolVersionsABI = [ 6721 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 6722 { 6723 type: 'event', 6724 anonymous: false, 6725 inputs: [ 6726 { 6727 name: 'version', 6728 internalType: 'uint256', 6729 type: 'uint256', 6730 indexed: true, 6731 }, 6732 { 6733 name: 'updateType', 6734 internalType: 'enum ProtocolVersions.UpdateType', 6735 type: 'uint8', 6736 indexed: true, 6737 }, 6738 { name: 'data', internalType: 'bytes', type: 'bytes', indexed: false }, 6739 ], 6740 name: 'ConfigUpdate', 6741 }, 6742 { 6743 type: 'event', 6744 anonymous: false, 6745 inputs: [ 6746 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 6747 ], 6748 name: 'Initialized', 6749 }, 6750 { 6751 type: 'event', 6752 anonymous: false, 6753 inputs: [ 6754 { 6755 name: 'previousOwner', 6756 internalType: 'address', 6757 type: 'address', 6758 indexed: true, 6759 }, 6760 { 6761 name: 'newOwner', 6762 internalType: 'address', 6763 type: 'address', 6764 indexed: true, 6765 }, 6766 ], 6767 name: 'OwnershipTransferred', 6768 }, 6769 { 6770 stateMutability: 'view', 6771 type: 'function', 6772 inputs: [], 6773 name: 'RECOMMENDED_SLOT', 6774 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 6775 }, 6776 { 6777 stateMutability: 'view', 6778 type: 'function', 6779 inputs: [], 6780 name: 'REQUIRED_SLOT', 6781 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 6782 }, 6783 { 6784 stateMutability: 'nonpayable', 6785 type: 'function', 6786 inputs: [ 6787 { name: '_owner', internalType: 'address', type: 'address' }, 6788 { name: '_required', internalType: 'ProtocolVersion', type: 'uint256' }, 6789 { 6790 name: '_recommended', 6791 internalType: 'ProtocolVersion', 6792 type: 'uint256', 6793 }, 6794 ], 6795 name: 'initialize', 6796 outputs: [], 6797 }, 6798 { 6799 stateMutability: 'view', 6800 type: 'function', 6801 inputs: [], 6802 name: 'owner', 6803 outputs: [{ name: '', internalType: 'address', type: 'address' }], 6804 }, 6805 { 6806 stateMutability: 'view', 6807 type: 'function', 6808 inputs: [], 6809 name: 'recommended', 6810 outputs: [ 6811 { name: 'out_', internalType: 'ProtocolVersion', type: 'uint256' }, 6812 ], 6813 }, 6814 { 6815 stateMutability: 'nonpayable', 6816 type: 'function', 6817 inputs: [], 6818 name: 'renounceOwnership', 6819 outputs: [], 6820 }, 6821 { 6822 stateMutability: 'view', 6823 type: 'function', 6824 inputs: [], 6825 name: 'required', 6826 outputs: [ 6827 { name: 'out_', internalType: 'ProtocolVersion', type: 'uint256' }, 6828 ], 6829 }, 6830 { 6831 stateMutability: 'nonpayable', 6832 type: 'function', 6833 inputs: [ 6834 { 6835 name: '_recommended', 6836 internalType: 'ProtocolVersion', 6837 type: 'uint256', 6838 }, 6839 ], 6840 name: 'setRecommended', 6841 outputs: [], 6842 }, 6843 { 6844 stateMutability: 'nonpayable', 6845 type: 'function', 6846 inputs: [ 6847 { name: '_required', internalType: 'ProtocolVersion', type: 'uint256' }, 6848 ], 6849 name: 'setRequired', 6850 outputs: [], 6851 }, 6852 { 6853 stateMutability: 'nonpayable', 6854 type: 'function', 6855 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 6856 name: 'transferOwnership', 6857 outputs: [], 6858 }, 6859 { 6860 stateMutability: 'view', 6861 type: 'function', 6862 inputs: [], 6863 name: 'version', 6864 outputs: [{ name: '', internalType: 'string', type: 'string' }], 6865 }, 6866 ] as const 6867 6868 /** 6869 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x0C24F5098774aA366827D667494e9F889f7cFc08) 6870 */ 6871 export const protocolVersionsAddress = { 6872 5: '0x0C24F5098774aA366827D667494e9F889f7cFc08', 6873 } as const 6874 6875 /** 6876 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x0C24F5098774aA366827D667494e9F889f7cFc08) 6877 */ 6878 export const protocolVersionsConfig = { 6879 address: protocolVersionsAddress, 6880 abi: protocolVersionsABI, 6881 } as const 6882 6883 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6884 // ProxyAdmin 6885 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 6886 6887 /** 6888 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000018) 6889 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000018) 6890 */ 6891 export const proxyAdminABI = [ 6892 { 6893 stateMutability: 'nonpayable', 6894 type: 'constructor', 6895 inputs: [{ name: '_owner', internalType: 'address', type: 'address' }], 6896 }, 6897 { 6898 type: 'event', 6899 anonymous: false, 6900 inputs: [ 6901 { 6902 name: 'previousOwner', 6903 internalType: 'address', 6904 type: 'address', 6905 indexed: true, 6906 }, 6907 { 6908 name: 'newOwner', 6909 internalType: 'address', 6910 type: 'address', 6911 indexed: true, 6912 }, 6913 ], 6914 name: 'OwnershipTransferred', 6915 }, 6916 { 6917 stateMutability: 'view', 6918 type: 'function', 6919 inputs: [], 6920 name: 'addressManager', 6921 outputs: [ 6922 { name: '', internalType: 'contract AddressManager', type: 'address' }, 6923 ], 6924 }, 6925 { 6926 stateMutability: 'nonpayable', 6927 type: 'function', 6928 inputs: [ 6929 { name: '_proxy', internalType: 'address payable', type: 'address' }, 6930 { name: '_newAdmin', internalType: 'address', type: 'address' }, 6931 ], 6932 name: 'changeProxyAdmin', 6933 outputs: [], 6934 }, 6935 { 6936 stateMutability: 'view', 6937 type: 'function', 6938 inputs: [ 6939 { name: '_proxy', internalType: 'address payable', type: 'address' }, 6940 ], 6941 name: 'getProxyAdmin', 6942 outputs: [{ name: '', internalType: 'address', type: 'address' }], 6943 }, 6944 { 6945 stateMutability: 'view', 6946 type: 'function', 6947 inputs: [{ name: '_proxy', internalType: 'address', type: 'address' }], 6948 name: 'getProxyImplementation', 6949 outputs: [{ name: '', internalType: 'address', type: 'address' }], 6950 }, 6951 { 6952 stateMutability: 'view', 6953 type: 'function', 6954 inputs: [{ name: '', internalType: 'address', type: 'address' }], 6955 name: 'implementationName', 6956 outputs: [{ name: '', internalType: 'string', type: 'string' }], 6957 }, 6958 { 6959 stateMutability: 'view', 6960 type: 'function', 6961 inputs: [], 6962 name: 'isUpgrading', 6963 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 6964 }, 6965 { 6966 stateMutability: 'view', 6967 type: 'function', 6968 inputs: [], 6969 name: 'owner', 6970 outputs: [{ name: '', internalType: 'address', type: 'address' }], 6971 }, 6972 { 6973 stateMutability: 'view', 6974 type: 'function', 6975 inputs: [{ name: '', internalType: 'address', type: 'address' }], 6976 name: 'proxyType', 6977 outputs: [ 6978 { name: '', internalType: 'enum ProxyAdmin.ProxyType', type: 'uint8' }, 6979 ], 6980 }, 6981 { 6982 stateMutability: 'nonpayable', 6983 type: 'function', 6984 inputs: [], 6985 name: 'renounceOwnership', 6986 outputs: [], 6987 }, 6988 { 6989 stateMutability: 'nonpayable', 6990 type: 'function', 6991 inputs: [ 6992 { name: '_name', internalType: 'string', type: 'string' }, 6993 { name: '_address', internalType: 'address', type: 'address' }, 6994 ], 6995 name: 'setAddress', 6996 outputs: [], 6997 }, 6998 { 6999 stateMutability: 'nonpayable', 7000 type: 'function', 7001 inputs: [ 7002 { 7003 name: '_address', 7004 internalType: 'contract AddressManager', 7005 type: 'address', 7006 }, 7007 ], 7008 name: 'setAddressManager', 7009 outputs: [], 7010 }, 7011 { 7012 stateMutability: 'nonpayable', 7013 type: 'function', 7014 inputs: [ 7015 { name: '_address', internalType: 'address', type: 'address' }, 7016 { name: '_name', internalType: 'string', type: 'string' }, 7017 ], 7018 name: 'setImplementationName', 7019 outputs: [], 7020 }, 7021 { 7022 stateMutability: 'nonpayable', 7023 type: 'function', 7024 inputs: [ 7025 { name: '_address', internalType: 'address', type: 'address' }, 7026 { 7027 name: '_type', 7028 internalType: 'enum ProxyAdmin.ProxyType', 7029 type: 'uint8', 7030 }, 7031 ], 7032 name: 'setProxyType', 7033 outputs: [], 7034 }, 7035 { 7036 stateMutability: 'nonpayable', 7037 type: 'function', 7038 inputs: [{ name: '_upgrading', internalType: 'bool', type: 'bool' }], 7039 name: 'setUpgrading', 7040 outputs: [], 7041 }, 7042 { 7043 stateMutability: 'nonpayable', 7044 type: 'function', 7045 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 7046 name: 'transferOwnership', 7047 outputs: [], 7048 }, 7049 { 7050 stateMutability: 'nonpayable', 7051 type: 'function', 7052 inputs: [ 7053 { name: '_proxy', internalType: 'address payable', type: 'address' }, 7054 { name: '_implementation', internalType: 'address', type: 'address' }, 7055 ], 7056 name: 'upgrade', 7057 outputs: [], 7058 }, 7059 { 7060 stateMutability: 'payable', 7061 type: 'function', 7062 inputs: [ 7063 { name: '_proxy', internalType: 'address payable', type: 'address' }, 7064 { name: '_implementation', internalType: 'address', type: 'address' }, 7065 { name: '_data', internalType: 'bytes', type: 'bytes' }, 7066 ], 7067 name: 'upgradeAndCall', 7068 outputs: [], 7069 }, 7070 ] as const 7071 7072 /** 7073 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000018) 7074 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000018) 7075 */ 7076 export const proxyAdminAddress = { 7077 1: '0x4200000000000000000000000000000000000018', 7078 5: '0x4200000000000000000000000000000000000018', 7079 } as const 7080 7081 /** 7082 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000018) 7083 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000018) 7084 */ 7085 export const proxyAdminConfig = { 7086 address: proxyAdminAddress, 7087 abi: proxyAdminABI, 7088 } as const 7089 7090 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 7091 // SchemaRegistry 7092 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 7093 7094 /** 7095 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13) 7096 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2545fa928d5d278cA75Fd47306e4a89096ff6403) 7097 */ 7098 export const schemaRegistryABI = [ 7099 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 7100 { type: 'error', inputs: [], name: 'AlreadyExists' }, 7101 { 7102 type: 'event', 7103 anonymous: false, 7104 inputs: [ 7105 { name: 'uid', internalType: 'bytes32', type: 'bytes32', indexed: true }, 7106 { 7107 name: 'registerer', 7108 internalType: 'address', 7109 type: 'address', 7110 indexed: false, 7111 }, 7112 ], 7113 name: 'Registered', 7114 }, 7115 { 7116 stateMutability: 'view', 7117 type: 'function', 7118 inputs: [{ name: 'uid', internalType: 'bytes32', type: 'bytes32' }], 7119 name: 'getSchema', 7120 outputs: [ 7121 { 7122 name: '', 7123 internalType: 'struct SchemaRecord', 7124 type: 'tuple', 7125 components: [ 7126 { name: 'uid', internalType: 'bytes32', type: 'bytes32' }, 7127 { 7128 name: 'resolver', 7129 internalType: 'contract ISchemaResolver', 7130 type: 'address', 7131 }, 7132 { name: 'revocable', internalType: 'bool', type: 'bool' }, 7133 { name: 'schema', internalType: 'string', type: 'string' }, 7134 ], 7135 }, 7136 ], 7137 }, 7138 { 7139 stateMutability: 'nonpayable', 7140 type: 'function', 7141 inputs: [ 7142 { name: 'schema', internalType: 'string', type: 'string' }, 7143 { 7144 name: 'resolver', 7145 internalType: 'contract ISchemaResolver', 7146 type: 'address', 7147 }, 7148 { name: 'revocable', internalType: 'bool', type: 'bool' }, 7149 ], 7150 name: 'register', 7151 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 7152 }, 7153 { 7154 stateMutability: 'view', 7155 type: 'function', 7156 inputs: [], 7157 name: 'version', 7158 outputs: [{ name: '', internalType: 'string', type: 'string' }], 7159 }, 7160 ] as const 7161 7162 /** 7163 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13) 7164 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2545fa928d5d278cA75Fd47306e4a89096ff6403) 7165 */ 7166 export const schemaRegistryAddress = { 7167 10: '0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13', 7168 420: '0x2545fa928d5d278cA75Fd47306e4a89096ff6403', 7169 } as const 7170 7171 /** 7172 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13) 7173 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2545fa928d5d278cA75Fd47306e4a89096ff6403) 7174 */ 7175 export const schemaRegistryConfig = { 7176 address: schemaRegistryAddress, 7177 abi: schemaRegistryABI, 7178 } as const 7179 7180 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 7181 // SequencerFeeVault 7182 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 7183 7184 /** 7185 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000011) 7186 */ 7187 export const sequencerFeeVaultABI = [ 7188 { 7189 stateMutability: 'nonpayable', 7190 type: 'constructor', 7191 inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }], 7192 }, 7193 { 7194 type: 'event', 7195 anonymous: false, 7196 inputs: [ 7197 { 7198 name: 'value', 7199 internalType: 'uint256', 7200 type: 'uint256', 7201 indexed: false, 7202 }, 7203 { name: 'to', internalType: 'address', type: 'address', indexed: false }, 7204 { 7205 name: 'from', 7206 internalType: 'address', 7207 type: 'address', 7208 indexed: false, 7209 }, 7210 ], 7211 name: 'Withdrawal', 7212 }, 7213 { 7214 stateMutability: 'view', 7215 type: 'function', 7216 inputs: [], 7217 name: 'MIN_WITHDRAWAL_AMOUNT', 7218 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 7219 }, 7220 { 7221 stateMutability: 'view', 7222 type: 'function', 7223 inputs: [], 7224 name: 'RECIPIENT', 7225 outputs: [{ name: '', internalType: 'address', type: 'address' }], 7226 }, 7227 { 7228 stateMutability: 'view', 7229 type: 'function', 7230 inputs: [], 7231 name: 'l1FeeWallet', 7232 outputs: [{ name: '', internalType: 'address', type: 'address' }], 7233 }, 7234 { 7235 stateMutability: 'view', 7236 type: 'function', 7237 inputs: [], 7238 name: 'totalProcessed', 7239 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 7240 }, 7241 { 7242 stateMutability: 'view', 7243 type: 'function', 7244 inputs: [], 7245 name: 'version', 7246 outputs: [{ name: '', internalType: 'string', type: 'string' }], 7247 }, 7248 { 7249 stateMutability: 'nonpayable', 7250 type: 'function', 7251 inputs: [], 7252 name: 'withdraw', 7253 outputs: [], 7254 }, 7255 { stateMutability: 'payable', type: 'receive' }, 7256 ] as const 7257 7258 /** 7259 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000011) 7260 */ 7261 export const sequencerFeeVaultAddress = { 7262 420: '0x4200000000000000000000000000000000000011', 7263 } as const 7264 7265 /** 7266 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000011) 7267 */ 7268 export const sequencerFeeVaultConfig = { 7269 address: sequencerFeeVaultAddress, 7270 abi: sequencerFeeVaultABI, 7271 } as const 7272 7273 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 7274 // SystemConfig 7275 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 7276 7277 /** 7278 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x229047fed2591dbec1eF1118d64F7aF3dB9EB290) 7279 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60) 7280 */ 7281 export const systemConfigABI = [ 7282 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 7283 { 7284 type: 'event', 7285 anonymous: false, 7286 inputs: [ 7287 { 7288 name: 'version', 7289 internalType: 'uint256', 7290 type: 'uint256', 7291 indexed: true, 7292 }, 7293 { 7294 name: 'updateType', 7295 internalType: 'enum SystemConfig.UpdateType', 7296 type: 'uint8', 7297 indexed: true, 7298 }, 7299 { name: 'data', internalType: 'bytes', type: 'bytes', indexed: false }, 7300 ], 7301 name: 'ConfigUpdate', 7302 }, 7303 { 7304 type: 'event', 7305 anonymous: false, 7306 inputs: [ 7307 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 7308 ], 7309 name: 'Initialized', 7310 }, 7311 { 7312 type: 'event', 7313 anonymous: false, 7314 inputs: [ 7315 { 7316 name: 'previousOwner', 7317 internalType: 'address', 7318 type: 'address', 7319 indexed: true, 7320 }, 7321 { 7322 name: 'newOwner', 7323 internalType: 'address', 7324 type: 'address', 7325 indexed: true, 7326 }, 7327 ], 7328 name: 'OwnershipTransferred', 7329 }, 7330 { 7331 stateMutability: 'view', 7332 type: 'function', 7333 inputs: [], 7334 name: 'BATCH_INBOX_SLOT', 7335 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 7336 }, 7337 { 7338 stateMutability: 'view', 7339 type: 'function', 7340 inputs: [], 7341 name: 'L1_CROSS_DOMAIN_MESSENGER_SLOT', 7342 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 7343 }, 7344 { 7345 stateMutability: 'view', 7346 type: 'function', 7347 inputs: [], 7348 name: 'L1_ERC_721_BRIDGE_SLOT', 7349 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 7350 }, 7351 { 7352 stateMutability: 'view', 7353 type: 'function', 7354 inputs: [], 7355 name: 'L1_STANDARD_BRIDGE_SLOT', 7356 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 7357 }, 7358 { 7359 stateMutability: 'view', 7360 type: 'function', 7361 inputs: [], 7362 name: 'L2_OUTPUT_ORACLE_SLOT', 7363 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 7364 }, 7365 { 7366 stateMutability: 'view', 7367 type: 'function', 7368 inputs: [], 7369 name: 'OPTIMISM_MINTABLE_ERC20_FACTORY_SLOT', 7370 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 7371 }, 7372 { 7373 stateMutability: 'view', 7374 type: 'function', 7375 inputs: [], 7376 name: 'OPTIMISM_PORTAL_SLOT', 7377 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 7378 }, 7379 { 7380 stateMutability: 'view', 7381 type: 'function', 7382 inputs: [], 7383 name: 'UNSAFE_BLOCK_SIGNER_SLOT', 7384 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 7385 }, 7386 { 7387 stateMutability: 'view', 7388 type: 'function', 7389 inputs: [], 7390 name: 'batchInbox', 7391 outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }], 7392 }, 7393 { 7394 stateMutability: 'view', 7395 type: 'function', 7396 inputs: [], 7397 name: 'batcherHash', 7398 outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }], 7399 }, 7400 { 7401 stateMutability: 'view', 7402 type: 'function', 7403 inputs: [], 7404 name: 'gasLimit', 7405 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 7406 }, 7407 { 7408 stateMutability: 'nonpayable', 7409 type: 'function', 7410 inputs: [ 7411 { name: '_owner', internalType: 'address', type: 'address' }, 7412 { name: '_overhead', internalType: 'uint256', type: 'uint256' }, 7413 { name: '_scalar', internalType: 'uint256', type: 'uint256' }, 7414 { name: '_batcherHash', internalType: 'bytes32', type: 'bytes32' }, 7415 { name: '_gasLimit', internalType: 'uint64', type: 'uint64' }, 7416 { name: '_unsafeBlockSigner', internalType: 'address', type: 'address' }, 7417 { 7418 name: '_config', 7419 internalType: 'struct ResourceMetering.ResourceConfig', 7420 type: 'tuple', 7421 components: [ 7422 { name: 'maxResourceLimit', internalType: 'uint32', type: 'uint32' }, 7423 { 7424 name: 'elasticityMultiplier', 7425 internalType: 'uint8', 7426 type: 'uint8', 7427 }, 7428 { 7429 name: 'baseFeeMaxChangeDenominator', 7430 internalType: 'uint8', 7431 type: 'uint8', 7432 }, 7433 { name: 'minimumBaseFee', internalType: 'uint32', type: 'uint32' }, 7434 { name: 'systemTxMaxGas', internalType: 'uint32', type: 'uint32' }, 7435 { name: 'maximumBaseFee', internalType: 'uint128', type: 'uint128' }, 7436 ], 7437 }, 7438 { name: '_startBlock', internalType: 'uint256', type: 'uint256' }, 7439 { name: '_batchInbox', internalType: 'address', type: 'address' }, 7440 { 7441 name: '_addresses', 7442 internalType: 'struct SystemConfig.Addresses', 7443 type: 'tuple', 7444 components: [ 7445 { 7446 name: 'l1CrossDomainMessenger', 7447 internalType: 'address', 7448 type: 'address', 7449 }, 7450 { name: 'l1ERC721Bridge', internalType: 'address', type: 'address' }, 7451 { 7452 name: 'l1StandardBridge', 7453 internalType: 'address', 7454 type: 'address', 7455 }, 7456 { name: 'l2OutputOracle', internalType: 'address', type: 'address' }, 7457 { name: 'optimismPortal', internalType: 'address', type: 'address' }, 7458 { 7459 name: 'optimismMintableERC20Factory', 7460 internalType: 'address', 7461 type: 'address', 7462 }, 7463 ], 7464 }, 7465 ], 7466 name: 'initialize', 7467 outputs: [], 7468 }, 7469 { 7470 stateMutability: 'view', 7471 type: 'function', 7472 inputs: [], 7473 name: 'l1CrossDomainMessenger', 7474 outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }], 7475 }, 7476 { 7477 stateMutability: 'view', 7478 type: 'function', 7479 inputs: [], 7480 name: 'l1ERC721Bridge', 7481 outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }], 7482 }, 7483 { 7484 stateMutability: 'view', 7485 type: 'function', 7486 inputs: [], 7487 name: 'l1StandardBridge', 7488 outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }], 7489 }, 7490 { 7491 stateMutability: 'view', 7492 type: 'function', 7493 inputs: [], 7494 name: 'l2OutputOracle', 7495 outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }], 7496 }, 7497 { 7498 stateMutability: 'view', 7499 type: 'function', 7500 inputs: [], 7501 name: 'minimumGasLimit', 7502 outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }], 7503 }, 7504 { 7505 stateMutability: 'view', 7506 type: 'function', 7507 inputs: [], 7508 name: 'optimismMintableERC20Factory', 7509 outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }], 7510 }, 7511 { 7512 stateMutability: 'view', 7513 type: 'function', 7514 inputs: [], 7515 name: 'optimismPortal', 7516 outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }], 7517 }, 7518 { 7519 stateMutability: 'view', 7520 type: 'function', 7521 inputs: [], 7522 name: 'overhead', 7523 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 7524 }, 7525 { 7526 stateMutability: 'view', 7527 type: 'function', 7528 inputs: [], 7529 name: 'owner', 7530 outputs: [{ name: '', internalType: 'address', type: 'address' }], 7531 }, 7532 { 7533 stateMutability: 'nonpayable', 7534 type: 'function', 7535 inputs: [], 7536 name: 'renounceOwnership', 7537 outputs: [], 7538 }, 7539 { 7540 stateMutability: 'view', 7541 type: 'function', 7542 inputs: [], 7543 name: 'resourceConfig', 7544 outputs: [ 7545 { 7546 name: '', 7547 internalType: 'struct ResourceMetering.ResourceConfig', 7548 type: 'tuple', 7549 components: [ 7550 { name: 'maxResourceLimit', internalType: 'uint32', type: 'uint32' }, 7551 { 7552 name: 'elasticityMultiplier', 7553 internalType: 'uint8', 7554 type: 'uint8', 7555 }, 7556 { 7557 name: 'baseFeeMaxChangeDenominator', 7558 internalType: 'uint8', 7559 type: 'uint8', 7560 }, 7561 { name: 'minimumBaseFee', internalType: 'uint32', type: 'uint32' }, 7562 { name: 'systemTxMaxGas', internalType: 'uint32', type: 'uint32' }, 7563 { name: 'maximumBaseFee', internalType: 'uint128', type: 'uint128' }, 7564 ], 7565 }, 7566 ], 7567 }, 7568 { 7569 stateMutability: 'view', 7570 type: 'function', 7571 inputs: [], 7572 name: 'scalar', 7573 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 7574 }, 7575 { 7576 stateMutability: 'nonpayable', 7577 type: 'function', 7578 inputs: [ 7579 { name: '_batcherHash', internalType: 'bytes32', type: 'bytes32' }, 7580 ], 7581 name: 'setBatcherHash', 7582 outputs: [], 7583 }, 7584 { 7585 stateMutability: 'nonpayable', 7586 type: 'function', 7587 inputs: [ 7588 { name: '_overhead', internalType: 'uint256', type: 'uint256' }, 7589 { name: '_scalar', internalType: 'uint256', type: 'uint256' }, 7590 ], 7591 name: 'setGasConfig', 7592 outputs: [], 7593 }, 7594 { 7595 stateMutability: 'nonpayable', 7596 type: 'function', 7597 inputs: [{ name: '_gasLimit', internalType: 'uint64', type: 'uint64' }], 7598 name: 'setGasLimit', 7599 outputs: [], 7600 }, 7601 { 7602 stateMutability: 'nonpayable', 7603 type: 'function', 7604 inputs: [ 7605 { 7606 name: '_config', 7607 internalType: 'struct ResourceMetering.ResourceConfig', 7608 type: 'tuple', 7609 components: [ 7610 { name: 'maxResourceLimit', internalType: 'uint32', type: 'uint32' }, 7611 { 7612 name: 'elasticityMultiplier', 7613 internalType: 'uint8', 7614 type: 'uint8', 7615 }, 7616 { 7617 name: 'baseFeeMaxChangeDenominator', 7618 internalType: 'uint8', 7619 type: 'uint8', 7620 }, 7621 { name: 'minimumBaseFee', internalType: 'uint32', type: 'uint32' }, 7622 { name: 'systemTxMaxGas', internalType: 'uint32', type: 'uint32' }, 7623 { name: 'maximumBaseFee', internalType: 'uint128', type: 'uint128' }, 7624 ], 7625 }, 7626 ], 7627 name: 'setResourceConfig', 7628 outputs: [], 7629 }, 7630 { 7631 stateMutability: 'nonpayable', 7632 type: 'function', 7633 inputs: [ 7634 { name: '_unsafeBlockSigner', internalType: 'address', type: 'address' }, 7635 ], 7636 name: 'setUnsafeBlockSigner', 7637 outputs: [], 7638 }, 7639 { 7640 stateMutability: 'view', 7641 type: 'function', 7642 inputs: [], 7643 name: 'startBlock', 7644 outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }], 7645 }, 7646 { 7647 stateMutability: 'nonpayable', 7648 type: 'function', 7649 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 7650 name: 'transferOwnership', 7651 outputs: [], 7652 }, 7653 { 7654 stateMutability: 'view', 7655 type: 'function', 7656 inputs: [], 7657 name: 'unsafeBlockSigner', 7658 outputs: [{ name: 'addr_', internalType: 'address', type: 'address' }], 7659 }, 7660 { 7661 stateMutability: 'view', 7662 type: 'function', 7663 inputs: [], 7664 name: 'version', 7665 outputs: [{ name: '', internalType: 'string', type: 'string' }], 7666 }, 7667 ] as const 7668 7669 /** 7670 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x229047fed2591dbec1eF1118d64F7aF3dB9EB290) 7671 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60) 7672 */ 7673 export const systemConfigAddress = { 7674 1: '0x229047fed2591dbec1eF1118d64F7aF3dB9EB290', 7675 5: '0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60', 7676 } as const 7677 7678 /** 7679 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x229047fed2591dbec1eF1118d64F7aF3dB9EB290) 7680 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60) 7681 */ 7682 export const systemConfigConfig = { 7683 address: systemConfigAddress, 7684 abi: systemConfigABI, 7685 } as const 7686 7687 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 7688 // SystemDictator 7689 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 7690 7691 /** 7692 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB) 7693 */ 7694 export const systemDictatorABI = [ 7695 { stateMutability: 'nonpayable', type: 'constructor', inputs: [] }, 7696 { 7697 type: 'event', 7698 anonymous: false, 7699 inputs: [ 7700 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 7701 ], 7702 name: 'Initialized', 7703 }, 7704 { 7705 type: 'event', 7706 anonymous: false, 7707 inputs: [ 7708 { 7709 name: 'previousOwner', 7710 internalType: 'address', 7711 type: 'address', 7712 indexed: true, 7713 }, 7714 { 7715 name: 'newOwner', 7716 internalType: 'address', 7717 type: 'address', 7718 indexed: true, 7719 }, 7720 ], 7721 name: 'OwnershipTransferred', 7722 }, 7723 { 7724 stateMutability: 'view', 7725 type: 'function', 7726 inputs: [], 7727 name: 'EXIT_1_NO_RETURN_STEP', 7728 outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }], 7729 }, 7730 { 7731 stateMutability: 'view', 7732 type: 'function', 7733 inputs: [], 7734 name: 'PROXY_TRANSFER_STEP', 7735 outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }], 7736 }, 7737 { 7738 stateMutability: 'view', 7739 type: 'function', 7740 inputs: [], 7741 name: 'config', 7742 outputs: [ 7743 { 7744 name: 'globalConfig', 7745 internalType: 'struct SystemDictator.GlobalConfig', 7746 type: 'tuple', 7747 components: [ 7748 { 7749 name: 'addressManager', 7750 internalType: 'contract AddressManager', 7751 type: 'address', 7752 }, 7753 { 7754 name: 'proxyAdmin', 7755 internalType: 'contract ProxyAdmin', 7756 type: 'address', 7757 }, 7758 { name: 'controller', internalType: 'address', type: 'address' }, 7759 { name: 'finalOwner', internalType: 'address', type: 'address' }, 7760 ], 7761 }, 7762 { 7763 name: 'proxyAddressConfig', 7764 internalType: 'struct SystemDictator.ProxyAddressConfig', 7765 type: 'tuple', 7766 components: [ 7767 { 7768 name: 'l2OutputOracleProxy', 7769 internalType: 'address', 7770 type: 'address', 7771 }, 7772 { 7773 name: 'optimismPortalProxy', 7774 internalType: 'address', 7775 type: 'address', 7776 }, 7777 { 7778 name: 'l1CrossDomainMessengerProxy', 7779 internalType: 'address', 7780 type: 'address', 7781 }, 7782 { 7783 name: 'l1StandardBridgeProxy', 7784 internalType: 'address', 7785 type: 'address', 7786 }, 7787 { 7788 name: 'optimismMintableERC20FactoryProxy', 7789 internalType: 'address', 7790 type: 'address', 7791 }, 7792 { 7793 name: 'l1ERC721BridgeProxy', 7794 internalType: 'address', 7795 type: 'address', 7796 }, 7797 { 7798 name: 'systemConfigProxy', 7799 internalType: 'address', 7800 type: 'address', 7801 }, 7802 ], 7803 }, 7804 { 7805 name: 'implementationAddressConfig', 7806 internalType: 'struct SystemDictator.ImplementationAddressConfig', 7807 type: 'tuple', 7808 components: [ 7809 { 7810 name: 'l2OutputOracleImpl', 7811 internalType: 'contract L2OutputOracle', 7812 type: 'address', 7813 }, 7814 { 7815 name: 'optimismPortalImpl', 7816 internalType: 'contract OptimismPortal', 7817 type: 'address', 7818 }, 7819 { 7820 name: 'l1CrossDomainMessengerImpl', 7821 internalType: 'contract L1CrossDomainMessenger', 7822 type: 'address', 7823 }, 7824 { 7825 name: 'l1StandardBridgeImpl', 7826 internalType: 'contract L1StandardBridge', 7827 type: 'address', 7828 }, 7829 { 7830 name: 'optimismMintableERC20FactoryImpl', 7831 internalType: 'contract OptimismMintableERC20Factory', 7832 type: 'address', 7833 }, 7834 { 7835 name: 'l1ERC721BridgeImpl', 7836 internalType: 'contract L1ERC721Bridge', 7837 type: 'address', 7838 }, 7839 { 7840 name: 'portalSenderImpl', 7841 internalType: 'contract PortalSender', 7842 type: 'address', 7843 }, 7844 { 7845 name: 'systemConfigImpl', 7846 internalType: 'contract SystemConfig', 7847 type: 'address', 7848 }, 7849 ], 7850 }, 7851 { 7852 name: 'systemConfigConfig', 7853 internalType: 'struct SystemDictator.SystemConfigConfig', 7854 type: 'tuple', 7855 components: [ 7856 { name: 'owner', internalType: 'address', type: 'address' }, 7857 { name: 'overhead', internalType: 'uint256', type: 'uint256' }, 7858 { name: 'scalar', internalType: 'uint256', type: 'uint256' }, 7859 { name: 'batcherHash', internalType: 'bytes32', type: 'bytes32' }, 7860 { name: 'gasLimit', internalType: 'uint64', type: 'uint64' }, 7861 { 7862 name: 'unsafeBlockSigner', 7863 internalType: 'address', 7864 type: 'address', 7865 }, 7866 { 7867 name: 'resourceConfig', 7868 internalType: 'struct ResourceMetering.ResourceConfig', 7869 type: 'tuple', 7870 components: [ 7871 { 7872 name: 'maxResourceLimit', 7873 internalType: 'uint32', 7874 type: 'uint32', 7875 }, 7876 { 7877 name: 'elasticityMultiplier', 7878 internalType: 'uint8', 7879 type: 'uint8', 7880 }, 7881 { 7882 name: 'baseFeeMaxChangeDenominator', 7883 internalType: 'uint8', 7884 type: 'uint8', 7885 }, 7886 { 7887 name: 'minimumBaseFee', 7888 internalType: 'uint32', 7889 type: 'uint32', 7890 }, 7891 { 7892 name: 'systemTxMaxGas', 7893 internalType: 'uint32', 7894 type: 'uint32', 7895 }, 7896 { 7897 name: 'maximumBaseFee', 7898 internalType: 'uint128', 7899 type: 'uint128', 7900 }, 7901 ], 7902 }, 7903 ], 7904 }, 7905 ], 7906 }, 7907 { 7908 stateMutability: 'view', 7909 type: 'function', 7910 inputs: [], 7911 name: 'currentStep', 7912 outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }], 7913 }, 7914 { 7915 stateMutability: 'view', 7916 type: 'function', 7917 inputs: [], 7918 name: 'dynamicConfigSet', 7919 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 7920 }, 7921 { 7922 stateMutability: 'nonpayable', 7923 type: 'function', 7924 inputs: [], 7925 name: 'exit1', 7926 outputs: [], 7927 }, 7928 { 7929 stateMutability: 'view', 7930 type: 'function', 7931 inputs: [], 7932 name: 'exited', 7933 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 7934 }, 7935 { 7936 stateMutability: 'nonpayable', 7937 type: 'function', 7938 inputs: [], 7939 name: 'finalize', 7940 outputs: [], 7941 }, 7942 { 7943 stateMutability: 'view', 7944 type: 'function', 7945 inputs: [], 7946 name: 'finalized', 7947 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 7948 }, 7949 { 7950 stateMutability: 'nonpayable', 7951 type: 'function', 7952 inputs: [ 7953 { 7954 name: '_config', 7955 internalType: 'struct SystemDictator.DeployConfig', 7956 type: 'tuple', 7957 components: [ 7958 { 7959 name: 'globalConfig', 7960 internalType: 'struct SystemDictator.GlobalConfig', 7961 type: 'tuple', 7962 components: [ 7963 { 7964 name: 'addressManager', 7965 internalType: 'contract AddressManager', 7966 type: 'address', 7967 }, 7968 { 7969 name: 'proxyAdmin', 7970 internalType: 'contract ProxyAdmin', 7971 type: 'address', 7972 }, 7973 { name: 'controller', internalType: 'address', type: 'address' }, 7974 { name: 'finalOwner', internalType: 'address', type: 'address' }, 7975 ], 7976 }, 7977 { 7978 name: 'proxyAddressConfig', 7979 internalType: 'struct SystemDictator.ProxyAddressConfig', 7980 type: 'tuple', 7981 components: [ 7982 { 7983 name: 'l2OutputOracleProxy', 7984 internalType: 'address', 7985 type: 'address', 7986 }, 7987 { 7988 name: 'optimismPortalProxy', 7989 internalType: 'address', 7990 type: 'address', 7991 }, 7992 { 7993 name: 'l1CrossDomainMessengerProxy', 7994 internalType: 'address', 7995 type: 'address', 7996 }, 7997 { 7998 name: 'l1StandardBridgeProxy', 7999 internalType: 'address', 8000 type: 'address', 8001 }, 8002 { 8003 name: 'optimismMintableERC20FactoryProxy', 8004 internalType: 'address', 8005 type: 'address', 8006 }, 8007 { 8008 name: 'l1ERC721BridgeProxy', 8009 internalType: 'address', 8010 type: 'address', 8011 }, 8012 { 8013 name: 'systemConfigProxy', 8014 internalType: 'address', 8015 type: 'address', 8016 }, 8017 ], 8018 }, 8019 { 8020 name: 'implementationAddressConfig', 8021 internalType: 'struct SystemDictator.ImplementationAddressConfig', 8022 type: 'tuple', 8023 components: [ 8024 { 8025 name: 'l2OutputOracleImpl', 8026 internalType: 'contract L2OutputOracle', 8027 type: 'address', 8028 }, 8029 { 8030 name: 'optimismPortalImpl', 8031 internalType: 'contract OptimismPortal', 8032 type: 'address', 8033 }, 8034 { 8035 name: 'l1CrossDomainMessengerImpl', 8036 internalType: 'contract L1CrossDomainMessenger', 8037 type: 'address', 8038 }, 8039 { 8040 name: 'l1StandardBridgeImpl', 8041 internalType: 'contract L1StandardBridge', 8042 type: 'address', 8043 }, 8044 { 8045 name: 'optimismMintableERC20FactoryImpl', 8046 internalType: 'contract OptimismMintableERC20Factory', 8047 type: 'address', 8048 }, 8049 { 8050 name: 'l1ERC721BridgeImpl', 8051 internalType: 'contract L1ERC721Bridge', 8052 type: 'address', 8053 }, 8054 { 8055 name: 'portalSenderImpl', 8056 internalType: 'contract PortalSender', 8057 type: 'address', 8058 }, 8059 { 8060 name: 'systemConfigImpl', 8061 internalType: 'contract SystemConfig', 8062 type: 'address', 8063 }, 8064 ], 8065 }, 8066 { 8067 name: 'systemConfigConfig', 8068 internalType: 'struct SystemDictator.SystemConfigConfig', 8069 type: 'tuple', 8070 components: [ 8071 { name: 'owner', internalType: 'address', type: 'address' }, 8072 { name: 'overhead', internalType: 'uint256', type: 'uint256' }, 8073 { name: 'scalar', internalType: 'uint256', type: 'uint256' }, 8074 { name: 'batcherHash', internalType: 'bytes32', type: 'bytes32' }, 8075 { name: 'gasLimit', internalType: 'uint64', type: 'uint64' }, 8076 { 8077 name: 'unsafeBlockSigner', 8078 internalType: 'address', 8079 type: 'address', 8080 }, 8081 { 8082 name: 'resourceConfig', 8083 internalType: 'struct ResourceMetering.ResourceConfig', 8084 type: 'tuple', 8085 components: [ 8086 { 8087 name: 'maxResourceLimit', 8088 internalType: 'uint32', 8089 type: 'uint32', 8090 }, 8091 { 8092 name: 'elasticityMultiplier', 8093 internalType: 'uint8', 8094 type: 'uint8', 8095 }, 8096 { 8097 name: 'baseFeeMaxChangeDenominator', 8098 internalType: 'uint8', 8099 type: 'uint8', 8100 }, 8101 { 8102 name: 'minimumBaseFee', 8103 internalType: 'uint32', 8104 type: 'uint32', 8105 }, 8106 { 8107 name: 'systemTxMaxGas', 8108 internalType: 'uint32', 8109 type: 'uint32', 8110 }, 8111 { 8112 name: 'maximumBaseFee', 8113 internalType: 'uint128', 8114 type: 'uint128', 8115 }, 8116 ], 8117 }, 8118 ], 8119 }, 8120 ], 8121 }, 8122 ], 8123 name: 'initialize', 8124 outputs: [], 8125 }, 8126 { 8127 stateMutability: 'view', 8128 type: 'function', 8129 inputs: [], 8130 name: 'l2OutputOracleDynamicConfig', 8131 outputs: [ 8132 { 8133 name: 'l2OutputOracleStartingBlockNumber', 8134 internalType: 'uint256', 8135 type: 'uint256', 8136 }, 8137 { 8138 name: 'l2OutputOracleStartingTimestamp', 8139 internalType: 'uint256', 8140 type: 'uint256', 8141 }, 8142 ], 8143 }, 8144 { 8145 stateMutability: 'view', 8146 type: 'function', 8147 inputs: [], 8148 name: 'oldL1CrossDomainMessenger', 8149 outputs: [{ name: '', internalType: 'address', type: 'address' }], 8150 }, 8151 { 8152 stateMutability: 'view', 8153 type: 'function', 8154 inputs: [], 8155 name: 'optimismPortalDynamicConfig', 8156 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 8157 }, 8158 { 8159 stateMutability: 'view', 8160 type: 'function', 8161 inputs: [], 8162 name: 'owner', 8163 outputs: [{ name: '', internalType: 'address', type: 'address' }], 8164 }, 8165 { 8166 stateMutability: 'nonpayable', 8167 type: 'function', 8168 inputs: [], 8169 name: 'phase1', 8170 outputs: [], 8171 }, 8172 { 8173 stateMutability: 'nonpayable', 8174 type: 'function', 8175 inputs: [], 8176 name: 'phase2', 8177 outputs: [], 8178 }, 8179 { 8180 stateMutability: 'nonpayable', 8181 type: 'function', 8182 inputs: [], 8183 name: 'renounceOwnership', 8184 outputs: [], 8185 }, 8186 { 8187 stateMutability: 'nonpayable', 8188 type: 'function', 8189 inputs: [], 8190 name: 'step1', 8191 outputs: [], 8192 }, 8193 { 8194 stateMutability: 'nonpayable', 8195 type: 'function', 8196 inputs: [], 8197 name: 'step2', 8198 outputs: [], 8199 }, 8200 { 8201 stateMutability: 'nonpayable', 8202 type: 'function', 8203 inputs: [], 8204 name: 'step3', 8205 outputs: [], 8206 }, 8207 { 8208 stateMutability: 'nonpayable', 8209 type: 'function', 8210 inputs: [], 8211 name: 'step4', 8212 outputs: [], 8213 }, 8214 { 8215 stateMutability: 'nonpayable', 8216 type: 'function', 8217 inputs: [], 8218 name: 'step5', 8219 outputs: [], 8220 }, 8221 { 8222 stateMutability: 'nonpayable', 8223 type: 'function', 8224 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 8225 name: 'transferOwnership', 8226 outputs: [], 8227 }, 8228 { 8229 stateMutability: 'nonpayable', 8230 type: 'function', 8231 inputs: [ 8232 { 8233 name: '_l2OutputOracleDynamicConfig', 8234 internalType: 'struct SystemDictator.L2OutputOracleDynamicConfig', 8235 type: 'tuple', 8236 components: [ 8237 { 8238 name: 'l2OutputOracleStartingBlockNumber', 8239 internalType: 'uint256', 8240 type: 'uint256', 8241 }, 8242 { 8243 name: 'l2OutputOracleStartingTimestamp', 8244 internalType: 'uint256', 8245 type: 'uint256', 8246 }, 8247 ], 8248 }, 8249 { 8250 name: '_optimismPortalDynamicConfig', 8251 internalType: 'bool', 8252 type: 'bool', 8253 }, 8254 ], 8255 name: 'updateDynamicConfig', 8256 outputs: [], 8257 }, 8258 ] as const 8259 8260 /** 8261 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB) 8262 */ 8263 export const systemDictatorAddress = { 8264 1: '0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB', 8265 } as const 8266 8267 /** 8268 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB) 8269 */ 8270 export const systemDictatorConfig = { 8271 address: systemDictatorAddress, 8272 abi: systemDictatorABI, 8273 } as const 8274 8275 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 8276 // SystemDictator_goerli 8277 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 8278 8279 /** 8280 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971) 8281 */ 8282 export const systemDictatorGoerliABI = [ 8283 { 8284 type: 'event', 8285 anonymous: false, 8286 inputs: [ 8287 { name: 'version', internalType: 'uint8', type: 'uint8', indexed: false }, 8288 ], 8289 name: 'Initialized', 8290 }, 8291 { 8292 type: 'event', 8293 anonymous: false, 8294 inputs: [ 8295 { 8296 name: 'previousOwner', 8297 internalType: 'address', 8298 type: 'address', 8299 indexed: true, 8300 }, 8301 { 8302 name: 'newOwner', 8303 internalType: 'address', 8304 type: 'address', 8305 indexed: true, 8306 }, 8307 ], 8308 name: 'OwnershipTransferred', 8309 }, 8310 { 8311 stateMutability: 'view', 8312 type: 'function', 8313 inputs: [], 8314 name: 'EXIT_1_NO_RETURN_STEP', 8315 outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }], 8316 }, 8317 { 8318 stateMutability: 'view', 8319 type: 'function', 8320 inputs: [], 8321 name: 'PROXY_TRANSFER_STEP', 8322 outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }], 8323 }, 8324 { 8325 stateMutability: 'view', 8326 type: 'function', 8327 inputs: [], 8328 name: 'config', 8329 outputs: [ 8330 { 8331 name: 'globalConfig', 8332 internalType: 'struct SystemDictator.GlobalConfig', 8333 type: 'tuple', 8334 components: [ 8335 { 8336 name: 'addressManager', 8337 internalType: 'contract AddressManager', 8338 type: 'address', 8339 }, 8340 { 8341 name: 'proxyAdmin', 8342 internalType: 'contract ProxyAdmin', 8343 type: 'address', 8344 }, 8345 { name: 'controller', internalType: 'address', type: 'address' }, 8346 { name: 'finalOwner', internalType: 'address', type: 'address' }, 8347 ], 8348 }, 8349 { 8350 name: 'proxyAddressConfig', 8351 internalType: 'struct SystemDictator.ProxyAddressConfig', 8352 type: 'tuple', 8353 components: [ 8354 { 8355 name: 'l2OutputOracleProxy', 8356 internalType: 'address', 8357 type: 'address', 8358 }, 8359 { 8360 name: 'optimismPortalProxy', 8361 internalType: 'address', 8362 type: 'address', 8363 }, 8364 { 8365 name: 'l1CrossDomainMessengerProxy', 8366 internalType: 'address', 8367 type: 'address', 8368 }, 8369 { 8370 name: 'l1StandardBridgeProxy', 8371 internalType: 'address', 8372 type: 'address', 8373 }, 8374 { 8375 name: 'optimismMintableERC20FactoryProxy', 8376 internalType: 'address', 8377 type: 'address', 8378 }, 8379 { 8380 name: 'l1ERC721BridgeProxy', 8381 internalType: 'address', 8382 type: 'address', 8383 }, 8384 { 8385 name: 'systemConfigProxy', 8386 internalType: 'address', 8387 type: 'address', 8388 }, 8389 ], 8390 }, 8391 { 8392 name: 'implementationAddressConfig', 8393 internalType: 'struct SystemDictator.ImplementationAddressConfig', 8394 type: 'tuple', 8395 components: [ 8396 { 8397 name: 'l2OutputOracleImpl', 8398 internalType: 'contract L2OutputOracle', 8399 type: 'address', 8400 }, 8401 { 8402 name: 'optimismPortalImpl', 8403 internalType: 'contract OptimismPortal', 8404 type: 'address', 8405 }, 8406 { 8407 name: 'l1CrossDomainMessengerImpl', 8408 internalType: 'contract L1CrossDomainMessenger', 8409 type: 'address', 8410 }, 8411 { 8412 name: 'l1StandardBridgeImpl', 8413 internalType: 'contract L1StandardBridge', 8414 type: 'address', 8415 }, 8416 { 8417 name: 'optimismMintableERC20FactoryImpl', 8418 internalType: 'contract OptimismMintableERC20Factory', 8419 type: 'address', 8420 }, 8421 { 8422 name: 'l1ERC721BridgeImpl', 8423 internalType: 'contract L1ERC721Bridge', 8424 type: 'address', 8425 }, 8426 { 8427 name: 'portalSenderImpl', 8428 internalType: 'contract PortalSender', 8429 type: 'address', 8430 }, 8431 { 8432 name: 'systemConfigImpl', 8433 internalType: 'contract SystemConfig', 8434 type: 'address', 8435 }, 8436 ], 8437 }, 8438 { 8439 name: 'systemConfigConfig', 8440 internalType: 'struct SystemDictator.SystemConfigConfig', 8441 type: 'tuple', 8442 components: [ 8443 { name: 'owner', internalType: 'address', type: 'address' }, 8444 { name: 'overhead', internalType: 'uint256', type: 'uint256' }, 8445 { name: 'scalar', internalType: 'uint256', type: 'uint256' }, 8446 { name: 'batcherHash', internalType: 'bytes32', type: 'bytes32' }, 8447 { name: 'gasLimit', internalType: 'uint64', type: 'uint64' }, 8448 { 8449 name: 'unsafeBlockSigner', 8450 internalType: 'address', 8451 type: 'address', 8452 }, 8453 ], 8454 }, 8455 ], 8456 }, 8457 { 8458 stateMutability: 'view', 8459 type: 'function', 8460 inputs: [], 8461 name: 'currentStep', 8462 outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }], 8463 }, 8464 { 8465 stateMutability: 'view', 8466 type: 'function', 8467 inputs: [], 8468 name: 'dynamicConfigSet', 8469 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 8470 }, 8471 { 8472 stateMutability: 'nonpayable', 8473 type: 'function', 8474 inputs: [], 8475 name: 'exit1', 8476 outputs: [], 8477 }, 8478 { 8479 stateMutability: 'nonpayable', 8480 type: 'function', 8481 inputs: [], 8482 name: 'finalize', 8483 outputs: [], 8484 }, 8485 { 8486 stateMutability: 'view', 8487 type: 'function', 8488 inputs: [], 8489 name: 'finalized', 8490 outputs: [{ name: '', internalType: 'bool', type: 'bool' }], 8491 }, 8492 { 8493 stateMutability: 'nonpayable', 8494 type: 'function', 8495 inputs: [ 8496 { 8497 name: '_config', 8498 internalType: 'struct SystemDictator.DeployConfig', 8499 type: 'tuple', 8500 components: [ 8501 { 8502 name: 'globalConfig', 8503 internalType: 'struct SystemDictator.GlobalConfig', 8504 type: 'tuple', 8505 components: [ 8506 { 8507 name: 'addressManager', 8508 internalType: 'contract AddressManager', 8509 type: 'address', 8510 }, 8511 { 8512 name: 'proxyAdmin', 8513 internalType: 'contract ProxyAdmin', 8514 type: 'address', 8515 }, 8516 { name: 'controller', internalType: 'address', type: 'address' }, 8517 { name: 'finalOwner', internalType: 'address', type: 'address' }, 8518 ], 8519 }, 8520 { 8521 name: 'proxyAddressConfig', 8522 internalType: 'struct SystemDictator.ProxyAddressConfig', 8523 type: 'tuple', 8524 components: [ 8525 { 8526 name: 'l2OutputOracleProxy', 8527 internalType: 'address', 8528 type: 'address', 8529 }, 8530 { 8531 name: 'optimismPortalProxy', 8532 internalType: 'address', 8533 type: 'address', 8534 }, 8535 { 8536 name: 'l1CrossDomainMessengerProxy', 8537 internalType: 'address', 8538 type: 'address', 8539 }, 8540 { 8541 name: 'l1StandardBridgeProxy', 8542 internalType: 'address', 8543 type: 'address', 8544 }, 8545 { 8546 name: 'optimismMintableERC20FactoryProxy', 8547 internalType: 'address', 8548 type: 'address', 8549 }, 8550 { 8551 name: 'l1ERC721BridgeProxy', 8552 internalType: 'address', 8553 type: 'address', 8554 }, 8555 { 8556 name: 'systemConfigProxy', 8557 internalType: 'address', 8558 type: 'address', 8559 }, 8560 ], 8561 }, 8562 { 8563 name: 'implementationAddressConfig', 8564 internalType: 'struct SystemDictator.ImplementationAddressConfig', 8565 type: 'tuple', 8566 components: [ 8567 { 8568 name: 'l2OutputOracleImpl', 8569 internalType: 'contract L2OutputOracle', 8570 type: 'address', 8571 }, 8572 { 8573 name: 'optimismPortalImpl', 8574 internalType: 'contract OptimismPortal', 8575 type: 'address', 8576 }, 8577 { 8578 name: 'l1CrossDomainMessengerImpl', 8579 internalType: 'contract L1CrossDomainMessenger', 8580 type: 'address', 8581 }, 8582 { 8583 name: 'l1StandardBridgeImpl', 8584 internalType: 'contract L1StandardBridge', 8585 type: 'address', 8586 }, 8587 { 8588 name: 'optimismMintableERC20FactoryImpl', 8589 internalType: 'contract OptimismMintableERC20Factory', 8590 type: 'address', 8591 }, 8592 { 8593 name: 'l1ERC721BridgeImpl', 8594 internalType: 'contract L1ERC721Bridge', 8595 type: 'address', 8596 }, 8597 { 8598 name: 'portalSenderImpl', 8599 internalType: 'contract PortalSender', 8600 type: 'address', 8601 }, 8602 { 8603 name: 'systemConfigImpl', 8604 internalType: 'contract SystemConfig', 8605 type: 'address', 8606 }, 8607 ], 8608 }, 8609 { 8610 name: 'systemConfigConfig', 8611 internalType: 'struct SystemDictator.SystemConfigConfig', 8612 type: 'tuple', 8613 components: [ 8614 { name: 'owner', internalType: 'address', type: 'address' }, 8615 { name: 'overhead', internalType: 'uint256', type: 'uint256' }, 8616 { name: 'scalar', internalType: 'uint256', type: 'uint256' }, 8617 { name: 'batcherHash', internalType: 'bytes32', type: 'bytes32' }, 8618 { name: 'gasLimit', internalType: 'uint64', type: 'uint64' }, 8619 { 8620 name: 'unsafeBlockSigner', 8621 internalType: 'address', 8622 type: 'address', 8623 }, 8624 ], 8625 }, 8626 ], 8627 }, 8628 ], 8629 name: 'initialize', 8630 outputs: [], 8631 }, 8632 { 8633 stateMutability: 'view', 8634 type: 'function', 8635 inputs: [], 8636 name: 'l2OutputOracleDynamicConfig', 8637 outputs: [ 8638 { 8639 name: 'l2OutputOracleStartingBlockNumber', 8640 internalType: 'uint256', 8641 type: 'uint256', 8642 }, 8643 { 8644 name: 'l2OutputOracleStartingTimestamp', 8645 internalType: 'uint256', 8646 type: 'uint256', 8647 }, 8648 ], 8649 }, 8650 { 8651 stateMutability: 'view', 8652 type: 'function', 8653 inputs: [], 8654 name: 'oldL1CrossDomainMessenger', 8655 outputs: [{ name: '', internalType: 'address', type: 'address' }], 8656 }, 8657 { 8658 stateMutability: 'view', 8659 type: 'function', 8660 inputs: [], 8661 name: 'owner', 8662 outputs: [{ name: '', internalType: 'address', type: 'address' }], 8663 }, 8664 { 8665 stateMutability: 'nonpayable', 8666 type: 'function', 8667 inputs: [], 8668 name: 'renounceOwnership', 8669 outputs: [], 8670 }, 8671 { 8672 stateMutability: 'nonpayable', 8673 type: 'function', 8674 inputs: [], 8675 name: 'step1', 8676 outputs: [], 8677 }, 8678 { 8679 stateMutability: 'nonpayable', 8680 type: 'function', 8681 inputs: [], 8682 name: 'step2', 8683 outputs: [], 8684 }, 8685 { 8686 stateMutability: 'nonpayable', 8687 type: 'function', 8688 inputs: [], 8689 name: 'step3', 8690 outputs: [], 8691 }, 8692 { 8693 stateMutability: 'nonpayable', 8694 type: 'function', 8695 inputs: [], 8696 name: 'step4', 8697 outputs: [], 8698 }, 8699 { 8700 stateMutability: 'nonpayable', 8701 type: 'function', 8702 inputs: [], 8703 name: 'step5', 8704 outputs: [], 8705 }, 8706 { 8707 stateMutability: 'nonpayable', 8708 type: 'function', 8709 inputs: [], 8710 name: 'step6', 8711 outputs: [], 8712 }, 8713 { 8714 stateMutability: 'nonpayable', 8715 type: 'function', 8716 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 8717 name: 'transferOwnership', 8718 outputs: [], 8719 }, 8720 { 8721 stateMutability: 'nonpayable', 8722 type: 'function', 8723 inputs: [ 8724 { 8725 name: '_l2OutputOracleDynamicConfig', 8726 internalType: 'struct SystemDictator.L2OutputOracleDynamicConfig', 8727 type: 'tuple', 8728 components: [ 8729 { 8730 name: 'l2OutputOracleStartingBlockNumber', 8731 internalType: 'uint256', 8732 type: 'uint256', 8733 }, 8734 { 8735 name: 'l2OutputOracleStartingTimestamp', 8736 internalType: 'uint256', 8737 type: 'uint256', 8738 }, 8739 ], 8740 }, 8741 ], 8742 name: 'updateL2OutputOracleDynamicConfig', 8743 outputs: [], 8744 }, 8745 ] as const 8746 8747 /** 8748 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971) 8749 */ 8750 export const systemDictatorGoerliAddress = { 8751 5: '0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971', 8752 } as const 8753 8754 /** 8755 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971) 8756 */ 8757 export const systemDictatorGoerliConfig = { 8758 address: systemDictatorGoerliAddress, 8759 abi: systemDictatorGoerliABI, 8760 } as const 8761 8762 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 8763 // TeleportrWithdrawer 8764 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 8765 8766 /** 8767 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x78A25524D90E3D0596558fb43789bD800a5c3007) 8768 */ 8769 export const teleportrWithdrawerABI = [ 8770 { 8771 stateMutability: 'nonpayable', 8772 type: 'constructor', 8773 inputs: [{ name: '_owner', internalType: 'address', type: 'address' }], 8774 }, 8775 { 8776 type: 'event', 8777 anonymous: false, 8778 inputs: [ 8779 { name: 'user', internalType: 'address', type: 'address', indexed: true }, 8780 { 8781 name: 'newOwner', 8782 internalType: 'address', 8783 type: 'address', 8784 indexed: true, 8785 }, 8786 ], 8787 name: 'OwnerUpdated', 8788 }, 8789 { 8790 type: 'event', 8791 anonymous: false, 8792 inputs: [ 8793 { name: 'from', internalType: 'address', type: 'address', indexed: true }, 8794 { 8795 name: 'amount', 8796 internalType: 'uint256', 8797 type: 'uint256', 8798 indexed: false, 8799 }, 8800 ], 8801 name: 'ReceivedETH', 8802 }, 8803 { 8804 type: 'event', 8805 anonymous: false, 8806 inputs: [ 8807 { 8808 name: 'withdrawer', 8809 internalType: 'address', 8810 type: 'address', 8811 indexed: true, 8812 }, 8813 { 8814 name: 'recipient', 8815 internalType: 'address', 8816 type: 'address', 8817 indexed: true, 8818 }, 8819 { 8820 name: 'asset', 8821 internalType: 'address', 8822 type: 'address', 8823 indexed: true, 8824 }, 8825 { 8826 name: 'amount', 8827 internalType: 'uint256', 8828 type: 'uint256', 8829 indexed: false, 8830 }, 8831 ], 8832 name: 'WithdrewERC20', 8833 }, 8834 { 8835 type: 'event', 8836 anonymous: false, 8837 inputs: [ 8838 { 8839 name: 'withdrawer', 8840 internalType: 'address', 8841 type: 'address', 8842 indexed: true, 8843 }, 8844 { 8845 name: 'recipient', 8846 internalType: 'address', 8847 type: 'address', 8848 indexed: true, 8849 }, 8850 { 8851 name: 'asset', 8852 internalType: 'address', 8853 type: 'address', 8854 indexed: true, 8855 }, 8856 { name: 'id', internalType: 'uint256', type: 'uint256', indexed: false }, 8857 ], 8858 name: 'WithdrewERC721', 8859 }, 8860 { 8861 type: 'event', 8862 anonymous: false, 8863 inputs: [ 8864 { 8865 name: 'withdrawer', 8866 internalType: 'address', 8867 type: 'address', 8868 indexed: true, 8869 }, 8870 { 8871 name: 'recipient', 8872 internalType: 'address', 8873 type: 'address', 8874 indexed: true, 8875 }, 8876 { 8877 name: 'amount', 8878 internalType: 'uint256', 8879 type: 'uint256', 8880 indexed: false, 8881 }, 8882 ], 8883 name: 'WithdrewETH', 8884 }, 8885 { 8886 stateMutability: 'payable', 8887 type: 'function', 8888 inputs: [ 8889 { name: '_target', internalType: 'address', type: 'address' }, 8890 { name: '_data', internalType: 'bytes', type: 'bytes' }, 8891 { name: '_gas', internalType: 'uint256', type: 'uint256' }, 8892 { name: '_value', internalType: 'uint256', type: 'uint256' }, 8893 ], 8894 name: 'CALL', 8895 outputs: [ 8896 { name: '', internalType: 'bool', type: 'bool' }, 8897 { name: '', internalType: 'bytes', type: 'bytes' }, 8898 ], 8899 }, 8900 { 8901 stateMutability: 'payable', 8902 type: 'function', 8903 inputs: [ 8904 { name: '_target', internalType: 'address', type: 'address' }, 8905 { name: '_data', internalType: 'bytes', type: 'bytes' }, 8906 { name: '_gas', internalType: 'uint256', type: 'uint256' }, 8907 ], 8908 name: 'DELEGATECALL', 8909 outputs: [ 8910 { name: '', internalType: 'bool', type: 'bool' }, 8911 { name: '', internalType: 'bytes', type: 'bytes' }, 8912 ], 8913 }, 8914 { 8915 stateMutability: 'view', 8916 type: 'function', 8917 inputs: [], 8918 name: 'data', 8919 outputs: [{ name: '', internalType: 'bytes', type: 'bytes' }], 8920 }, 8921 { 8922 stateMutability: 'view', 8923 type: 'function', 8924 inputs: [], 8925 name: 'owner', 8926 outputs: [{ name: '', internalType: 'address', type: 'address' }], 8927 }, 8928 { 8929 stateMutability: 'view', 8930 type: 'function', 8931 inputs: [], 8932 name: 'recipient', 8933 outputs: [{ name: '', internalType: 'address', type: 'address' }], 8934 }, 8935 { 8936 stateMutability: 'nonpayable', 8937 type: 'function', 8938 inputs: [{ name: '_data', internalType: 'bytes', type: 'bytes' }], 8939 name: 'setData', 8940 outputs: [], 8941 }, 8942 { 8943 stateMutability: 'nonpayable', 8944 type: 'function', 8945 inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }], 8946 name: 'setOwner', 8947 outputs: [], 8948 }, 8949 { 8950 stateMutability: 'nonpayable', 8951 type: 'function', 8952 inputs: [{ name: '_recipient', internalType: 'address', type: 'address' }], 8953 name: 'setRecipient', 8954 outputs: [], 8955 }, 8956 { 8957 stateMutability: 'nonpayable', 8958 type: 'function', 8959 inputs: [{ name: '_teleportr', internalType: 'address', type: 'address' }], 8960 name: 'setTeleportr', 8961 outputs: [], 8962 }, 8963 { 8964 stateMutability: 'view', 8965 type: 'function', 8966 inputs: [], 8967 name: 'teleportr', 8968 outputs: [{ name: '', internalType: 'address', type: 'address' }], 8969 }, 8970 { 8971 stateMutability: 'nonpayable', 8972 type: 'function', 8973 inputs: [ 8974 { name: '_asset', internalType: 'contract ERC20', type: 'address' }, 8975 { name: '_to', internalType: 'address', type: 'address' }, 8976 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 8977 ], 8978 name: 'withdrawERC20', 8979 outputs: [], 8980 }, 8981 { 8982 stateMutability: 'nonpayable', 8983 type: 'function', 8984 inputs: [ 8985 { name: '_asset', internalType: 'contract ERC20', type: 'address' }, 8986 { name: '_to', internalType: 'address', type: 'address' }, 8987 ], 8988 name: 'withdrawERC20', 8989 outputs: [], 8990 }, 8991 { 8992 stateMutability: 'nonpayable', 8993 type: 'function', 8994 inputs: [ 8995 { name: '_asset', internalType: 'contract ERC721', type: 'address' }, 8996 { name: '_to', internalType: 'address', type: 'address' }, 8997 { name: '_id', internalType: 'uint256', type: 'uint256' }, 8998 ], 8999 name: 'withdrawERC721', 9000 outputs: [], 9001 }, 9002 { 9003 stateMutability: 'nonpayable', 9004 type: 'function', 9005 inputs: [ 9006 { name: '_to', internalType: 'address payable', type: 'address' }, 9007 { name: '_amount', internalType: 'uint256', type: 'uint256' }, 9008 ], 9009 name: 'withdrawETH', 9010 outputs: [], 9011 }, 9012 { 9013 stateMutability: 'nonpayable', 9014 type: 'function', 9015 inputs: [{ name: '_to', internalType: 'address payable', type: 'address' }], 9016 name: 'withdrawETH', 9017 outputs: [], 9018 }, 9019 { 9020 stateMutability: 'nonpayable', 9021 type: 'function', 9022 inputs: [], 9023 name: 'withdrawFromTeleportr', 9024 outputs: [], 9025 }, 9026 { stateMutability: 'payable', type: 'receive' }, 9027 ] as const 9028 9029 /** 9030 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x78A25524D90E3D0596558fb43789bD800a5c3007) 9031 */ 9032 export const teleportrWithdrawerAddress = { 9033 1: '0x78A25524D90E3D0596558fb43789bD800a5c3007', 9034 } as const 9035 9036 /** 9037 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x78A25524D90E3D0596558fb43789bD800a5c3007) 9038 */ 9039 export const teleportrWithdrawerConfig = { 9040 address: teleportrWithdrawerAddress, 9041 abi: teleportrWithdrawerABI, 9042 } as const 9043 9044 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 9045 // eslintIgnore 9046 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 9047 9048 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 9049 // React 9050 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 9051 9052 /** 9053 * Wraps __{@link useContractRead}__ with `abi` set to __{@link addressManagerABI}__. 9054 * 9055 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F) 9056 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xa6f73589243a6A7a9023b1Fa0651b1d89c177111) 9057 */ 9058 export function useAddressManagerRead< 9059 TFunctionName extends string, 9060 TSelectData = ReadContractResult<typeof addressManagerABI, TFunctionName> 9061 >( 9062 config: Omit< 9063 UseContractReadConfig<typeof addressManagerABI, TFunctionName, TSelectData>, 9064 'abi' | 'address' 9065 > & { chainId?: keyof typeof addressManagerAddress } = {} as any 9066 ) { 9067 const { chain } = useNetwork() 9068 const defaultChainId = useChainId() 9069 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9070 return useContractRead({ 9071 abi: addressManagerABI, 9072 address: 9073 addressManagerAddress[chainId as keyof typeof addressManagerAddress], 9074 ...config, 9075 } as UseContractReadConfig<typeof addressManagerABI, TFunctionName, TSelectData>) 9076 } 9077 9078 /** 9079 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link addressManagerABI}__. 9080 * 9081 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F) 9082 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xa6f73589243a6A7a9023b1Fa0651b1d89c177111) 9083 */ 9084 export function useAddressManagerWrite< 9085 TFunctionName extends string, 9086 TMode extends WriteContractMode = undefined, 9087 TChainId extends number = keyof typeof addressManagerAddress 9088 >( 9089 config: TMode extends 'prepared' 9090 ? UseContractWriteConfig< 9091 PrepareWriteContractResult< 9092 typeof addressManagerABI, 9093 string 9094 >['request']['abi'], 9095 TFunctionName, 9096 TMode 9097 > & { address?: Address; chainId?: TChainId } 9098 : UseContractWriteConfig<typeof addressManagerABI, TFunctionName, TMode> & { 9099 abi?: never 9100 address?: never 9101 chainId?: TChainId 9102 } = {} as any 9103 ) { 9104 const { chain } = useNetwork() 9105 const defaultChainId = useChainId() 9106 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9107 return useContractWrite<typeof addressManagerABI, TFunctionName, TMode>({ 9108 abi: addressManagerABI, 9109 address: 9110 addressManagerAddress[chainId as keyof typeof addressManagerAddress], 9111 ...config, 9112 } as any) 9113 } 9114 9115 /** 9116 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link addressManagerABI}__. 9117 * 9118 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdE1FCfB0851916CA5101820A69b13a4E276bd81F) 9119 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xa6f73589243a6A7a9023b1Fa0651b1d89c177111) 9120 */ 9121 export function useAddressManagerEvent<TEventName extends string>( 9122 config: Omit< 9123 UseContractEventConfig<typeof addressManagerABI, TEventName>, 9124 'abi' | 'address' 9125 > & { chainId?: keyof typeof addressManagerAddress } = {} as any 9126 ) { 9127 const { chain } = useNetwork() 9128 const defaultChainId = useChainId() 9129 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9130 return useContractEvent({ 9131 abi: addressManagerABI, 9132 address: 9133 addressManagerAddress[chainId as keyof typeof addressManagerAddress], 9134 ...config, 9135 } as UseContractEventConfig<typeof addressManagerABI, TEventName>) 9136 } 9137 9138 /** 9139 * Wraps __{@link useContractRead}__ with `abi` set to __{@link assetReceiverABI}__. 9140 * 9141 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 9142 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 9143 */ 9144 export function useAssetReceiverRead< 9145 TFunctionName extends string, 9146 TSelectData = ReadContractResult<typeof assetReceiverABI, TFunctionName> 9147 >( 9148 config: Omit< 9149 UseContractReadConfig<typeof assetReceiverABI, TFunctionName, TSelectData>, 9150 'abi' | 'address' 9151 > & { chainId?: keyof typeof assetReceiverAddress } = {} as any 9152 ) { 9153 const { chain } = useNetwork() 9154 const defaultChainId = useChainId() 9155 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9156 return useContractRead({ 9157 abi: assetReceiverABI, 9158 address: assetReceiverAddress[chainId as keyof typeof assetReceiverAddress], 9159 ...config, 9160 } as UseContractReadConfig<typeof assetReceiverABI, TFunctionName, TSelectData>) 9161 } 9162 9163 /** 9164 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link assetReceiverABI}__. 9165 * 9166 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 9167 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 9168 */ 9169 export function useAssetReceiverWrite< 9170 TFunctionName extends string, 9171 TMode extends WriteContractMode = undefined, 9172 TChainId extends number = keyof typeof assetReceiverAddress 9173 >( 9174 config: TMode extends 'prepared' 9175 ? UseContractWriteConfig< 9176 PrepareWriteContractResult< 9177 typeof assetReceiverABI, 9178 string 9179 >['request']['abi'], 9180 TFunctionName, 9181 TMode 9182 > & { address?: Address; chainId?: TChainId } 9183 : UseContractWriteConfig<typeof assetReceiverABI, TFunctionName, TMode> & { 9184 abi?: never 9185 address?: never 9186 chainId?: TChainId 9187 } = {} as any 9188 ) { 9189 const { chain } = useNetwork() 9190 const defaultChainId = useChainId() 9191 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9192 return useContractWrite<typeof assetReceiverABI, TFunctionName, TMode>({ 9193 abi: assetReceiverABI, 9194 address: assetReceiverAddress[chainId as keyof typeof assetReceiverAddress], 9195 ...config, 9196 } as any) 9197 } 9198 9199 /** 9200 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link assetReceiverABI}__. 9201 * 9202 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 9203 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x15DdA60616Ffca20371ED1659dBB78E888f65556) 9204 */ 9205 export function useAssetReceiverEvent<TEventName extends string>( 9206 config: Omit< 9207 UseContractEventConfig<typeof assetReceiverABI, TEventName>, 9208 'abi' | 'address' 9209 > & { chainId?: keyof typeof assetReceiverAddress } = {} as any 9210 ) { 9211 const { chain } = useNetwork() 9212 const defaultChainId = useChainId() 9213 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9214 return useContractEvent({ 9215 abi: assetReceiverABI, 9216 address: assetReceiverAddress[chainId as keyof typeof assetReceiverAddress], 9217 ...config, 9218 } as UseContractEventConfig<typeof assetReceiverABI, TEventName>) 9219 } 9220 9221 /** 9222 * Wraps __{@link useContractRead}__ with `abi` set to __{@link attestationStationABI}__. 9223 * 9224 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 9225 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 9226 */ 9227 export function useAttestationStationRead< 9228 TFunctionName extends string, 9229 TSelectData = ReadContractResult<typeof attestationStationABI, TFunctionName> 9230 >( 9231 config: Omit< 9232 UseContractReadConfig< 9233 typeof attestationStationABI, 9234 TFunctionName, 9235 TSelectData 9236 >, 9237 'abi' | 'address' 9238 > & { chainId?: keyof typeof attestationStationAddress } = {} as any 9239 ) { 9240 const { chain } = useNetwork() 9241 const defaultChainId = useChainId() 9242 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9243 return useContractRead({ 9244 abi: attestationStationABI, 9245 address: 9246 attestationStationAddress[ 9247 chainId as keyof typeof attestationStationAddress 9248 ], 9249 ...config, 9250 } as UseContractReadConfig<typeof attestationStationABI, TFunctionName, TSelectData>) 9251 } 9252 9253 /** 9254 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link attestationStationABI}__. 9255 * 9256 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 9257 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 9258 */ 9259 export function useAttestationStationWrite< 9260 TFunctionName extends string, 9261 TMode extends WriteContractMode = undefined, 9262 TChainId extends number = keyof typeof attestationStationAddress 9263 >( 9264 config: TMode extends 'prepared' 9265 ? UseContractWriteConfig< 9266 PrepareWriteContractResult< 9267 typeof attestationStationABI, 9268 string 9269 >['request']['abi'], 9270 TFunctionName, 9271 TMode 9272 > & { address?: Address; chainId?: TChainId } 9273 : UseContractWriteConfig< 9274 typeof attestationStationABI, 9275 TFunctionName, 9276 TMode 9277 > & { 9278 abi?: never 9279 address?: never 9280 chainId?: TChainId 9281 } = {} as any 9282 ) { 9283 const { chain } = useNetwork() 9284 const defaultChainId = useChainId() 9285 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9286 return useContractWrite<typeof attestationStationABI, TFunctionName, TMode>({ 9287 abi: attestationStationABI, 9288 address: 9289 attestationStationAddress[ 9290 chainId as keyof typeof attestationStationAddress 9291 ], 9292 ...config, 9293 } as any) 9294 } 9295 9296 /** 9297 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link attestationStationABI}__. 9298 * 9299 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 9300 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xEE36eaaD94d1Cc1d0eccaDb55C38bFfB6Be06C77) 9301 */ 9302 export function useAttestationStationEvent<TEventName extends string>( 9303 config: Omit< 9304 UseContractEventConfig<typeof attestationStationABI, TEventName>, 9305 'abi' | 'address' 9306 > & { chainId?: keyof typeof attestationStationAddress } = {} as any 9307 ) { 9308 const { chain } = useNetwork() 9309 const defaultChainId = useChainId() 9310 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9311 return useContractEvent({ 9312 abi: attestationStationABI, 9313 address: 9314 attestationStationAddress[ 9315 chainId as keyof typeof attestationStationAddress 9316 ], 9317 ...config, 9318 } as UseContractEventConfig<typeof attestationStationABI, TEventName>) 9319 } 9320 9321 /** 9322 * Wraps __{@link useContractRead}__ with `abi` set to __{@link baseFeeVaultABI}__. 9323 * 9324 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000019) 9325 */ 9326 export function useBaseFeeVaultRead< 9327 TFunctionName extends string, 9328 TSelectData = ReadContractResult<typeof baseFeeVaultABI, TFunctionName> 9329 >( 9330 config: Omit< 9331 UseContractReadConfig<typeof baseFeeVaultABI, TFunctionName, TSelectData>, 9332 'abi' | 'address' 9333 > & { chainId?: keyof typeof baseFeeVaultAddress } = {} as any 9334 ) { 9335 return useContractRead({ 9336 abi: baseFeeVaultABI, 9337 address: baseFeeVaultAddress[420], 9338 ...config, 9339 } as UseContractReadConfig<typeof baseFeeVaultABI, TFunctionName, TSelectData>) 9340 } 9341 9342 /** 9343 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link baseFeeVaultABI}__. 9344 * 9345 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000019) 9346 */ 9347 export function useBaseFeeVaultWrite< 9348 TFunctionName extends string, 9349 TMode extends WriteContractMode = undefined, 9350 TChainId extends number = keyof typeof baseFeeVaultAddress 9351 >( 9352 config: TMode extends 'prepared' 9353 ? UseContractWriteConfig< 9354 PrepareWriteContractResult< 9355 typeof baseFeeVaultABI, 9356 string 9357 >['request']['abi'], 9358 TFunctionName, 9359 TMode 9360 > & { address?: Address; chainId?: TChainId } 9361 : UseContractWriteConfig<typeof baseFeeVaultABI, TFunctionName, TMode> & { 9362 abi?: never 9363 address?: never 9364 chainId?: TChainId 9365 } = {} as any 9366 ) { 9367 return useContractWrite<typeof baseFeeVaultABI, TFunctionName, TMode>({ 9368 abi: baseFeeVaultABI, 9369 address: baseFeeVaultAddress[420], 9370 ...config, 9371 } as any) 9372 } 9373 9374 /** 9375 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link baseFeeVaultABI}__. 9376 * 9377 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000019) 9378 */ 9379 export function useBaseFeeVaultEvent<TEventName extends string>( 9380 config: Omit< 9381 UseContractEventConfig<typeof baseFeeVaultABI, TEventName>, 9382 'abi' | 'address' 9383 > & { chainId?: keyof typeof baseFeeVaultAddress } = {} as any 9384 ) { 9385 return useContractEvent({ 9386 abi: baseFeeVaultABI, 9387 address: baseFeeVaultAddress[420], 9388 ...config, 9389 } as UseContractEventConfig<typeof baseFeeVaultABI, TEventName>) 9390 } 9391 9392 /** 9393 * Wraps __{@link useContractRead}__ with `abi` set to __{@link checkBalanceHighABI}__. 9394 * 9395 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F) 9396 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F) 9397 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5d7103853f12109A7d27F118e54BbC654ad847E9) 9398 */ 9399 export function useCheckBalanceHighRead< 9400 TFunctionName extends string, 9401 TSelectData = ReadContractResult<typeof checkBalanceHighABI, TFunctionName> 9402 >( 9403 config: Omit< 9404 UseContractReadConfig< 9405 typeof checkBalanceHighABI, 9406 TFunctionName, 9407 TSelectData 9408 >, 9409 'abi' | 'address' 9410 > & { chainId?: keyof typeof checkBalanceHighAddress } = {} as any 9411 ) { 9412 const { chain } = useNetwork() 9413 const defaultChainId = useChainId() 9414 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9415 return useContractRead({ 9416 abi: checkBalanceHighABI, 9417 address: 9418 checkBalanceHighAddress[chainId as keyof typeof checkBalanceHighAddress], 9419 ...config, 9420 } as UseContractReadConfig<typeof checkBalanceHighABI, TFunctionName, TSelectData>) 9421 } 9422 9423 /** 9424 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link checkBalanceHighABI}__. 9425 * 9426 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F) 9427 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x7eC64a8a591bFf829ff6C8be76074D540ACb813F) 9428 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5d7103853f12109A7d27F118e54BbC654ad847E9) 9429 */ 9430 export function useCheckBalanceHighEvent<TEventName extends string>( 9431 config: Omit< 9432 UseContractEventConfig<typeof checkBalanceHighABI, TEventName>, 9433 'abi' | 'address' 9434 > & { chainId?: keyof typeof checkBalanceHighAddress } = {} as any 9435 ) { 9436 const { chain } = useNetwork() 9437 const defaultChainId = useChainId() 9438 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9439 return useContractEvent({ 9440 abi: checkBalanceHighABI, 9441 address: 9442 checkBalanceHighAddress[chainId as keyof typeof checkBalanceHighAddress], 9443 ...config, 9444 } as UseContractEventConfig<typeof checkBalanceHighABI, TEventName>) 9445 } 9446 9447 /** 9448 * Wraps __{@link useContractRead}__ with `abi` set to __{@link checkBalanceLowABI}__. 9449 * 9450 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640) 9451 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640) 9452 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x7Ce13D154FAEE5C8B3E6b19d4Add16f21d884474) 9453 */ 9454 export function useCheckBalanceLowRead< 9455 TFunctionName extends string, 9456 TSelectData = ReadContractResult<typeof checkBalanceLowABI, TFunctionName> 9457 >( 9458 config: Omit< 9459 UseContractReadConfig< 9460 typeof checkBalanceLowABI, 9461 TFunctionName, 9462 TSelectData 9463 >, 9464 'abi' | 'address' 9465 > & { chainId?: keyof typeof checkBalanceLowAddress } = {} as any 9466 ) { 9467 const { chain } = useNetwork() 9468 const defaultChainId = useChainId() 9469 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9470 return useContractRead({ 9471 abi: checkBalanceLowABI, 9472 address: 9473 checkBalanceLowAddress[chainId as keyof typeof checkBalanceLowAddress], 9474 ...config, 9475 } as UseContractReadConfig<typeof checkBalanceLowABI, TFunctionName, TSelectData>) 9476 } 9477 9478 /** 9479 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link checkBalanceLowABI}__. 9480 * 9481 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640) 9482 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x381a4eFC2A2C914eA1889722bB4B44Fa6BD5b640) 9483 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x7Ce13D154FAEE5C8B3E6b19d4Add16f21d884474) 9484 */ 9485 export function useCheckBalanceLowEvent<TEventName extends string>( 9486 config: Omit< 9487 UseContractEventConfig<typeof checkBalanceLowABI, TEventName>, 9488 'abi' | 'address' 9489 > & { chainId?: keyof typeof checkBalanceLowAddress } = {} as any 9490 ) { 9491 const { chain } = useNetwork() 9492 const defaultChainId = useChainId() 9493 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9494 return useContractEvent({ 9495 abi: checkBalanceLowABI, 9496 address: 9497 checkBalanceLowAddress[chainId as keyof typeof checkBalanceLowAddress], 9498 ...config, 9499 } as UseContractEventConfig<typeof checkBalanceLowABI, TEventName>) 9500 } 9501 9502 /** 9503 * Wraps __{@link useContractRead}__ with `abi` set to __{@link checkGelatoLowABI}__. 9504 * 9505 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa) 9506 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa) 9507 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xF9c8a4Cb4021f57F9f6d69799cA9BefF64524862) 9508 */ 9509 export function useCheckGelatoLowRead< 9510 TFunctionName extends string, 9511 TSelectData = ReadContractResult<typeof checkGelatoLowABI, TFunctionName> 9512 >( 9513 config: Omit< 9514 UseContractReadConfig<typeof checkGelatoLowABI, TFunctionName, TSelectData>, 9515 'abi' | 'address' 9516 > & { chainId?: keyof typeof checkGelatoLowAddress } = {} as any 9517 ) { 9518 const { chain } = useNetwork() 9519 const defaultChainId = useChainId() 9520 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9521 return useContractRead({ 9522 abi: checkGelatoLowABI, 9523 address: 9524 checkGelatoLowAddress[chainId as keyof typeof checkGelatoLowAddress], 9525 ...config, 9526 } as UseContractReadConfig<typeof checkGelatoLowABI, TFunctionName, TSelectData>) 9527 } 9528 9529 /** 9530 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link checkGelatoLowABI}__. 9531 * 9532 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa) 9533 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4f7CFc43f6D262a085F3b946cAC69E7a8E39BBAa) 9534 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0xF9c8a4Cb4021f57F9f6d69799cA9BefF64524862) 9535 */ 9536 export function useCheckGelatoLowEvent<TEventName extends string>( 9537 config: Omit< 9538 UseContractEventConfig<typeof checkGelatoLowABI, TEventName>, 9539 'abi' | 'address' 9540 > & { chainId?: keyof typeof checkGelatoLowAddress } = {} as any 9541 ) { 9542 const { chain } = useNetwork() 9543 const defaultChainId = useChainId() 9544 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9545 return useContractEvent({ 9546 abi: checkGelatoLowABI, 9547 address: 9548 checkGelatoLowAddress[chainId as keyof typeof checkGelatoLowAddress], 9549 ...config, 9550 } as UseContractEventConfig<typeof checkGelatoLowABI, TEventName>) 9551 } 9552 9553 /** 9554 * Wraps __{@link useContractRead}__ with `abi` set to __{@link checkTrueABI}__. 9555 * 9556 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D) 9557 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5c741a38cb11424711231777D71689C458eE835D) 9558 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x47443D0C184e022F19BD1578F5bca6B8a9F58E32) 9559 */ 9560 export function useCheckTrueRead< 9561 TFunctionName extends string, 9562 TSelectData = ReadContractResult<typeof checkTrueABI, TFunctionName> 9563 >( 9564 config: Omit< 9565 UseContractReadConfig<typeof checkTrueABI, TFunctionName, TSelectData>, 9566 'abi' | 'address' 9567 > & { chainId?: keyof typeof checkTrueAddress } = {} as any 9568 ) { 9569 const { chain } = useNetwork() 9570 const defaultChainId = useChainId() 9571 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9572 return useContractRead({ 9573 abi: checkTrueABI, 9574 address: checkTrueAddress[chainId as keyof typeof checkTrueAddress], 9575 ...config, 9576 } as UseContractReadConfig<typeof checkTrueABI, TFunctionName, TSelectData>) 9577 } 9578 9579 /** 9580 * Wraps __{@link useContractRead}__ with `abi` set to __{@link drippieABI}__. 9581 * 9582 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 9583 */ 9584 export function useDrippieRead< 9585 TFunctionName extends string, 9586 TSelectData = ReadContractResult<typeof drippieABI, TFunctionName> 9587 >( 9588 config: Omit< 9589 UseContractReadConfig<typeof drippieABI, TFunctionName, TSelectData>, 9590 'abi' | 'address' 9591 > & { chainId?: keyof typeof drippieAddress } = {} as any 9592 ) { 9593 return useContractRead({ 9594 abi: drippieABI, 9595 address: drippieAddress[1], 9596 ...config, 9597 } as UseContractReadConfig<typeof drippieABI, TFunctionName, TSelectData>) 9598 } 9599 9600 /** 9601 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link drippieABI}__. 9602 * 9603 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 9604 */ 9605 export function useDrippieWrite< 9606 TFunctionName extends string, 9607 TMode extends WriteContractMode = undefined, 9608 TChainId extends number = keyof typeof drippieAddress 9609 >( 9610 config: TMode extends 'prepared' 9611 ? UseContractWriteConfig< 9612 PrepareWriteContractResult<typeof drippieABI, string>['request']['abi'], 9613 TFunctionName, 9614 TMode 9615 > & { address?: Address; chainId?: TChainId } 9616 : UseContractWriteConfig<typeof drippieABI, TFunctionName, TMode> & { 9617 abi?: never 9618 address?: never 9619 chainId?: TChainId 9620 } = {} as any 9621 ) { 9622 return useContractWrite<typeof drippieABI, TFunctionName, TMode>({ 9623 abi: drippieABI, 9624 address: drippieAddress[1], 9625 ...config, 9626 } as any) 9627 } 9628 9629 /** 9630 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link drippieABI}__. 9631 * 9632 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 9633 */ 9634 export function useDrippieEvent<TEventName extends string>( 9635 config: Omit< 9636 UseContractEventConfig<typeof drippieABI, TEventName>, 9637 'abi' | 'address' 9638 > & { chainId?: keyof typeof drippieAddress } = {} as any 9639 ) { 9640 return useContractEvent({ 9641 abi: drippieABI, 9642 address: drippieAddress[1], 9643 ...config, 9644 } as UseContractEventConfig<typeof drippieABI, TEventName>) 9645 } 9646 9647 /** 9648 * Wraps __{@link useContractRead}__ with `abi` set to __{@link drippieGoerliABI}__. 9649 * 9650 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 9651 */ 9652 export function useDrippieGoerliRead< 9653 TFunctionName extends string, 9654 TSelectData = ReadContractResult<typeof drippieGoerliABI, TFunctionName> 9655 >( 9656 config: Omit< 9657 UseContractReadConfig<typeof drippieGoerliABI, TFunctionName, TSelectData>, 9658 'abi' | 'address' 9659 > & { chainId?: keyof typeof drippieGoerliAddress } = {} as any 9660 ) { 9661 return useContractRead({ 9662 abi: drippieGoerliABI, 9663 address: drippieGoerliAddress[5], 9664 ...config, 9665 } as UseContractReadConfig<typeof drippieGoerliABI, TFunctionName, TSelectData>) 9666 } 9667 9668 /** 9669 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link drippieGoerliABI}__. 9670 * 9671 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 9672 */ 9673 export function useDrippieGoerliWrite< 9674 TFunctionName extends string, 9675 TMode extends WriteContractMode = undefined, 9676 TChainId extends number = keyof typeof drippieGoerliAddress 9677 >( 9678 config: TMode extends 'prepared' 9679 ? UseContractWriteConfig< 9680 PrepareWriteContractResult< 9681 typeof drippieGoerliABI, 9682 string 9683 >['request']['abi'], 9684 TFunctionName, 9685 TMode 9686 > & { address?: Address; chainId?: TChainId } 9687 : UseContractWriteConfig<typeof drippieGoerliABI, TFunctionName, TMode> & { 9688 abi?: never 9689 address?: never 9690 chainId?: TChainId 9691 } = {} as any 9692 ) { 9693 return useContractWrite<typeof drippieGoerliABI, TFunctionName, TMode>({ 9694 abi: drippieGoerliABI, 9695 address: drippieGoerliAddress[5], 9696 ...config, 9697 } as any) 9698 } 9699 9700 /** 9701 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link drippieGoerliABI}__. 9702 * 9703 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x44b3A2a040057eBafC601A78647e805fd58B1f50) 9704 */ 9705 export function useDrippieGoerliEvent<TEventName extends string>( 9706 config: Omit< 9707 UseContractEventConfig<typeof drippieGoerliABI, TEventName>, 9708 'abi' | 'address' 9709 > & { chainId?: keyof typeof drippieGoerliAddress } = {} as any 9710 ) { 9711 return useContractEvent({ 9712 abi: drippieGoerliABI, 9713 address: drippieGoerliAddress[5], 9714 ...config, 9715 } as UseContractEventConfig<typeof drippieGoerliABI, TEventName>) 9716 } 9717 9718 /** 9719 * Wraps __{@link useContractRead}__ with `abi` set to __{@link drippieOptimismGoerliABI}__. 9720 * 9721 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x8D8d533C16D23847EB04EEB0925be8900Dd3af86) 9722 */ 9723 export function useDrippieOptimismGoerliRead< 9724 TFunctionName extends string, 9725 TSelectData = ReadContractResult< 9726 typeof drippieOptimismGoerliABI, 9727 TFunctionName 9728 > 9729 >( 9730 config: Omit< 9731 UseContractReadConfig< 9732 typeof drippieOptimismGoerliABI, 9733 TFunctionName, 9734 TSelectData 9735 >, 9736 'abi' | 'address' 9737 > & { chainId?: keyof typeof drippieOptimismGoerliAddress } = {} as any 9738 ) { 9739 return useContractRead({ 9740 abi: drippieOptimismGoerliABI, 9741 address: drippieOptimismGoerliAddress[420], 9742 ...config, 9743 } as UseContractReadConfig<typeof drippieOptimismGoerliABI, TFunctionName, TSelectData>) 9744 } 9745 9746 /** 9747 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link drippieOptimismGoerliABI}__. 9748 * 9749 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x8D8d533C16D23847EB04EEB0925be8900Dd3af86) 9750 */ 9751 export function useDrippieOptimismGoerliWrite< 9752 TFunctionName extends string, 9753 TMode extends WriteContractMode = undefined, 9754 TChainId extends number = keyof typeof drippieOptimismGoerliAddress 9755 >( 9756 config: TMode extends 'prepared' 9757 ? UseContractWriteConfig< 9758 PrepareWriteContractResult< 9759 typeof drippieOptimismGoerliABI, 9760 string 9761 >['request']['abi'], 9762 TFunctionName, 9763 TMode 9764 > & { address?: Address; chainId?: TChainId } 9765 : UseContractWriteConfig< 9766 typeof drippieOptimismGoerliABI, 9767 TFunctionName, 9768 TMode 9769 > & { 9770 abi?: never 9771 address?: never 9772 chainId?: TChainId 9773 } = {} as any 9774 ) { 9775 return useContractWrite< 9776 typeof drippieOptimismGoerliABI, 9777 TFunctionName, 9778 TMode 9779 >({ 9780 abi: drippieOptimismGoerliABI, 9781 address: drippieOptimismGoerliAddress[420], 9782 ...config, 9783 } as any) 9784 } 9785 9786 /** 9787 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link drippieOptimismGoerliABI}__. 9788 * 9789 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x8D8d533C16D23847EB04EEB0925be8900Dd3af86) 9790 */ 9791 export function useDrippieOptimismGoerliEvent<TEventName extends string>( 9792 config: Omit< 9793 UseContractEventConfig<typeof drippieOptimismGoerliABI, TEventName>, 9794 'abi' | 'address' 9795 > & { chainId?: keyof typeof drippieOptimismGoerliAddress } = {} as any 9796 ) { 9797 return useContractEvent({ 9798 abi: drippieOptimismGoerliABI, 9799 address: drippieOptimismGoerliAddress[420], 9800 ...config, 9801 } as UseContractEventConfig<typeof drippieOptimismGoerliABI, TEventName>) 9802 } 9803 9804 /** 9805 * Wraps __{@link useContractRead}__ with `abi` set to __{@link easABI}__. 9806 * 9807 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088) 9808 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5A633F1cc84B03F7588486CF2F386c102061E6e1) 9809 */ 9810 export function useEasRead< 9811 TFunctionName extends string, 9812 TSelectData = ReadContractResult<typeof easABI, TFunctionName> 9813 >( 9814 config: Omit< 9815 UseContractReadConfig<typeof easABI, TFunctionName, TSelectData>, 9816 'abi' | 'address' 9817 > & { chainId?: keyof typeof easAddress } = {} as any 9818 ) { 9819 const { chain } = useNetwork() 9820 const defaultChainId = useChainId() 9821 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9822 return useContractRead({ 9823 abi: easABI, 9824 address: easAddress[chainId as keyof typeof easAddress], 9825 ...config, 9826 } as UseContractReadConfig<typeof easABI, TFunctionName, TSelectData>) 9827 } 9828 9829 /** 9830 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link easABI}__. 9831 * 9832 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088) 9833 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5A633F1cc84B03F7588486CF2F386c102061E6e1) 9834 */ 9835 export function useEasWrite< 9836 TFunctionName extends string, 9837 TMode extends WriteContractMode = undefined, 9838 TChainId extends number = keyof typeof easAddress 9839 >( 9840 config: TMode extends 'prepared' 9841 ? UseContractWriteConfig< 9842 PrepareWriteContractResult<typeof easABI, string>['request']['abi'], 9843 TFunctionName, 9844 TMode 9845 > & { address?: Address; chainId?: TChainId } 9846 : UseContractWriteConfig<typeof easABI, TFunctionName, TMode> & { 9847 abi?: never 9848 address?: never 9849 chainId?: TChainId 9850 } = {} as any 9851 ) { 9852 const { chain } = useNetwork() 9853 const defaultChainId = useChainId() 9854 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9855 return useContractWrite<typeof easABI, TFunctionName, TMode>({ 9856 abi: easABI, 9857 address: easAddress[chainId as keyof typeof easAddress], 9858 ...config, 9859 } as any) 9860 } 9861 9862 /** 9863 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link easABI}__. 9864 * 9865 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4E0275Ea5a89e7a3c1B58411379D1a0eDdc5b088) 9866 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x5A633F1cc84B03F7588486CF2F386c102061E6e1) 9867 */ 9868 export function useEasEvent<TEventName extends string>( 9869 config: Omit< 9870 UseContractEventConfig<typeof easABI, TEventName>, 9871 'abi' | 'address' 9872 > & { chainId?: keyof typeof easAddress } = {} as any 9873 ) { 9874 const { chain } = useNetwork() 9875 const defaultChainId = useChainId() 9876 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9877 return useContractEvent({ 9878 abi: easABI, 9879 address: easAddress[chainId as keyof typeof easAddress], 9880 ...config, 9881 } as UseContractEventConfig<typeof easABI, TEventName>) 9882 } 9883 9884 /** 9885 * Wraps __{@link useContractRead}__ with `abi` set to __{@link gasPriceOracleABI}__. 9886 * 9887 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000000F) 9888 */ 9889 export function useGasPriceOracleRead< 9890 TFunctionName extends string, 9891 TSelectData = ReadContractResult<typeof gasPriceOracleABI, TFunctionName> 9892 >( 9893 config: Omit< 9894 UseContractReadConfig<typeof gasPriceOracleABI, TFunctionName, TSelectData>, 9895 'abi' | 'address' 9896 > & { chainId?: keyof typeof gasPriceOracleAddress } = {} as any 9897 ) { 9898 return useContractRead({ 9899 abi: gasPriceOracleABI, 9900 address: gasPriceOracleAddress[420], 9901 ...config, 9902 } as UseContractReadConfig<typeof gasPriceOracleABI, TFunctionName, TSelectData>) 9903 } 9904 9905 /** 9906 * Wraps __{@link useContractRead}__ with `abi` set to __{@link l1BlockABI}__. 9907 * 9908 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000015) 9909 */ 9910 export function useL1BlockRead< 9911 TFunctionName extends string, 9912 TSelectData = ReadContractResult<typeof l1BlockABI, TFunctionName> 9913 >( 9914 config: Omit< 9915 UseContractReadConfig<typeof l1BlockABI, TFunctionName, TSelectData>, 9916 'abi' | 'address' 9917 > & { chainId?: keyof typeof l1BlockAddress } = {} as any 9918 ) { 9919 return useContractRead({ 9920 abi: l1BlockABI, 9921 address: l1BlockAddress[420], 9922 ...config, 9923 } as UseContractReadConfig<typeof l1BlockABI, TFunctionName, TSelectData>) 9924 } 9925 9926 /** 9927 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link l1BlockABI}__. 9928 * 9929 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000015) 9930 */ 9931 export function useL1BlockWrite< 9932 TFunctionName extends string, 9933 TMode extends WriteContractMode = undefined, 9934 TChainId extends number = keyof typeof l1BlockAddress 9935 >( 9936 config: TMode extends 'prepared' 9937 ? UseContractWriteConfig< 9938 PrepareWriteContractResult<typeof l1BlockABI, string>['request']['abi'], 9939 TFunctionName, 9940 TMode 9941 > & { address?: Address; chainId?: TChainId } 9942 : UseContractWriteConfig<typeof l1BlockABI, TFunctionName, TMode> & { 9943 abi?: never 9944 address?: never 9945 chainId?: TChainId 9946 } = {} as any 9947 ) { 9948 return useContractWrite<typeof l1BlockABI, TFunctionName, TMode>({ 9949 abi: l1BlockABI, 9950 address: l1BlockAddress[420], 9951 ...config, 9952 } as any) 9953 } 9954 9955 /** 9956 * Wraps __{@link useContractRead}__ with `abi` set to __{@link l1CrossDomainMessengerABI}__. 9957 * 9958 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1) 9959 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5086d1eEF304eb5284A0f6720f79403b4e9bE294) 9960 */ 9961 export function useL1CrossDomainMessengerRead< 9962 TFunctionName extends string, 9963 TSelectData = ReadContractResult< 9964 typeof l1CrossDomainMessengerABI, 9965 TFunctionName 9966 > 9967 >( 9968 config: Omit< 9969 UseContractReadConfig< 9970 typeof l1CrossDomainMessengerABI, 9971 TFunctionName, 9972 TSelectData 9973 >, 9974 'abi' | 'address' 9975 > & { chainId?: keyof typeof l1CrossDomainMessengerAddress } = {} as any 9976 ) { 9977 const { chain } = useNetwork() 9978 const defaultChainId = useChainId() 9979 const chainId = config.chainId ?? chain?.id ?? defaultChainId 9980 return useContractRead({ 9981 abi: l1CrossDomainMessengerABI, 9982 address: 9983 l1CrossDomainMessengerAddress[ 9984 chainId as keyof typeof l1CrossDomainMessengerAddress 9985 ], 9986 ...config, 9987 } as UseContractReadConfig<typeof l1CrossDomainMessengerABI, TFunctionName, TSelectData>) 9988 } 9989 9990 /** 9991 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link l1CrossDomainMessengerABI}__. 9992 * 9993 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1) 9994 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5086d1eEF304eb5284A0f6720f79403b4e9bE294) 9995 */ 9996 export function useL1CrossDomainMessengerWrite< 9997 TFunctionName extends string, 9998 TMode extends WriteContractMode = undefined, 9999 TChainId extends number = keyof typeof l1CrossDomainMessengerAddress 10000 >( 10001 config: TMode extends 'prepared' 10002 ? UseContractWriteConfig< 10003 PrepareWriteContractResult< 10004 typeof l1CrossDomainMessengerABI, 10005 string 10006 >['request']['abi'], 10007 TFunctionName, 10008 TMode 10009 > & { address?: Address; chainId?: TChainId } 10010 : UseContractWriteConfig< 10011 typeof l1CrossDomainMessengerABI, 10012 TFunctionName, 10013 TMode 10014 > & { 10015 abi?: never 10016 address?: never 10017 chainId?: TChainId 10018 } = {} as any 10019 ) { 10020 const { chain } = useNetwork() 10021 const defaultChainId = useChainId() 10022 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10023 return useContractWrite< 10024 typeof l1CrossDomainMessengerABI, 10025 TFunctionName, 10026 TMode 10027 >({ 10028 abi: l1CrossDomainMessengerABI, 10029 address: 10030 l1CrossDomainMessengerAddress[ 10031 chainId as keyof typeof l1CrossDomainMessengerAddress 10032 ], 10033 ...config, 10034 } as any) 10035 } 10036 10037 /** 10038 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link l1CrossDomainMessengerABI}__. 10039 * 10040 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1) 10041 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5086d1eEF304eb5284A0f6720f79403b4e9bE294) 10042 */ 10043 export function useL1CrossDomainMessengerEvent<TEventName extends string>( 10044 config: Omit< 10045 UseContractEventConfig<typeof l1CrossDomainMessengerABI, TEventName>, 10046 'abi' | 'address' 10047 > & { chainId?: keyof typeof l1CrossDomainMessengerAddress } = {} as any 10048 ) { 10049 const { chain } = useNetwork() 10050 const defaultChainId = useChainId() 10051 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10052 return useContractEvent({ 10053 abi: l1CrossDomainMessengerABI, 10054 address: 10055 l1CrossDomainMessengerAddress[ 10056 chainId as keyof typeof l1CrossDomainMessengerAddress 10057 ], 10058 ...config, 10059 } as UseContractEventConfig<typeof l1CrossDomainMessengerABI, TEventName>) 10060 } 10061 10062 /** 10063 * Wraps __{@link useContractRead}__ with `abi` set to __{@link l1Erc721BridgeABI}__. 10064 * 10065 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5a7749f83b81B301cAb5f48EB8516B986DAef23D) 10066 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9) 10067 */ 10068 export function useL1Erc721BridgeRead< 10069 TFunctionName extends string, 10070 TSelectData = ReadContractResult<typeof l1Erc721BridgeABI, TFunctionName> 10071 >( 10072 config: Omit< 10073 UseContractReadConfig<typeof l1Erc721BridgeABI, TFunctionName, TSelectData>, 10074 'abi' | 'address' 10075 > & { chainId?: keyof typeof l1Erc721BridgeAddress } = {} as any 10076 ) { 10077 const { chain } = useNetwork() 10078 const defaultChainId = useChainId() 10079 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10080 return useContractRead({ 10081 abi: l1Erc721BridgeABI, 10082 address: 10083 l1Erc721BridgeAddress[chainId as keyof typeof l1Erc721BridgeAddress], 10084 ...config, 10085 } as UseContractReadConfig<typeof l1Erc721BridgeABI, TFunctionName, TSelectData>) 10086 } 10087 10088 /** 10089 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link l1Erc721BridgeABI}__. 10090 * 10091 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5a7749f83b81B301cAb5f48EB8516B986DAef23D) 10092 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9) 10093 */ 10094 export function useL1Erc721BridgeWrite< 10095 TFunctionName extends string, 10096 TMode extends WriteContractMode = undefined, 10097 TChainId extends number = keyof typeof l1Erc721BridgeAddress 10098 >( 10099 config: TMode extends 'prepared' 10100 ? UseContractWriteConfig< 10101 PrepareWriteContractResult< 10102 typeof l1Erc721BridgeABI, 10103 string 10104 >['request']['abi'], 10105 TFunctionName, 10106 TMode 10107 > & { address?: Address; chainId?: TChainId } 10108 : UseContractWriteConfig<typeof l1Erc721BridgeABI, TFunctionName, TMode> & { 10109 abi?: never 10110 address?: never 10111 chainId?: TChainId 10112 } = {} as any 10113 ) { 10114 const { chain } = useNetwork() 10115 const defaultChainId = useChainId() 10116 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10117 return useContractWrite<typeof l1Erc721BridgeABI, TFunctionName, TMode>({ 10118 abi: l1Erc721BridgeABI, 10119 address: 10120 l1Erc721BridgeAddress[chainId as keyof typeof l1Erc721BridgeAddress], 10121 ...config, 10122 } as any) 10123 } 10124 10125 /** 10126 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link l1Erc721BridgeABI}__. 10127 * 10128 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x5a7749f83b81B301cAb5f48EB8516B986DAef23D) 10129 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x8DD330DdE8D9898d43b4dc840Da27A07dF91b3c9) 10130 */ 10131 export function useL1Erc721BridgeEvent<TEventName extends string>( 10132 config: Omit< 10133 UseContractEventConfig<typeof l1Erc721BridgeABI, TEventName>, 10134 'abi' | 'address' 10135 > & { chainId?: keyof typeof l1Erc721BridgeAddress } = {} as any 10136 ) { 10137 const { chain } = useNetwork() 10138 const defaultChainId = useChainId() 10139 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10140 return useContractEvent({ 10141 abi: l1Erc721BridgeABI, 10142 address: 10143 l1Erc721BridgeAddress[chainId as keyof typeof l1Erc721BridgeAddress], 10144 ...config, 10145 } as UseContractEventConfig<typeof l1Erc721BridgeABI, TEventName>) 10146 } 10147 10148 /** 10149 * Wraps __{@link useContractRead}__ with `abi` set to __{@link l1FeeVaultABI}__. 10150 * 10151 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000001a) 10152 */ 10153 export function useL1FeeVaultRead< 10154 TFunctionName extends string, 10155 TSelectData = ReadContractResult<typeof l1FeeVaultABI, TFunctionName> 10156 >( 10157 config: Omit< 10158 UseContractReadConfig<typeof l1FeeVaultABI, TFunctionName, TSelectData>, 10159 'abi' | 'address' 10160 > & { chainId?: keyof typeof l1FeeVaultAddress } = {} as any 10161 ) { 10162 return useContractRead({ 10163 abi: l1FeeVaultABI, 10164 address: l1FeeVaultAddress[420], 10165 ...config, 10166 } as UseContractReadConfig<typeof l1FeeVaultABI, TFunctionName, TSelectData>) 10167 } 10168 10169 /** 10170 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link l1FeeVaultABI}__. 10171 * 10172 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000001a) 10173 */ 10174 export function useL1FeeVaultWrite< 10175 TFunctionName extends string, 10176 TMode extends WriteContractMode = undefined, 10177 TChainId extends number = keyof typeof l1FeeVaultAddress 10178 >( 10179 config: TMode extends 'prepared' 10180 ? UseContractWriteConfig< 10181 PrepareWriteContractResult< 10182 typeof l1FeeVaultABI, 10183 string 10184 >['request']['abi'], 10185 TFunctionName, 10186 TMode 10187 > & { address?: Address; chainId?: TChainId } 10188 : UseContractWriteConfig<typeof l1FeeVaultABI, TFunctionName, TMode> & { 10189 abi?: never 10190 address?: never 10191 chainId?: TChainId 10192 } = {} as any 10193 ) { 10194 return useContractWrite<typeof l1FeeVaultABI, TFunctionName, TMode>({ 10195 abi: l1FeeVaultABI, 10196 address: l1FeeVaultAddress[420], 10197 ...config, 10198 } as any) 10199 } 10200 10201 /** 10202 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link l1FeeVaultABI}__. 10203 * 10204 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x420000000000000000000000000000000000001a) 10205 */ 10206 export function useL1FeeVaultEvent<TEventName extends string>( 10207 config: Omit< 10208 UseContractEventConfig<typeof l1FeeVaultABI, TEventName>, 10209 'abi' | 'address' 10210 > & { chainId?: keyof typeof l1FeeVaultAddress } = {} as any 10211 ) { 10212 return useContractEvent({ 10213 abi: l1FeeVaultABI, 10214 address: l1FeeVaultAddress[420], 10215 ...config, 10216 } as UseContractEventConfig<typeof l1FeeVaultABI, TEventName>) 10217 } 10218 10219 /** 10220 * Wraps __{@link useContractRead}__ with `abi` set to __{@link l1StandardBridgeABI}__. 10221 * 10222 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1) 10223 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x636Af16bf2f682dD3109e60102b8E1A089FedAa8) 10224 */ 10225 export function useL1StandardBridgeRead< 10226 TFunctionName extends string, 10227 TSelectData = ReadContractResult<typeof l1StandardBridgeABI, TFunctionName> 10228 >( 10229 config: Omit< 10230 UseContractReadConfig< 10231 typeof l1StandardBridgeABI, 10232 TFunctionName, 10233 TSelectData 10234 >, 10235 'abi' | 'address' 10236 > & { chainId?: keyof typeof l1StandardBridgeAddress } = {} as any 10237 ) { 10238 const { chain } = useNetwork() 10239 const defaultChainId = useChainId() 10240 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10241 return useContractRead({ 10242 abi: l1StandardBridgeABI, 10243 address: 10244 l1StandardBridgeAddress[chainId as keyof typeof l1StandardBridgeAddress], 10245 ...config, 10246 } as UseContractReadConfig<typeof l1StandardBridgeABI, TFunctionName, TSelectData>) 10247 } 10248 10249 /** 10250 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link l1StandardBridgeABI}__. 10251 * 10252 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1) 10253 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x636Af16bf2f682dD3109e60102b8E1A089FedAa8) 10254 */ 10255 export function useL1StandardBridgeWrite< 10256 TFunctionName extends string, 10257 TMode extends WriteContractMode = undefined, 10258 TChainId extends number = keyof typeof l1StandardBridgeAddress 10259 >( 10260 config: TMode extends 'prepared' 10261 ? UseContractWriteConfig< 10262 PrepareWriteContractResult< 10263 typeof l1StandardBridgeABI, 10264 string 10265 >['request']['abi'], 10266 TFunctionName, 10267 TMode 10268 > & { address?: Address; chainId?: TChainId } 10269 : UseContractWriteConfig< 10270 typeof l1StandardBridgeABI, 10271 TFunctionName, 10272 TMode 10273 > & { 10274 abi?: never 10275 address?: never 10276 chainId?: TChainId 10277 } = {} as any 10278 ) { 10279 const { chain } = useNetwork() 10280 const defaultChainId = useChainId() 10281 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10282 return useContractWrite<typeof l1StandardBridgeABI, TFunctionName, TMode>({ 10283 abi: l1StandardBridgeABI, 10284 address: 10285 l1StandardBridgeAddress[chainId as keyof typeof l1StandardBridgeAddress], 10286 ...config, 10287 } as any) 10288 } 10289 10290 /** 10291 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link l1StandardBridgeABI}__. 10292 * 10293 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1) 10294 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x636Af16bf2f682dD3109e60102b8E1A089FedAa8) 10295 */ 10296 export function useL1StandardBridgeEvent<TEventName extends string>( 10297 config: Omit< 10298 UseContractEventConfig<typeof l1StandardBridgeABI, TEventName>, 10299 'abi' | 'address' 10300 > & { chainId?: keyof typeof l1StandardBridgeAddress } = {} as any 10301 ) { 10302 const { chain } = useNetwork() 10303 const defaultChainId = useChainId() 10304 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10305 return useContractEvent({ 10306 abi: l1StandardBridgeABI, 10307 address: 10308 l1StandardBridgeAddress[chainId as keyof typeof l1StandardBridgeAddress], 10309 ...config, 10310 } as UseContractEventConfig<typeof l1StandardBridgeABI, TEventName>) 10311 } 10312 10313 /** 10314 * Wraps __{@link useContractRead}__ with `abi` set to __{@link l2CrossDomainMessengerABI}__. 10315 * 10316 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000007) 10317 */ 10318 export function useL2CrossDomainMessengerRead< 10319 TFunctionName extends string, 10320 TSelectData = ReadContractResult< 10321 typeof l2CrossDomainMessengerABI, 10322 TFunctionName 10323 > 10324 >( 10325 config: Omit< 10326 UseContractReadConfig< 10327 typeof l2CrossDomainMessengerABI, 10328 TFunctionName, 10329 TSelectData 10330 >, 10331 'abi' | 'address' 10332 > & { chainId?: keyof typeof l2CrossDomainMessengerAddress } = {} as any 10333 ) { 10334 return useContractRead({ 10335 abi: l2CrossDomainMessengerABI, 10336 address: l2CrossDomainMessengerAddress[420], 10337 ...config, 10338 } as UseContractReadConfig<typeof l2CrossDomainMessengerABI, TFunctionName, TSelectData>) 10339 } 10340 10341 /** 10342 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link l2CrossDomainMessengerABI}__. 10343 * 10344 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000007) 10345 */ 10346 export function useL2CrossDomainMessengerWrite< 10347 TFunctionName extends string, 10348 TMode extends WriteContractMode = undefined, 10349 TChainId extends number = keyof typeof l2CrossDomainMessengerAddress 10350 >( 10351 config: TMode extends 'prepared' 10352 ? UseContractWriteConfig< 10353 PrepareWriteContractResult< 10354 typeof l2CrossDomainMessengerABI, 10355 string 10356 >['request']['abi'], 10357 TFunctionName, 10358 TMode 10359 > & { address?: Address; chainId?: TChainId } 10360 : UseContractWriteConfig< 10361 typeof l2CrossDomainMessengerABI, 10362 TFunctionName, 10363 TMode 10364 > & { 10365 abi?: never 10366 address?: never 10367 chainId?: TChainId 10368 } = {} as any 10369 ) { 10370 return useContractWrite< 10371 typeof l2CrossDomainMessengerABI, 10372 TFunctionName, 10373 TMode 10374 >({ 10375 abi: l2CrossDomainMessengerABI, 10376 address: l2CrossDomainMessengerAddress[420], 10377 ...config, 10378 } as any) 10379 } 10380 10381 /** 10382 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link l2CrossDomainMessengerABI}__. 10383 * 10384 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000007) 10385 */ 10386 export function useL2CrossDomainMessengerEvent<TEventName extends string>( 10387 config: Omit< 10388 UseContractEventConfig<typeof l2CrossDomainMessengerABI, TEventName>, 10389 'abi' | 'address' 10390 > & { chainId?: keyof typeof l2CrossDomainMessengerAddress } = {} as any 10391 ) { 10392 return useContractEvent({ 10393 abi: l2CrossDomainMessengerABI, 10394 address: l2CrossDomainMessengerAddress[420], 10395 ...config, 10396 } as UseContractEventConfig<typeof l2CrossDomainMessengerABI, TEventName>) 10397 } 10398 10399 /** 10400 * Wraps __{@link useContractRead}__ with `abi` set to __{@link l2Erc721BridgeABI}__. 10401 * 10402 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000014) 10403 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000014) 10404 */ 10405 export function useL2Erc721BridgeRead< 10406 TFunctionName extends string, 10407 TSelectData = ReadContractResult<typeof l2Erc721BridgeABI, TFunctionName> 10408 >( 10409 config: Omit< 10410 UseContractReadConfig<typeof l2Erc721BridgeABI, TFunctionName, TSelectData>, 10411 'abi' | 'address' 10412 > & { chainId?: keyof typeof l2Erc721BridgeAddress } = {} as any 10413 ) { 10414 const { chain } = useNetwork() 10415 const defaultChainId = useChainId() 10416 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10417 return useContractRead({ 10418 abi: l2Erc721BridgeABI, 10419 address: 10420 l2Erc721BridgeAddress[chainId as keyof typeof l2Erc721BridgeAddress], 10421 ...config, 10422 } as UseContractReadConfig<typeof l2Erc721BridgeABI, TFunctionName, TSelectData>) 10423 } 10424 10425 /** 10426 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link l2Erc721BridgeABI}__. 10427 * 10428 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000014) 10429 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000014) 10430 */ 10431 export function useL2Erc721BridgeWrite< 10432 TFunctionName extends string, 10433 TMode extends WriteContractMode = undefined, 10434 TChainId extends number = keyof typeof l2Erc721BridgeAddress 10435 >( 10436 config: TMode extends 'prepared' 10437 ? UseContractWriteConfig< 10438 PrepareWriteContractResult< 10439 typeof l2Erc721BridgeABI, 10440 string 10441 >['request']['abi'], 10442 TFunctionName, 10443 TMode 10444 > & { address?: Address; chainId?: TChainId } 10445 : UseContractWriteConfig<typeof l2Erc721BridgeABI, TFunctionName, TMode> & { 10446 abi?: never 10447 address?: never 10448 chainId?: TChainId 10449 } = {} as any 10450 ) { 10451 const { chain } = useNetwork() 10452 const defaultChainId = useChainId() 10453 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10454 return useContractWrite<typeof l2Erc721BridgeABI, TFunctionName, TMode>({ 10455 abi: l2Erc721BridgeABI, 10456 address: 10457 l2Erc721BridgeAddress[chainId as keyof typeof l2Erc721BridgeAddress], 10458 ...config, 10459 } as any) 10460 } 10461 10462 /** 10463 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link l2Erc721BridgeABI}__. 10464 * 10465 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000014) 10466 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000014) 10467 */ 10468 export function useL2Erc721BridgeEvent<TEventName extends string>( 10469 config: Omit< 10470 UseContractEventConfig<typeof l2Erc721BridgeABI, TEventName>, 10471 'abi' | 'address' 10472 > & { chainId?: keyof typeof l2Erc721BridgeAddress } = {} as any 10473 ) { 10474 const { chain } = useNetwork() 10475 const defaultChainId = useChainId() 10476 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10477 return useContractEvent({ 10478 abi: l2Erc721BridgeABI, 10479 address: 10480 l2Erc721BridgeAddress[chainId as keyof typeof l2Erc721BridgeAddress], 10481 ...config, 10482 } as UseContractEventConfig<typeof l2Erc721BridgeABI, TEventName>) 10483 } 10484 10485 /** 10486 * Wraps __{@link useContractRead}__ with `abi` set to __{@link l2OutputOracleABI}__. 10487 * 10488 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdfe97868233d1aa22e815a266982f2cf17685a27) 10489 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0) 10490 */ 10491 export function useL2OutputOracleRead< 10492 TFunctionName extends string, 10493 TSelectData = ReadContractResult<typeof l2OutputOracleABI, TFunctionName> 10494 >( 10495 config: Omit< 10496 UseContractReadConfig<typeof l2OutputOracleABI, TFunctionName, TSelectData>, 10497 'abi' | 'address' 10498 > & { chainId?: keyof typeof l2OutputOracleAddress } = {} as any 10499 ) { 10500 const { chain } = useNetwork() 10501 const defaultChainId = useChainId() 10502 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10503 return useContractRead({ 10504 abi: l2OutputOracleABI, 10505 address: 10506 l2OutputOracleAddress[chainId as keyof typeof l2OutputOracleAddress], 10507 ...config, 10508 } as UseContractReadConfig<typeof l2OutputOracleABI, TFunctionName, TSelectData>) 10509 } 10510 10511 /** 10512 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link l2OutputOracleABI}__. 10513 * 10514 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdfe97868233d1aa22e815a266982f2cf17685a27) 10515 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0) 10516 */ 10517 export function useL2OutputOracleWrite< 10518 TFunctionName extends string, 10519 TMode extends WriteContractMode = undefined, 10520 TChainId extends number = keyof typeof l2OutputOracleAddress 10521 >( 10522 config: TMode extends 'prepared' 10523 ? UseContractWriteConfig< 10524 PrepareWriteContractResult< 10525 typeof l2OutputOracleABI, 10526 string 10527 >['request']['abi'], 10528 TFunctionName, 10529 TMode 10530 > & { address?: Address; chainId?: TChainId } 10531 : UseContractWriteConfig<typeof l2OutputOracleABI, TFunctionName, TMode> & { 10532 abi?: never 10533 address?: never 10534 chainId?: TChainId 10535 } = {} as any 10536 ) { 10537 const { chain } = useNetwork() 10538 const defaultChainId = useChainId() 10539 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10540 return useContractWrite<typeof l2OutputOracleABI, TFunctionName, TMode>({ 10541 abi: l2OutputOracleABI, 10542 address: 10543 l2OutputOracleAddress[chainId as keyof typeof l2OutputOracleAddress], 10544 ...config, 10545 } as any) 10546 } 10547 10548 /** 10549 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link l2OutputOracleABI}__. 10550 * 10551 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xdfe97868233d1aa22e815a266982f2cf17685a27) 10552 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0) 10553 */ 10554 export function useL2OutputOracleEvent<TEventName extends string>( 10555 config: Omit< 10556 UseContractEventConfig<typeof l2OutputOracleABI, TEventName>, 10557 'abi' | 'address' 10558 > & { chainId?: keyof typeof l2OutputOracleAddress } = {} as any 10559 ) { 10560 const { chain } = useNetwork() 10561 const defaultChainId = useChainId() 10562 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10563 return useContractEvent({ 10564 abi: l2OutputOracleABI, 10565 address: 10566 l2OutputOracleAddress[chainId as keyof typeof l2OutputOracleAddress], 10567 ...config, 10568 } as UseContractEventConfig<typeof l2OutputOracleABI, TEventName>) 10569 } 10570 10571 /** 10572 * Wraps __{@link useContractRead}__ with `abi` set to __{@link l2StandardBridgeABI}__. 10573 * 10574 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000010) 10575 */ 10576 export function useL2StandardBridgeRead< 10577 TFunctionName extends string, 10578 TSelectData = ReadContractResult<typeof l2StandardBridgeABI, TFunctionName> 10579 >( 10580 config: Omit< 10581 UseContractReadConfig< 10582 typeof l2StandardBridgeABI, 10583 TFunctionName, 10584 TSelectData 10585 >, 10586 'abi' | 'address' 10587 > & { chainId?: keyof typeof l2StandardBridgeAddress } = {} as any 10588 ) { 10589 return useContractRead({ 10590 abi: l2StandardBridgeABI, 10591 address: l2StandardBridgeAddress[420], 10592 ...config, 10593 } as UseContractReadConfig<typeof l2StandardBridgeABI, TFunctionName, TSelectData>) 10594 } 10595 10596 /** 10597 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link l2StandardBridgeABI}__. 10598 * 10599 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000010) 10600 */ 10601 export function useL2StandardBridgeWrite< 10602 TFunctionName extends string, 10603 TMode extends WriteContractMode = undefined, 10604 TChainId extends number = keyof typeof l2StandardBridgeAddress 10605 >( 10606 config: TMode extends 'prepared' 10607 ? UseContractWriteConfig< 10608 PrepareWriteContractResult< 10609 typeof l2StandardBridgeABI, 10610 string 10611 >['request']['abi'], 10612 TFunctionName, 10613 TMode 10614 > & { address?: Address; chainId?: TChainId } 10615 : UseContractWriteConfig< 10616 typeof l2StandardBridgeABI, 10617 TFunctionName, 10618 TMode 10619 > & { 10620 abi?: never 10621 address?: never 10622 chainId?: TChainId 10623 } = {} as any 10624 ) { 10625 return useContractWrite<typeof l2StandardBridgeABI, TFunctionName, TMode>({ 10626 abi: l2StandardBridgeABI, 10627 address: l2StandardBridgeAddress[420], 10628 ...config, 10629 } as any) 10630 } 10631 10632 /** 10633 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link l2StandardBridgeABI}__. 10634 * 10635 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000010) 10636 */ 10637 export function useL2StandardBridgeEvent<TEventName extends string>( 10638 config: Omit< 10639 UseContractEventConfig<typeof l2StandardBridgeABI, TEventName>, 10640 'abi' | 'address' 10641 > & { chainId?: keyof typeof l2StandardBridgeAddress } = {} as any 10642 ) { 10643 return useContractEvent({ 10644 abi: l2StandardBridgeABI, 10645 address: l2StandardBridgeAddress[420], 10646 ...config, 10647 } as UseContractEventConfig<typeof l2StandardBridgeABI, TEventName>) 10648 } 10649 10650 /** 10651 * Wraps __{@link useContractRead}__ with `abi` set to __{@link l2ToL1MessagePasserABI}__. 10652 * 10653 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000016) 10654 */ 10655 export function useL2ToL1MessagePasserRead< 10656 TFunctionName extends string, 10657 TSelectData = ReadContractResult<typeof l2ToL1MessagePasserABI, TFunctionName> 10658 >( 10659 config: Omit< 10660 UseContractReadConfig< 10661 typeof l2ToL1MessagePasserABI, 10662 TFunctionName, 10663 TSelectData 10664 >, 10665 'abi' | 'address' 10666 > & { chainId?: keyof typeof l2ToL1MessagePasserAddress } = {} as any 10667 ) { 10668 return useContractRead({ 10669 abi: l2ToL1MessagePasserABI, 10670 address: l2ToL1MessagePasserAddress[420], 10671 ...config, 10672 } as UseContractReadConfig<typeof l2ToL1MessagePasserABI, TFunctionName, TSelectData>) 10673 } 10674 10675 /** 10676 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link l2ToL1MessagePasserABI}__. 10677 * 10678 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000016) 10679 */ 10680 export function useL2ToL1MessagePasserWrite< 10681 TFunctionName extends string, 10682 TMode extends WriteContractMode = undefined, 10683 TChainId extends number = keyof typeof l2ToL1MessagePasserAddress 10684 >( 10685 config: TMode extends 'prepared' 10686 ? UseContractWriteConfig< 10687 PrepareWriteContractResult< 10688 typeof l2ToL1MessagePasserABI, 10689 string 10690 >['request']['abi'], 10691 TFunctionName, 10692 TMode 10693 > & { address?: Address; chainId?: TChainId } 10694 : UseContractWriteConfig< 10695 typeof l2ToL1MessagePasserABI, 10696 TFunctionName, 10697 TMode 10698 > & { 10699 abi?: never 10700 address?: never 10701 chainId?: TChainId 10702 } = {} as any 10703 ) { 10704 return useContractWrite<typeof l2ToL1MessagePasserABI, TFunctionName, TMode>({ 10705 abi: l2ToL1MessagePasserABI, 10706 address: l2ToL1MessagePasserAddress[420], 10707 ...config, 10708 } as any) 10709 } 10710 10711 /** 10712 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link l2ToL1MessagePasserABI}__. 10713 * 10714 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000016) 10715 */ 10716 export function useL2ToL1MessagePasserEvent<TEventName extends string>( 10717 config: Omit< 10718 UseContractEventConfig<typeof l2ToL1MessagePasserABI, TEventName>, 10719 'abi' | 'address' 10720 > & { chainId?: keyof typeof l2ToL1MessagePasserAddress } = {} as any 10721 ) { 10722 return useContractEvent({ 10723 abi: l2ToL1MessagePasserABI, 10724 address: l2ToL1MessagePasserAddress[420], 10725 ...config, 10726 } as UseContractEventConfig<typeof l2ToL1MessagePasserABI, TEventName>) 10727 } 10728 10729 /** 10730 * Wraps __{@link useContractRead}__ with `abi` set to __{@link mintManagerABI}__. 10731 * 10732 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x5C4e7Ba1E219E47948e6e3F55019A647bA501005) 10733 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76) 10734 */ 10735 export function useMintManagerRead< 10736 TFunctionName extends string, 10737 TSelectData = ReadContractResult<typeof mintManagerABI, TFunctionName> 10738 >( 10739 config: Omit< 10740 UseContractReadConfig<typeof mintManagerABI, TFunctionName, TSelectData>, 10741 'abi' | 'address' 10742 > & { chainId?: keyof typeof mintManagerAddress } = {} as any 10743 ) { 10744 const { chain } = useNetwork() 10745 const defaultChainId = useChainId() 10746 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10747 return useContractRead({ 10748 abi: mintManagerABI, 10749 address: mintManagerAddress[chainId as keyof typeof mintManagerAddress], 10750 ...config, 10751 } as UseContractReadConfig<typeof mintManagerABI, TFunctionName, TSelectData>) 10752 } 10753 10754 /** 10755 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link mintManagerABI}__. 10756 * 10757 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x5C4e7Ba1E219E47948e6e3F55019A647bA501005) 10758 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76) 10759 */ 10760 export function useMintManagerWrite< 10761 TFunctionName extends string, 10762 TMode extends WriteContractMode = undefined, 10763 TChainId extends number = keyof typeof mintManagerAddress 10764 >( 10765 config: TMode extends 'prepared' 10766 ? UseContractWriteConfig< 10767 PrepareWriteContractResult< 10768 typeof mintManagerABI, 10769 string 10770 >['request']['abi'], 10771 TFunctionName, 10772 TMode 10773 > & { address?: Address; chainId?: TChainId } 10774 : UseContractWriteConfig<typeof mintManagerABI, TFunctionName, TMode> & { 10775 abi?: never 10776 address?: never 10777 chainId?: TChainId 10778 } = {} as any 10779 ) { 10780 const { chain } = useNetwork() 10781 const defaultChainId = useChainId() 10782 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10783 return useContractWrite<typeof mintManagerABI, TFunctionName, TMode>({ 10784 abi: mintManagerABI, 10785 address: mintManagerAddress[chainId as keyof typeof mintManagerAddress], 10786 ...config, 10787 } as any) 10788 } 10789 10790 /** 10791 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link mintManagerABI}__. 10792 * 10793 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x5C4e7Ba1E219E47948e6e3F55019A647bA501005) 10794 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x038a8825A3C3B0c08d52Cc76E5E361953Cf6Dc76) 10795 */ 10796 export function useMintManagerEvent<TEventName extends string>( 10797 config: Omit< 10798 UseContractEventConfig<typeof mintManagerABI, TEventName>, 10799 'abi' | 'address' 10800 > & { chainId?: keyof typeof mintManagerAddress } = {} as any 10801 ) { 10802 const { chain } = useNetwork() 10803 const defaultChainId = useChainId() 10804 const chainId = config.chainId ?? chain?.id ?? defaultChainId 10805 return useContractEvent({ 10806 abi: mintManagerABI, 10807 address: mintManagerAddress[chainId as keyof typeof mintManagerAddress], 10808 ...config, 10809 } as UseContractEventConfig<typeof mintManagerABI, TEventName>) 10810 } 10811 10812 /** 10813 * Wraps __{@link useContractRead}__ with `abi` set to __{@link optimismMintableErc20FactoryABI}__. 10814 * 10815 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000012) 10816 */ 10817 export function useOptimismMintableErc20FactoryRead< 10818 TFunctionName extends string, 10819 TSelectData = ReadContractResult< 10820 typeof optimismMintableErc20FactoryABI, 10821 TFunctionName 10822 > 10823 >( 10824 config: Omit< 10825 UseContractReadConfig< 10826 typeof optimismMintableErc20FactoryABI, 10827 TFunctionName, 10828 TSelectData 10829 >, 10830 'abi' | 'address' 10831 > & { chainId?: keyof typeof optimismMintableErc20FactoryAddress } = {} as any 10832 ) { 10833 return useContractRead({ 10834 abi: optimismMintableErc20FactoryABI, 10835 address: optimismMintableErc20FactoryAddress[1], 10836 ...config, 10837 } as UseContractReadConfig<typeof optimismMintableErc20FactoryABI, TFunctionName, TSelectData>) 10838 } 10839 10840 /** 10841 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link optimismMintableErc20FactoryABI}__. 10842 * 10843 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000012) 10844 */ 10845 export function useOptimismMintableErc20FactoryWrite< 10846 TFunctionName extends string, 10847 TMode extends WriteContractMode = undefined, 10848 TChainId extends number = keyof typeof optimismMintableErc20FactoryAddress 10849 >( 10850 config: TMode extends 'prepared' 10851 ? UseContractWriteConfig< 10852 PrepareWriteContractResult< 10853 typeof optimismMintableErc20FactoryABI, 10854 string 10855 >['request']['abi'], 10856 TFunctionName, 10857 TMode 10858 > & { address?: Address; chainId?: TChainId } 10859 : UseContractWriteConfig< 10860 typeof optimismMintableErc20FactoryABI, 10861 TFunctionName, 10862 TMode 10863 > & { 10864 abi?: never 10865 address?: never 10866 chainId?: TChainId 10867 } = {} as any 10868 ) { 10869 return useContractWrite< 10870 typeof optimismMintableErc20FactoryABI, 10871 TFunctionName, 10872 TMode 10873 >({ 10874 abi: optimismMintableErc20FactoryABI, 10875 address: optimismMintableErc20FactoryAddress[1], 10876 ...config, 10877 } as any) 10878 } 10879 10880 /** 10881 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link optimismMintableErc20FactoryABI}__. 10882 * 10883 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000012) 10884 */ 10885 export function useOptimismMintableErc20FactoryEvent<TEventName extends string>( 10886 config: Omit< 10887 UseContractEventConfig<typeof optimismMintableErc20FactoryABI, TEventName>, 10888 'abi' | 'address' 10889 > & { chainId?: keyof typeof optimismMintableErc20FactoryAddress } = {} as any 10890 ) { 10891 return useContractEvent({ 10892 abi: optimismMintableErc20FactoryABI, 10893 address: optimismMintableErc20FactoryAddress[1], 10894 ...config, 10895 } as UseContractEventConfig<typeof optimismMintableErc20FactoryABI, TEventName>) 10896 } 10897 10898 /** 10899 * Wraps __{@link useContractRead}__ with `abi` set to __{@link optimismMintableErc20FactoryGoerliABI}__. 10900 * 10901 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000012) 10902 */ 10903 export function useOptimismMintableErc20FactoryGoerliRead< 10904 TFunctionName extends string, 10905 TSelectData = ReadContractResult< 10906 typeof optimismMintableErc20FactoryGoerliABI, 10907 TFunctionName 10908 > 10909 >( 10910 config: Omit< 10911 UseContractReadConfig< 10912 typeof optimismMintableErc20FactoryGoerliABI, 10913 TFunctionName, 10914 TSelectData 10915 >, 10916 'abi' | 'address' 10917 > & { 10918 chainId?: keyof typeof optimismMintableErc20FactoryGoerliAddress 10919 } = {} as any 10920 ) { 10921 return useContractRead({ 10922 abi: optimismMintableErc20FactoryGoerliABI, 10923 address: optimismMintableErc20FactoryGoerliAddress[5], 10924 ...config, 10925 } as UseContractReadConfig<typeof optimismMintableErc20FactoryGoerliABI, TFunctionName, TSelectData>) 10926 } 10927 10928 /** 10929 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link optimismMintableErc20FactoryGoerliABI}__. 10930 * 10931 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000012) 10932 */ 10933 export function useOptimismMintableErc20FactoryGoerliWrite< 10934 TFunctionName extends string, 10935 TMode extends WriteContractMode = undefined, 10936 TChainId extends number = keyof typeof optimismMintableErc20FactoryGoerliAddress 10937 >( 10938 config: TMode extends 'prepared' 10939 ? UseContractWriteConfig< 10940 PrepareWriteContractResult< 10941 typeof optimismMintableErc20FactoryGoerliABI, 10942 string 10943 >['request']['abi'], 10944 TFunctionName, 10945 TMode 10946 > & { address?: Address; chainId?: TChainId } 10947 : UseContractWriteConfig< 10948 typeof optimismMintableErc20FactoryGoerliABI, 10949 TFunctionName, 10950 TMode 10951 > & { 10952 abi?: never 10953 address?: never 10954 chainId?: TChainId 10955 } = {} as any 10956 ) { 10957 return useContractWrite< 10958 typeof optimismMintableErc20FactoryGoerliABI, 10959 TFunctionName, 10960 TMode 10961 >({ 10962 abi: optimismMintableErc20FactoryGoerliABI, 10963 address: optimismMintableErc20FactoryGoerliAddress[5], 10964 ...config, 10965 } as any) 10966 } 10967 10968 /** 10969 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link optimismMintableErc20FactoryGoerliABI}__. 10970 * 10971 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000012) 10972 */ 10973 export function useOptimismMintableErc20FactoryGoerliEvent< 10974 TEventName extends string 10975 >( 10976 config: Omit< 10977 UseContractEventConfig< 10978 typeof optimismMintableErc20FactoryGoerliABI, 10979 TEventName 10980 >, 10981 'abi' | 'address' 10982 > & { 10983 chainId?: keyof typeof optimismMintableErc20FactoryGoerliAddress 10984 } = {} as any 10985 ) { 10986 return useContractEvent({ 10987 abi: optimismMintableErc20FactoryGoerliABI, 10988 address: optimismMintableErc20FactoryGoerliAddress[5], 10989 ...config, 10990 } as UseContractEventConfig<typeof optimismMintableErc20FactoryGoerliABI, TEventName>) 10991 } 10992 10993 /** 10994 * Wraps __{@link useContractRead}__ with `abi` set to __{@link optimismMintableErc20FactoryOptimismGoerliABI}__. 10995 * 10996 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000012) 10997 */ 10998 export function useOptimismMintableErc20FactoryOptimismGoerliRead< 10999 TFunctionName extends string, 11000 TSelectData = ReadContractResult< 11001 typeof optimismMintableErc20FactoryOptimismGoerliABI, 11002 TFunctionName 11003 > 11004 >( 11005 config: Omit< 11006 UseContractReadConfig< 11007 typeof optimismMintableErc20FactoryOptimismGoerliABI, 11008 TFunctionName, 11009 TSelectData 11010 >, 11011 'abi' | 'address' 11012 > & { 11013 chainId?: keyof typeof optimismMintableErc20FactoryOptimismGoerliAddress 11014 } = {} as any 11015 ) { 11016 return useContractRead({ 11017 abi: optimismMintableErc20FactoryOptimismGoerliABI, 11018 address: optimismMintableErc20FactoryOptimismGoerliAddress[420], 11019 ...config, 11020 } as UseContractReadConfig<typeof optimismMintableErc20FactoryOptimismGoerliABI, TFunctionName, TSelectData>) 11021 } 11022 11023 /** 11024 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link optimismMintableErc20FactoryOptimismGoerliABI}__. 11025 * 11026 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000012) 11027 */ 11028 export function useOptimismMintableErc20FactoryOptimismGoerliWrite< 11029 TFunctionName extends string, 11030 TMode extends WriteContractMode = undefined, 11031 TChainId extends number = keyof typeof optimismMintableErc20FactoryOptimismGoerliAddress 11032 >( 11033 config: TMode extends 'prepared' 11034 ? UseContractWriteConfig< 11035 PrepareWriteContractResult< 11036 typeof optimismMintableErc20FactoryOptimismGoerliABI, 11037 string 11038 >['request']['abi'], 11039 TFunctionName, 11040 TMode 11041 > & { address?: Address; chainId?: TChainId } 11042 : UseContractWriteConfig< 11043 typeof optimismMintableErc20FactoryOptimismGoerliABI, 11044 TFunctionName, 11045 TMode 11046 > & { 11047 abi?: never 11048 address?: never 11049 chainId?: TChainId 11050 } = {} as any 11051 ) { 11052 return useContractWrite< 11053 typeof optimismMintableErc20FactoryOptimismGoerliABI, 11054 TFunctionName, 11055 TMode 11056 >({ 11057 abi: optimismMintableErc20FactoryOptimismGoerliABI, 11058 address: optimismMintableErc20FactoryOptimismGoerliAddress[420], 11059 ...config, 11060 } as any) 11061 } 11062 11063 /** 11064 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link optimismMintableErc20FactoryOptimismGoerliABI}__. 11065 * 11066 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000012) 11067 */ 11068 export function useOptimismMintableErc20FactoryOptimismGoerliEvent< 11069 TEventName extends string 11070 >( 11071 config: Omit< 11072 UseContractEventConfig< 11073 typeof optimismMintableErc20FactoryOptimismGoerliABI, 11074 TEventName 11075 >, 11076 'abi' | 'address' 11077 > & { 11078 chainId?: keyof typeof optimismMintableErc20FactoryOptimismGoerliAddress 11079 } = {} as any 11080 ) { 11081 return useContractEvent({ 11082 abi: optimismMintableErc20FactoryOptimismGoerliABI, 11083 address: optimismMintableErc20FactoryOptimismGoerliAddress[420], 11084 ...config, 11085 } as UseContractEventConfig<typeof optimismMintableErc20FactoryOptimismGoerliABI, TEventName>) 11086 } 11087 11088 /** 11089 * Wraps __{@link useContractRead}__ with `abi` set to __{@link optimismMintableErc721FactoryABI}__. 11090 * 11091 * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000017) 11092 */ 11093 export function useOptimismMintableErc721FactoryRead< 11094 TFunctionName extends string, 11095 TSelectData = ReadContractResult< 11096 typeof optimismMintableErc721FactoryABI, 11097 TFunctionName 11098 > 11099 >( 11100 config: Omit< 11101 UseContractReadConfig< 11102 typeof optimismMintableErc721FactoryABI, 11103 TFunctionName, 11104 TSelectData 11105 >, 11106 'abi' | 'address' 11107 > & { 11108 chainId?: keyof typeof optimismMintableErc721FactoryAddress 11109 } = {} as any 11110 ) { 11111 return useContractRead({ 11112 abi: optimismMintableErc721FactoryABI, 11113 address: optimismMintableErc721FactoryAddress[10], 11114 ...config, 11115 } as UseContractReadConfig<typeof optimismMintableErc721FactoryABI, TFunctionName, TSelectData>) 11116 } 11117 11118 /** 11119 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link optimismMintableErc721FactoryABI}__. 11120 * 11121 * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000017) 11122 */ 11123 export function useOptimismMintableErc721FactoryWrite< 11124 TFunctionName extends string, 11125 TMode extends WriteContractMode = undefined, 11126 TChainId extends number = keyof typeof optimismMintableErc721FactoryAddress 11127 >( 11128 config: TMode extends 'prepared' 11129 ? UseContractWriteConfig< 11130 PrepareWriteContractResult< 11131 typeof optimismMintableErc721FactoryABI, 11132 string 11133 >['request']['abi'], 11134 TFunctionName, 11135 TMode 11136 > & { address?: Address; chainId?: TChainId } 11137 : UseContractWriteConfig< 11138 typeof optimismMintableErc721FactoryABI, 11139 TFunctionName, 11140 TMode 11141 > & { 11142 abi?: never 11143 address?: never 11144 chainId?: TChainId 11145 } = {} as any 11146 ) { 11147 return useContractWrite< 11148 typeof optimismMintableErc721FactoryABI, 11149 TFunctionName, 11150 TMode 11151 >({ 11152 abi: optimismMintableErc721FactoryABI, 11153 address: optimismMintableErc721FactoryAddress[10], 11154 ...config, 11155 } as any) 11156 } 11157 11158 /** 11159 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link optimismMintableErc721FactoryABI}__. 11160 * 11161 * [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x4200000000000000000000000000000000000017) 11162 */ 11163 export function useOptimismMintableErc721FactoryEvent< 11164 TEventName extends string 11165 >( 11166 config: Omit< 11167 UseContractEventConfig<typeof optimismMintableErc721FactoryABI, TEventName>, 11168 'abi' | 'address' 11169 > & { 11170 chainId?: keyof typeof optimismMintableErc721FactoryAddress 11171 } = {} as any 11172 ) { 11173 return useContractEvent({ 11174 abi: optimismMintableErc721FactoryABI, 11175 address: optimismMintableErc721FactoryAddress[10], 11176 ...config, 11177 } as UseContractEventConfig<typeof optimismMintableErc721FactoryABI, TEventName>) 11178 } 11179 11180 /** 11181 * Wraps __{@link useContractRead}__ with `abi` set to __{@link optimismMintableErc721FactoryOptimismGoerliABI}__. 11182 * 11183 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000017) 11184 */ 11185 export function useOptimismMintableErc721FactoryOptimismGoerliRead< 11186 TFunctionName extends string, 11187 TSelectData = ReadContractResult< 11188 typeof optimismMintableErc721FactoryOptimismGoerliABI, 11189 TFunctionName 11190 > 11191 >( 11192 config: Omit< 11193 UseContractReadConfig< 11194 typeof optimismMintableErc721FactoryOptimismGoerliABI, 11195 TFunctionName, 11196 TSelectData 11197 >, 11198 'abi' | 'address' 11199 > & { 11200 chainId?: keyof typeof optimismMintableErc721FactoryOptimismGoerliAddress 11201 } = {} as any 11202 ) { 11203 return useContractRead({ 11204 abi: optimismMintableErc721FactoryOptimismGoerliABI, 11205 address: optimismMintableErc721FactoryOptimismGoerliAddress[420], 11206 ...config, 11207 } as UseContractReadConfig<typeof optimismMintableErc721FactoryOptimismGoerliABI, TFunctionName, TSelectData>) 11208 } 11209 11210 /** 11211 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link optimismMintableErc721FactoryOptimismGoerliABI}__. 11212 * 11213 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000017) 11214 */ 11215 export function useOptimismMintableErc721FactoryOptimismGoerliWrite< 11216 TFunctionName extends string, 11217 TMode extends WriteContractMode = undefined, 11218 TChainId extends number = keyof typeof optimismMintableErc721FactoryOptimismGoerliAddress 11219 >( 11220 config: TMode extends 'prepared' 11221 ? UseContractWriteConfig< 11222 PrepareWriteContractResult< 11223 typeof optimismMintableErc721FactoryOptimismGoerliABI, 11224 string 11225 >['request']['abi'], 11226 TFunctionName, 11227 TMode 11228 > & { address?: Address; chainId?: TChainId } 11229 : UseContractWriteConfig< 11230 typeof optimismMintableErc721FactoryOptimismGoerliABI, 11231 TFunctionName, 11232 TMode 11233 > & { 11234 abi?: never 11235 address?: never 11236 chainId?: TChainId 11237 } = {} as any 11238 ) { 11239 return useContractWrite< 11240 typeof optimismMintableErc721FactoryOptimismGoerliABI, 11241 TFunctionName, 11242 TMode 11243 >({ 11244 abi: optimismMintableErc721FactoryOptimismGoerliABI, 11245 address: optimismMintableErc721FactoryOptimismGoerliAddress[420], 11246 ...config, 11247 } as any) 11248 } 11249 11250 /** 11251 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link optimismMintableErc721FactoryOptimismGoerliABI}__. 11252 * 11253 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000017) 11254 */ 11255 export function useOptimismMintableErc721FactoryOptimismGoerliEvent< 11256 TEventName extends string 11257 >( 11258 config: Omit< 11259 UseContractEventConfig< 11260 typeof optimismMintableErc721FactoryOptimismGoerliABI, 11261 TEventName 11262 >, 11263 'abi' | 'address' 11264 > & { 11265 chainId?: keyof typeof optimismMintableErc721FactoryOptimismGoerliAddress 11266 } = {} as any 11267 ) { 11268 return useContractEvent({ 11269 abi: optimismMintableErc721FactoryOptimismGoerliABI, 11270 address: optimismMintableErc721FactoryOptimismGoerliAddress[420], 11271 ...config, 11272 } as UseContractEventConfig<typeof optimismMintableErc721FactoryOptimismGoerliABI, TEventName>) 11273 } 11274 11275 /** 11276 * Wraps __{@link useContractRead}__ with `abi` set to __{@link optimismPortalABI}__. 11277 * 11278 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xbEb5Fc579115071764c7423A4f12eDde41f106Ed) 11279 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383) 11280 */ 11281 export function useOptimismPortalRead< 11282 TFunctionName extends string, 11283 TSelectData = ReadContractResult<typeof optimismPortalABI, TFunctionName> 11284 >( 11285 config: Omit< 11286 UseContractReadConfig<typeof optimismPortalABI, TFunctionName, TSelectData>, 11287 'abi' | 'address' 11288 > & { chainId?: keyof typeof optimismPortalAddress } = {} as any 11289 ) { 11290 const { chain } = useNetwork() 11291 const defaultChainId = useChainId() 11292 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11293 return useContractRead({ 11294 abi: optimismPortalABI, 11295 address: 11296 optimismPortalAddress[chainId as keyof typeof optimismPortalAddress], 11297 ...config, 11298 } as UseContractReadConfig<typeof optimismPortalABI, TFunctionName, TSelectData>) 11299 } 11300 11301 /** 11302 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link optimismPortalABI}__. 11303 * 11304 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xbEb5Fc579115071764c7423A4f12eDde41f106Ed) 11305 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383) 11306 */ 11307 export function useOptimismPortalWrite< 11308 TFunctionName extends string, 11309 TMode extends WriteContractMode = undefined, 11310 TChainId extends number = keyof typeof optimismPortalAddress 11311 >( 11312 config: TMode extends 'prepared' 11313 ? UseContractWriteConfig< 11314 PrepareWriteContractResult< 11315 typeof optimismPortalABI, 11316 string 11317 >['request']['abi'], 11318 TFunctionName, 11319 TMode 11320 > & { address?: Address; chainId?: TChainId } 11321 : UseContractWriteConfig<typeof optimismPortalABI, TFunctionName, TMode> & { 11322 abi?: never 11323 address?: never 11324 chainId?: TChainId 11325 } = {} as any 11326 ) { 11327 const { chain } = useNetwork() 11328 const defaultChainId = useChainId() 11329 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11330 return useContractWrite<typeof optimismPortalABI, TFunctionName, TMode>({ 11331 abi: optimismPortalABI, 11332 address: 11333 optimismPortalAddress[chainId as keyof typeof optimismPortalAddress], 11334 ...config, 11335 } as any) 11336 } 11337 11338 /** 11339 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link optimismPortalABI}__. 11340 * 11341 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xbEb5Fc579115071764c7423A4f12eDde41f106Ed) 11342 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383) 11343 */ 11344 export function useOptimismPortalEvent<TEventName extends string>( 11345 config: Omit< 11346 UseContractEventConfig<typeof optimismPortalABI, TEventName>, 11347 'abi' | 'address' 11348 > & { chainId?: keyof typeof optimismPortalAddress } = {} as any 11349 ) { 11350 const { chain } = useNetwork() 11351 const defaultChainId = useChainId() 11352 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11353 return useContractEvent({ 11354 abi: optimismPortalABI, 11355 address: 11356 optimismPortalAddress[chainId as keyof typeof optimismPortalAddress], 11357 ...config, 11358 } as UseContractEventConfig<typeof optimismPortalABI, TEventName>) 11359 } 11360 11361 /** 11362 * Wraps __{@link useContractRead}__ with `abi` set to __{@link optimistABI}__. 11363 * 11364 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 11365 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 11366 */ 11367 export function useOptimistRead< 11368 TFunctionName extends string, 11369 TSelectData = ReadContractResult<typeof optimistABI, TFunctionName> 11370 >( 11371 config: Omit< 11372 UseContractReadConfig<typeof optimistABI, TFunctionName, TSelectData>, 11373 'abi' | 'address' 11374 > & { chainId?: keyof typeof optimistAddress } = {} as any 11375 ) { 11376 const { chain } = useNetwork() 11377 const defaultChainId = useChainId() 11378 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11379 return useContractRead({ 11380 abi: optimistABI, 11381 address: optimistAddress[chainId as keyof typeof optimistAddress], 11382 ...config, 11383 } as UseContractReadConfig<typeof optimistABI, TFunctionName, TSelectData>) 11384 } 11385 11386 /** 11387 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link optimistABI}__. 11388 * 11389 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 11390 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 11391 */ 11392 export function useOptimistWrite< 11393 TFunctionName extends string, 11394 TMode extends WriteContractMode = undefined, 11395 TChainId extends number = keyof typeof optimistAddress 11396 >( 11397 config: TMode extends 'prepared' 11398 ? UseContractWriteConfig< 11399 PrepareWriteContractResult< 11400 typeof optimistABI, 11401 string 11402 >['request']['abi'], 11403 TFunctionName, 11404 TMode 11405 > & { address?: Address; chainId?: TChainId } 11406 : UseContractWriteConfig<typeof optimistABI, TFunctionName, TMode> & { 11407 abi?: never 11408 address?: never 11409 chainId?: TChainId 11410 } = {} as any 11411 ) { 11412 const { chain } = useNetwork() 11413 const defaultChainId = useChainId() 11414 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11415 return useContractWrite<typeof optimistABI, TFunctionName, TMode>({ 11416 abi: optimistABI, 11417 address: optimistAddress[chainId as keyof typeof optimistAddress], 11418 ...config, 11419 } as any) 11420 } 11421 11422 /** 11423 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link optimistABI}__. 11424 * 11425 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 11426 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2335022c740d17c2837f9C884Bfe4fFdbf0A95D5) 11427 */ 11428 export function useOptimistEvent<TEventName extends string>( 11429 config: Omit< 11430 UseContractEventConfig<typeof optimistABI, TEventName>, 11431 'abi' | 'address' 11432 > & { chainId?: keyof typeof optimistAddress } = {} as any 11433 ) { 11434 const { chain } = useNetwork() 11435 const defaultChainId = useChainId() 11436 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11437 return useContractEvent({ 11438 abi: optimistABI, 11439 address: optimistAddress[chainId as keyof typeof optimistAddress], 11440 ...config, 11441 } as UseContractEventConfig<typeof optimistABI, TEventName>) 11442 } 11443 11444 /** 11445 * Wraps __{@link useContractRead}__ with `abi` set to __{@link optimistAllowlistABI}__. 11446 * 11447 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180) 11448 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x482b1945D58f2E9Db0CEbe13c7fcFc6876b41180) 11449 */ 11450 export function useOptimistAllowlistRead< 11451 TFunctionName extends string, 11452 TSelectData = ReadContractResult<typeof optimistAllowlistABI, TFunctionName> 11453 >( 11454 config: Omit< 11455 UseContractReadConfig< 11456 typeof optimistAllowlistABI, 11457 TFunctionName, 11458 TSelectData 11459 >, 11460 'abi' | 'address' 11461 > & { chainId?: keyof typeof optimistAllowlistAddress } = {} as any 11462 ) { 11463 const { chain } = useNetwork() 11464 const defaultChainId = useChainId() 11465 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11466 return useContractRead({ 11467 abi: optimistAllowlistABI, 11468 address: 11469 optimistAllowlistAddress[ 11470 chainId as keyof typeof optimistAllowlistAddress 11471 ], 11472 ...config, 11473 } as UseContractReadConfig<typeof optimistAllowlistABI, TFunctionName, TSelectData>) 11474 } 11475 11476 /** 11477 * Wraps __{@link useContractRead}__ with `abi` set to __{@link optimistInviterABI}__. 11478 * 11479 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 11480 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 11481 */ 11482 export function useOptimistInviterRead< 11483 TFunctionName extends string, 11484 TSelectData = ReadContractResult<typeof optimistInviterABI, TFunctionName> 11485 >( 11486 config: Omit< 11487 UseContractReadConfig< 11488 typeof optimistInviterABI, 11489 TFunctionName, 11490 TSelectData 11491 >, 11492 'abi' | 'address' 11493 > & { chainId?: keyof typeof optimistInviterAddress } = {} as any 11494 ) { 11495 const { chain } = useNetwork() 11496 const defaultChainId = useChainId() 11497 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11498 return useContractRead({ 11499 abi: optimistInviterABI, 11500 address: 11501 optimistInviterAddress[chainId as keyof typeof optimistInviterAddress], 11502 ...config, 11503 } as UseContractReadConfig<typeof optimistInviterABI, TFunctionName, TSelectData>) 11504 } 11505 11506 /** 11507 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link optimistInviterABI}__. 11508 * 11509 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 11510 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 11511 */ 11512 export function useOptimistInviterWrite< 11513 TFunctionName extends string, 11514 TMode extends WriteContractMode = undefined, 11515 TChainId extends number = keyof typeof optimistInviterAddress 11516 >( 11517 config: TMode extends 'prepared' 11518 ? UseContractWriteConfig< 11519 PrepareWriteContractResult< 11520 typeof optimistInviterABI, 11521 string 11522 >['request']['abi'], 11523 TFunctionName, 11524 TMode 11525 > & { address?: Address; chainId?: TChainId } 11526 : UseContractWriteConfig< 11527 typeof optimistInviterABI, 11528 TFunctionName, 11529 TMode 11530 > & { 11531 abi?: never 11532 address?: never 11533 chainId?: TChainId 11534 } = {} as any 11535 ) { 11536 const { chain } = useNetwork() 11537 const defaultChainId = useChainId() 11538 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11539 return useContractWrite<typeof optimistInviterABI, TFunctionName, TMode>({ 11540 abi: optimistInviterABI, 11541 address: 11542 optimistInviterAddress[chainId as keyof typeof optimistInviterAddress], 11543 ...config, 11544 } as any) 11545 } 11546 11547 /** 11548 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link optimistInviterABI}__. 11549 * 11550 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 11551 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x073031A1E1b8F5458Ed41Ce56331F5fd7e1de929) 11552 */ 11553 export function useOptimistInviterEvent<TEventName extends string>( 11554 config: Omit< 11555 UseContractEventConfig<typeof optimistInviterABI, TEventName>, 11556 'abi' | 'address' 11557 > & { chainId?: keyof typeof optimistInviterAddress } = {} as any 11558 ) { 11559 const { chain } = useNetwork() 11560 const defaultChainId = useChainId() 11561 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11562 return useContractEvent({ 11563 abi: optimistInviterABI, 11564 address: 11565 optimistInviterAddress[chainId as keyof typeof optimistInviterAddress], 11566 ...config, 11567 } as UseContractEventConfig<typeof optimistInviterABI, TEventName>) 11568 } 11569 11570 /** 11571 * Wraps __{@link useContractRead}__ with `abi` set to __{@link portalSenderABI}__. 11572 * 11573 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x0A893d9576b9cFD9EF78595963dc973238E78210) 11574 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xe7FACd39531ee3C313330E93B4d7a8B8A3c84Aa4) 11575 */ 11576 export function usePortalSenderRead< 11577 TFunctionName extends string, 11578 TSelectData = ReadContractResult<typeof portalSenderABI, TFunctionName> 11579 >( 11580 config: Omit< 11581 UseContractReadConfig<typeof portalSenderABI, TFunctionName, TSelectData>, 11582 'abi' | 'address' 11583 > & { chainId?: keyof typeof portalSenderAddress } = {} as any 11584 ) { 11585 const { chain } = useNetwork() 11586 const defaultChainId = useChainId() 11587 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11588 return useContractRead({ 11589 abi: portalSenderABI, 11590 address: portalSenderAddress[chainId as keyof typeof portalSenderAddress], 11591 ...config, 11592 } as UseContractReadConfig<typeof portalSenderABI, TFunctionName, TSelectData>) 11593 } 11594 11595 /** 11596 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link portalSenderABI}__. 11597 * 11598 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x0A893d9576b9cFD9EF78595963dc973238E78210) 11599 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xe7FACd39531ee3C313330E93B4d7a8B8A3c84Aa4) 11600 */ 11601 export function usePortalSenderWrite< 11602 TFunctionName extends string, 11603 TMode extends WriteContractMode = undefined, 11604 TChainId extends number = keyof typeof portalSenderAddress 11605 >( 11606 config: TMode extends 'prepared' 11607 ? UseContractWriteConfig< 11608 PrepareWriteContractResult< 11609 typeof portalSenderABI, 11610 string 11611 >['request']['abi'], 11612 TFunctionName, 11613 TMode 11614 > & { address?: Address; chainId?: TChainId } 11615 : UseContractWriteConfig<typeof portalSenderABI, TFunctionName, TMode> & { 11616 abi?: never 11617 address?: never 11618 chainId?: TChainId 11619 } = {} as any 11620 ) { 11621 const { chain } = useNetwork() 11622 const defaultChainId = useChainId() 11623 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11624 return useContractWrite<typeof portalSenderABI, TFunctionName, TMode>({ 11625 abi: portalSenderABI, 11626 address: portalSenderAddress[chainId as keyof typeof portalSenderAddress], 11627 ...config, 11628 } as any) 11629 } 11630 11631 /** 11632 * Wraps __{@link useContractRead}__ with `abi` set to __{@link protocolVersionsABI}__. 11633 * 11634 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x0C24F5098774aA366827D667494e9F889f7cFc08) 11635 */ 11636 export function useProtocolVersionsRead< 11637 TFunctionName extends string, 11638 TSelectData = ReadContractResult<typeof protocolVersionsABI, TFunctionName> 11639 >( 11640 config: Omit< 11641 UseContractReadConfig< 11642 typeof protocolVersionsABI, 11643 TFunctionName, 11644 TSelectData 11645 >, 11646 'abi' | 'address' 11647 > & { chainId?: keyof typeof protocolVersionsAddress } = {} as any 11648 ) { 11649 return useContractRead({ 11650 abi: protocolVersionsABI, 11651 address: protocolVersionsAddress[5], 11652 ...config, 11653 } as UseContractReadConfig<typeof protocolVersionsABI, TFunctionName, TSelectData>) 11654 } 11655 11656 /** 11657 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link protocolVersionsABI}__. 11658 * 11659 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x0C24F5098774aA366827D667494e9F889f7cFc08) 11660 */ 11661 export function useProtocolVersionsWrite< 11662 TFunctionName extends string, 11663 TMode extends WriteContractMode = undefined, 11664 TChainId extends number = keyof typeof protocolVersionsAddress 11665 >( 11666 config: TMode extends 'prepared' 11667 ? UseContractWriteConfig< 11668 PrepareWriteContractResult< 11669 typeof protocolVersionsABI, 11670 string 11671 >['request']['abi'], 11672 TFunctionName, 11673 TMode 11674 > & { address?: Address; chainId?: TChainId } 11675 : UseContractWriteConfig< 11676 typeof protocolVersionsABI, 11677 TFunctionName, 11678 TMode 11679 > & { 11680 abi?: never 11681 address?: never 11682 chainId?: TChainId 11683 } = {} as any 11684 ) { 11685 return useContractWrite<typeof protocolVersionsABI, TFunctionName, TMode>({ 11686 abi: protocolVersionsABI, 11687 address: protocolVersionsAddress[5], 11688 ...config, 11689 } as any) 11690 } 11691 11692 /** 11693 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link protocolVersionsABI}__. 11694 * 11695 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x0C24F5098774aA366827D667494e9F889f7cFc08) 11696 */ 11697 export function useProtocolVersionsEvent<TEventName extends string>( 11698 config: Omit< 11699 UseContractEventConfig<typeof protocolVersionsABI, TEventName>, 11700 'abi' | 'address' 11701 > & { chainId?: keyof typeof protocolVersionsAddress } = {} as any 11702 ) { 11703 return useContractEvent({ 11704 abi: protocolVersionsABI, 11705 address: protocolVersionsAddress[5], 11706 ...config, 11707 } as UseContractEventConfig<typeof protocolVersionsABI, TEventName>) 11708 } 11709 11710 /** 11711 * Wraps __{@link useContractRead}__ with `abi` set to __{@link proxyAdminABI}__. 11712 * 11713 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000018) 11714 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000018) 11715 */ 11716 export function useProxyAdminRead< 11717 TFunctionName extends string, 11718 TSelectData = ReadContractResult<typeof proxyAdminABI, TFunctionName> 11719 >( 11720 config: Omit< 11721 UseContractReadConfig<typeof proxyAdminABI, TFunctionName, TSelectData>, 11722 'abi' | 'address' 11723 > & { chainId?: keyof typeof proxyAdminAddress } = {} as any 11724 ) { 11725 const { chain } = useNetwork() 11726 const defaultChainId = useChainId() 11727 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11728 return useContractRead({ 11729 abi: proxyAdminABI, 11730 address: proxyAdminAddress[chainId as keyof typeof proxyAdminAddress], 11731 ...config, 11732 } as UseContractReadConfig<typeof proxyAdminABI, TFunctionName, TSelectData>) 11733 } 11734 11735 /** 11736 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link proxyAdminABI}__. 11737 * 11738 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000018) 11739 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000018) 11740 */ 11741 export function useProxyAdminWrite< 11742 TFunctionName extends string, 11743 TMode extends WriteContractMode = undefined, 11744 TChainId extends number = keyof typeof proxyAdminAddress 11745 >( 11746 config: TMode extends 'prepared' 11747 ? UseContractWriteConfig< 11748 PrepareWriteContractResult< 11749 typeof proxyAdminABI, 11750 string 11751 >['request']['abi'], 11752 TFunctionName, 11753 TMode 11754 > & { address?: Address; chainId?: TChainId } 11755 : UseContractWriteConfig<typeof proxyAdminABI, TFunctionName, TMode> & { 11756 abi?: never 11757 address?: never 11758 chainId?: TChainId 11759 } = {} as any 11760 ) { 11761 const { chain } = useNetwork() 11762 const defaultChainId = useChainId() 11763 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11764 return useContractWrite<typeof proxyAdminABI, TFunctionName, TMode>({ 11765 abi: proxyAdminABI, 11766 address: proxyAdminAddress[chainId as keyof typeof proxyAdminAddress], 11767 ...config, 11768 } as any) 11769 } 11770 11771 /** 11772 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link proxyAdminABI}__. 11773 * 11774 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x4200000000000000000000000000000000000018) 11775 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x4200000000000000000000000000000000000018) 11776 */ 11777 export function useProxyAdminEvent<TEventName extends string>( 11778 config: Omit< 11779 UseContractEventConfig<typeof proxyAdminABI, TEventName>, 11780 'abi' | 'address' 11781 > & { chainId?: keyof typeof proxyAdminAddress } = {} as any 11782 ) { 11783 const { chain } = useNetwork() 11784 const defaultChainId = useChainId() 11785 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11786 return useContractEvent({ 11787 abi: proxyAdminABI, 11788 address: proxyAdminAddress[chainId as keyof typeof proxyAdminAddress], 11789 ...config, 11790 } as UseContractEventConfig<typeof proxyAdminABI, TEventName>) 11791 } 11792 11793 /** 11794 * Wraps __{@link useContractRead}__ with `abi` set to __{@link schemaRegistryABI}__. 11795 * 11796 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13) 11797 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2545fa928d5d278cA75Fd47306e4a89096ff6403) 11798 */ 11799 export function useSchemaRegistryRead< 11800 TFunctionName extends string, 11801 TSelectData = ReadContractResult<typeof schemaRegistryABI, TFunctionName> 11802 >( 11803 config: Omit< 11804 UseContractReadConfig<typeof schemaRegistryABI, TFunctionName, TSelectData>, 11805 'abi' | 'address' 11806 > & { chainId?: keyof typeof schemaRegistryAddress } = {} as any 11807 ) { 11808 const { chain } = useNetwork() 11809 const defaultChainId = useChainId() 11810 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11811 return useContractRead({ 11812 abi: schemaRegistryABI, 11813 address: 11814 schemaRegistryAddress[chainId as keyof typeof schemaRegistryAddress], 11815 ...config, 11816 } as UseContractReadConfig<typeof schemaRegistryABI, TFunctionName, TSelectData>) 11817 } 11818 11819 /** 11820 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link schemaRegistryABI}__. 11821 * 11822 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13) 11823 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2545fa928d5d278cA75Fd47306e4a89096ff6403) 11824 */ 11825 export function useSchemaRegistryWrite< 11826 TFunctionName extends string, 11827 TMode extends WriteContractMode = undefined, 11828 TChainId extends number = keyof typeof schemaRegistryAddress 11829 >( 11830 config: TMode extends 'prepared' 11831 ? UseContractWriteConfig< 11832 PrepareWriteContractResult< 11833 typeof schemaRegistryABI, 11834 string 11835 >['request']['abi'], 11836 TFunctionName, 11837 TMode 11838 > & { address?: Address; chainId?: TChainId } 11839 : UseContractWriteConfig<typeof schemaRegistryABI, TFunctionName, TMode> & { 11840 abi?: never 11841 address?: never 11842 chainId?: TChainId 11843 } = {} as any 11844 ) { 11845 const { chain } = useNetwork() 11846 const defaultChainId = useChainId() 11847 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11848 return useContractWrite<typeof schemaRegistryABI, TFunctionName, TMode>({ 11849 abi: schemaRegistryABI, 11850 address: 11851 schemaRegistryAddress[chainId as keyof typeof schemaRegistryAddress], 11852 ...config, 11853 } as any) 11854 } 11855 11856 /** 11857 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link schemaRegistryABI}__. 11858 * 11859 * - [__View Contract on Op Mainnet Optimism Explorer__](https://explorer.optimism.io/address/0x6232208d66bAc2305b46b4Cb6BCB3857B298DF13) 11860 * - [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x2545fa928d5d278cA75Fd47306e4a89096ff6403) 11861 */ 11862 export function useSchemaRegistryEvent<TEventName extends string>( 11863 config: Omit< 11864 UseContractEventConfig<typeof schemaRegistryABI, TEventName>, 11865 'abi' | 'address' 11866 > & { chainId?: keyof typeof schemaRegistryAddress } = {} as any 11867 ) { 11868 const { chain } = useNetwork() 11869 const defaultChainId = useChainId() 11870 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11871 return useContractEvent({ 11872 abi: schemaRegistryABI, 11873 address: 11874 schemaRegistryAddress[chainId as keyof typeof schemaRegistryAddress], 11875 ...config, 11876 } as UseContractEventConfig<typeof schemaRegistryABI, TEventName>) 11877 } 11878 11879 /** 11880 * Wraps __{@link useContractRead}__ with `abi` set to __{@link sequencerFeeVaultABI}__. 11881 * 11882 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000011) 11883 */ 11884 export function useSequencerFeeVaultRead< 11885 TFunctionName extends string, 11886 TSelectData = ReadContractResult<typeof sequencerFeeVaultABI, TFunctionName> 11887 >( 11888 config: Omit< 11889 UseContractReadConfig< 11890 typeof sequencerFeeVaultABI, 11891 TFunctionName, 11892 TSelectData 11893 >, 11894 'abi' | 'address' 11895 > & { chainId?: keyof typeof sequencerFeeVaultAddress } = {} as any 11896 ) { 11897 return useContractRead({ 11898 abi: sequencerFeeVaultABI, 11899 address: sequencerFeeVaultAddress[420], 11900 ...config, 11901 } as UseContractReadConfig<typeof sequencerFeeVaultABI, TFunctionName, TSelectData>) 11902 } 11903 11904 /** 11905 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link sequencerFeeVaultABI}__. 11906 * 11907 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000011) 11908 */ 11909 export function useSequencerFeeVaultWrite< 11910 TFunctionName extends string, 11911 TMode extends WriteContractMode = undefined, 11912 TChainId extends number = keyof typeof sequencerFeeVaultAddress 11913 >( 11914 config: TMode extends 'prepared' 11915 ? UseContractWriteConfig< 11916 PrepareWriteContractResult< 11917 typeof sequencerFeeVaultABI, 11918 string 11919 >['request']['abi'], 11920 TFunctionName, 11921 TMode 11922 > & { address?: Address; chainId?: TChainId } 11923 : UseContractWriteConfig< 11924 typeof sequencerFeeVaultABI, 11925 TFunctionName, 11926 TMode 11927 > & { 11928 abi?: never 11929 address?: never 11930 chainId?: TChainId 11931 } = {} as any 11932 ) { 11933 return useContractWrite<typeof sequencerFeeVaultABI, TFunctionName, TMode>({ 11934 abi: sequencerFeeVaultABI, 11935 address: sequencerFeeVaultAddress[420], 11936 ...config, 11937 } as any) 11938 } 11939 11940 /** 11941 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link sequencerFeeVaultABI}__. 11942 * 11943 * [__View Contract on Optimism Goerli Etherscan__](https://goerli-optimism.etherscan.io/address/0x4200000000000000000000000000000000000011) 11944 */ 11945 export function useSequencerFeeVaultEvent<TEventName extends string>( 11946 config: Omit< 11947 UseContractEventConfig<typeof sequencerFeeVaultABI, TEventName>, 11948 'abi' | 'address' 11949 > & { chainId?: keyof typeof sequencerFeeVaultAddress } = {} as any 11950 ) { 11951 return useContractEvent({ 11952 abi: sequencerFeeVaultABI, 11953 address: sequencerFeeVaultAddress[420], 11954 ...config, 11955 } as UseContractEventConfig<typeof sequencerFeeVaultABI, TEventName>) 11956 } 11957 11958 /** 11959 * Wraps __{@link useContractRead}__ with `abi` set to __{@link systemConfigABI}__. 11960 * 11961 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x229047fed2591dbec1eF1118d64F7aF3dB9EB290) 11962 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60) 11963 */ 11964 export function useSystemConfigRead< 11965 TFunctionName extends string, 11966 TSelectData = ReadContractResult<typeof systemConfigABI, TFunctionName> 11967 >( 11968 config: Omit< 11969 UseContractReadConfig<typeof systemConfigABI, TFunctionName, TSelectData>, 11970 'abi' | 'address' 11971 > & { chainId?: keyof typeof systemConfigAddress } = {} as any 11972 ) { 11973 const { chain } = useNetwork() 11974 const defaultChainId = useChainId() 11975 const chainId = config.chainId ?? chain?.id ?? defaultChainId 11976 return useContractRead({ 11977 abi: systemConfigABI, 11978 address: systemConfigAddress[chainId as keyof typeof systemConfigAddress], 11979 ...config, 11980 } as UseContractReadConfig<typeof systemConfigABI, TFunctionName, TSelectData>) 11981 } 11982 11983 /** 11984 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link systemConfigABI}__. 11985 * 11986 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x229047fed2591dbec1eF1118d64F7aF3dB9EB290) 11987 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60) 11988 */ 11989 export function useSystemConfigWrite< 11990 TFunctionName extends string, 11991 TMode extends WriteContractMode = undefined, 11992 TChainId extends number = keyof typeof systemConfigAddress 11993 >( 11994 config: TMode extends 'prepared' 11995 ? UseContractWriteConfig< 11996 PrepareWriteContractResult< 11997 typeof systemConfigABI, 11998 string 11999 >['request']['abi'], 12000 TFunctionName, 12001 TMode 12002 > & { address?: Address; chainId?: TChainId } 12003 : UseContractWriteConfig<typeof systemConfigABI, TFunctionName, TMode> & { 12004 abi?: never 12005 address?: never 12006 chainId?: TChainId 12007 } = {} as any 12008 ) { 12009 const { chain } = useNetwork() 12010 const defaultChainId = useChainId() 12011 const chainId = config.chainId ?? chain?.id ?? defaultChainId 12012 return useContractWrite<typeof systemConfigABI, TFunctionName, TMode>({ 12013 abi: systemConfigABI, 12014 address: systemConfigAddress[chainId as keyof typeof systemConfigAddress], 12015 ...config, 12016 } as any) 12017 } 12018 12019 /** 12020 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link systemConfigABI}__. 12021 * 12022 * - [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x229047fed2591dbec1eF1118d64F7aF3dB9EB290) 12023 * - [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0xAe851f927Ee40dE99aaBb7461C00f9622ab91d60) 12024 */ 12025 export function useSystemConfigEvent<TEventName extends string>( 12026 config: Omit< 12027 UseContractEventConfig<typeof systemConfigABI, TEventName>, 12028 'abi' | 'address' 12029 > & { chainId?: keyof typeof systemConfigAddress } = {} as any 12030 ) { 12031 const { chain } = useNetwork() 12032 const defaultChainId = useChainId() 12033 const chainId = config.chainId ?? chain?.id ?? defaultChainId 12034 return useContractEvent({ 12035 abi: systemConfigABI, 12036 address: systemConfigAddress[chainId as keyof typeof systemConfigAddress], 12037 ...config, 12038 } as UseContractEventConfig<typeof systemConfigABI, TEventName>) 12039 } 12040 12041 /** 12042 * Wraps __{@link useContractRead}__ with `abi` set to __{@link systemDictatorABI}__. 12043 * 12044 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB) 12045 */ 12046 export function useSystemDictatorRead< 12047 TFunctionName extends string, 12048 TSelectData = ReadContractResult<typeof systemDictatorABI, TFunctionName> 12049 >( 12050 config: Omit< 12051 UseContractReadConfig<typeof systemDictatorABI, TFunctionName, TSelectData>, 12052 'abi' | 'address' 12053 > & { chainId?: keyof typeof systemDictatorAddress } = {} as any 12054 ) { 12055 return useContractRead({ 12056 abi: systemDictatorABI, 12057 address: systemDictatorAddress[1], 12058 ...config, 12059 } as UseContractReadConfig<typeof systemDictatorABI, TFunctionName, TSelectData>) 12060 } 12061 12062 /** 12063 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link systemDictatorABI}__. 12064 * 12065 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB) 12066 */ 12067 export function useSystemDictatorWrite< 12068 TFunctionName extends string, 12069 TMode extends WriteContractMode = undefined, 12070 TChainId extends number = keyof typeof systemDictatorAddress 12071 >( 12072 config: TMode extends 'prepared' 12073 ? UseContractWriteConfig< 12074 PrepareWriteContractResult< 12075 typeof systemDictatorABI, 12076 string 12077 >['request']['abi'], 12078 TFunctionName, 12079 TMode 12080 > & { address?: Address; chainId?: TChainId } 12081 : UseContractWriteConfig<typeof systemDictatorABI, TFunctionName, TMode> & { 12082 abi?: never 12083 address?: never 12084 chainId?: TChainId 12085 } = {} as any 12086 ) { 12087 return useContractWrite<typeof systemDictatorABI, TFunctionName, TMode>({ 12088 abi: systemDictatorABI, 12089 address: systemDictatorAddress[1], 12090 ...config, 12091 } as any) 12092 } 12093 12094 /** 12095 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link systemDictatorABI}__. 12096 * 12097 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0xB4453CEb33d2e67FA244A24acf2E50CEF31F53cB) 12098 */ 12099 export function useSystemDictatorEvent<TEventName extends string>( 12100 config: Omit< 12101 UseContractEventConfig<typeof systemDictatorABI, TEventName>, 12102 'abi' | 'address' 12103 > & { chainId?: keyof typeof systemDictatorAddress } = {} as any 12104 ) { 12105 return useContractEvent({ 12106 abi: systemDictatorABI, 12107 address: systemDictatorAddress[1], 12108 ...config, 12109 } as UseContractEventConfig<typeof systemDictatorABI, TEventName>) 12110 } 12111 12112 /** 12113 * Wraps __{@link useContractRead}__ with `abi` set to __{@link systemDictatorGoerliABI}__. 12114 * 12115 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971) 12116 */ 12117 export function useSystemDictatorGoerliRead< 12118 TFunctionName extends string, 12119 TSelectData = ReadContractResult< 12120 typeof systemDictatorGoerliABI, 12121 TFunctionName 12122 > 12123 >( 12124 config: Omit< 12125 UseContractReadConfig< 12126 typeof systemDictatorGoerliABI, 12127 TFunctionName, 12128 TSelectData 12129 >, 12130 'abi' | 'address' 12131 > & { chainId?: keyof typeof systemDictatorGoerliAddress } = {} as any 12132 ) { 12133 return useContractRead({ 12134 abi: systemDictatorGoerliABI, 12135 address: systemDictatorGoerliAddress[5], 12136 ...config, 12137 } as UseContractReadConfig<typeof systemDictatorGoerliABI, TFunctionName, TSelectData>) 12138 } 12139 12140 /** 12141 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link systemDictatorGoerliABI}__. 12142 * 12143 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971) 12144 */ 12145 export function useSystemDictatorGoerliWrite< 12146 TFunctionName extends string, 12147 TMode extends WriteContractMode = undefined, 12148 TChainId extends number = keyof typeof systemDictatorGoerliAddress 12149 >( 12150 config: TMode extends 'prepared' 12151 ? UseContractWriteConfig< 12152 PrepareWriteContractResult< 12153 typeof systemDictatorGoerliABI, 12154 string 12155 >['request']['abi'], 12156 TFunctionName, 12157 TMode 12158 > & { address?: Address; chainId?: TChainId } 12159 : UseContractWriteConfig< 12160 typeof systemDictatorGoerliABI, 12161 TFunctionName, 12162 TMode 12163 > & { 12164 abi?: never 12165 address?: never 12166 chainId?: TChainId 12167 } = {} as any 12168 ) { 12169 return useContractWrite<typeof systemDictatorGoerliABI, TFunctionName, TMode>( 12170 { 12171 abi: systemDictatorGoerliABI, 12172 address: systemDictatorGoerliAddress[5], 12173 ...config, 12174 } as any 12175 ) 12176 } 12177 12178 /** 12179 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link systemDictatorGoerliABI}__. 12180 * 12181 * [__View Contract on Goerli Etherscan__](https://goerli.etherscan.io/address/0x1f0613A44c9a8ECE7B3A2e0CdBdF0F5B47A50971) 12182 */ 12183 export function useSystemDictatorGoerliEvent<TEventName extends string>( 12184 config: Omit< 12185 UseContractEventConfig<typeof systemDictatorGoerliABI, TEventName>, 12186 'abi' | 'address' 12187 > & { chainId?: keyof typeof systemDictatorGoerliAddress } = {} as any 12188 ) { 12189 return useContractEvent({ 12190 abi: systemDictatorGoerliABI, 12191 address: systemDictatorGoerliAddress[5], 12192 ...config, 12193 } as UseContractEventConfig<typeof systemDictatorGoerliABI, TEventName>) 12194 } 12195 12196 /** 12197 * Wraps __{@link useContractRead}__ with `abi` set to __{@link teleportrWithdrawerABI}__. 12198 * 12199 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x78A25524D90E3D0596558fb43789bD800a5c3007) 12200 */ 12201 export function useTeleportrWithdrawerRead< 12202 TFunctionName extends string, 12203 TSelectData = ReadContractResult<typeof teleportrWithdrawerABI, TFunctionName> 12204 >( 12205 config: Omit< 12206 UseContractReadConfig< 12207 typeof teleportrWithdrawerABI, 12208 TFunctionName, 12209 TSelectData 12210 >, 12211 'abi' | 'address' 12212 > & { chainId?: keyof typeof teleportrWithdrawerAddress } = {} as any 12213 ) { 12214 return useContractRead({ 12215 abi: teleportrWithdrawerABI, 12216 address: teleportrWithdrawerAddress[1], 12217 ...config, 12218 } as UseContractReadConfig<typeof teleportrWithdrawerABI, TFunctionName, TSelectData>) 12219 } 12220 12221 /** 12222 * Wraps __{@link useContractWrite}__ with `abi` set to __{@link teleportrWithdrawerABI}__. 12223 * 12224 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x78A25524D90E3D0596558fb43789bD800a5c3007) 12225 */ 12226 export function useTeleportrWithdrawerWrite< 12227 TFunctionName extends string, 12228 TMode extends WriteContractMode = undefined, 12229 TChainId extends number = keyof typeof teleportrWithdrawerAddress 12230 >( 12231 config: TMode extends 'prepared' 12232 ? UseContractWriteConfig< 12233 PrepareWriteContractResult< 12234 typeof teleportrWithdrawerABI, 12235 string 12236 >['request']['abi'], 12237 TFunctionName, 12238 TMode 12239 > & { address?: Address; chainId?: TChainId } 12240 : UseContractWriteConfig< 12241 typeof teleportrWithdrawerABI, 12242 TFunctionName, 12243 TMode 12244 > & { 12245 abi?: never 12246 address?: never 12247 chainId?: TChainId 12248 } = {} as any 12249 ) { 12250 return useContractWrite<typeof teleportrWithdrawerABI, TFunctionName, TMode>({ 12251 abi: teleportrWithdrawerABI, 12252 address: teleportrWithdrawerAddress[1], 12253 ...config, 12254 } as any) 12255 } 12256 12257 /** 12258 * Wraps __{@link useContractEvent}__ with `abi` set to __{@link teleportrWithdrawerABI}__. 12259 * 12260 * [__View Contract on Ethereum Etherscan__](https://etherscan.io/address/0x78A25524D90E3D0596558fb43789bD800a5c3007) 12261 */ 12262 export function useTeleportrWithdrawerEvent<TEventName extends string>( 12263 config: Omit< 12264 UseContractEventConfig<typeof teleportrWithdrawerABI, TEventName>, 12265 'abi' | 'address' 12266 > & { chainId?: keyof typeof teleportrWithdrawerAddress } = {} as any 12267 ) { 12268 return useContractEvent({ 12269 abi: teleportrWithdrawerABI, 12270 address: teleportrWithdrawerAddress[1], 12271 ...config, 12272 } as UseContractEventConfig<typeof teleportrWithdrawerABI, TEventName>) 12273 }