diff --git a/.prettierrc b/.prettierrc index 382efb3..f90759c 100644 --- a/.prettierrc +++ b/.prettierrc @@ -1,5 +1,15 @@ { - "semi": false, + "printWidth": 120, "singleQuote": true, - "printWidth": 120 + "trailingComma": "all", + "arrowParens": "avoid", + "overrides": [ + { + "files": "*.sol", + "options": { + "singleQuote": false + } + } + ], + "plugins": ["prettier-plugin-solidity"] } diff --git a/contracts/SmartAccount.sol b/contracts/SmartAccount.sol index 261f5ec..5746a0b 100644 --- a/contracts/SmartAccount.sol +++ b/contracts/SmartAccount.sol @@ -23,17 +23,18 @@ contract SmartAccount is _disableInitializers(); } - function initialize(address defalutCallbackHandler, address[] calldata validators, bytes[] calldata data) - external - initializer - { + function initialize( + address defalutCallbackHandler, + address[] calldata validators, + bytes[] calldata data + ) external initializer { if (validators.length != data.length) { revert WrongArrayLength(); } _setFallbackHandler(defalutCallbackHandler); _setupValidators(); _setupRecoverors(); - for (uint256 i = 0; i < validators.length;) { + for (uint256 i = 0; i < validators.length; ) { _enableValidator(validators[i], data[i]); unchecked { i++; @@ -45,12 +46,10 @@ contract SmartAccount is return _entryPoint(); } - function _validateSignature(UserOperation calldata userOp, bytes32 userOpHash) - internal - virtual - override - returns (uint256 validationData) - { + function _validateSignature( + UserOperation calldata userOp, + bytes32 userOpHash + ) internal virtual override returns (uint256 validationData) { (address validator, bytes memory signature) = abi.decode(userOp.signature, (address, bytes)); if (!isValidatorEnabled(validator)) { diff --git a/contracts/SmartAccountFactory.sol b/contracts/SmartAccountFactory.sol index 6e4c30d..d93d3cc 100644 --- a/contracts/SmartAccountFactory.sol +++ b/contracts/SmartAccountFactory.sol @@ -16,10 +16,11 @@ contract SmartAccountFactory { accountImplementation = new SmartAccount(_entryPoint); } - function createAccount(address[] calldata validators, bytes[] calldata data, uint256 salt) - public - returns (SmartAccount ret) - { + function createAccount( + address[] calldata validators, + bytes[] calldata data, + uint256 salt + ) public returns (SmartAccount ret) { address addr = getAddress(validators, data, salt); uint256 codeSize = addr.code.length; if (codeSize > 0) { @@ -28,28 +29,30 @@ contract SmartAccountFactory { ret = SmartAccount( payable( new ERC1967Proxy{salt: bytes32(salt)}( - address(accountImplementation), abi.encodeCall(SmartAccount.initialize, (handler, validators, data)) + address(accountImplementation), + abi.encodeCall(SmartAccount.initialize, (handler, validators, data)) ) ) ); } - function getAddress(address[] calldata validators, bytes[] calldata data, uint256 salt) - public - view - returns (address) - { - return Create2.computeAddress( - bytes32(salt), - keccak256( - abi.encodePacked( - type(ERC1967Proxy).creationCode, - abi.encode( - address(accountImplementation), - abi.encodeCall(SmartAccount.initialize, (handler, validators, data)) + function getAddress( + address[] calldata validators, + bytes[] calldata data, + uint256 salt + ) public view returns (address) { + return + Create2.computeAddress( + bytes32(salt), + keccak256( + abi.encodePacked( + type(ERC1967Proxy).creationCode, + abi.encode( + address(accountImplementation), + abi.encodeCall(SmartAccount.initialize, (handler, validators, data)) + ) ) ) - ) - ); + ); } } diff --git a/contracts/core/ExecutionManager.sol b/contracts/core/ExecutionManager.sol index 57d34cc..c64876a 100644 --- a/contracts/core/ExecutionManager.sol +++ b/contracts/core/ExecutionManager.sol @@ -60,22 +60,23 @@ abstract contract ExecutionManager is Authority { _execute(dest, value, func); } - function executeBatch(address[] calldata dest, uint256[] calldata value, bytes[] calldata func) - external - onlyEntryPoint - { + function executeBatch( + address[] calldata dest, + uint256[] calldata value, + bytes[] calldata func + ) external onlyEntryPoint { if (dest.length != func.length || (value.length != 0 && value.length != func.length)) { revert WrongArrayLength(); } if (value.length == 0) { - for (uint256 i = 0; i < dest.length;) { + for (uint256 i = 0; i < dest.length; ) { _execute(dest[i], 0, func[i]); unchecked { i++; } } } else { - for (uint256 i = 0; i < dest.length;) { + for (uint256 i = 0; i < dest.length; ) { _execute(dest[i], value[i], func[i]); unchecked { i++; diff --git a/contracts/core/FallbackManager.sol b/contracts/core/FallbackManager.sol index 02e2ed0..11c44c4 100644 --- a/contracts/core/FallbackManager.sol +++ b/contracts/core/FallbackManager.sol @@ -16,7 +16,9 @@ abstract contract FallbackManager is Authority { bytes32 slot = FALLBACK_HANDLER_STORAGE_SLOT; assembly { let handler := sload(slot) - if iszero(handler) { return(0, 0) } + if iszero(handler) { + return(0, 0) + } calldatacopy(0, 0, calldatasize()) // The msg.sender address is shifted to the left by 12 bytes to remove the padding // Then the address without padding is stored right after the calldata @@ -24,7 +26,9 @@ abstract contract FallbackManager is Authority { // Add 20 bytes for the address appended add the end let success := call(gas(), handler, 0, 0, add(calldatasize(), 20), 0, 0) returndatacopy(0, 0, returndatasize()) - if iszero(success) { revert(0, returndatasize()) } + if iszero(success) { + revert(0, returndatasize()) + } return(0, returndatasize()) } } diff --git a/contracts/core/RecoveryManager.sol b/contracts/core/RecoveryManager.sol index 68ddd57..1bc9bae 100644 --- a/contracts/core/RecoveryManager.sol +++ b/contracts/core/RecoveryManager.sol @@ -16,11 +16,10 @@ abstract contract RecoveryManager is Authority { mapping(address => address) internal recoverors; - function getRecoverorsPaginated(address start, uint256 pageSize) - external - view - returns (address[] memory array, address next) - { + function getRecoverorsPaginated( + address start, + uint256 pageSize + ) external view returns (address[] memory array, address next) { return recoverors.page(start, pageSize); } diff --git a/contracts/core/ValidatorManager.sol b/contracts/core/ValidatorManager.sol index 04f79b0..b7261c7 100644 --- a/contracts/core/ValidatorManager.sol +++ b/contracts/core/ValidatorManager.sol @@ -13,18 +13,21 @@ abstract contract ValidatorManager is Authority { error ValidatorCannotBeZeroOrSentinel(address validator); error ValidatorAlreadyEnabled(address validator); - error ValidatorAndPrevValidatorMismatch(address expectedValidator, address returnedValidator, address prevValidator); + error ValidatorAndPrevValidatorMismatch( + address expectedValidator, + address returnedValidator, + address prevValidator + ); event EnabledValidator(address validator); event DisabledValidator(address validator); mapping(address => address) internal validators; - function getValidatorsPaginated(address start, uint256 pageSize) - external - view - returns (address[] memory array, address next) - { + function getValidatorsPaginated( + address start, + uint256 pageSize + ) external view returns (address[] memory array, address next) { return validators.page(start, pageSize); } diff --git a/contracts/interfaces/IValidator.sol b/contracts/interfaces/IValidator.sol index ef80d65..2af3fec 100644 --- a/contracts/interfaces/IValidator.sol +++ b/contracts/interfaces/IValidator.sol @@ -5,10 +5,11 @@ import {UserOperation} from "@account-abstraction/contracts/interfaces/UserOpera import "./Metadata.sol"; interface IValidator is Metadata { - function validateSignature(UserOperation calldata userOp, bytes32 userOpHash, bytes calldata signature) - external - payable - returns (uint256 validationData); + function validateSignature( + UserOperation calldata userOp, + bytes32 userOpHash, + bytes calldata signature + ) external payable returns (uint256 validationData); function validCaller(address caller, bytes calldata data) external view returns (bool); diff --git a/contracts/libraries/LinkedAddressList.sol b/contracts/libraries/LinkedAddressList.sol index 095ad5b..032127c 100644 --- a/contracts/libraries/LinkedAddressList.sol +++ b/contracts/libraries/LinkedAddressList.sol @@ -5,11 +5,11 @@ library LinkedAddressList { address internal constant SENTINEL = address(0x1); uint160 internal constant SENTINEL_UINT = 1; - function page(mapping(address => address) storage target, address start, uint256 pageSize) - internal - view - returns (address[] memory array, address next) - { + function page( + mapping(address => address) storage target, + address start, + uint256 pageSize + ) internal view returns (address[] memory array, address next) { array = new address[](pageSize); uint256 count; diff --git a/contracts/paymaster/VerifyingPaymaster.sol b/contracts/paymaster/VerifyingPaymaster.sol index 1ea7a7e..def7fa3 100644 --- a/contracts/paymaster/VerifyingPaymaster.sol +++ b/contracts/paymaster/VerifyingPaymaster.sol @@ -35,27 +35,34 @@ contract VerifyingPaymaster is BasePaymaster { } } - function getHash(UserOperation calldata userOp, uint48 validUntil, uint48 validAfter) - public - view - returns (bytes32) - { - return keccak256( - abi.encode( - pack(userOp), block.chainid, address(this), senderNonce[userOp.getSender()], validUntil, validAfter - ) - ); + function getHash( + UserOperation calldata userOp, + uint48 validUntil, + uint48 validAfter + ) public view returns (bytes32) { + return + keccak256( + abi.encode( + pack(userOp), + block.chainid, + address(this), + senderNonce[userOp.getSender()], + validUntil, + validAfter + ) + ); } - function _validatePaymasterUserOp(UserOperation calldata userOp, bytes32, /*userOpHash*/ uint256 requiredPreFund) - internal - override - returns (bytes memory context, uint256 validationData) - { + function _validatePaymasterUserOp( + UserOperation calldata userOp, + bytes32, + /*userOpHash*/ uint256 requiredPreFund + ) internal override returns (bytes memory context, uint256 validationData) { (requiredPreFund); - (uint48 validUntil, uint48 validAfter, bytes calldata signature) = - parsePaymasterAndData(userOp.paymasterAndData); + (uint48 validUntil, uint48 validAfter, bytes calldata signature) = parsePaymasterAndData( + userOp.paymasterAndData + ); require( signature.length == 64 || signature.length == 65, "VerifyingPaymaster: invalid signature length in paymasterAndData" @@ -70,13 +77,13 @@ contract VerifyingPaymaster is BasePaymaster { return ("", _packValidationData(false, validUntil, validAfter)); } - function parsePaymasterAndData(bytes calldata paymasterAndData) - public - pure - returns (uint48 validUntil, uint48 validAfter, bytes calldata signature) - { - (validUntil, validAfter) = - abi.decode(paymasterAndData[VALID_TIMESTAMP_OFFSET:SIGNATURE_OFFSET], (uint48, uint48)); + function parsePaymasterAndData( + bytes calldata paymasterAndData + ) public pure returns (uint48 validUntil, uint48 validAfter, bytes calldata signature) { + (validUntil, validAfter) = abi.decode( + paymasterAndData[VALID_TIMESTAMP_OFFSET:SIGNATURE_OFFSET], + (uint48, uint48) + ); signature = paymasterAndData[SIGNATURE_OFFSET:]; } diff --git a/contracts/validators/ECDSAValidator.sol b/contracts/validators/ECDSAValidator.sol index 4e8cfba..fbdcdbd 100644 --- a/contracts/validators/ECDSAValidator.sol +++ b/contracts/validators/ECDSAValidator.sol @@ -14,12 +14,11 @@ contract ECDSAValidator is BaseValidator { mapping(address => address) public owner; - function validateSignature(UserOperation calldata userOp, bytes32 userOpHash, bytes calldata signature) - external - payable - override - returns (uint256 validationData) - { + function validateSignature( + UserOperation calldata userOp, + bytes32 userOpHash, + bytes calldata signature + ) external payable override returns (uint256 validationData) { address _owner = owner[userOp.sender]; bytes32 hash = ECDSA.toEthSignedMessageHash(userOpHash); if (_owner != ECDSA.recover(hash, signature)) { diff --git a/contracts/validators/OIDCSessionOnlyValidator.sol b/contracts/validators/OIDCSessionOnlyValidator.sol index 3571b84..b9d120a 100644 --- a/contracts/validators/OIDCSessionOnlyValidator.sol +++ b/contracts/validators/OIDCSessionOnlyValidator.sol @@ -7,10 +7,12 @@ import "../common/Contants.sol"; import "./BaseValidator.sol"; interface IVerifier { - function verifyProof(uint256[2] memory a, uint256[2][2] memory b, uint256[2] memory c, uint256[2] memory input) - external - view - returns (bool r); + function verifyProof( + uint256[2] memory a, + uint256[2][2] memory b, + uint256[2] memory c, + uint256[2] memory input + ) external view returns (bool r); } // OIDC ZK based validator that can only to add session validator @@ -18,12 +20,11 @@ contract OIDCSessionOnlyValidator is BaseValidator { string public constant override NAME = "OIDC Validator"; string public constant override VERSION = "0.0.1"; - function validateSignature(UserOperation calldata userOp, bytes32 userOpHash, bytes calldata signature) - external - payable - override - returns (uint256 validationData) - {} + function validateSignature( + UserOperation calldata userOp, + bytes32 userOpHash, + bytes calldata signature + ) external payable override returns (uint256 validationData) {} function validCaller(address caller, bytes calldata data) external view override returns (bool) {} diff --git a/contracts/validators/p256/Base64.sol b/contracts/validators/p256/Base64.sol index 1f24c65..c72acd0 100644 --- a/contracts/validators/p256/Base64.sol +++ b/contracts/validators/p256/Base64.sol @@ -26,7 +26,7 @@ library Base64 { // - `data.length + 2` -> Round up // - `/ 3` -> Number of 3-bytes chunks // - `4 *` -> 4 characters for each chunk - uint256 newlength = data.length * 8 / 6; + uint256 newlength = (data.length * 8) / 6; if (data.length % 6 > 0) { newlength++; } @@ -45,7 +45,9 @@ library Base64 { for { let dataPtr := data let endPtr := add(data, mload(data)) - } lt(dataPtr, endPtr) {} { + } lt(dataPtr, endPtr) { + + } { // Advance 3 bytes dataPtr := add(dataPtr, 3) let input := mload(dataPtr) diff --git a/contracts/validators/p256/ISecp256r1.sol b/contracts/validators/p256/ISecp256r1.sol index ec032e9..91340da 100644 --- a/contracts/validators/p256/ISecp256r1.sol +++ b/contracts/validators/p256/ISecp256r1.sol @@ -2,8 +2,9 @@ pragma solidity 0.8.19; interface ISecp256r1 { - function validateSignature(bytes32 message, bytes calldata signature, bytes calldata publicKey) - external - view - returns (bool); + function validateSignature( + bytes32 message, + bytes calldata signature, + bytes calldata publicKey + ) external view returns (bool); } diff --git a/contracts/validators/p256/P256Validator.sol b/contracts/validators/p256/P256Validator.sol index 4d4d33c..8ef7540 100644 --- a/contracts/validators/p256/P256Validator.sol +++ b/contracts/validators/p256/P256Validator.sol @@ -19,12 +19,11 @@ contract P256Validator is BaseValidator { impl = _impl; } - function validateSignature(UserOperation calldata userOp, bytes32 userOpHash, bytes calldata signature) - external - payable - override - returns (uint256 validationData) - { + function validateSignature( + UserOperation calldata userOp, + bytes32 userOpHash, + bytes calldata signature + ) external payable override returns (uint256 validationData) { if (impl.validateSignature(sha256(abi.encode(userOpHash)), signature, pks[userOp.sender])) { return 0; } diff --git a/contracts/validators/p256/Secp256r1.sol b/contracts/validators/p256/Secp256r1.sol index 4fc5ebb..1b16956 100644 --- a/contracts/validators/p256/Secp256r1.sol +++ b/contracts/validators/p256/Secp256r1.sol @@ -8,12 +8,11 @@ import "./ISecp256r1.sol"; * https://github.com/daimo-eth/p256-verifier */ contract Secp256r1 is ISecp256r1 { - function validateSignature(bytes32 message, bytes calldata signature, bytes calldata publicKey) - external - view - override - returns (bool result) - { + function validateSignature( + bytes32 message, + bytes calldata signature, + bytes calldata publicKey + ) external view override returns (bool result) { uint256[2] memory rs; (rs[0], rs[1]) = abi.decode(signature, (uint256, uint256)); uint256[2] memory Q; @@ -25,8 +24,8 @@ contract Secp256r1 is ISecp256r1 { // Curve prime field modulus uint256 constant p = 0xFFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF; // Short weierstrass first coefficient - uint256 constant a = // The assumption a == -3 (mod p) is used throughout the codebase - 0xFFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFC; + // The assumption a == -3 (mod p) is used throughout the codebase + uint256 constant a = 0xFFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFC; // Short weierstrass second coefficient uint256 constant b = 0x5AC635D8AA3A93E7B3EBBD55769886BC651D06B0CC53B0F63BCE3C3E27D2604B; // Generating point affine coordinates @@ -42,11 +41,12 @@ contract Secp256r1 is ISecp256r1 { /** * @dev ECDSA verification given signature and public key. */ - function ecdsa_verify(bytes32 message_hash, uint256 r, uint256 s, uint256[2] memory pubKey) - private - view - returns (bool) - { + function ecdsa_verify( + bytes32 message_hash, + uint256 r, + uint256 s, + uint256[2] memory pubKey + ) private view returns (bool) { // Check r and s are in the scalar field if (r == 0 || r >= n || s == 0 || s >= n) { return false; @@ -214,11 +214,14 @@ contract Secp256r1 is ISecp256r1 { * Matches https://github.com/supranational/blst/blob/9c87d4a09d6648e933c818118a4418349804ce7f/src/ec_ops.h#L705 closely * Handles points at infinity gracefully */ - function ecZZ_dadd_affine(uint256 x1, uint256 y1, uint256 zz1, uint256 zzz1, uint256 x2, uint256 y2) - internal - pure - returns (uint256 x3, uint256 y3, uint256 zz3, uint256 zzz3) - { + function ecZZ_dadd_affine( + uint256 x1, + uint256 y1, + uint256 zz1, + uint256 zzz1, + uint256 x2, + uint256 y2 + ) internal pure returns (uint256 x3, uint256 y3, uint256 zz3, uint256 zzz3) { if (ecAff_IsInf(x2, y2)) { // (X2, Y2) is point at infinity if (ecZZ_IsInf(zz1, zzz1)) return ecZZ_PointAtInf(); @@ -269,11 +272,12 @@ contract Secp256r1 is ISecp256r1 { * Uses http://hyperelliptic.org/EFD/g1p/auto-shortw-xyzz.html#doubling-dbl-2008-s-1 * Handles point at infinity gracefully */ - function ecZZ_double_zz(uint256 x1, uint256 y1, uint256 zz1, uint256 zzz1) - internal - pure - returns (uint256 x3, uint256 y3, uint256 zz3, uint256 zzz3) - { + function ecZZ_double_zz( + uint256 x1, + uint256 y1, + uint256 zz1, + uint256 zzz1 + ) internal pure returns (uint256 x3, uint256 y3, uint256 zz3, uint256 zzz3) { if (ecZZ_IsInf(zz1, zzz1)) return ecZZ_PointAtInf(); uint256 comp_U = mulmod(2, y1, p); // U = 2*Y1 @@ -293,11 +297,10 @@ contract Secp256r1 is ISecp256r1 { * Uses http://hyperelliptic.org/EFD/g1p/auto-shortw-xyzz.html#doubling-mdbl-2008-s-1 * Handles point at infinity gracefully */ - function ecZZ_double_affine(uint256 x1, uint256 y1) - internal - pure - returns (uint256 x3, uint256 y3, uint256 zz3, uint256 zzz3) - { + function ecZZ_double_affine( + uint256 x1, + uint256 y1 + ) internal pure returns (uint256 x3, uint256 y3, uint256 zz3, uint256 zzz3) { if (ecAff_IsInf(x1, y1)) return ecZZ_PointAtInf(); uint256 comp_U = mulmod(2, y1, p); // U = 2*Y1 @@ -315,11 +318,7 @@ contract Secp256r1 is ISecp256r1 { * Assumes (zz)^(3/2) == zzz (i.e. zz == z^2 and zzz == z^3) * See https://hyperelliptic.org/EFD/g1p/auto-shortw-xyzz-3.html */ - function ecZZ_SetAff(uint256 x, uint256 y, uint256 zz, uint256 zzz) - internal - view - returns (uint256 x1, uint256 y1) - { + function ecZZ_SetAff(uint256 x, uint256 y, uint256 zz, uint256 zzz) internal view returns (uint256 x1, uint256 y1) { if (ecZZ_IsInf(zz, zzz)) { (x1, y1) = ecAffine_PointAtInf(); return (x1, y1); diff --git a/contracts/validators/p256/Secp256r1IoTeX.sol b/contracts/validators/p256/Secp256r1IoTeX.sol index 77dec56..87d6912 100644 --- a/contracts/validators/p256/Secp256r1IoTeX.sol +++ b/contracts/validators/p256/Secp256r1IoTeX.sol @@ -4,12 +4,11 @@ pragma solidity ^0.8.19; import "./ISecp256r1.sol"; contract Secp256r1IoTeX is ISecp256r1 { - function validateSignature(bytes32 message, bytes calldata signature, bytes calldata publicKey) - external - view - override - returns (bool result) - { + function validateSignature( + bytes32 message, + bytes calldata signature, + bytes calldata publicKey + ) external view override returns (bool result) { bytes32 rs0; bytes32 rs1; bytes32 Q0; @@ -31,8 +30,12 @@ contract Secp256r1IoTeX is ISecp256r1 { mstore(add(input, 0x81), Q1) let success := staticcall(gas(), 0x8001, input, 0xa1, out, 0x1) switch success - case 0 { revert(0x0, 0x0) } - default { result := mload(out) } + case 0 { + revert(0x0, 0x0) + } + default { + result := mload(out) + } } } } diff --git a/contracts/validators/p256/WebauthnValidator.sol b/contracts/validators/p256/WebauthnValidator.sol index a7fc227..4af03a0 100644 --- a/contracts/validators/p256/WebauthnValidator.sol +++ b/contracts/validators/p256/WebauthnValidator.sol @@ -19,12 +19,11 @@ contract WebauthnValidator is BaseValidator { impl = _impl; } - function validateSignature(UserOperation calldata userOp, bytes32 userOpHash, bytes calldata signature) - external - payable - override - returns (uint256 validationData) - { + function validateSignature( + UserOperation calldata userOp, + bytes32 userOpHash, + bytes calldata signature + ) external payable override returns (uint256 validationData) { bytes memory sig; bytes32 messageHash; { @@ -35,8 +34,11 @@ contract WebauthnValidator is BaseValidator { string memory clientDataJSONPost ) = abi.decode(signature, (bytes, bytes, string, string)); - string memory clientDataJSON = - string.concat(clientDataJSONPre, Base64.encode(bytes.concat(userOpHash)), clientDataJSONPost); + string memory clientDataJSON = string.concat( + clientDataJSONPre, + Base64.encode(bytes.concat(userOpHash)), + clientDataJSONPost + ); bytes32 clientDataHash = sha256(bytes(clientDataJSON)); messageHash = sha256(bytes.concat(authenticatorData, clientDataHash)); sig = realSig; diff --git a/contracts/validators/sessionkey/OwnerSessionKeyValidator.sol b/contracts/validators/sessionkey/OwnerSessionKeyValidator.sol index d575801..985b556 100644 --- a/contracts/validators/sessionkey/OwnerSessionKeyValidator.sol +++ b/contracts/validators/sessionkey/OwnerSessionKeyValidator.sol @@ -21,12 +21,11 @@ contract OwnerSessionKeyValidator is BaseValidator { mapping(address sessionKey => mapping(address account => SessionKeyStorage)) public sessionKeyStorage; - function validateSignature(UserOperation calldata userOp, bytes32 userOpHash, bytes calldata signature) - external - payable - override - returns (uint256 validationData) - { + function validateSignature( + UserOperation calldata userOp, + bytes32 userOpHash, + bytes calldata signature + ) external payable override returns (uint256 validationData) { bytes32 hash = ECDSA.toEthSignedMessageHash(userOpHash); address recovered = ECDSA.recover(hash, signature); diff --git a/deploy/entrypoint.ts b/deploy/entrypoint.ts index 1d2a675..0fdebc8 100644 --- a/deploy/entrypoint.ts +++ b/deploy/entrypoint.ts @@ -1,10 +1,10 @@ -import { DeployFunction } from 'hardhat-deploy/types' -import { HardhatRuntimeEnvironment } from 'hardhat/types' +import { DeployFunction } from 'hardhat-deploy/types'; +import { HardhatRuntimeEnvironment } from 'hardhat/types'; const deploy: DeployFunction = async function (hre: HardhatRuntimeEnvironment) { - const { deployments, getNamedAccounts, network } = hre - const { deployer } = await getNamedAccounts() - const { deploy } = deployments + const { deployments, getNamedAccounts, network } = hre; + const { deployer } = await getNamedAccounts(); + const { deploy } = deployments; if (network.name == 'dev') { await deploy('EntryPoint', { @@ -12,9 +12,9 @@ const deploy: DeployFunction = async function (hre: HardhatRuntimeEnvironment) { args: [], log: true, deterministicDeployment: true, - }) + }); } -} +}; -deploy.tags = ['entrypoint', 'core'] -export default deploy +deploy.tags = ['entrypoint', 'core']; +export default deploy; diff --git a/deploy/factory.ts b/deploy/factory.ts index 6616a18..655e186 100644 --- a/deploy/factory.ts +++ b/deploy/factory.ts @@ -1,32 +1,32 @@ -import { ethers } from 'hardhat' -import { DeployFunction } from 'hardhat-deploy/types' -import { HardhatRuntimeEnvironment } from 'hardhat/types' -import { addresses } from '../src/config' +import { ethers } from 'hardhat'; +import { DeployFunction } from 'hardhat-deploy/types'; +import { HardhatRuntimeEnvironment } from 'hardhat/types'; +import { addresses } from '../src/config'; const deploy: DeployFunction = async function (hre: HardhatRuntimeEnvironment) { - const { deployments, getNamedAccounts, network } = hre - const { deployer } = await getNamedAccounts() - const { deploy } = deployments + const { deployments, getNamedAccounts, network } = hre; + const { deployer } = await getNamedAccounts(); + const { deploy } = deployments; - let entryPointAddr = '' + let entryPointAddr = ''; if (network.name == 'dev') { - const entryPoint = await ethers.getContract('EntryPoint') - entryPointAddr = entryPoint.address + const entryPoint = await ethers.getContract('EntryPoint'); + entryPointAddr = entryPoint.address; } else { // @ts-ignore - entryPointAddr = addresses[network.name].entrypoint + entryPointAddr = addresses[network.name].entrypoint; } - const handler = await ethers.getContract('DefaultCallbackHandler') + const handler = await ethers.getContract('DefaultCallbackHandler'); await deploy('SmartAccountFactory', { from: deployer, args: [entryPointAddr, handler.address], log: true, deterministicDeployment: true, - }) -} + }); +}; -deploy.tags = ['factory', 'account'] -deploy.dependencies = ['core', 'handler'] -export default deploy +deploy.tags = ['factory', 'account']; +deploy.dependencies = ['core', 'handler']; +export default deploy; diff --git a/deploy/handler.ts b/deploy/handler.ts index f55686c..0f36c19 100644 --- a/deploy/handler.ts +++ b/deploy/handler.ts @@ -1,18 +1,18 @@ -import { DeployFunction } from 'hardhat-deploy/types' -import { HardhatRuntimeEnvironment } from 'hardhat/types' +import { DeployFunction } from 'hardhat-deploy/types'; +import { HardhatRuntimeEnvironment } from 'hardhat/types'; const deploy: DeployFunction = async function (hre: HardhatRuntimeEnvironment) { - const { deployments, getNamedAccounts } = hre - const { deployer } = await getNamedAccounts() - const { deploy } = deployments + const { deployments, getNamedAccounts } = hre; + const { deployer } = await getNamedAccounts(); + const { deploy } = deployments; await deploy('DefaultCallbackHandler', { from: deployer, args: [], log: true, deterministicDeployment: true, - }) -} + }); +}; -deploy.tags = ['handler', 'core'] -export default deploy +deploy.tags = ['handler', 'core']; +export default deploy; diff --git a/deploy/paymaster.ts b/deploy/paymaster.ts index feb0731..a408877 100644 --- a/deploy/paymaster.ts +++ b/deploy/paymaster.ts @@ -1,20 +1,20 @@ -import { ethers } from 'hardhat' -import { DeployFunction } from 'hardhat-deploy/types' -import { HardhatRuntimeEnvironment } from 'hardhat/types' -import { addresses } from '../src/config' +import { ethers } from 'hardhat'; +import { DeployFunction } from 'hardhat-deploy/types'; +import { HardhatRuntimeEnvironment } from 'hardhat/types'; +import { addresses } from '../src/config'; const deploy: DeployFunction = async function (hre: HardhatRuntimeEnvironment) { - const { deployments, getNamedAccounts, network } = hre - const { deployer } = await getNamedAccounts() - const { deploy } = deployments + const { deployments, getNamedAccounts, network } = hre; + const { deployer } = await getNamedAccounts(); + const { deploy } = deployments; - let entryPointAddr = '' + let entryPointAddr = ''; if (network.name == 'dev') { - const entryPoint = await ethers.getContract('EntryPoint') - entryPointAddr = entryPoint.address + const entryPoint = await ethers.getContract('EntryPoint'); + entryPointAddr = entryPoint.address; } else { // @ts-ignore - entryPointAddr = addresses[network.name].entrypoint + entryPointAddr = addresses[network.name].entrypoint; } await deploy('VerifyingPaymaster', { @@ -22,9 +22,9 @@ const deploy: DeployFunction = async function (hre: HardhatRuntimeEnvironment) { args: [entryPointAddr, deployer], log: true, deterministicDeployment: false, - }) -} + }); +}; -deploy.tags = ['paymaster'] -deploy.dependencies = ['core'] -export default deploy +deploy.tags = ['paymaster']; +deploy.dependencies = ['core']; +export default deploy; diff --git a/deploy/validator_secp256r1.ts b/deploy/validator_secp256r1.ts index 0f0ac2a..9458c12 100644 --- a/deploy/validator_secp256r1.ts +++ b/deploy/validator_secp256r1.ts @@ -1,37 +1,37 @@ -import { ethers } from 'hardhat' -import { DeployFunction } from 'hardhat-deploy/types' -import { HardhatRuntimeEnvironment } from 'hardhat/types' +import { ethers } from 'hardhat'; +import { DeployFunction } from 'hardhat-deploy/types'; +import { HardhatRuntimeEnvironment } from 'hardhat/types'; const deploy: DeployFunction = async function (hre: HardhatRuntimeEnvironment) { - const { deployments, getNamedAccounts } = hre - const { deployer } = await getNamedAccounts() - const { deploy } = deployments + const { deployments, getNamedAccounts } = hre; + const { deployer } = await getNamedAccounts(); + const { deploy } = deployments; - const chainId = (await ethers.provider.getNetwork()).chainId + const chainId = (await ethers.provider.getNetwork()).chainId; - let secp256r1Contract = 'Secp256r1' + let secp256r1Contract = 'Secp256r1'; if (chainId == 4689 || chainId == 4690) { - secp256r1Contract = 'Secp256r1IoTeX' + secp256r1Contract = 'Secp256r1IoTeX'; } const secp256r1 = await deploy(secp256r1Contract, { from: deployer, args: [], log: true, deterministicDeployment: true, - }) + }); await deploy('P256Validator', { from: deployer, args: [secp256r1.address], log: true, deterministicDeployment: true, - }) + }); await deploy('WebauthnValidator', { from: deployer, args: [secp256r1.address], log: true, deterministicDeployment: true, - }) -} + }); +}; -deploy.tags = ['secp256r1', 'validator'] -export default deploy +deploy.tags = ['secp256r1', 'validator']; +export default deploy; diff --git a/deploy/validator_sessionKey.ts b/deploy/validator_sessionKey.ts index 6681637..51f48e2 100644 --- a/deploy/validator_sessionKey.ts +++ b/deploy/validator_sessionKey.ts @@ -1,19 +1,19 @@ -import { ethers } from 'hardhat' -import { DeployFunction } from 'hardhat-deploy/types' -import { HardhatRuntimeEnvironment } from 'hardhat/types' +import { ethers } from 'hardhat'; +import { DeployFunction } from 'hardhat-deploy/types'; +import { HardhatRuntimeEnvironment } from 'hardhat/types'; const deploy: DeployFunction = async function (hre: HardhatRuntimeEnvironment) { - const { deployments, getNamedAccounts } = hre - const { deployer } = await getNamedAccounts() - const { deploy } = deployments + const { deployments, getNamedAccounts } = hre; + const { deployer } = await getNamedAccounts(); + const { deploy } = deployments; await deploy('OwnerSessionKeyValidator', { from: deployer, args: [], log: true, deterministicDeployment: true, - }) -} + }); +}; -deploy.tags = ['sessionKey', 'validator'] -export default deploy +deploy.tags = ['sessionKey', 'validator']; +export default deploy; diff --git a/package.json b/package.json index 14e046c..02c75ef 100644 --- a/package.json +++ b/package.json @@ -11,8 +11,10 @@ "test": "hardhat test", "snapshots": "UPDATE_SNAPSHOT=1 hardhat test", "build": "yarn clean && yarn compile && tsc", - "lint:fix": "forge fmt contracts/ && forge fmt test/ && prettier --write '{src,scripts,deploy,test}/**/*.ts'", - "lint": "forge fmt --check && prettier --check 'test/**/*.ts'" + "lint:fix": "yarn lint:sol:fix && forge fmt test/ && prettier --write '{src,scripts,deploy,test}/**/*.ts'", + "lint": "yarn lint:sol && prettier --check 'test/**/*.ts'", + "lint:sol": "prettier --log-level warn --ignore-path .gitignore '{contracts,test}/**/*.sol' --check", + "lint:sol:fix": "prettier --log-level warn --ignore-path .gitignore '{contracts,test}/**/*.sol' --write" }, "devDependencies": { "@nomicfoundation/hardhat-chai-matchers": "^1.0.6", @@ -30,6 +32,7 @@ "hardhat-deploy": "^0.11.37", "import-toml": "^1.0.0", "prettier": "^3.0.1", + "prettier-plugin-solidity": "^1.2.0", "solidity-coverage": "^0.8.0", "ts-node": "^10.9.1", "typechain": "^8.3.1", diff --git a/scripts/p256-tests.ts b/scripts/p256-tests.ts index 51b6d22..95a7882 100644 --- a/scripts/p256-tests.ts +++ b/scripts/p256-tests.ts @@ -1,51 +1,51 @@ -import fs from 'fs' -import path from 'path' +import fs from 'fs'; +import path from 'path'; // @ts-ignore -import ecPem from 'ec-pem' -import { EntryPoint } from '@account-abstraction/contracts' -import { ethers } from 'hardhat' -import { Client } from 'userop' -import { SmartAccount } from '../src/userop-builder' -import { P2565Signer } from '../src/p256' +import ecPem from 'ec-pem'; +import { EntryPoint } from '@account-abstraction/contracts'; +import { ethers } from 'hardhat'; +import { Client } from 'userop'; +import { SmartAccount } from '../src/userop-builder'; +import { P2565Signer } from '../src/p256'; async function main() { - const chainId = (await ethers.provider.getNetwork()).chainId + const chainId = (await ethers.provider.getNetwork()).chainId; - const [admin] = await ethers.getSigners() - const rpc = 'http://127.0.0.1:8545' - const bundlerRpc = 'http://127.0.0.1:14337/1337' - const entryPoint = (await ethers.getContract('EntryPoint')) as EntryPoint - const p256Validator = await ethers.getContract('P256Validator') + const [admin] = await ethers.getSigners(); + const rpc = 'http://127.0.0.1:8545'; + const bundlerRpc = 'http://127.0.0.1:14337/1337'; + const entryPoint = (await ethers.getContract('EntryPoint')) as EntryPoint; + const p256Validator = await ethers.getContract('P256Validator'); - const keyContent = fs.readFileSync(path.join(__dirname, 'key.pem')) - const keyPair = ecPem.loadPrivateKey(keyContent) - const p2565Signer = new P2565Signer(keyPair, p256Validator.address) + const keyContent = fs.readFileSync(path.join(__dirname, 'key.pem')); + const keyPair = ecPem.loadPrivateKey(keyContent); + const p2565Signer = new P2565Signer(keyPair, p256Validator.address); const client = await Client.init(rpc, { entryPoint: entryPoint.address, overrideBundlerRpc: bundlerRpc, - }) + }); const accountBuilder = await SmartAccount.init(p2565Signer, rpc, { overrideBundlerRpc: bundlerRpc, entryPoint: entryPoint.address, - }) - accountBuilder.setVerificationGasLimit(1500000) + }); + accountBuilder.setVerificationGasLimit(1500000); await admin.sendTransaction({ to: accountBuilder.getSender(), value: ethers.utils.parseEther('2.0'), - }) + }); - const account = accountBuilder.getSender() - const response = await client.sendUserOperation(accountBuilder) - console.log(`Create ${account} ophash: ${response.userOpHash}`) - const userOperationEvent = await response.wait() - console.log(`Create ${account} txhash: ${userOperationEvent?.transactionHash}`) + const account = accountBuilder.getSender(); + const response = await client.sendUserOperation(accountBuilder); + console.log(`Create ${account} ophash: ${response.userOpHash}`); + const userOperationEvent = await response.wait(); + console.log(`Create ${account} txhash: ${userOperationEvent?.transactionHash}`); } main() .then(() => process.exit(0)) - .catch((error) => { - console.error(error) - process.exit(1) - }) + .catch(error => { + console.error(error); + process.exit(1); + }); diff --git a/src/config.ts b/src/config.ts index bb65e7f..37f2ed5 100644 --- a/src/config.ts +++ b/src/config.ts @@ -5,4 +5,4 @@ export const addresses = { sepolia: { entrypoint: '0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789', }, -} +}; diff --git a/src/index.ts b/src/index.ts index dc9c8c6..a1a6a7c 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,4 +1,4 @@ -export * from './config' -export * from './p256' -export * from './sessionkey' -export * from './userop-builder' +export * from './config'; +export * from './p256'; +export * from './sessionkey'; +export * from './userop-builder'; diff --git a/src/p256.ts b/src/p256.ts index 76c50d8..54ad9ae 100644 --- a/src/p256.ts +++ b/src/p256.ts @@ -1,52 +1,52 @@ -import crypto from 'crypto' -import { Buffer } from 'buffer' -import { bufferToHex, sha256 } from 'ethereumjs-util' -import { BytesLike, defaultAbiCoder } from 'ethers/lib/utils' -import { Signer } from './userop-builder' +import crypto from 'crypto'; +import { Buffer } from 'buffer'; +import { bufferToHex, sha256 } from 'ethereumjs-util'; +import { BytesLike, defaultAbiCoder } from 'ethers/lib/utils'; +import { Signer } from './userop-builder'; // @ts-ignore export const sign = (keyPair: any, message: any) => { - const messageHash = bufferToHex(sha256(message)) + const messageHash = bufferToHex(sha256(message)); - const signer = crypto.createSign('RSA-SHA256') - signer.update(message) - let sigString = signer.sign(keyPair.encodePrivateKey(), 'hex') + const signer = crypto.createSign('RSA-SHA256'); + signer.update(message); + let sigString = signer.sign(keyPair.encodePrivateKey(), 'hex'); // @ts-ignore - const xlength = 2 * ('0x' + sigString.slice(6, 8)) - sigString = sigString.slice(8) - const signatureArray = ['0x' + sigString.slice(0, xlength), '0x' + sigString.slice(xlength + 4)] - const signature = defaultAbiCoder.encode(['uint256', 'uint256'], [signatureArray[0], signatureArray[1]]) + const xlength = 2 * ('0x' + sigString.slice(6, 8)); + sigString = sigString.slice(8); + const signatureArray = ['0x' + sigString.slice(0, xlength), '0x' + sigString.slice(xlength + 4)]; + const signature = defaultAbiCoder.encode(['uint256', 'uint256'], [signatureArray[0], signatureArray[1]]); return { messageHash, signature, - } -} + }; +}; export class P2565Signer implements Signer { - private keyPair: any - private validatorAddr: string + private keyPair: any; + private validatorAddr: string; constructor(keyPair: any, address: string) { - this.keyPair = keyPair - this.validatorAddr = address + this.keyPair = keyPair; + this.validatorAddr = address; } signatureLength(): number { - return 128 + return 128; } address(): string { - return this.validatorAddr + return this.validatorAddr; } async data(): Promise { - return '0x' + this.keyPair.getPublicKey('hex').substring(2) + return '0x' + this.keyPair.getPublicKey('hex').substring(2); } async sign(opHash: string): Promise { - const result = sign(this.keyPair, Buffer.from(opHash.substring(2), 'hex')) - return result.signature + const result = sign(this.keyPair, Buffer.from(opHash.substring(2), 'hex')); + return result.signature; } } diff --git a/src/sessionkey.ts b/src/sessionkey.ts index 646cbcb..91051ab 100644 --- a/src/sessionkey.ts +++ b/src/sessionkey.ts @@ -1,29 +1,29 @@ -import * as ethers from 'ethers' -import { Signer } from './userop-builder' -import { arrayify } from 'ethers/lib/utils' +import * as ethers from 'ethers'; +import { Signer } from './userop-builder'; +import { arrayify } from 'ethers/lib/utils'; export class SessionKeySigner implements Signer { - private signer: ethers.Signer - private validatorAddr: string + private signer: ethers.Signer; + private validatorAddr: string; constructor(signer: ethers.Signer, address: string) { - this.signer = signer - this.validatorAddr = address + this.signer = signer; + this.validatorAddr = address; } signatureLength(): number { - return 128 + return 128; } address(): string { - return this.validatorAddr + return this.validatorAddr; } async data(): Promise { - return this.signer.getAddress() + return this.signer.getAddress(); } async sign(opHash: string): Promise { - return this.signer.signMessage(arrayify(opHash)) + return this.signer.signMessage(arrayify(opHash)); } } diff --git a/src/types/@account-abstraction/contracts/core/index.ts b/src/types/@account-abstraction/contracts/core/index.ts index b72f168..5951be2 100644 --- a/src/types/@account-abstraction/contracts/core/index.ts +++ b/src/types/@account-abstraction/contracts/core/index.ts @@ -1,9 +1,9 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { BaseAccount } from './BaseAccount' -export type { BasePaymaster } from './BasePaymaster' -export type { EntryPoint } from './EntryPoint' -export type { NonceManager } from './NonceManager' -export type { SenderCreator } from './SenderCreator' -export type { StakeManager } from './StakeManager' +export type { BaseAccount } from "./BaseAccount"; +export type { BasePaymaster } from "./BasePaymaster"; +export type { EntryPoint } from "./EntryPoint"; +export type { NonceManager } from "./NonceManager"; +export type { SenderCreator } from "./SenderCreator"; +export type { StakeManager } from "./StakeManager"; diff --git a/src/types/@account-abstraction/contracts/index.ts b/src/types/@account-abstraction/contracts/index.ts index 69ec292..e56886b 100644 --- a/src/types/@account-abstraction/contracts/index.ts +++ b/src/types/@account-abstraction/contracts/index.ts @@ -1,9 +1,9 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as core from './core' -export type { core } -import type * as interfaces from './interfaces' -export type { interfaces } -import type * as samples from './samples' -export type { samples } +import type * as core from "./core"; +export type { core }; +import type * as interfaces from "./interfaces"; +export type { interfaces }; +import type * as samples from "./samples"; +export type { samples }; diff --git a/src/types/@account-abstraction/contracts/interfaces/index.ts b/src/types/@account-abstraction/contracts/interfaces/index.ts index 2f52901..e49a4e9 100644 --- a/src/types/@account-abstraction/contracts/interfaces/index.ts +++ b/src/types/@account-abstraction/contracts/interfaces/index.ts @@ -1,9 +1,9 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { IAccount } from './IAccount' -export type { IAggregator } from './IAggregator' -export type { IEntryPoint } from './IEntryPoint' -export type { INonceManager } from './INonceManager' -export type { IPaymaster } from './IPaymaster' -export type { IStakeManager } from './IStakeManager' +export type { IAccount } from "./IAccount"; +export type { IAggregator } from "./IAggregator"; +export type { IEntryPoint } from "./IEntryPoint"; +export type { INonceManager } from "./INonceManager"; +export type { IPaymaster } from "./IPaymaster"; +export type { IStakeManager } from "./IStakeManager"; diff --git a/src/types/@account-abstraction/contracts/samples/callback/index.ts b/src/types/@account-abstraction/contracts/samples/callback/index.ts index ace6aad..3806db9 100644 --- a/src/types/@account-abstraction/contracts/samples/callback/index.ts +++ b/src/types/@account-abstraction/contracts/samples/callback/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { TokenCallbackHandler } from './TokenCallbackHandler' +export type { TokenCallbackHandler } from "./TokenCallbackHandler"; diff --git a/src/types/@account-abstraction/contracts/samples/index.ts b/src/types/@account-abstraction/contracts/samples/index.ts index 33fa492..3b69c53 100644 --- a/src/types/@account-abstraction/contracts/samples/index.ts +++ b/src/types/@account-abstraction/contracts/samples/index.ts @@ -1,5 +1,5 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as callback from './callback' -export type { callback } +import type * as callback from "./callback"; +export type { callback }; diff --git a/src/types/@account-abstraction/index.ts b/src/types/@account-abstraction/index.ts index eb7a38b..a11e4ca 100644 --- a/src/types/@account-abstraction/index.ts +++ b/src/types/@account-abstraction/index.ts @@ -1,5 +1,5 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as contracts from './contracts' -export type { contracts } +import type * as contracts from "./contracts"; +export type { contracts }; diff --git a/src/types/@openzeppelin/contracts/access/index.ts b/src/types/@openzeppelin/contracts/access/index.ts index 4d63f3a..999bcc7 100644 --- a/src/types/@openzeppelin/contracts/access/index.ts +++ b/src/types/@openzeppelin/contracts/access/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { Ownable } from './Ownable' +export type { Ownable } from "./Ownable"; diff --git a/src/types/@openzeppelin/contracts/index.ts b/src/types/@openzeppelin/contracts/index.ts index 7a19391..b570e96 100644 --- a/src/types/@openzeppelin/contracts/index.ts +++ b/src/types/@openzeppelin/contracts/index.ts @@ -1,13 +1,13 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as access from './access' -export type { access } -import type * as interfaces from './interfaces' -export type { interfaces } -import type * as proxy from './proxy' -export type { proxy } -import type * as token from './token' -export type { token } -import type * as utils from './utils' -export type { utils } +import type * as access from "./access"; +export type { access }; +import type * as interfaces from "./interfaces"; +export type { interfaces }; +import type * as proxy from "./proxy"; +export type { proxy }; +import type * as token from "./token"; +export type { token }; +import type * as utils from "./utils"; +export type { utils }; diff --git a/src/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts b/src/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts index e05d3b3..daec45b 100644 --- a/src/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +++ b/src/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { IERC1822Proxiable } from './IERC1822Proxiable' +export type { IERC1822Proxiable } from "./IERC1822Proxiable"; diff --git a/src/types/@openzeppelin/contracts/interfaces/index.ts b/src/types/@openzeppelin/contracts/interfaces/index.ts index d34e047..56b77b4 100644 --- a/src/types/@openzeppelin/contracts/interfaces/index.ts +++ b/src/types/@openzeppelin/contracts/interfaces/index.ts @@ -1,6 +1,6 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as draftIerc1822Sol from './draft-IERC1822.sol' -export type { draftIerc1822Sol } -export type { IERC1967 } from './IERC1967' +import type * as draftIerc1822Sol from "./draft-IERC1822.sol"; +export type { draftIerc1822Sol }; +export type { IERC1967 } from "./IERC1967"; diff --git a/src/types/@openzeppelin/contracts/proxy/ERC1967/index.ts b/src/types/@openzeppelin/contracts/proxy/ERC1967/index.ts index 7d140c8..ffa8bbb 100644 --- a/src/types/@openzeppelin/contracts/proxy/ERC1967/index.ts +++ b/src/types/@openzeppelin/contracts/proxy/ERC1967/index.ts @@ -1,5 +1,5 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { ERC1967Proxy } from './ERC1967Proxy' -export type { ERC1967Upgrade } from './ERC1967Upgrade' +export type { ERC1967Proxy } from "./ERC1967Proxy"; +export type { ERC1967Upgrade } from "./ERC1967Upgrade"; diff --git a/src/types/@openzeppelin/contracts/proxy/beacon/index.ts b/src/types/@openzeppelin/contracts/proxy/beacon/index.ts index 0db6217..9224b1e 100644 --- a/src/types/@openzeppelin/contracts/proxy/beacon/index.ts +++ b/src/types/@openzeppelin/contracts/proxy/beacon/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { IBeacon } from './IBeacon' +export type { IBeacon } from "./IBeacon"; diff --git a/src/types/@openzeppelin/contracts/proxy/index.ts b/src/types/@openzeppelin/contracts/proxy/index.ts index 7b184ad..73dcc1b 100644 --- a/src/types/@openzeppelin/contracts/proxy/index.ts +++ b/src/types/@openzeppelin/contracts/proxy/index.ts @@ -1,10 +1,10 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as erc1967 from './ERC1967' -export type { erc1967 } -import type * as beacon from './beacon' -export type { beacon } -import type * as utils from './utils' -export type { utils } -export type { Proxy } from './Proxy' +import type * as erc1967 from "./ERC1967"; +export type { erc1967 }; +import type * as beacon from "./beacon"; +export type { beacon }; +import type * as utils from "./utils"; +export type { utils }; +export type { Proxy } from "./Proxy"; diff --git a/src/types/@openzeppelin/contracts/proxy/utils/index.ts b/src/types/@openzeppelin/contracts/proxy/utils/index.ts index b45496c..5da73d0 100644 --- a/src/types/@openzeppelin/contracts/proxy/utils/index.ts +++ b/src/types/@openzeppelin/contracts/proxy/utils/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { Initializable } from './Initializable' +export type { Initializable } from "./Initializable"; diff --git a/src/types/@openzeppelin/contracts/token/ERC1155/index.ts b/src/types/@openzeppelin/contracts/token/ERC1155/index.ts index 2d00022..0300251 100644 --- a/src/types/@openzeppelin/contracts/token/ERC1155/index.ts +++ b/src/types/@openzeppelin/contracts/token/ERC1155/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { IERC1155Receiver } from './IERC1155Receiver' +export type { IERC1155Receiver } from "./IERC1155Receiver"; diff --git a/src/types/@openzeppelin/contracts/token/ERC721/index.ts b/src/types/@openzeppelin/contracts/token/ERC721/index.ts index efb44b9..dd183b2 100644 --- a/src/types/@openzeppelin/contracts/token/ERC721/index.ts +++ b/src/types/@openzeppelin/contracts/token/ERC721/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { IERC721Receiver } from './IERC721Receiver' +export type { IERC721Receiver } from "./IERC721Receiver"; diff --git a/src/types/@openzeppelin/contracts/token/ERC777/index.ts b/src/types/@openzeppelin/contracts/token/ERC777/index.ts index 199e2de..211979b 100644 --- a/src/types/@openzeppelin/contracts/token/ERC777/index.ts +++ b/src/types/@openzeppelin/contracts/token/ERC777/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { IERC777Recipient } from './IERC777Recipient' +export type { IERC777Recipient } from "./IERC777Recipient"; diff --git a/src/types/@openzeppelin/contracts/token/index.ts b/src/types/@openzeppelin/contracts/token/index.ts index 9846d6e..06263eb 100644 --- a/src/types/@openzeppelin/contracts/token/index.ts +++ b/src/types/@openzeppelin/contracts/token/index.ts @@ -1,9 +1,9 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as erc1155 from './ERC1155' -export type { erc1155 } -import type * as erc721 from './ERC721' -export type { erc721 } -import type * as erc777 from './ERC777' -export type { erc777 } +import type * as erc1155 from "./ERC1155"; +export type { erc1155 }; +import type * as erc721 from "./ERC721"; +export type { erc721 }; +import type * as erc777 from "./ERC777"; +export type { erc777 }; diff --git a/src/types/@openzeppelin/contracts/utils/index.ts b/src/types/@openzeppelin/contracts/utils/index.ts index 2bd2709..3aa96c1 100644 --- a/src/types/@openzeppelin/contracts/utils/index.ts +++ b/src/types/@openzeppelin/contracts/utils/index.ts @@ -1,5 +1,5 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as introspection from './introspection' -export type { introspection } +import type * as introspection from "./introspection"; +export type { introspection }; diff --git a/src/types/@openzeppelin/contracts/utils/introspection/index.ts b/src/types/@openzeppelin/contracts/utils/introspection/index.ts index a27a814..3fcca5c 100644 --- a/src/types/@openzeppelin/contracts/utils/introspection/index.ts +++ b/src/types/@openzeppelin/contracts/utils/introspection/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { IERC165 } from './IERC165' +export type { IERC165 } from "./IERC165"; diff --git a/src/types/@openzeppelin/index.ts b/src/types/@openzeppelin/index.ts index eb7a38b..a11e4ca 100644 --- a/src/types/@openzeppelin/index.ts +++ b/src/types/@openzeppelin/index.ts @@ -1,5 +1,5 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as contracts from './contracts' -export type { contracts } +import type * as contracts from "./contracts"; +export type { contracts }; diff --git a/src/types/common.ts b/src/types/common.ts index 70a550d..2fc40c7 100644 --- a/src/types/common.ts +++ b/src/types/common.ts @@ -1,30 +1,44 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type { Listener } from '@ethersproject/providers' -import type { Event, EventFilter } from 'ethers' - -export interface TypedEvent = any, TArgsObject = any> extends Event { - args: TArgsArray & TArgsObject +import type { Listener } from "@ethersproject/providers"; +import type { Event, EventFilter } from "ethers"; + +export interface TypedEvent< + TArgsArray extends Array = any, + TArgsObject = any +> extends Event { + args: TArgsArray & TArgsObject; } -export interface TypedEventFilter<_TEvent extends TypedEvent> extends EventFilter {} +export interface TypedEventFilter<_TEvent extends TypedEvent> + extends EventFilter {} export interface TypedListener { - (...listenerArg: [...__TypechainArgsArray, TEvent]): void + (...listenerArg: [...__TypechainArgsArray, TEvent]): void; } -type __TypechainArgsArray = T extends TypedEvent ? U : never +type __TypechainArgsArray = T extends TypedEvent ? U : never; export interface OnEvent { - (eventFilter: TypedEventFilter, listener: TypedListener): TRes - (eventName: string, listener: Listener): TRes + ( + eventFilter: TypedEventFilter, + listener: TypedListener + ): TRes; + (eventName: string, listener: Listener): TRes; } export type MinEthersFactory = { - deploy(...a: ARGS[]): Promise -} - -export type GetContractTypeFromFactory = F extends MinEthersFactory ? C : never - -export type GetARGsTypeFromFactory = F extends MinEthersFactory ? Parameters : never + deploy(...a: ARGS[]): Promise; +}; + +export type GetContractTypeFromFactory = F extends MinEthersFactory< + infer C, + any +> + ? C + : never; + +export type GetARGsTypeFromFactory = F extends MinEthersFactory + ? Parameters + : never; diff --git a/src/types/contracts/SmartAccount.ts b/src/types/contracts/SmartAccount.ts index 026bbcc..14a0cee 100644 --- a/src/types/contracts/SmartAccount.ts +++ b/src/types/contracts/SmartAccount.ts @@ -13,24 +13,33 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../common' +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../common"; export type UserOperationStruct = { - sender: string - nonce: BigNumberish - initCode: BytesLike - callData: BytesLike - callGasLimit: BigNumberish - verificationGasLimit: BigNumberish - preVerificationGas: BigNumberish - maxFeePerGas: BigNumberish - maxPriorityFeePerGas: BigNumberish - paymasterAndData: BytesLike - signature: BytesLike -} + sender: string; + nonce: BigNumberish; + initCode: BytesLike; + callData: BytesLike; + callGasLimit: BigNumberish; + verificationGasLimit: BigNumberish; + preVerificationGas: BigNumberish; + maxFeePerGas: BigNumberish; + maxPriorityFeePerGas: BigNumberish; + paymasterAndData: BytesLike; + signature: BytesLike; +}; export type UserOperationStructOutput = [ string, @@ -43,729 +52,1012 @@ export type UserOperationStructOutput = [ BigNumber, BigNumber, string, - string, + string ] & { - sender: string - nonce: BigNumber - initCode: string - callData: string - callGasLimit: BigNumber - verificationGasLimit: BigNumber - preVerificationGas: BigNumber - maxFeePerGas: BigNumber - maxPriorityFeePerGas: BigNumber - paymasterAndData: string - signature: string -} + sender: string; + nonce: BigNumber; + initCode: string; + callData: string; + callGasLimit: BigNumber; + verificationGasLimit: BigNumber; + preVerificationGas: BigNumber; + maxFeePerGas: BigNumber; + maxPriorityFeePerGas: BigNumber; + paymasterAndData: string; + signature: string; +}; export interface SmartAccountInterface extends utils.Interface { functions: { - 'addDeposit()': FunctionFragment - 'addHook(address,bytes)': FunctionFragment - 'addRecoveror(address,bytes)': FunctionFragment - 'disableValidator(address,address)': FunctionFragment - 'enableValidator(address,bytes)': FunctionFragment - 'entryPoint()': FunctionFragment - 'execute(address,uint256,bytes)': FunctionFragment - 'executeBatch(address[],uint256[],bytes[])': FunctionFragment - 'getDeposit()': FunctionFragment - 'getFallbackHandler()': FunctionFragment - 'getNonce()': FunctionFragment - 'getRecoverorsPaginated(address,uint256)': FunctionFragment - 'getValidatorsPaginated(address,uint256)': FunctionFragment - 'initialize(address,address[],bytes[])': FunctionFragment - 'isRecoverorEnabled(address)': FunctionFragment - 'isValidatorEnabled(address)': FunctionFragment - 'recovery(address,bytes)': FunctionFragment - 'removeHook(address,address,address)': FunctionFragment - 'removeRecoveror(address,address)': FunctionFragment - 'setFallbackHandler(address)': FunctionFragment - 'sudo(address,uint256,bytes)': FunctionFragment - 'validateUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)': FunctionFragment - 'withdrawDepositTo(address,uint256)': FunctionFragment - } + "addDeposit()": FunctionFragment; + "addHook(address,bytes)": FunctionFragment; + "addRecoveror(address,bytes)": FunctionFragment; + "disableValidator(address,address)": FunctionFragment; + "enableValidator(address,bytes)": FunctionFragment; + "entryPoint()": FunctionFragment; + "execute(address,uint256,bytes)": FunctionFragment; + "executeBatch(address[],uint256[],bytes[])": FunctionFragment; + "getDeposit()": FunctionFragment; + "getFallbackHandler()": FunctionFragment; + "getNonce()": FunctionFragment; + "getRecoverorsPaginated(address,uint256)": FunctionFragment; + "getValidatorsPaginated(address,uint256)": FunctionFragment; + "initialize(address,address[],bytes[])": FunctionFragment; + "isRecoverorEnabled(address)": FunctionFragment; + "isValidatorEnabled(address)": FunctionFragment; + "recovery(address,bytes)": FunctionFragment; + "removeHook(address,address,address)": FunctionFragment; + "removeRecoveror(address,address)": FunctionFragment; + "setFallbackHandler(address)": FunctionFragment; + "sudo(address,uint256,bytes)": FunctionFragment; + "validateUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment; + "withdrawDepositTo(address,uint256)": FunctionFragment; + }; getFunction( nameOrSignatureOrTopic: - | 'addDeposit' - | 'addHook' - | 'addRecoveror' - | 'disableValidator' - | 'enableValidator' - | 'entryPoint' - | 'execute' - | 'executeBatch' - | 'getDeposit' - | 'getFallbackHandler' - | 'getNonce' - | 'getRecoverorsPaginated' - | 'getValidatorsPaginated' - | 'initialize' - | 'isRecoverorEnabled' - | 'isValidatorEnabled' - | 'recovery' - | 'removeHook' - | 'removeRecoveror' - | 'setFallbackHandler' - | 'sudo' - | 'validateUserOp' - | 'withdrawDepositTo', - ): FunctionFragment - - encodeFunctionData(functionFragment: 'addDeposit', values?: undefined): string - encodeFunctionData(functionFragment: 'addHook', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'addRecoveror', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'disableValidator', values: [string, string]): string - encodeFunctionData(functionFragment: 'enableValidator', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'entryPoint', values?: undefined): string - encodeFunctionData(functionFragment: 'execute', values: [string, BigNumberish, BytesLike]): string - encodeFunctionData(functionFragment: 'executeBatch', values: [string[], BigNumberish[], BytesLike[]]): string - encodeFunctionData(functionFragment: 'getDeposit', values?: undefined): string - encodeFunctionData(functionFragment: 'getFallbackHandler', values?: undefined): string - encodeFunctionData(functionFragment: 'getNonce', values?: undefined): string - encodeFunctionData(functionFragment: 'getRecoverorsPaginated', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'getValidatorsPaginated', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'initialize', values: [string, string[], BytesLike[]]): string - encodeFunctionData(functionFragment: 'isRecoverorEnabled', values: [string]): string - encodeFunctionData(functionFragment: 'isValidatorEnabled', values: [string]): string - encodeFunctionData(functionFragment: 'recovery', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'removeHook', values: [string, string, string]): string - encodeFunctionData(functionFragment: 'removeRecoveror', values: [string, string]): string - encodeFunctionData(functionFragment: 'setFallbackHandler', values: [string]): string - encodeFunctionData(functionFragment: 'sudo', values: [string, BigNumberish, BytesLike]): string - encodeFunctionData(functionFragment: 'validateUserOp', values: [UserOperationStruct, BytesLike, BigNumberish]): string - encodeFunctionData(functionFragment: 'withdrawDepositTo', values: [string, BigNumberish]): string - - decodeFunctionResult(functionFragment: 'addDeposit', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'addHook', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'addRecoveror', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'disableValidator', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'enableValidator', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'entryPoint', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'execute', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'executeBatch', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getDeposit', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getFallbackHandler', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getNonce', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getRecoverorsPaginated', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getValidatorsPaginated', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'initialize', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isRecoverorEnabled', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isValidatorEnabled', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'recovery', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'removeHook', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'removeRecoveror', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setFallbackHandler', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'sudo', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validateUserOp', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'withdrawDepositTo', data: BytesLike): Result + | "addDeposit" + | "addHook" + | "addRecoveror" + | "disableValidator" + | "enableValidator" + | "entryPoint" + | "execute" + | "executeBatch" + | "getDeposit" + | "getFallbackHandler" + | "getNonce" + | "getRecoverorsPaginated" + | "getValidatorsPaginated" + | "initialize" + | "isRecoverorEnabled" + | "isValidatorEnabled" + | "recovery" + | "removeHook" + | "removeRecoveror" + | "setFallbackHandler" + | "sudo" + | "validateUserOp" + | "withdrawDepositTo" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "addDeposit", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "addHook", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "addRecoveror", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "disableValidator", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "enableValidator", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "entryPoint", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "execute", + values: [string, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "executeBatch", + values: [string[], BigNumberish[], BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "getDeposit", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getFallbackHandler", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "getNonce", values?: undefined): string; + encodeFunctionData( + functionFragment: "getRecoverorsPaginated", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getValidatorsPaginated", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "initialize", + values: [string, string[], BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "isRecoverorEnabled", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "isValidatorEnabled", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "recovery", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "removeHook", + values: [string, string, string] + ): string; + encodeFunctionData( + functionFragment: "removeRecoveror", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "setFallbackHandler", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "sudo", + values: [string, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validateUserOp", + values: [UserOperationStruct, BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "withdrawDepositTo", + values: [string, BigNumberish] + ): string; + + decodeFunctionResult(functionFragment: "addDeposit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "addHook", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "addRecoveror", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "disableValidator", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "enableValidator", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "executeBatch", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "getDeposit", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getFallbackHandler", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "getRecoverorsPaginated", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getValidatorsPaginated", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "isRecoverorEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isValidatorEnabled", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "recovery", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "removeHook", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "removeRecoveror", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setFallbackHandler", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "sudo", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "validateUserOp", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "withdrawDepositTo", + data: BytesLike + ): Result; events: { - 'AddedRecoveror(address)': EventFragment - 'ChangedFallbackHandler(address,address)': EventFragment - 'DisabledValidator(address)': EventFragment - 'EnabledValidator(address)': EventFragment - 'Initialized(uint8)': EventFragment - 'InstalledHook(address)': EventFragment - 'RemovedRecoveror(address)': EventFragment - 'UninstalledHook(address)': EventFragment - } - - getEvent(nameOrSignatureOrTopic: 'AddedRecoveror'): EventFragment - getEvent(nameOrSignatureOrTopic: 'ChangedFallbackHandler'): EventFragment - getEvent(nameOrSignatureOrTopic: 'DisabledValidator'): EventFragment - getEvent(nameOrSignatureOrTopic: 'EnabledValidator'): EventFragment - getEvent(nameOrSignatureOrTopic: 'Initialized'): EventFragment - getEvent(nameOrSignatureOrTopic: 'InstalledHook'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RemovedRecoveror'): EventFragment - getEvent(nameOrSignatureOrTopic: 'UninstalledHook'): EventFragment + "AddedRecoveror(address)": EventFragment; + "ChangedFallbackHandler(address,address)": EventFragment; + "DisabledValidator(address)": EventFragment; + "EnabledValidator(address)": EventFragment; + "Initialized(uint8)": EventFragment; + "InstalledHook(address)": EventFragment; + "RemovedRecoveror(address)": EventFragment; + "UninstalledHook(address)": EventFragment; + }; + + getEvent(nameOrSignatureOrTopic: "AddedRecoveror"): EventFragment; + getEvent(nameOrSignatureOrTopic: "ChangedFallbackHandler"): EventFragment; + getEvent(nameOrSignatureOrTopic: "DisabledValidator"): EventFragment; + getEvent(nameOrSignatureOrTopic: "EnabledValidator"): EventFragment; + getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; + getEvent(nameOrSignatureOrTopic: "InstalledHook"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RemovedRecoveror"): EventFragment; + getEvent(nameOrSignatureOrTopic: "UninstalledHook"): EventFragment; } export interface AddedRecoverorEventObject { - recoveror: string + recoveror: string; } -export type AddedRecoverorEvent = TypedEvent<[string], AddedRecoverorEventObject> +export type AddedRecoverorEvent = TypedEvent< + [string], + AddedRecoverorEventObject +>; -export type AddedRecoverorEventFilter = TypedEventFilter +export type AddedRecoverorEventFilter = TypedEventFilter; export interface ChangedFallbackHandlerEventObject { - previousHandler: string - handler: string + previousHandler: string; + handler: string; } -export type ChangedFallbackHandlerEvent = TypedEvent<[string, string], ChangedFallbackHandlerEventObject> +export type ChangedFallbackHandlerEvent = TypedEvent< + [string, string], + ChangedFallbackHandlerEventObject +>; -export type ChangedFallbackHandlerEventFilter = TypedEventFilter +export type ChangedFallbackHandlerEventFilter = + TypedEventFilter; export interface DisabledValidatorEventObject { - validator: string + validator: string; } -export type DisabledValidatorEvent = TypedEvent<[string], DisabledValidatorEventObject> +export type DisabledValidatorEvent = TypedEvent< + [string], + DisabledValidatorEventObject +>; -export type DisabledValidatorEventFilter = TypedEventFilter +export type DisabledValidatorEventFilter = + TypedEventFilter; export interface EnabledValidatorEventObject { - validator: string + validator: string; } -export type EnabledValidatorEvent = TypedEvent<[string], EnabledValidatorEventObject> +export type EnabledValidatorEvent = TypedEvent< + [string], + EnabledValidatorEventObject +>; -export type EnabledValidatorEventFilter = TypedEventFilter +export type EnabledValidatorEventFilter = + TypedEventFilter; export interface InitializedEventObject { - version: number + version: number; } -export type InitializedEvent = TypedEvent<[number], InitializedEventObject> +export type InitializedEvent = TypedEvent<[number], InitializedEventObject>; -export type InitializedEventFilter = TypedEventFilter +export type InitializedEventFilter = TypedEventFilter; export interface InstalledHookEventObject { - hook: string + hook: string; } -export type InstalledHookEvent = TypedEvent<[string], InstalledHookEventObject> +export type InstalledHookEvent = TypedEvent<[string], InstalledHookEventObject>; -export type InstalledHookEventFilter = TypedEventFilter +export type InstalledHookEventFilter = TypedEventFilter; export interface RemovedRecoverorEventObject { - recoveror: string + recoveror: string; } -export type RemovedRecoverorEvent = TypedEvent<[string], RemovedRecoverorEventObject> +export type RemovedRecoverorEvent = TypedEvent< + [string], + RemovedRecoverorEventObject +>; -export type RemovedRecoverorEventFilter = TypedEventFilter +export type RemovedRecoverorEventFilter = + TypedEventFilter; export interface UninstalledHookEventObject { - hook: string + hook: string; } -export type UninstalledHookEvent = TypedEvent<[string], UninstalledHookEventObject> +export type UninstalledHookEvent = TypedEvent< + [string], + UninstalledHookEventObject +>; -export type UninstalledHookEventFilter = TypedEventFilter +export type UninstalledHookEventFilter = TypedEventFilter; export interface SmartAccount extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: SmartAccountInterface + interface: SmartAccountInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { - addDeposit(overrides?: PayableOverrides & { from?: string }): Promise + addDeposit( + overrides?: PayableOverrides & { from?: string } + ): Promise; - addHook(hook: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + addHook( + hook: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; addRecoveror( recoveror: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; disableValidator( prevValidator: string, validator: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; enableValidator( validator: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - entryPoint(overrides?: CallOverrides): Promise<[string]> + entryPoint(overrides?: CallOverrides): Promise<[string]>; execute( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; executeBatch( dest: string[], value: BigNumberish[], func: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - getDeposit(overrides?: CallOverrides): Promise<[BigNumber]> + getDeposit(overrides?: CallOverrides): Promise<[BigNumber]>; - getFallbackHandler(overrides?: CallOverrides): Promise<[string] & { _handler: string }> + getFallbackHandler( + overrides?: CallOverrides + ): Promise<[string] & { _handler: string }>; - getNonce(overrides?: CallOverrides): Promise<[BigNumber]> + getNonce(overrides?: CallOverrides): Promise<[BigNumber]>; getRecoverorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; getValidatorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; initialize( defalutCallbackHandler: string, validators: string[], data: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - isRecoverorEnabled(recoveror: string, overrides?: CallOverrides): Promise<[boolean]> + isRecoverorEnabled( + recoveror: string, + overrides?: CallOverrides + ): Promise<[boolean]>; - isValidatorEnabled(validator: string, overrides?: CallOverrides): Promise<[boolean]> + isValidatorEnabled( + validator: string, + overrides?: CallOverrides + ): Promise<[boolean]>; recovery( validator: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; removeHook( prevBeforeHook: string, prevAfterHook: string, hook: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; removeRecoveror( prevRecoveror: string, recoveror: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - setFallbackHandler(handler: string, overrides?: Overrides & { from?: string }): Promise + setFallbackHandler( + handler: string, + overrides?: Overrides & { from?: string } + ): Promise; sudo( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; validateUserOp( userOp: UserOperationStruct, userOpHash: BytesLike, missingAccountFunds: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; withdrawDepositTo( withdrawAddress: string, amount: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; - addDeposit(overrides?: PayableOverrides & { from?: string }): Promise + addDeposit( + overrides?: PayableOverrides & { from?: string } + ): Promise; - addHook(hook: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + addHook( + hook: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; addRecoveror( recoveror: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; disableValidator( prevValidator: string, validator: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; enableValidator( validator: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - entryPoint(overrides?: CallOverrides): Promise + entryPoint(overrides?: CallOverrides): Promise; execute( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; executeBatch( dest: string[], value: BigNumberish[], func: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - getDeposit(overrides?: CallOverrides): Promise + getDeposit(overrides?: CallOverrides): Promise; - getFallbackHandler(overrides?: CallOverrides): Promise + getFallbackHandler(overrides?: CallOverrides): Promise; - getNonce(overrides?: CallOverrides): Promise + getNonce(overrides?: CallOverrides): Promise; getRecoverorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; getValidatorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; initialize( defalutCallbackHandler: string, validators: string[], data: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - isRecoverorEnabled(recoveror: string, overrides?: CallOverrides): Promise + isRecoverorEnabled( + recoveror: string, + overrides?: CallOverrides + ): Promise; - isValidatorEnabled(validator: string, overrides?: CallOverrides): Promise + isValidatorEnabled( + validator: string, + overrides?: CallOverrides + ): Promise; - recovery(validator: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + recovery( + validator: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; removeHook( prevBeforeHook: string, prevAfterHook: string, hook: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; removeRecoveror( prevRecoveror: string, recoveror: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - setFallbackHandler(handler: string, overrides?: Overrides & { from?: string }): Promise + setFallbackHandler( + handler: string, + overrides?: Overrides & { from?: string } + ): Promise; sudo( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; validateUserOp( userOp: UserOperationStruct, userOpHash: BytesLike, missingAccountFunds: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; withdrawDepositTo( withdrawAddress: string, amount: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; callStatic: { - addDeposit(overrides?: CallOverrides): Promise + addDeposit(overrides?: CallOverrides): Promise; - addHook(hook: string, data: BytesLike, overrides?: CallOverrides): Promise + addHook( + hook: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; - addRecoveror(recoveror: string, data: BytesLike, overrides?: CallOverrides): Promise + addRecoveror( + recoveror: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; - disableValidator(prevValidator: string, validator: string, overrides?: CallOverrides): Promise + disableValidator( + prevValidator: string, + validator: string, + overrides?: CallOverrides + ): Promise; - enableValidator(validator: string, data: BytesLike, overrides?: CallOverrides): Promise + enableValidator( + validator: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; - entryPoint(overrides?: CallOverrides): Promise + entryPoint(overrides?: CallOverrides): Promise; - execute(dest: string, value: BigNumberish, func: BytesLike, overrides?: CallOverrides): Promise + execute( + dest: string, + value: BigNumberish, + func: BytesLike, + overrides?: CallOverrides + ): Promise; - executeBatch(dest: string[], value: BigNumberish[], func: BytesLike[], overrides?: CallOverrides): Promise + executeBatch( + dest: string[], + value: BigNumberish[], + func: BytesLike[], + overrides?: CallOverrides + ): Promise; - getDeposit(overrides?: CallOverrides): Promise + getDeposit(overrides?: CallOverrides): Promise; - getFallbackHandler(overrides?: CallOverrides): Promise + getFallbackHandler(overrides?: CallOverrides): Promise; - getNonce(overrides?: CallOverrides): Promise + getNonce(overrides?: CallOverrides): Promise; getRecoverorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; getValidatorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; initialize( defalutCallbackHandler: string, validators: string[], data: BytesLike[], - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - isRecoverorEnabled(recoveror: string, overrides?: CallOverrides): Promise + isRecoverorEnabled( + recoveror: string, + overrides?: CallOverrides + ): Promise; - isValidatorEnabled(validator: string, overrides?: CallOverrides): Promise + isValidatorEnabled( + validator: string, + overrides?: CallOverrides + ): Promise; - recovery(validator: string, data: BytesLike, overrides?: CallOverrides): Promise + recovery( + validator: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; - removeHook(prevBeforeHook: string, prevAfterHook: string, hook: string, overrides?: CallOverrides): Promise + removeHook( + prevBeforeHook: string, + prevAfterHook: string, + hook: string, + overrides?: CallOverrides + ): Promise; - removeRecoveror(prevRecoveror: string, recoveror: string, overrides?: CallOverrides): Promise + removeRecoveror( + prevRecoveror: string, + recoveror: string, + overrides?: CallOverrides + ): Promise; - setFallbackHandler(handler: string, overrides?: CallOverrides): Promise + setFallbackHandler( + handler: string, + overrides?: CallOverrides + ): Promise; - sudo(dest: string, value: BigNumberish, func: BytesLike, overrides?: CallOverrides): Promise + sudo( + dest: string, + value: BigNumberish, + func: BytesLike, + overrides?: CallOverrides + ): Promise; validateUserOp( userOp: UserOperationStruct, userOpHash: BytesLike, missingAccountFunds: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - withdrawDepositTo(withdrawAddress: string, amount: BigNumberish, overrides?: CallOverrides): Promise - } + withdrawDepositTo( + withdrawAddress: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + }; filters: { - 'AddedRecoveror(address)'(recoveror?: null): AddedRecoverorEventFilter - AddedRecoveror(recoveror?: null): AddedRecoverorEventFilter + "AddedRecoveror(address)"(recoveror?: null): AddedRecoverorEventFilter; + AddedRecoveror(recoveror?: null): AddedRecoverorEventFilter; - 'ChangedFallbackHandler(address,address)'( + "ChangedFallbackHandler(address,address)"( + previousHandler?: string | null, + handler?: string | null + ): ChangedFallbackHandlerEventFilter; + ChangedFallbackHandler( previousHandler?: string | null, - handler?: string | null, - ): ChangedFallbackHandlerEventFilter - ChangedFallbackHandler(previousHandler?: string | null, handler?: string | null): ChangedFallbackHandlerEventFilter + handler?: string | null + ): ChangedFallbackHandlerEventFilter; - 'DisabledValidator(address)'(validator?: null): DisabledValidatorEventFilter - DisabledValidator(validator?: null): DisabledValidatorEventFilter + "DisabledValidator(address)"( + validator?: null + ): DisabledValidatorEventFilter; + DisabledValidator(validator?: null): DisabledValidatorEventFilter; - 'EnabledValidator(address)'(validator?: null): EnabledValidatorEventFilter - EnabledValidator(validator?: null): EnabledValidatorEventFilter + "EnabledValidator(address)"(validator?: null): EnabledValidatorEventFilter; + EnabledValidator(validator?: null): EnabledValidatorEventFilter; - 'Initialized(uint8)'(version?: null): InitializedEventFilter - Initialized(version?: null): InitializedEventFilter + "Initialized(uint8)"(version?: null): InitializedEventFilter; + Initialized(version?: null): InitializedEventFilter; - 'InstalledHook(address)'(hook?: string | null): InstalledHookEventFilter - InstalledHook(hook?: string | null): InstalledHookEventFilter + "InstalledHook(address)"(hook?: string | null): InstalledHookEventFilter; + InstalledHook(hook?: string | null): InstalledHookEventFilter; - 'RemovedRecoveror(address)'(recoveror?: null): RemovedRecoverorEventFilter - RemovedRecoveror(recoveror?: null): RemovedRecoverorEventFilter + "RemovedRecoveror(address)"(recoveror?: null): RemovedRecoverorEventFilter; + RemovedRecoveror(recoveror?: null): RemovedRecoverorEventFilter; - 'UninstalledHook(address)'(hook?: string | null): UninstalledHookEventFilter - UninstalledHook(hook?: string | null): UninstalledHookEventFilter - } + "UninstalledHook(address)"( + hook?: string | null + ): UninstalledHookEventFilter; + UninstalledHook(hook?: string | null): UninstalledHookEventFilter; + }; estimateGas: { - addDeposit(overrides?: PayableOverrides & { from?: string }): Promise + addDeposit( + overrides?: PayableOverrides & { from?: string } + ): Promise; - addHook(hook: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + addHook( + hook: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; - addRecoveror(recoveror: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + addRecoveror( + recoveror: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; disableValidator( prevValidator: string, validator: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - enableValidator(validator: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + enableValidator( + validator: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; - entryPoint(overrides?: CallOverrides): Promise + entryPoint(overrides?: CallOverrides): Promise; execute( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; executeBatch( dest: string[], value: BigNumberish[], func: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - getDeposit(overrides?: CallOverrides): Promise + getDeposit(overrides?: CallOverrides): Promise; - getFallbackHandler(overrides?: CallOverrides): Promise + getFallbackHandler(overrides?: CallOverrides): Promise; - getNonce(overrides?: CallOverrides): Promise + getNonce(overrides?: CallOverrides): Promise; - getRecoverorsPaginated(start: string, pageSize: BigNumberish, overrides?: CallOverrides): Promise + getRecoverorsPaginated( + start: string, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; - getValidatorsPaginated(start: string, pageSize: BigNumberish, overrides?: CallOverrides): Promise + getValidatorsPaginated( + start: string, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; initialize( defalutCallbackHandler: string, validators: string[], data: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - isRecoverorEnabled(recoveror: string, overrides?: CallOverrides): Promise + isRecoverorEnabled( + recoveror: string, + overrides?: CallOverrides + ): Promise; - isValidatorEnabled(validator: string, overrides?: CallOverrides): Promise + isValidatorEnabled( + validator: string, + overrides?: CallOverrides + ): Promise; - recovery(validator: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + recovery( + validator: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; removeHook( prevBeforeHook: string, prevAfterHook: string, hook: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; removeRecoveror( prevRecoveror: string, recoveror: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - setFallbackHandler(handler: string, overrides?: Overrides & { from?: string }): Promise + setFallbackHandler( + handler: string, + overrides?: Overrides & { from?: string } + ): Promise; sudo( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; validateUserOp( userOp: UserOperationStruct, userOpHash: BytesLike, missingAccountFunds: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; withdrawDepositTo( withdrawAddress: string, amount: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; populateTransaction: { - addDeposit(overrides?: PayableOverrides & { from?: string }): Promise + addDeposit( + overrides?: PayableOverrides & { from?: string } + ): Promise; - addHook(hook: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + addHook( + hook: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; addRecoveror( recoveror: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; disableValidator( prevValidator: string, validator: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; enableValidator( validator: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - entryPoint(overrides?: CallOverrides): Promise + entryPoint(overrides?: CallOverrides): Promise; execute( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; executeBatch( dest: string[], value: BigNumberish[], func: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - getDeposit(overrides?: CallOverrides): Promise + getDeposit(overrides?: CallOverrides): Promise; - getFallbackHandler(overrides?: CallOverrides): Promise + getFallbackHandler( + overrides?: CallOverrides + ): Promise; - getNonce(overrides?: CallOverrides): Promise + getNonce(overrides?: CallOverrides): Promise; getRecoverorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; getValidatorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; initialize( defalutCallbackHandler: string, validators: string[], data: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - isRecoverorEnabled(recoveror: string, overrides?: CallOverrides): Promise + isRecoverorEnabled( + recoveror: string, + overrides?: CallOverrides + ): Promise; - isValidatorEnabled(validator: string, overrides?: CallOverrides): Promise + isValidatorEnabled( + validator: string, + overrides?: CallOverrides + ): Promise; recovery( validator: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; removeHook( prevBeforeHook: string, prevAfterHook: string, hook: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; removeRecoveror( prevRecoveror: string, recoveror: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - setFallbackHandler(handler: string, overrides?: Overrides & { from?: string }): Promise + setFallbackHandler( + handler: string, + overrides?: Overrides & { from?: string } + ): Promise; sudo( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; validateUserOp( userOp: UserOperationStruct, userOpHash: BytesLike, missingAccountFunds: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; withdrawDepositTo( withdrawAddress: string, amount: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/src/types/contracts/SmartAccountFactory.ts b/src/types/contracts/SmartAccountFactory.ts index 84aefc9..b055084 100644 --- a/src/types/contracts/SmartAccountFactory.ts +++ b/src/types/contracts/SmartAccountFactory.ts @@ -12,145 +12,185 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../common' +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../common"; export interface SmartAccountFactoryInterface extends utils.Interface { functions: { - 'accountImplementation()': FunctionFragment - 'createAccount(address[],bytes[],uint256)': FunctionFragment - 'getAddress(address[],bytes[],uint256)': FunctionFragment - 'handler()': FunctionFragment - } + "accountImplementation()": FunctionFragment; + "createAccount(address[],bytes[],uint256)": FunctionFragment; + "getAddress(address[],bytes[],uint256)": FunctionFragment; + "handler()": FunctionFragment; + }; getFunction( - nameOrSignatureOrTopic: 'accountImplementation' | 'createAccount' | 'getAddress' | 'handler', - ): FunctionFragment - - encodeFunctionData(functionFragment: 'accountImplementation', values?: undefined): string - encodeFunctionData(functionFragment: 'createAccount', values: [string[], BytesLike[], BigNumberish]): string - encodeFunctionData(functionFragment: 'getAddress', values: [string[], BytesLike[], BigNumberish]): string - encodeFunctionData(functionFragment: 'handler', values?: undefined): string - - decodeFunctionResult(functionFragment: 'accountImplementation', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'createAccount', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getAddress', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'handler', data: BytesLike): Result - - events: {} + nameOrSignatureOrTopic: + | "accountImplementation" + | "createAccount" + | "getAddress" + | "handler" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "accountImplementation", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "createAccount", + values: [string[], BytesLike[], BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "getAddress", + values: [string[], BytesLike[], BigNumberish] + ): string; + encodeFunctionData(functionFragment: "handler", values?: undefined): string; + + decodeFunctionResult( + functionFragment: "accountImplementation", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "createAccount", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "getAddress", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "handler", data: BytesLike): Result; + + events: {}; } export interface SmartAccountFactory extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: SmartAccountFactoryInterface + interface: SmartAccountFactoryInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { - accountImplementation(overrides?: CallOverrides): Promise<[string]> + accountImplementation(overrides?: CallOverrides): Promise<[string]>; createAccount( validators: string[], data: BytesLike[], salt: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; getAddress( validators: string[], data: BytesLike[], salt: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string]> + overrides?: CallOverrides + ): Promise<[string]>; - handler(overrides?: CallOverrides): Promise<[string]> - } + handler(overrides?: CallOverrides): Promise<[string]>; + }; - accountImplementation(overrides?: CallOverrides): Promise + accountImplementation(overrides?: CallOverrides): Promise; createAccount( validators: string[], data: BytesLike[], salt: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - getAddress(validators: string[], data: BytesLike[], salt: BigNumberish, overrides?: CallOverrides): Promise + getAddress( + validators: string[], + data: BytesLike[], + salt: BigNumberish, + overrides?: CallOverrides + ): Promise; - handler(overrides?: CallOverrides): Promise + handler(overrides?: CallOverrides): Promise; callStatic: { - accountImplementation(overrides?: CallOverrides): Promise + accountImplementation(overrides?: CallOverrides): Promise; createAccount( validators: string[], data: BytesLike[], salt: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - getAddress(validators: string[], data: BytesLike[], salt: BigNumberish, overrides?: CallOverrides): Promise + getAddress( + validators: string[], + data: BytesLike[], + salt: BigNumberish, + overrides?: CallOverrides + ): Promise; - handler(overrides?: CallOverrides): Promise - } + handler(overrides?: CallOverrides): Promise; + }; - filters: {} + filters: {}; estimateGas: { - accountImplementation(overrides?: CallOverrides): Promise + accountImplementation(overrides?: CallOverrides): Promise; createAccount( validators: string[], data: BytesLike[], salt: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; getAddress( validators: string[], data: BytesLike[], salt: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - handler(overrides?: CallOverrides): Promise - } + handler(overrides?: CallOverrides): Promise; + }; populateTransaction: { - accountImplementation(overrides?: CallOverrides): Promise + accountImplementation( + overrides?: CallOverrides + ): Promise; createAccount( validators: string[], data: BytesLike[], salt: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; getAddress( validators: string[], data: BytesLike[], salt: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - handler(overrides?: CallOverrides): Promise - } + handler(overrides?: CallOverrides): Promise; + }; } diff --git a/src/types/contracts/common/index.ts b/src/types/contracts/common/index.ts index b630d68..ac303ac 100644 --- a/src/types/contracts/common/index.ts +++ b/src/types/contracts/common/index.ts @@ -1,5 +1,5 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { Authority } from './Authority' -export type { EntryPointAuth } from './EntryPointAuth' +export type { Authority } from "./Authority"; +export type { EntryPointAuth } from "./EntryPointAuth"; diff --git a/src/types/contracts/core/ExecutionManager.ts b/src/types/contracts/core/ExecutionManager.ts index be931ad..67ff11d 100644 --- a/src/types/contracts/core/ExecutionManager.ts +++ b/src/types/contracts/core/ExecutionManager.ts @@ -12,222 +12,305 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../common' +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../common"; export interface ExecutionManagerInterface extends utils.Interface { functions: { - 'addHook(address,bytes)': FunctionFragment - 'execute(address,uint256,bytes)': FunctionFragment - 'executeBatch(address[],uint256[],bytes[])': FunctionFragment - 'removeHook(address,address,address)': FunctionFragment - 'sudo(address,uint256,bytes)': FunctionFragment - } - - getFunction(nameOrSignatureOrTopic: 'addHook' | 'execute' | 'executeBatch' | 'removeHook' | 'sudo'): FunctionFragment - - encodeFunctionData(functionFragment: 'addHook', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'execute', values: [string, BigNumberish, BytesLike]): string - encodeFunctionData(functionFragment: 'executeBatch', values: [string[], BigNumberish[], BytesLike[]]): string - encodeFunctionData(functionFragment: 'removeHook', values: [string, string, string]): string - encodeFunctionData(functionFragment: 'sudo', values: [string, BigNumberish, BytesLike]): string - - decodeFunctionResult(functionFragment: 'addHook', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'execute', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'executeBatch', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'removeHook', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'sudo', data: BytesLike): Result + "addHook(address,bytes)": FunctionFragment; + "execute(address,uint256,bytes)": FunctionFragment; + "executeBatch(address[],uint256[],bytes[])": FunctionFragment; + "removeHook(address,address,address)": FunctionFragment; + "sudo(address,uint256,bytes)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "addHook" + | "execute" + | "executeBatch" + | "removeHook" + | "sudo" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "addHook", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "execute", + values: [string, BigNumberish, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "executeBatch", + values: [string[], BigNumberish[], BytesLike[]] + ): string; + encodeFunctionData( + functionFragment: "removeHook", + values: [string, string, string] + ): string; + encodeFunctionData( + functionFragment: "sudo", + values: [string, BigNumberish, BytesLike] + ): string; + + decodeFunctionResult(functionFragment: "addHook", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "executeBatch", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "removeHook", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "sudo", data: BytesLike): Result; events: { - 'InstalledHook(address)': EventFragment - 'UninstalledHook(address)': EventFragment - } + "InstalledHook(address)": EventFragment; + "UninstalledHook(address)": EventFragment; + }; - getEvent(nameOrSignatureOrTopic: 'InstalledHook'): EventFragment - getEvent(nameOrSignatureOrTopic: 'UninstalledHook'): EventFragment + getEvent(nameOrSignatureOrTopic: "InstalledHook"): EventFragment; + getEvent(nameOrSignatureOrTopic: "UninstalledHook"): EventFragment; } export interface InstalledHookEventObject { - hook: string + hook: string; } -export type InstalledHookEvent = TypedEvent<[string], InstalledHookEventObject> +export type InstalledHookEvent = TypedEvent<[string], InstalledHookEventObject>; -export type InstalledHookEventFilter = TypedEventFilter +export type InstalledHookEventFilter = TypedEventFilter; export interface UninstalledHookEventObject { - hook: string + hook: string; } -export type UninstalledHookEvent = TypedEvent<[string], UninstalledHookEventObject> +export type UninstalledHookEvent = TypedEvent< + [string], + UninstalledHookEventObject +>; -export type UninstalledHookEventFilter = TypedEventFilter +export type UninstalledHookEventFilter = TypedEventFilter; export interface ExecutionManager extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: ExecutionManagerInterface + interface: ExecutionManagerInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { - addHook(hook: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + addHook( + hook: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; execute( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; executeBatch( dest: string[], value: BigNumberish[], func: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; removeHook( prevBeforeHook: string, prevAfterHook: string, hook: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; sudo( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; - addHook(hook: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + addHook( + hook: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; execute( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; executeBatch( dest: string[], value: BigNumberish[], func: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; removeHook( prevBeforeHook: string, prevAfterHook: string, hook: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; sudo( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; callStatic: { - addHook(hook: string, data: BytesLike, overrides?: CallOverrides): Promise + addHook( + hook: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; - execute(dest: string, value: BigNumberish, func: BytesLike, overrides?: CallOverrides): Promise + execute( + dest: string, + value: BigNumberish, + func: BytesLike, + overrides?: CallOverrides + ): Promise; - executeBatch(dest: string[], value: BigNumberish[], func: BytesLike[], overrides?: CallOverrides): Promise + executeBatch( + dest: string[], + value: BigNumberish[], + func: BytesLike[], + overrides?: CallOverrides + ): Promise; - removeHook(prevBeforeHook: string, prevAfterHook: string, hook: string, overrides?: CallOverrides): Promise + removeHook( + prevBeforeHook: string, + prevAfterHook: string, + hook: string, + overrides?: CallOverrides + ): Promise; - sudo(dest: string, value: BigNumberish, func: BytesLike, overrides?: CallOverrides): Promise - } + sudo( + dest: string, + value: BigNumberish, + func: BytesLike, + overrides?: CallOverrides + ): Promise; + }; filters: { - 'InstalledHook(address)'(hook?: string | null): InstalledHookEventFilter - InstalledHook(hook?: string | null): InstalledHookEventFilter + "InstalledHook(address)"(hook?: string | null): InstalledHookEventFilter; + InstalledHook(hook?: string | null): InstalledHookEventFilter; - 'UninstalledHook(address)'(hook?: string | null): UninstalledHookEventFilter - UninstalledHook(hook?: string | null): UninstalledHookEventFilter - } + "UninstalledHook(address)"( + hook?: string | null + ): UninstalledHookEventFilter; + UninstalledHook(hook?: string | null): UninstalledHookEventFilter; + }; estimateGas: { - addHook(hook: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + addHook( + hook: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; execute( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; executeBatch( dest: string[], value: BigNumberish[], func: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; removeHook( prevBeforeHook: string, prevAfterHook: string, hook: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; sudo( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; populateTransaction: { - addHook(hook: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + addHook( + hook: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; execute( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; executeBatch( dest: string[], value: BigNumberish[], func: BytesLike[], - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; removeHook( prevBeforeHook: string, prevAfterHook: string, hook: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; sudo( dest: string, value: BigNumberish, func: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/src/types/contracts/core/FallbackManager.ts b/src/types/contracts/core/FallbackManager.ts index 874a6d4..1ff28e1 100644 --- a/src/types/contracts/core/FallbackManager.ts +++ b/src/types/contracts/core/FallbackManager.ts @@ -11,95 +11,148 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../common' +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../common"; export interface FallbackManagerInterface extends utils.Interface { functions: { - 'getFallbackHandler()': FunctionFragment - 'setFallbackHandler(address)': FunctionFragment - } - - getFunction(nameOrSignatureOrTopic: 'getFallbackHandler' | 'setFallbackHandler'): FunctionFragment - - encodeFunctionData(functionFragment: 'getFallbackHandler', values?: undefined): string - encodeFunctionData(functionFragment: 'setFallbackHandler', values: [string]): string - - decodeFunctionResult(functionFragment: 'getFallbackHandler', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'setFallbackHandler', data: BytesLike): Result + "getFallbackHandler()": FunctionFragment; + "setFallbackHandler(address)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: "getFallbackHandler" | "setFallbackHandler" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "getFallbackHandler", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "setFallbackHandler", + values: [string] + ): string; + + decodeFunctionResult( + functionFragment: "getFallbackHandler", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "setFallbackHandler", + data: BytesLike + ): Result; events: { - 'ChangedFallbackHandler(address,address)': EventFragment - } + "ChangedFallbackHandler(address,address)": EventFragment; + }; - getEvent(nameOrSignatureOrTopic: 'ChangedFallbackHandler'): EventFragment + getEvent(nameOrSignatureOrTopic: "ChangedFallbackHandler"): EventFragment; } export interface ChangedFallbackHandlerEventObject { - previousHandler: string - handler: string + previousHandler: string; + handler: string; } -export type ChangedFallbackHandlerEvent = TypedEvent<[string, string], ChangedFallbackHandlerEventObject> +export type ChangedFallbackHandlerEvent = TypedEvent< + [string, string], + ChangedFallbackHandlerEventObject +>; -export type ChangedFallbackHandlerEventFilter = TypedEventFilter +export type ChangedFallbackHandlerEventFilter = + TypedEventFilter; export interface FallbackManager extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: FallbackManagerInterface + interface: FallbackManagerInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { - getFallbackHandler(overrides?: CallOverrides): Promise<[string] & { _handler: string }> + getFallbackHandler( + overrides?: CallOverrides + ): Promise<[string] & { _handler: string }>; - setFallbackHandler(handler: string, overrides?: Overrides & { from?: string }): Promise - } + setFallbackHandler( + handler: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; - getFallbackHandler(overrides?: CallOverrides): Promise + getFallbackHandler(overrides?: CallOverrides): Promise; - setFallbackHandler(handler: string, overrides?: Overrides & { from?: string }): Promise + setFallbackHandler( + handler: string, + overrides?: Overrides & { from?: string } + ): Promise; callStatic: { - getFallbackHandler(overrides?: CallOverrides): Promise + getFallbackHandler(overrides?: CallOverrides): Promise; - setFallbackHandler(handler: string, overrides?: CallOverrides): Promise - } + setFallbackHandler( + handler: string, + overrides?: CallOverrides + ): Promise; + }; filters: { - 'ChangedFallbackHandler(address,address)'( + "ChangedFallbackHandler(address,address)"( + previousHandler?: string | null, + handler?: string | null + ): ChangedFallbackHandlerEventFilter; + ChangedFallbackHandler( previousHandler?: string | null, - handler?: string | null, - ): ChangedFallbackHandlerEventFilter - ChangedFallbackHandler(previousHandler?: string | null, handler?: string | null): ChangedFallbackHandlerEventFilter - } + handler?: string | null + ): ChangedFallbackHandlerEventFilter; + }; estimateGas: { - getFallbackHandler(overrides?: CallOverrides): Promise + getFallbackHandler(overrides?: CallOverrides): Promise; - setFallbackHandler(handler: string, overrides?: Overrides & { from?: string }): Promise - } + setFallbackHandler( + handler: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; populateTransaction: { - getFallbackHandler(overrides?: CallOverrides): Promise - - setFallbackHandler(handler: string, overrides?: Overrides & { from?: string }): Promise - } + getFallbackHandler( + overrides?: CallOverrides + ): Promise; + + setFallbackHandler( + handler: string, + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/src/types/contracts/core/RecoveryManager.ts b/src/types/contracts/core/RecoveryManager.ts index 90e2aaf..c16297a 100644 --- a/src/types/contracts/core/RecoveryManager.ts +++ b/src/types/contracts/core/RecoveryManager.ts @@ -12,175 +12,254 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../common' +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../common"; export interface RecoveryManagerInterface extends utils.Interface { functions: { - 'addRecoveror(address,bytes)': FunctionFragment - 'getRecoverorsPaginated(address,uint256)': FunctionFragment - 'isRecoverorEnabled(address)': FunctionFragment - 'removeRecoveror(address,address)': FunctionFragment - } + "addRecoveror(address,bytes)": FunctionFragment; + "getRecoverorsPaginated(address,uint256)": FunctionFragment; + "isRecoverorEnabled(address)": FunctionFragment; + "removeRecoveror(address,address)": FunctionFragment; + }; getFunction( - nameOrSignatureOrTopic: 'addRecoveror' | 'getRecoverorsPaginated' | 'isRecoverorEnabled' | 'removeRecoveror', - ): FunctionFragment - - encodeFunctionData(functionFragment: 'addRecoveror', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'getRecoverorsPaginated', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'isRecoverorEnabled', values: [string]): string - encodeFunctionData(functionFragment: 'removeRecoveror', values: [string, string]): string - - decodeFunctionResult(functionFragment: 'addRecoveror', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getRecoverorsPaginated', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isRecoverorEnabled', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'removeRecoveror', data: BytesLike): Result + nameOrSignatureOrTopic: + | "addRecoveror" + | "getRecoverorsPaginated" + | "isRecoverorEnabled" + | "removeRecoveror" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "addRecoveror", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getRecoverorsPaginated", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "isRecoverorEnabled", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "removeRecoveror", + values: [string, string] + ): string; + + decodeFunctionResult( + functionFragment: "addRecoveror", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getRecoverorsPaginated", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isRecoverorEnabled", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "removeRecoveror", + data: BytesLike + ): Result; events: { - 'AddedRecoveror(address)': EventFragment - 'RemovedRecoveror(address)': EventFragment - } + "AddedRecoveror(address)": EventFragment; + "RemovedRecoveror(address)": EventFragment; + }; - getEvent(nameOrSignatureOrTopic: 'AddedRecoveror'): EventFragment - getEvent(nameOrSignatureOrTopic: 'RemovedRecoveror'): EventFragment + getEvent(nameOrSignatureOrTopic: "AddedRecoveror"): EventFragment; + getEvent(nameOrSignatureOrTopic: "RemovedRecoveror"): EventFragment; } export interface AddedRecoverorEventObject { - recoveror: string + recoveror: string; } -export type AddedRecoverorEvent = TypedEvent<[string], AddedRecoverorEventObject> +export type AddedRecoverorEvent = TypedEvent< + [string], + AddedRecoverorEventObject +>; -export type AddedRecoverorEventFilter = TypedEventFilter +export type AddedRecoverorEventFilter = TypedEventFilter; export interface RemovedRecoverorEventObject { - recoveror: string + recoveror: string; } -export type RemovedRecoverorEvent = TypedEvent<[string], RemovedRecoverorEventObject> +export type RemovedRecoverorEvent = TypedEvent< + [string], + RemovedRecoverorEventObject +>; -export type RemovedRecoverorEventFilter = TypedEventFilter +export type RemovedRecoverorEventFilter = + TypedEventFilter; export interface RecoveryManager extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: RecoveryManagerInterface + interface: RecoveryManagerInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { addRecoveror( recoveror: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; getRecoverorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; - isRecoverorEnabled(recoveror: string, overrides?: CallOverrides): Promise<[boolean]> + isRecoverorEnabled( + recoveror: string, + overrides?: CallOverrides + ): Promise<[boolean]>; removeRecoveror( prevRecoveror: string, recoveror: string, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; addRecoveror( recoveror: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; getRecoverorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; - isRecoverorEnabled(recoveror: string, overrides?: CallOverrides): Promise + isRecoverorEnabled( + recoveror: string, + overrides?: CallOverrides + ): Promise; removeRecoveror( prevRecoveror: string, recoveror: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; callStatic: { - addRecoveror(recoveror: string, data: BytesLike, overrides?: CallOverrides): Promise + addRecoveror( + recoveror: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; getRecoverorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; - isRecoverorEnabled(recoveror: string, overrides?: CallOverrides): Promise + isRecoverorEnabled( + recoveror: string, + overrides?: CallOverrides + ): Promise; - removeRecoveror(prevRecoveror: string, recoveror: string, overrides?: CallOverrides): Promise - } + removeRecoveror( + prevRecoveror: string, + recoveror: string, + overrides?: CallOverrides + ): Promise; + }; filters: { - 'AddedRecoveror(address)'(recoveror?: null): AddedRecoverorEventFilter - AddedRecoveror(recoveror?: null): AddedRecoverorEventFilter + "AddedRecoveror(address)"(recoveror?: null): AddedRecoverorEventFilter; + AddedRecoveror(recoveror?: null): AddedRecoverorEventFilter; - 'RemovedRecoveror(address)'(recoveror?: null): RemovedRecoverorEventFilter - RemovedRecoveror(recoveror?: null): RemovedRecoverorEventFilter - } + "RemovedRecoveror(address)"(recoveror?: null): RemovedRecoverorEventFilter; + RemovedRecoveror(recoveror?: null): RemovedRecoverorEventFilter; + }; estimateGas: { - addRecoveror(recoveror: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + addRecoveror( + recoveror: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; - getRecoverorsPaginated(start: string, pageSize: BigNumberish, overrides?: CallOverrides): Promise + getRecoverorsPaginated( + start: string, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; - isRecoverorEnabled(recoveror: string, overrides?: CallOverrides): Promise + isRecoverorEnabled( + recoveror: string, + overrides?: CallOverrides + ): Promise; removeRecoveror( prevRecoveror: string, recoveror: string, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; populateTransaction: { addRecoveror( recoveror: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; getRecoverorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - isRecoverorEnabled(recoveror: string, overrides?: CallOverrides): Promise + isRecoverorEnabled( + recoveror: string, + overrides?: CallOverrides + ): Promise; removeRecoveror( prevRecoveror: string, recoveror: string, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/src/types/contracts/core/ValidatorManager.ts b/src/types/contracts/core/ValidatorManager.ts index 550628d..ac4049d 100644 --- a/src/types/contracts/core/ValidatorManager.ts +++ b/src/types/contracts/core/ValidatorManager.ts @@ -12,175 +12,257 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../common' +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../common"; export interface ValidatorManagerInterface extends utils.Interface { functions: { - 'disableValidator(address,address)': FunctionFragment - 'enableValidator(address,bytes)': FunctionFragment - 'getValidatorsPaginated(address,uint256)': FunctionFragment - 'isValidatorEnabled(address)': FunctionFragment - } + "disableValidator(address,address)": FunctionFragment; + "enableValidator(address,bytes)": FunctionFragment; + "getValidatorsPaginated(address,uint256)": FunctionFragment; + "isValidatorEnabled(address)": FunctionFragment; + }; getFunction( - nameOrSignatureOrTopic: 'disableValidator' | 'enableValidator' | 'getValidatorsPaginated' | 'isValidatorEnabled', - ): FunctionFragment - - encodeFunctionData(functionFragment: 'disableValidator', values: [string, string]): string - encodeFunctionData(functionFragment: 'enableValidator', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'getValidatorsPaginated', values: [string, BigNumberish]): string - encodeFunctionData(functionFragment: 'isValidatorEnabled', values: [string]): string - - decodeFunctionResult(functionFragment: 'disableValidator', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'enableValidator', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getValidatorsPaginated', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'isValidatorEnabled', data: BytesLike): Result + nameOrSignatureOrTopic: + | "disableValidator" + | "enableValidator" + | "getValidatorsPaginated" + | "isValidatorEnabled" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "disableValidator", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "enableValidator", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "getValidatorsPaginated", + values: [string, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "isValidatorEnabled", + values: [string] + ): string; + + decodeFunctionResult( + functionFragment: "disableValidator", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "enableValidator", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "getValidatorsPaginated", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "isValidatorEnabled", + data: BytesLike + ): Result; events: { - 'DisabledValidator(address)': EventFragment - 'EnabledValidator(address)': EventFragment - } + "DisabledValidator(address)": EventFragment; + "EnabledValidator(address)": EventFragment; + }; - getEvent(nameOrSignatureOrTopic: 'DisabledValidator'): EventFragment - getEvent(nameOrSignatureOrTopic: 'EnabledValidator'): EventFragment + getEvent(nameOrSignatureOrTopic: "DisabledValidator"): EventFragment; + getEvent(nameOrSignatureOrTopic: "EnabledValidator"): EventFragment; } export interface DisabledValidatorEventObject { - validator: string + validator: string; } -export type DisabledValidatorEvent = TypedEvent<[string], DisabledValidatorEventObject> +export type DisabledValidatorEvent = TypedEvent< + [string], + DisabledValidatorEventObject +>; -export type DisabledValidatorEventFilter = TypedEventFilter +export type DisabledValidatorEventFilter = + TypedEventFilter; export interface EnabledValidatorEventObject { - validator: string + validator: string; } -export type EnabledValidatorEvent = TypedEvent<[string], EnabledValidatorEventObject> +export type EnabledValidatorEvent = TypedEvent< + [string], + EnabledValidatorEventObject +>; -export type EnabledValidatorEventFilter = TypedEventFilter +export type EnabledValidatorEventFilter = + TypedEventFilter; export interface ValidatorManager extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: ValidatorManagerInterface + interface: ValidatorManagerInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { disableValidator( prevValidator: string, validator: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; enableValidator( validator: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; getValidatorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; - isValidatorEnabled(validator: string, overrides?: CallOverrides): Promise<[boolean]> - } + isValidatorEnabled( + validator: string, + overrides?: CallOverrides + ): Promise<[boolean]>; + }; disableValidator( prevValidator: string, validator: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; enableValidator( validator: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; getValidatorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; - isValidatorEnabled(validator: string, overrides?: CallOverrides): Promise + isValidatorEnabled( + validator: string, + overrides?: CallOverrides + ): Promise; callStatic: { - disableValidator(prevValidator: string, validator: string, overrides?: CallOverrides): Promise + disableValidator( + prevValidator: string, + validator: string, + overrides?: CallOverrides + ): Promise; - enableValidator(validator: string, data: BytesLike, overrides?: CallOverrides): Promise + enableValidator( + validator: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; getValidatorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string[], string] & { array: string[]; next: string }> + overrides?: CallOverrides + ): Promise<[string[], string] & { array: string[]; next: string }>; - isValidatorEnabled(validator: string, overrides?: CallOverrides): Promise - } + isValidatorEnabled( + validator: string, + overrides?: CallOverrides + ): Promise; + }; filters: { - 'DisabledValidator(address)'(validator?: null): DisabledValidatorEventFilter - DisabledValidator(validator?: null): DisabledValidatorEventFilter + "DisabledValidator(address)"( + validator?: null + ): DisabledValidatorEventFilter; + DisabledValidator(validator?: null): DisabledValidatorEventFilter; - 'EnabledValidator(address)'(validator?: null): EnabledValidatorEventFilter - EnabledValidator(validator?: null): EnabledValidatorEventFilter - } + "EnabledValidator(address)"(validator?: null): EnabledValidatorEventFilter; + EnabledValidator(validator?: null): EnabledValidatorEventFilter; + }; estimateGas: { disableValidator( prevValidator: string, validator: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - enableValidator(validator: string, data: BytesLike, overrides?: Overrides & { from?: string }): Promise + enableValidator( + validator: string, + data: BytesLike, + overrides?: Overrides & { from?: string } + ): Promise; - getValidatorsPaginated(start: string, pageSize: BigNumberish, overrides?: CallOverrides): Promise + getValidatorsPaginated( + start: string, + pageSize: BigNumberish, + overrides?: CallOverrides + ): Promise; - isValidatorEnabled(validator: string, overrides?: CallOverrides): Promise - } + isValidatorEnabled( + validator: string, + overrides?: CallOverrides + ): Promise; + }; populateTransaction: { disableValidator( prevValidator: string, validator: string, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; enableValidator( validator: string, data: BytesLike, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; getValidatorsPaginated( start: string, pageSize: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - isValidatorEnabled(validator: string, overrides?: CallOverrides): Promise - } + isValidatorEnabled( + validator: string, + overrides?: CallOverrides + ): Promise; + }; } diff --git a/src/types/contracts/core/index.ts b/src/types/contracts/core/index.ts index 1552a3c..953b558 100644 --- a/src/types/contracts/core/index.ts +++ b/src/types/contracts/core/index.ts @@ -1,8 +1,8 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { EntryPointManager } from './EntryPointManager' -export type { ExecutionManager } from './ExecutionManager' -export type { FallbackManager } from './FallbackManager' -export type { RecoveryManager } from './RecoveryManager' -export type { ValidatorManager } from './ValidatorManager' +export type { EntryPointManager } from "./EntryPointManager"; +export type { ExecutionManager } from "./ExecutionManager"; +export type { FallbackManager } from "./FallbackManager"; +export type { RecoveryManager } from "./RecoveryManager"; +export type { ValidatorManager } from "./ValidatorManager"; diff --git a/src/types/contracts/handler/index.ts b/src/types/contracts/handler/index.ts index 1362957..ef5730a 100644 --- a/src/types/contracts/handler/index.ts +++ b/src/types/contracts/handler/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { DefaultCallbackHandler } from './DefaultCallbackHandler' +export type { DefaultCallbackHandler } from "./DefaultCallbackHandler"; diff --git a/src/types/contracts/hooks/index.ts b/src/types/contracts/hooks/index.ts index dec5ef7..8dcea89 100644 --- a/src/types/contracts/hooks/index.ts +++ b/src/types/contracts/hooks/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { BaseHook } from './BaseHook' +export type { BaseHook } from "./BaseHook"; diff --git a/src/types/contracts/index.ts b/src/types/contracts/index.ts index 35f9243..5aaf780 100644 --- a/src/types/contracts/index.ts +++ b/src/types/contracts/index.ts @@ -1,19 +1,19 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as common from './common' -export type { common } -import type * as core from './core' -export type { core } -import type * as handler from './handler' -export type { handler } -import type * as hooks from './hooks' -export type { hooks } -import type * as interfaces from './interfaces' -export type { interfaces } -import type * as paymaster from './paymaster' -export type { paymaster } -import type * as validators from './validators' -export type { validators } -export type { SmartAccount } from './SmartAccount' -export type { SmartAccountFactory } from './SmartAccountFactory' +import type * as common from "./common"; +export type { common }; +import type * as core from "./core"; +export type { core }; +import type * as handler from "./handler"; +export type { handler }; +import type * as hooks from "./hooks"; +export type { hooks }; +import type * as interfaces from "./interfaces"; +export type { interfaces }; +import type * as paymaster from "./paymaster"; +export type { paymaster }; +import type * as validators from "./validators"; +export type { validators }; +export type { SmartAccount } from "./SmartAccount"; +export type { SmartAccountFactory } from "./SmartAccountFactory"; diff --git a/src/types/contracts/interfaces/IValidator.ts b/src/types/contracts/interfaces/IValidator.ts index 9a0f146..3c74832 100644 --- a/src/types/contracts/interfaces/IValidator.ts +++ b/src/types/contracts/interfaces/IValidator.ts @@ -12,24 +12,29 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../common' +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../common"; export type UserOperationStruct = { - sender: string - nonce: BigNumberish - initCode: BytesLike - callData: BytesLike - callGasLimit: BigNumberish - verificationGasLimit: BigNumberish - preVerificationGas: BigNumberish - maxFeePerGas: BigNumberish - maxPriorityFeePerGas: BigNumberish - paymasterAndData: BytesLike - signature: BytesLike -} + sender: string; + nonce: BigNumberish; + initCode: BytesLike; + callData: BytesLike; + callGasLimit: BigNumberish; + verificationGasLimit: BigNumberish; + preVerificationGas: BigNumberish; + maxFeePerGas: BigNumberish; + maxPriorityFeePerGas: BigNumberish; + paymasterAndData: BytesLike; + signature: BytesLike; +}; export type UserOperationStructOutput = [ string, @@ -42,166 +47,241 @@ export type UserOperationStructOutput = [ BigNumber, BigNumber, string, - string, + string ] & { - sender: string - nonce: BigNumber - initCode: string - callData: string - callGasLimit: BigNumber - verificationGasLimit: BigNumber - preVerificationGas: BigNumber - maxFeePerGas: BigNumber - maxPriorityFeePerGas: BigNumber - paymasterAndData: string - signature: string -} + sender: string; + nonce: BigNumber; + initCode: string; + callData: string; + callGasLimit: BigNumber; + verificationGasLimit: BigNumber; + preVerificationGas: BigNumber; + maxFeePerGas: BigNumber; + maxPriorityFeePerGas: BigNumber; + paymasterAndData: string; + signature: string; +}; export interface IValidatorInterface extends utils.Interface { functions: { - 'NAME()': FunctionFragment - 'VERSION()': FunctionFragment - 'enable(bytes)': FunctionFragment - 'supportsInterface(bytes4)': FunctionFragment - 'validCaller(address,bytes)': FunctionFragment - 'validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)': FunctionFragment - } + "NAME()": FunctionFragment; + "VERSION()": FunctionFragment; + "enable(bytes)": FunctionFragment; + "supportsInterface(bytes4)": FunctionFragment; + "validCaller(address,bytes)": FunctionFragment; + "validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)": FunctionFragment; + }; getFunction( - nameOrSignatureOrTopic: 'NAME' | 'VERSION' | 'enable' | 'supportsInterface' | 'validCaller' | 'validateSignature', - ): FunctionFragment - - encodeFunctionData(functionFragment: 'NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'VERSION', values?: undefined): string - encodeFunctionData(functionFragment: 'enable', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'supportsInterface', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'validCaller', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'validateSignature', values: [UserOperationStruct, BytesLike, BytesLike]): string - - decodeFunctionResult(functionFragment: 'NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'VERSION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'enable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'supportsInterface', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validCaller', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validateSignature', data: BytesLike): Result - - events: {} + nameOrSignatureOrTopic: + | "NAME" + | "VERSION" + | "enable" + | "supportsInterface" + | "validCaller" + | "validateSignature" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "enable", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "supportsInterface", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validCaller", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validateSignature", + values: [UserOperationStruct, BytesLike, BytesLike] + ): string; + + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "enable", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "supportsInterface", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validCaller", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validateSignature", + data: BytesLike + ): Result; + + events: {}; } export interface IValidator extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: IValidatorInterface + interface: IValidatorInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { - NAME(overrides?: CallOverrides): Promise<[string]> + NAME(overrides?: CallOverrides): Promise<[string]>; - VERSION(overrides?: CallOverrides): Promise<[string]> + VERSION(overrides?: CallOverrides): Promise<[string]>; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; - validCaller(caller: string, data: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, data: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise + overrides?: PayableOverrides & { from?: string } + ): Promise; callStatic: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: CallOverrides): Promise + enable(data: BytesLike, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, data: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; - filters: {} + filters: {}; estimateGas: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, data: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; populateTransaction: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, data: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; } diff --git a/src/types/contracts/interfaces/index.ts b/src/types/contracts/interfaces/index.ts index add3752..8567f77 100644 --- a/src/types/contracts/interfaces/index.ts +++ b/src/types/contracts/interfaces/index.ts @@ -1,7 +1,7 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { IHook } from './IHook' -export type { IRecoveror } from './IRecoveror' -export type { IValidator } from './IValidator' -export type { Metadata } from './Metadata' +export type { IHook } from "./IHook"; +export type { IRecoveror } from "./IRecoveror"; +export type { IValidator } from "./IValidator"; +export type { Metadata } from "./Metadata"; diff --git a/src/types/contracts/paymaster/VerifyingPaymaster.ts b/src/types/contracts/paymaster/VerifyingPaymaster.ts index dbf762d..9527b01 100644 --- a/src/types/contracts/paymaster/VerifyingPaymaster.ts +++ b/src/types/contracts/paymaster/VerifyingPaymaster.ts @@ -13,24 +13,33 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../common' +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../common"; export type UserOperationStruct = { - sender: string - nonce: BigNumberish - initCode: BytesLike - callData: BytesLike - callGasLimit: BigNumberish - verificationGasLimit: BigNumberish - preVerificationGas: BigNumberish - maxFeePerGas: BigNumberish - maxPriorityFeePerGas: BigNumberish - paymasterAndData: BytesLike - signature: BytesLike -} + sender: string; + nonce: BigNumberish; + initCode: BytesLike; + callData: BytesLike; + callGasLimit: BigNumberish; + verificationGasLimit: BigNumberish; + preVerificationGas: BigNumberish; + maxFeePerGas: BigNumberish; + maxPriorityFeePerGas: BigNumberish; + paymasterAndData: BytesLike; + signature: BytesLike; +}; export type UserOperationStructOutput = [ string, @@ -43,459 +52,615 @@ export type UserOperationStructOutput = [ BigNumber, BigNumber, string, - string, + string ] & { - sender: string - nonce: BigNumber - initCode: string - callData: string - callGasLimit: BigNumber - verificationGasLimit: BigNumber - preVerificationGas: BigNumber - maxFeePerGas: BigNumber - maxPriorityFeePerGas: BigNumber - paymasterAndData: string - signature: string -} + sender: string; + nonce: BigNumber; + initCode: string; + callData: string; + callGasLimit: BigNumber; + verificationGasLimit: BigNumber; + preVerificationGas: BigNumber; + maxFeePerGas: BigNumber; + maxPriorityFeePerGas: BigNumber; + paymasterAndData: string; + signature: string; +}; export interface VerifyingPaymasterInterface extends utils.Interface { functions: { - 'addStake(uint32)': FunctionFragment - 'changeSigner(address)': FunctionFragment - 'deposit()': FunctionFragment - 'entryPoint()': FunctionFragment - 'getDeposit()': FunctionFragment - 'getHash((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),uint48,uint48)': FunctionFragment - 'owner()': FunctionFragment - 'parsePaymasterAndData(bytes)': FunctionFragment - 'postOp(uint8,bytes,uint256)': FunctionFragment - 'renounceOwnership()': FunctionFragment - 'senderNonce(address)': FunctionFragment - 'signer()': FunctionFragment - 'transferOwnership(address)': FunctionFragment - 'unlockStake()': FunctionFragment - 'validatePaymasterUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)': FunctionFragment - 'withdrawStake(address)': FunctionFragment - 'withdrawTo(address,uint256)': FunctionFragment - } + "addStake(uint32)": FunctionFragment; + "changeSigner(address)": FunctionFragment; + "deposit()": FunctionFragment; + "entryPoint()": FunctionFragment; + "getDeposit()": FunctionFragment; + "getHash((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),uint48,uint48)": FunctionFragment; + "owner()": FunctionFragment; + "parsePaymasterAndData(bytes)": FunctionFragment; + "postOp(uint8,bytes,uint256)": FunctionFragment; + "renounceOwnership()": FunctionFragment; + "senderNonce(address)": FunctionFragment; + "signer()": FunctionFragment; + "transferOwnership(address)": FunctionFragment; + "unlockStake()": FunctionFragment; + "validatePaymasterUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment; + "withdrawStake(address)": FunctionFragment; + "withdrawTo(address,uint256)": FunctionFragment; + }; getFunction( nameOrSignatureOrTopic: - | 'addStake' - | 'changeSigner' - | 'deposit' - | 'entryPoint' - | 'getDeposit' - | 'getHash' - | 'owner' - | 'parsePaymasterAndData' - | 'postOp' - | 'renounceOwnership' - | 'senderNonce' - | 'signer' - | 'transferOwnership' - | 'unlockStake' - | 'validatePaymasterUserOp' - | 'withdrawStake' - | 'withdrawTo', - ): FunctionFragment - - encodeFunctionData(functionFragment: 'addStake', values: [BigNumberish]): string - encodeFunctionData(functionFragment: 'changeSigner', values: [string]): string - encodeFunctionData(functionFragment: 'deposit', values?: undefined): string - encodeFunctionData(functionFragment: 'entryPoint', values?: undefined): string - encodeFunctionData(functionFragment: 'getDeposit', values?: undefined): string - encodeFunctionData(functionFragment: 'getHash', values: [UserOperationStruct, BigNumberish, BigNumberish]): string - encodeFunctionData(functionFragment: 'owner', values?: undefined): string - encodeFunctionData(functionFragment: 'parsePaymasterAndData', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'postOp', values: [BigNumberish, BytesLike, BigNumberish]): string - encodeFunctionData(functionFragment: 'renounceOwnership', values?: undefined): string - encodeFunctionData(functionFragment: 'senderNonce', values: [string]): string - encodeFunctionData(functionFragment: 'signer', values?: undefined): string - encodeFunctionData(functionFragment: 'transferOwnership', values: [string]): string - encodeFunctionData(functionFragment: 'unlockStake', values?: undefined): string + | "addStake" + | "changeSigner" + | "deposit" + | "entryPoint" + | "getDeposit" + | "getHash" + | "owner" + | "parsePaymasterAndData" + | "postOp" + | "renounceOwnership" + | "senderNonce" + | "signer" + | "transferOwnership" + | "unlockStake" + | "validatePaymasterUserOp" + | "withdrawStake" + | "withdrawTo" + ): FunctionFragment; + + encodeFunctionData( + functionFragment: "addStake", + values: [BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "changeSigner", + values: [string] + ): string; + encodeFunctionData(functionFragment: "deposit", values?: undefined): string; + encodeFunctionData( + functionFragment: "entryPoint", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getDeposit", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "getHash", + values: [UserOperationStruct, BigNumberish, BigNumberish] + ): string; + encodeFunctionData(functionFragment: "owner", values?: undefined): string; + encodeFunctionData( + functionFragment: "parsePaymasterAndData", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "postOp", + values: [BigNumberish, BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "renounceOwnership", + values?: undefined + ): string; + encodeFunctionData(functionFragment: "senderNonce", values: [string]): string; + encodeFunctionData(functionFragment: "signer", values?: undefined): string; + encodeFunctionData( + functionFragment: "transferOwnership", + values: [string] + ): string; + encodeFunctionData( + functionFragment: "unlockStake", + values?: undefined + ): string; + encodeFunctionData( + functionFragment: "validatePaymasterUserOp", + values: [UserOperationStruct, BytesLike, BigNumberish] + ): string; + encodeFunctionData( + functionFragment: "withdrawStake", + values: [string] + ): string; encodeFunctionData( - functionFragment: 'validatePaymasterUserOp', - values: [UserOperationStruct, BytesLike, BigNumberish], - ): string - encodeFunctionData(functionFragment: 'withdrawStake', values: [string]): string - encodeFunctionData(functionFragment: 'withdrawTo', values: [string, BigNumberish]): string - - decodeFunctionResult(functionFragment: 'addStake', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'changeSigner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'deposit', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'entryPoint', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getDeposit', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'getHash', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'parsePaymasterAndData', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'postOp', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'renounceOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'senderNonce', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'signer', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'transferOwnership', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'unlockStake', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validatePaymasterUserOp', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'withdrawStake', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'withdrawTo', data: BytesLike): Result + functionFragment: "withdrawTo", + values: [string, BigNumberish] + ): string; + + decodeFunctionResult(functionFragment: "addStake", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "changeSigner", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getDeposit", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "getHash", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "parsePaymasterAndData", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "postOp", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "renounceOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "senderNonce", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "signer", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "transferOwnership", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "unlockStake", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validatePaymasterUserOp", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "withdrawStake", + data: BytesLike + ): Result; + decodeFunctionResult(functionFragment: "withdrawTo", data: BytesLike): Result; events: { - 'OwnershipTransferred(address,address)': EventFragment - 'SignerChanged(address)': EventFragment - } + "OwnershipTransferred(address,address)": EventFragment; + "SignerChanged(address)": EventFragment; + }; - getEvent(nameOrSignatureOrTopic: 'OwnershipTransferred'): EventFragment - getEvent(nameOrSignatureOrTopic: 'SignerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; + getEvent(nameOrSignatureOrTopic: "SignerChanged"): EventFragment; } export interface OwnershipTransferredEventObject { - previousOwner: string - newOwner: string + previousOwner: string; + newOwner: string; } -export type OwnershipTransferredEvent = TypedEvent<[string, string], OwnershipTransferredEventObject> +export type OwnershipTransferredEvent = TypedEvent< + [string, string], + OwnershipTransferredEventObject +>; -export type OwnershipTransferredEventFilter = TypedEventFilter +export type OwnershipTransferredEventFilter = + TypedEventFilter; export interface SignerChangedEventObject { - signer: string + signer: string; } -export type SignerChangedEvent = TypedEvent<[string], SignerChangedEventObject> +export type SignerChangedEvent = TypedEvent<[string], SignerChangedEventObject>; -export type SignerChangedEventFilter = TypedEventFilter +export type SignerChangedEventFilter = TypedEventFilter; export interface VerifyingPaymaster extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: VerifyingPaymasterInterface + interface: VerifyingPaymasterInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { addStake( unstakeDelaySec: BigNumberish, - overrides?: PayableOverrides & { from?: string }, - ): Promise + overrides?: PayableOverrides & { from?: string } + ): Promise; - changeSigner(_signer: string, overrides?: Overrides & { from?: string }): Promise + changeSigner( + _signer: string, + overrides?: Overrides & { from?: string } + ): Promise; - deposit(overrides?: PayableOverrides & { from?: string }): Promise + deposit( + overrides?: PayableOverrides & { from?: string } + ): Promise; - entryPoint(overrides?: CallOverrides): Promise<[string]> + entryPoint(overrides?: CallOverrides): Promise<[string]>; - getDeposit(overrides?: CallOverrides): Promise<[BigNumber]> + getDeposit(overrides?: CallOverrides): Promise<[BigNumber]>; getHash( userOp: UserOperationStruct, validUntil: BigNumberish, validAfter: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string]> + overrides?: CallOverrides + ): Promise<[string]>; - owner(overrides?: CallOverrides): Promise<[string]> + owner(overrides?: CallOverrides): Promise<[string]>; parsePaymasterAndData( paymasterAndData: BytesLike, - overrides?: CallOverrides, + overrides?: CallOverrides ): Promise< [number, number, string] & { - validUntil: number - validAfter: number - signature: string + validUntil: number; + validAfter: number; + signature: string; } - > + >; postOp( mode: BigNumberish, context: BytesLike, actualGasCost: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - renounceOwnership(overrides?: Overrides & { from?: string }): Promise + renounceOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - senderNonce(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]> + senderNonce(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; - signer(overrides?: CallOverrides): Promise<[string]> + signer(overrides?: CallOverrides): Promise<[string]>; - transferOwnership(newOwner: string, overrides?: Overrides & { from?: string }): Promise + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; - unlockStake(overrides?: Overrides & { from?: string }): Promise + unlockStake( + overrides?: Overrides & { from?: string } + ): Promise; validatePaymasterUserOp( userOp: UserOperationStruct, userOpHash: BytesLike, maxCost: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - withdrawStake(withdrawAddress: string, overrides?: Overrides & { from?: string }): Promise + withdrawStake( + withdrawAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; withdrawTo( withdrawAddress: string, amount: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; addStake( unstakeDelaySec: BigNumberish, - overrides?: PayableOverrides & { from?: string }, - ): Promise + overrides?: PayableOverrides & { from?: string } + ): Promise; - changeSigner(_signer: string, overrides?: Overrides & { from?: string }): Promise + changeSigner( + _signer: string, + overrides?: Overrides & { from?: string } + ): Promise; - deposit(overrides?: PayableOverrides & { from?: string }): Promise + deposit( + overrides?: PayableOverrides & { from?: string } + ): Promise; - entryPoint(overrides?: CallOverrides): Promise + entryPoint(overrides?: CallOverrides): Promise; - getDeposit(overrides?: CallOverrides): Promise + getDeposit(overrides?: CallOverrides): Promise; getHash( userOp: UserOperationStruct, validUntil: BigNumberish, validAfter: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; parsePaymasterAndData( paymasterAndData: BytesLike, - overrides?: CallOverrides, + overrides?: CallOverrides ): Promise< [number, number, string] & { - validUntil: number - validAfter: number - signature: string + validUntil: number; + validAfter: number; + signature: string; } - > + >; postOp( mode: BigNumberish, context: BytesLike, actualGasCost: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - renounceOwnership(overrides?: Overrides & { from?: string }): Promise + renounceOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - senderNonce(arg0: string, overrides?: CallOverrides): Promise + senderNonce(arg0: string, overrides?: CallOverrides): Promise; - transferOwnership(newOwner: string, overrides?: Overrides & { from?: string }): Promise + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; - unlockStake(overrides?: Overrides & { from?: string }): Promise + unlockStake( + overrides?: Overrides & { from?: string } + ): Promise; validatePaymasterUserOp( userOp: UserOperationStruct, userOpHash: BytesLike, maxCost: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - withdrawStake(withdrawAddress: string, overrides?: Overrides & { from?: string }): Promise + withdrawStake( + withdrawAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; withdrawTo( withdrawAddress: string, amount: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; callStatic: { - addStake(unstakeDelaySec: BigNumberish, overrides?: CallOverrides): Promise + addStake( + unstakeDelaySec: BigNumberish, + overrides?: CallOverrides + ): Promise; - changeSigner(_signer: string, overrides?: CallOverrides): Promise + changeSigner(_signer: string, overrides?: CallOverrides): Promise; - deposit(overrides?: CallOverrides): Promise + deposit(overrides?: CallOverrides): Promise; - entryPoint(overrides?: CallOverrides): Promise + entryPoint(overrides?: CallOverrides): Promise; - getDeposit(overrides?: CallOverrides): Promise + getDeposit(overrides?: CallOverrides): Promise; getHash( userOp: UserOperationStruct, validUntil: BigNumberish, validAfter: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; parsePaymasterAndData( paymasterAndData: BytesLike, - overrides?: CallOverrides, + overrides?: CallOverrides ): Promise< [number, number, string] & { - validUntil: number - validAfter: number - signature: string + validUntil: number; + validAfter: number; + signature: string; } - > + >; postOp( mode: BigNumberish, context: BytesLike, actualGasCost: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - renounceOwnership(overrides?: CallOverrides): Promise + renounceOwnership(overrides?: CallOverrides): Promise; - senderNonce(arg0: string, overrides?: CallOverrides): Promise + senderNonce(arg0: string, overrides?: CallOverrides): Promise; - signer(overrides?: CallOverrides): Promise + signer(overrides?: CallOverrides): Promise; - transferOwnership(newOwner: string, overrides?: CallOverrides): Promise + transferOwnership( + newOwner: string, + overrides?: CallOverrides + ): Promise; - unlockStake(overrides?: CallOverrides): Promise + unlockStake(overrides?: CallOverrides): Promise; validatePaymasterUserOp( userOp: UserOperationStruct, userOpHash: BytesLike, maxCost: BigNumberish, - overrides?: CallOverrides, - ): Promise<[string, BigNumber] & { context: string; validationData: BigNumber }> + overrides?: CallOverrides + ): Promise< + [string, BigNumber] & { context: string; validationData: BigNumber } + >; - withdrawStake(withdrawAddress: string, overrides?: CallOverrides): Promise + withdrawStake( + withdrawAddress: string, + overrides?: CallOverrides + ): Promise; - withdrawTo(withdrawAddress: string, amount: BigNumberish, overrides?: CallOverrides): Promise - } + withdrawTo( + withdrawAddress: string, + amount: BigNumberish, + overrides?: CallOverrides + ): Promise; + }; filters: { - 'OwnershipTransferred(address,address)'( + "OwnershipTransferred(address,address)"( previousOwner?: string | null, - newOwner?: string | null, - ): OwnershipTransferredEventFilter - OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): OwnershipTransferredEventFilter + newOwner?: string | null + ): OwnershipTransferredEventFilter; + OwnershipTransferred( + previousOwner?: string | null, + newOwner?: string | null + ): OwnershipTransferredEventFilter; - 'SignerChanged(address)'(signer?: string | null): SignerChangedEventFilter - SignerChanged(signer?: string | null): SignerChangedEventFilter - } + "SignerChanged(address)"(signer?: string | null): SignerChangedEventFilter; + SignerChanged(signer?: string | null): SignerChangedEventFilter; + }; estimateGas: { - addStake(unstakeDelaySec: BigNumberish, overrides?: PayableOverrides & { from?: string }): Promise + addStake( + unstakeDelaySec: BigNumberish, + overrides?: PayableOverrides & { from?: string } + ): Promise; - changeSigner(_signer: string, overrides?: Overrides & { from?: string }): Promise + changeSigner( + _signer: string, + overrides?: Overrides & { from?: string } + ): Promise; - deposit(overrides?: PayableOverrides & { from?: string }): Promise + deposit( + overrides?: PayableOverrides & { from?: string } + ): Promise; - entryPoint(overrides?: CallOverrides): Promise + entryPoint(overrides?: CallOverrides): Promise; - getDeposit(overrides?: CallOverrides): Promise + getDeposit(overrides?: CallOverrides): Promise; getHash( userOp: UserOperationStruct, validUntil: BigNumberish, validAfter: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - parsePaymasterAndData(paymasterAndData: BytesLike, overrides?: CallOverrides): Promise + parsePaymasterAndData( + paymasterAndData: BytesLike, + overrides?: CallOverrides + ): Promise; postOp( mode: BigNumberish, context: BytesLike, actualGasCost: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - renounceOwnership(overrides?: Overrides & { from?: string }): Promise + renounceOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - senderNonce(arg0: string, overrides?: CallOverrides): Promise + senderNonce(arg0: string, overrides?: CallOverrides): Promise; - signer(overrides?: CallOverrides): Promise + signer(overrides?: CallOverrides): Promise; - transferOwnership(newOwner: string, overrides?: Overrides & { from?: string }): Promise + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; - unlockStake(overrides?: Overrides & { from?: string }): Promise + unlockStake(overrides?: Overrides & { from?: string }): Promise; validatePaymasterUserOp( userOp: UserOperationStruct, userOpHash: BytesLike, maxCost: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - withdrawStake(withdrawAddress: string, overrides?: Overrides & { from?: string }): Promise + withdrawStake( + withdrawAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; withdrawTo( withdrawAddress: string, amount: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; populateTransaction: { addStake( unstakeDelaySec: BigNumberish, - overrides?: PayableOverrides & { from?: string }, - ): Promise + overrides?: PayableOverrides & { from?: string } + ): Promise; - changeSigner(_signer: string, overrides?: Overrides & { from?: string }): Promise + changeSigner( + _signer: string, + overrides?: Overrides & { from?: string } + ): Promise; - deposit(overrides?: PayableOverrides & { from?: string }): Promise + deposit( + overrides?: PayableOverrides & { from?: string } + ): Promise; - entryPoint(overrides?: CallOverrides): Promise + entryPoint(overrides?: CallOverrides): Promise; - getDeposit(overrides?: CallOverrides): Promise + getDeposit(overrides?: CallOverrides): Promise; getHash( userOp: UserOperationStruct, validUntil: BigNumberish, validAfter: BigNumberish, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; - owner(overrides?: CallOverrides): Promise + owner(overrides?: CallOverrides): Promise; - parsePaymasterAndData(paymasterAndData: BytesLike, overrides?: CallOverrides): Promise + parsePaymasterAndData( + paymasterAndData: BytesLike, + overrides?: CallOverrides + ): Promise; postOp( mode: BigNumberish, context: BytesLike, actualGasCost: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - renounceOwnership(overrides?: Overrides & { from?: string }): Promise + renounceOwnership( + overrides?: Overrides & { from?: string } + ): Promise; - senderNonce(arg0: string, overrides?: CallOverrides): Promise + senderNonce( + arg0: string, + overrides?: CallOverrides + ): Promise; - signer(overrides?: CallOverrides): Promise + signer(overrides?: CallOverrides): Promise; - transferOwnership(newOwner: string, overrides?: Overrides & { from?: string }): Promise + transferOwnership( + newOwner: string, + overrides?: Overrides & { from?: string } + ): Promise; - unlockStake(overrides?: Overrides & { from?: string }): Promise + unlockStake( + overrides?: Overrides & { from?: string } + ): Promise; validatePaymasterUserOp( userOp: UserOperationStruct, userOpHash: BytesLike, maxCost: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise + overrides?: Overrides & { from?: string } + ): Promise; - withdrawStake(withdrawAddress: string, overrides?: Overrides & { from?: string }): Promise + withdrawStake( + withdrawAddress: string, + overrides?: Overrides & { from?: string } + ): Promise; withdrawTo( withdrawAddress: string, amount: BigNumberish, - overrides?: Overrides & { from?: string }, - ): Promise - } + overrides?: Overrides & { from?: string } + ): Promise; + }; } diff --git a/src/types/contracts/paymaster/index.ts b/src/types/contracts/paymaster/index.ts index b0c14be..c4eda20 100644 --- a/src/types/contracts/paymaster/index.ts +++ b/src/types/contracts/paymaster/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { VerifyingPaymaster } from './VerifyingPaymaster' +export type { VerifyingPaymaster } from "./VerifyingPaymaster"; diff --git a/src/types/contracts/validators/BaseValidator.ts b/src/types/contracts/validators/BaseValidator.ts index e47a6ba..aaa6b85 100644 --- a/src/types/contracts/validators/BaseValidator.ts +++ b/src/types/contracts/validators/BaseValidator.ts @@ -12,24 +12,29 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../common' +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../common"; export type UserOperationStruct = { - sender: string - nonce: BigNumberish - initCode: BytesLike - callData: BytesLike - callGasLimit: BigNumberish - verificationGasLimit: BigNumberish - preVerificationGas: BigNumberish - maxFeePerGas: BigNumberish - maxPriorityFeePerGas: BigNumberish - paymasterAndData: BytesLike - signature: BytesLike -} + sender: string; + nonce: BigNumberish; + initCode: BytesLike; + callData: BytesLike; + callGasLimit: BigNumberish; + verificationGasLimit: BigNumberish; + preVerificationGas: BigNumberish; + maxFeePerGas: BigNumberish; + maxPriorityFeePerGas: BigNumberish; + paymasterAndData: BytesLike; + signature: BytesLike; +}; export type UserOperationStructOutput = [ string, @@ -42,166 +47,241 @@ export type UserOperationStructOutput = [ BigNumber, BigNumber, string, - string, + string ] & { - sender: string - nonce: BigNumber - initCode: string - callData: string - callGasLimit: BigNumber - verificationGasLimit: BigNumber - preVerificationGas: BigNumber - maxFeePerGas: BigNumber - maxPriorityFeePerGas: BigNumber - paymasterAndData: string - signature: string -} + sender: string; + nonce: BigNumber; + initCode: string; + callData: string; + callGasLimit: BigNumber; + verificationGasLimit: BigNumber; + preVerificationGas: BigNumber; + maxFeePerGas: BigNumber; + maxPriorityFeePerGas: BigNumber; + paymasterAndData: string; + signature: string; +}; export interface BaseValidatorInterface extends utils.Interface { functions: { - 'NAME()': FunctionFragment - 'VERSION()': FunctionFragment - 'enable(bytes)': FunctionFragment - 'supportsInterface(bytes4)': FunctionFragment - 'validCaller(address,bytes)': FunctionFragment - 'validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)': FunctionFragment - } + "NAME()": FunctionFragment; + "VERSION()": FunctionFragment; + "enable(bytes)": FunctionFragment; + "supportsInterface(bytes4)": FunctionFragment; + "validCaller(address,bytes)": FunctionFragment; + "validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)": FunctionFragment; + }; getFunction( - nameOrSignatureOrTopic: 'NAME' | 'VERSION' | 'enable' | 'supportsInterface' | 'validCaller' | 'validateSignature', - ): FunctionFragment - - encodeFunctionData(functionFragment: 'NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'VERSION', values?: undefined): string - encodeFunctionData(functionFragment: 'enable', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'supportsInterface', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'validCaller', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'validateSignature', values: [UserOperationStruct, BytesLike, BytesLike]): string - - decodeFunctionResult(functionFragment: 'NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'VERSION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'enable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'supportsInterface', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validCaller', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validateSignature', data: BytesLike): Result - - events: {} + nameOrSignatureOrTopic: + | "NAME" + | "VERSION" + | "enable" + | "supportsInterface" + | "validCaller" + | "validateSignature" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "enable", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "supportsInterface", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validCaller", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validateSignature", + values: [UserOperationStruct, BytesLike, BytesLike] + ): string; + + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "enable", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "supportsInterface", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validCaller", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validateSignature", + data: BytesLike + ): Result; + + events: {}; } export interface BaseValidator extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: BaseValidatorInterface + interface: BaseValidatorInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { - NAME(overrides?: CallOverrides): Promise<[string]> + NAME(overrides?: CallOverrides): Promise<[string]>; - VERSION(overrides?: CallOverrides): Promise<[string]> + VERSION(overrides?: CallOverrides): Promise<[string]>; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; - validCaller(caller: string, data: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, data: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise + overrides?: PayableOverrides & { from?: string } + ): Promise; callStatic: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: CallOverrides): Promise + enable(data: BytesLike, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, data: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; - filters: {} + filters: {}; estimateGas: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, data: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; populateTransaction: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, data: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; } diff --git a/src/types/contracts/validators/ECDSAValidator.ts b/src/types/contracts/validators/ECDSAValidator.ts index 07ccb98..6fbf624 100644 --- a/src/types/contracts/validators/ECDSAValidator.ts +++ b/src/types/contracts/validators/ECDSAValidator.ts @@ -12,24 +12,33 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../common' +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../common"; export type UserOperationStruct = { - sender: string - nonce: BigNumberish - initCode: BytesLike - callData: BytesLike - callGasLimit: BigNumberish - verificationGasLimit: BigNumberish - preVerificationGas: BigNumberish - maxFeePerGas: BigNumberish - maxPriorityFeePerGas: BigNumberish - paymasterAndData: BytesLike - signature: BytesLike -} + sender: string; + nonce: BigNumberish; + initCode: BytesLike; + callData: BytesLike; + callGasLimit: BigNumberish; + verificationGasLimit: BigNumberish; + preVerificationGas: BigNumberish; + maxFeePerGas: BigNumberish; + maxPriorityFeePerGas: BigNumberish; + paymasterAndData: BytesLike; + signature: BytesLike; +}; export type UserOperationStructOutput = [ string, @@ -42,206 +51,285 @@ export type UserOperationStructOutput = [ BigNumber, BigNumber, string, - string, + string ] & { - sender: string - nonce: BigNumber - initCode: string - callData: string - callGasLimit: BigNumber - verificationGasLimit: BigNumber - preVerificationGas: BigNumber - maxFeePerGas: BigNumber - maxPriorityFeePerGas: BigNumber - paymasterAndData: string - signature: string -} + sender: string; + nonce: BigNumber; + initCode: string; + callData: string; + callGasLimit: BigNumber; + verificationGasLimit: BigNumber; + preVerificationGas: BigNumber; + maxFeePerGas: BigNumber; + maxPriorityFeePerGas: BigNumber; + paymasterAndData: string; + signature: string; +}; export interface ECDSAValidatorInterface extends utils.Interface { functions: { - 'NAME()': FunctionFragment - 'VERSION()': FunctionFragment - 'enable(bytes)': FunctionFragment - 'owner(address)': FunctionFragment - 'supportsInterface(bytes4)': FunctionFragment - 'validCaller(address,bytes)': FunctionFragment - 'validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)': FunctionFragment - } + "NAME()": FunctionFragment; + "VERSION()": FunctionFragment; + "enable(bytes)": FunctionFragment; + "owner(address)": FunctionFragment; + "supportsInterface(bytes4)": FunctionFragment; + "validCaller(address,bytes)": FunctionFragment; + "validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)": FunctionFragment; + }; getFunction( nameOrSignatureOrTopic: - | 'NAME' - | 'VERSION' - | 'enable' - | 'owner' - | 'supportsInterface' - | 'validCaller' - | 'validateSignature', - ): FunctionFragment - - encodeFunctionData(functionFragment: 'NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'VERSION', values?: undefined): string - encodeFunctionData(functionFragment: 'enable', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'owner', values: [string]): string - encodeFunctionData(functionFragment: 'supportsInterface', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'validCaller', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'validateSignature', values: [UserOperationStruct, BytesLike, BytesLike]): string - - decodeFunctionResult(functionFragment: 'NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'VERSION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'enable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'supportsInterface', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validCaller', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validateSignature', data: BytesLike): Result + | "NAME" + | "VERSION" + | "enable" + | "owner" + | "supportsInterface" + | "validCaller" + | "validateSignature" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "enable", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "owner", values: [string]): string; + encodeFunctionData( + functionFragment: "supportsInterface", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validCaller", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validateSignature", + values: [UserOperationStruct, BytesLike, BytesLike] + ): string; + + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "enable", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "supportsInterface", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validCaller", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validateSignature", + data: BytesLike + ): Result; events: { - 'OwnerChanged(address,address,address)': EventFragment - } + "OwnerChanged(address,address,address)": EventFragment; + }; - getEvent(nameOrSignatureOrTopic: 'OwnerChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: "OwnerChanged"): EventFragment; } export interface OwnerChangedEventObject { - account: string - oldOwner: string - newOwner: string + account: string; + oldOwner: string; + newOwner: string; } -export type OwnerChangedEvent = TypedEvent<[string, string, string], OwnerChangedEventObject> +export type OwnerChangedEvent = TypedEvent< + [string, string, string], + OwnerChangedEventObject +>; -export type OwnerChangedEventFilter = TypedEventFilter +export type OwnerChangedEventFilter = TypedEventFilter; export interface ECDSAValidator extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: ECDSAValidatorInterface + interface: ECDSAValidatorInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { - NAME(overrides?: CallOverrides): Promise<[string]> + NAME(overrides?: CallOverrides): Promise<[string]>; - VERSION(overrides?: CallOverrides): Promise<[string]> + VERSION(overrides?: CallOverrides): Promise<[string]>; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - owner(arg0: string, overrides?: CallOverrides): Promise<[string]> + owner(arg0: string, overrides?: CallOverrides): Promise<[string]>; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; - validCaller(caller: string, arg1: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + validCaller( + caller: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - owner(arg0: string, overrides?: CallOverrides): Promise + owner(arg0: string, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise + overrides?: PayableOverrides & { from?: string } + ): Promise; callStatic: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: CallOverrides): Promise + enable(data: BytesLike, overrides?: CallOverrides): Promise; - owner(arg0: string, overrides?: CallOverrides): Promise + owner(arg0: string, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; filters: { - 'OwnerChanged(address,address,address)'( + "OwnerChanged(address,address,address)"( + account?: string | null, + oldOwner?: string | null, + newOwner?: string | null + ): OwnerChangedEventFilter; + OwnerChanged( account?: string | null, oldOwner?: string | null, - newOwner?: string | null, - ): OwnerChangedEventFilter - OwnerChanged(account?: string | null, oldOwner?: string | null, newOwner?: string | null): OwnerChangedEventFilter - } + newOwner?: string | null + ): OwnerChangedEventFilter; + }; estimateGas: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - owner(arg0: string, overrides?: CallOverrides): Promise + owner(arg0: string, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; populateTransaction: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - owner(arg0: string, overrides?: CallOverrides): Promise + owner( + arg0: string, + overrides?: CallOverrides + ): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; } diff --git a/src/types/contracts/validators/OIDCSessionOnlyValidator.sol/IVerifier.ts b/src/types/contracts/validators/OIDCSessionOnlyValidator.sol/IVerifier.ts new file mode 100644 index 0000000..6a100ae --- /dev/null +++ b/src/types/contracts/validators/OIDCSessionOnlyValidator.sol/IVerifier.ts @@ -0,0 +1,123 @@ +/* Autogenerated file. Do not edit manually. */ +/* tslint:disable */ +/* eslint-disable */ +import type { + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../../common"; + +export interface IVerifierInterface extends utils.Interface { + functions: { + "verifyProof(uint256[2],uint256[2][2],uint256[2],uint256[2])": FunctionFragment; + }; + + getFunction(nameOrSignatureOrTopic: "verifyProof"): FunctionFragment; + + encodeFunctionData( + functionFragment: "verifyProof", + values: [ + [BigNumberish, BigNumberish], + [[BigNumberish, BigNumberish], [BigNumberish, BigNumberish]], + [BigNumberish, BigNumberish], + [BigNumberish, BigNumberish] + ] + ): string; + + decodeFunctionResult( + functionFragment: "verifyProof", + data: BytesLike + ): Result; + + events: {}; +} + +export interface IVerifier extends BaseContract { + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: IVerifierInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + verifyProof( + a: [BigNumberish, BigNumberish], + b: [[BigNumberish, BigNumberish], [BigNumberish, BigNumberish]], + c: [BigNumberish, BigNumberish], + input: [BigNumberish, BigNumberish], + overrides?: CallOverrides + ): Promise<[boolean] & { r: boolean }>; + }; + + verifyProof( + a: [BigNumberish, BigNumberish], + b: [[BigNumberish, BigNumberish], [BigNumberish, BigNumberish]], + c: [BigNumberish, BigNumberish], + input: [BigNumberish, BigNumberish], + overrides?: CallOverrides + ): Promise; + + callStatic: { + verifyProof( + a: [BigNumberish, BigNumberish], + b: [[BigNumberish, BigNumberish], [BigNumberish, BigNumberish]], + c: [BigNumberish, BigNumberish], + input: [BigNumberish, BigNumberish], + overrides?: CallOverrides + ): Promise; + }; + + filters: {}; + + estimateGas: { + verifyProof( + a: [BigNumberish, BigNumberish], + b: [[BigNumberish, BigNumberish], [BigNumberish, BigNumberish]], + c: [BigNumberish, BigNumberish], + input: [BigNumberish, BigNumberish], + overrides?: CallOverrides + ): Promise; + }; + + populateTransaction: { + verifyProof( + a: [BigNumberish, BigNumberish], + b: [[BigNumberish, BigNumberish], [BigNumberish, BigNumberish]], + c: [BigNumberish, BigNumberish], + input: [BigNumberish, BigNumberish], + overrides?: CallOverrides + ): Promise; + }; +} diff --git a/src/types/contracts/validators/OIDCSessionOnlyValidator.sol/OIDCSessionOnlyValidator.ts b/src/types/contracts/validators/OIDCSessionOnlyValidator.sol/OIDCSessionOnlyValidator.ts new file mode 100644 index 0000000..6da7944 --- /dev/null +++ b/src/types/contracts/validators/OIDCSessionOnlyValidator.sol/OIDCSessionOnlyValidator.ts @@ -0,0 +1,287 @@ +/* Autogenerated file. Do not edit manually. */ +/* tslint:disable */ +/* eslint-disable */ +import type { + BaseContract, + BigNumber, + BigNumberish, + BytesLike, + CallOverrides, + ContractTransaction, + PayableOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../../common"; + +export type UserOperationStruct = { + sender: string; + nonce: BigNumberish; + initCode: BytesLike; + callData: BytesLike; + callGasLimit: BigNumberish; + verificationGasLimit: BigNumberish; + preVerificationGas: BigNumberish; + maxFeePerGas: BigNumberish; + maxPriorityFeePerGas: BigNumberish; + paymasterAndData: BytesLike; + signature: BytesLike; +}; + +export type UserOperationStructOutput = [ + string, + BigNumber, + string, + string, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + BigNumber, + string, + string +] & { + sender: string; + nonce: BigNumber; + initCode: string; + callData: string; + callGasLimit: BigNumber; + verificationGasLimit: BigNumber; + preVerificationGas: BigNumber; + maxFeePerGas: BigNumber; + maxPriorityFeePerGas: BigNumber; + paymasterAndData: string; + signature: string; +}; + +export interface OIDCSessionOnlyValidatorInterface extends utils.Interface { + functions: { + "NAME()": FunctionFragment; + "VERSION()": FunctionFragment; + "enable(bytes)": FunctionFragment; + "supportsInterface(bytes4)": FunctionFragment; + "validCaller(address,bytes)": FunctionFragment; + "validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)": FunctionFragment; + }; + + getFunction( + nameOrSignatureOrTopic: + | "NAME" + | "VERSION" + | "enable" + | "supportsInterface" + | "validCaller" + | "validateSignature" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "enable", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "supportsInterface", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validCaller", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validateSignature", + values: [UserOperationStruct, BytesLike, BytesLike] + ): string; + + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "enable", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "supportsInterface", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validCaller", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validateSignature", + data: BytesLike + ): Result; + + events: {}; +} + +export interface OIDCSessionOnlyValidator extends BaseContract { + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; + + interface: OIDCSessionOnlyValidatorInterface; + + queryFilter( + event: TypedEventFilter, + fromBlockOrBlockhash?: string | number | undefined, + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; + + functions: { + NAME(overrides?: CallOverrides): Promise<[string]>; + + VERSION(overrides?: CallOverrides): Promise<[string]>; + + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; + + validateSignature( + userOp: UserOperationStruct, + userOpHash: BytesLike, + signature: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; + + NAME(overrides?: CallOverrides): Promise; + + VERSION(overrides?: CallOverrides): Promise; + + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; + + validateSignature( + userOp: UserOperationStruct, + userOpHash: BytesLike, + signature: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + callStatic: { + NAME(overrides?: CallOverrides): Promise; + + VERSION(overrides?: CallOverrides): Promise; + + enable(data: BytesLike, overrides?: CallOverrides): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; + + validateSignature( + userOp: UserOperationStruct, + userOpHash: BytesLike, + signature: BytesLike, + overrides?: CallOverrides + ): Promise; + }; + + filters: {}; + + estimateGas: { + NAME(overrides?: CallOverrides): Promise; + + VERSION(overrides?: CallOverrides): Promise; + + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; + + validateSignature( + userOp: UserOperationStruct, + userOpHash: BytesLike, + signature: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; + + populateTransaction: { + NAME(overrides?: CallOverrides): Promise; + + VERSION(overrides?: CallOverrides): Promise; + + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; + + validCaller( + caller: string, + data: BytesLike, + overrides?: CallOverrides + ): Promise; + + validateSignature( + userOp: UserOperationStruct, + userOpHash: BytesLike, + signature: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; +} diff --git a/src/types/contracts/validators/OIDCSessionOnlyValidator.sol/index.ts b/src/types/contracts/validators/OIDCSessionOnlyValidator.sol/index.ts new file mode 100644 index 0000000..1e04111 --- /dev/null +++ b/src/types/contracts/validators/OIDCSessionOnlyValidator.sol/index.ts @@ -0,0 +1,5 @@ +/* Autogenerated file. Do not edit manually. */ +/* tslint:disable */ +/* eslint-disable */ +export type { IVerifier } from "./IVerifier"; +export type { OIDCSessionOnlyValidator } from "./OIDCSessionOnlyValidator"; diff --git a/src/types/contracts/validators/index.ts b/src/types/contracts/validators/index.ts index f15db32..5d2d508 100644 --- a/src/types/contracts/validators/index.ts +++ b/src/types/contracts/validators/index.ts @@ -1,10 +1,11 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as p256 from './p256' -export type { p256 } -import type * as sessionkey from './sessionkey' -export type { sessionkey } -export type { BaseValidator } from './BaseValidator' -export type { ECDSAValidator } from './ECDSAValidator' -export type { OIDCSessionOnlyValidator } from './OIDCSessionOnlyValidator' +import type * as oidcSessionOnlyValidatorSol from "./OIDCSessionOnlyValidator.sol"; +export type { oidcSessionOnlyValidatorSol }; +import type * as p256 from "./p256"; +export type { p256 }; +import type * as sessionkey from "./sessionkey"; +export type { sessionkey }; +export type { BaseValidator } from "./BaseValidator"; +export type { ECDSAValidator } from "./ECDSAValidator"; diff --git a/src/types/contracts/validators/p256/ISecp256r1.ts b/src/types/contracts/validators/p256/ISecp256r1.ts index 2e09749..4493044 100644 --- a/src/types/contracts/validators/p256/ISecp256r1.ts +++ b/src/types/contracts/validators/p256/ISecp256r1.ts @@ -1,89 +1,112 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type { BaseContract, BigNumber, BytesLike, CallOverrides, PopulatedTransaction, Signer, utils } from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../../common' +import type { + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../../common"; export interface ISecp256r1Interface extends utils.Interface { functions: { - 'validateSignature(bytes32,bytes,bytes)': FunctionFragment - } + "validateSignature(bytes32,bytes,bytes)": FunctionFragment; + }; - getFunction(nameOrSignatureOrTopic: 'validateSignature'): FunctionFragment + getFunction(nameOrSignatureOrTopic: "validateSignature"): FunctionFragment; - encodeFunctionData(functionFragment: 'validateSignature', values: [BytesLike, BytesLike, BytesLike]): string + encodeFunctionData( + functionFragment: "validateSignature", + values: [BytesLike, BytesLike, BytesLike] + ): string; - decodeFunctionResult(functionFragment: 'validateSignature', data: BytesLike): Result + decodeFunctionResult( + functionFragment: "validateSignature", + data: BytesLike + ): Result; - events: {} + events: {}; } export interface ISecp256r1 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: ISecp256r1Interface + interface: ISecp256r1Interface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> + toBlock?: string | number | undefined + ): Promise>; - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise<[boolean]> - } + overrides?: CallOverrides + ): Promise<[boolean]>; + }; validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; callStatic: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; - filters: {} + filters: {}; estimateGas: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; populateTransaction: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; } diff --git a/src/types/contracts/validators/p256/P256Validator.ts b/src/types/contracts/validators/p256/P256Validator.ts index dd31b2b..e304a62 100644 --- a/src/types/contracts/validators/p256/P256Validator.ts +++ b/src/types/contracts/validators/p256/P256Validator.ts @@ -12,24 +12,33 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../../common' +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../../common"; export type UserOperationStruct = { - sender: string - nonce: BigNumberish - initCode: BytesLike - callData: BytesLike - callGasLimit: BigNumberish - verificationGasLimit: BigNumberish - preVerificationGas: BigNumberish - maxFeePerGas: BigNumberish - maxPriorityFeePerGas: BigNumberish - paymasterAndData: BytesLike - signature: BytesLike -} + sender: string; + nonce: BigNumberish; + initCode: BytesLike; + callData: BytesLike; + callGasLimit: BigNumberish; + verificationGasLimit: BigNumberish; + preVerificationGas: BigNumberish; + maxFeePerGas: BigNumberish; + maxPriorityFeePerGas: BigNumberish; + paymasterAndData: BytesLike; + signature: BytesLike; +}; export type UserOperationStructOutput = [ string, @@ -42,216 +51,296 @@ export type UserOperationStructOutput = [ BigNumber, BigNumber, string, - string, + string ] & { - sender: string - nonce: BigNumber - initCode: string - callData: string - callGasLimit: BigNumber - verificationGasLimit: BigNumber - preVerificationGas: BigNumber - maxFeePerGas: BigNumber - maxPriorityFeePerGas: BigNumber - paymasterAndData: string - signature: string -} + sender: string; + nonce: BigNumber; + initCode: string; + callData: string; + callGasLimit: BigNumber; + verificationGasLimit: BigNumber; + preVerificationGas: BigNumber; + maxFeePerGas: BigNumber; + maxPriorityFeePerGas: BigNumber; + paymasterAndData: string; + signature: string; +}; export interface P256ValidatorInterface extends utils.Interface { functions: { - 'NAME()': FunctionFragment - 'VERSION()': FunctionFragment - 'enable(bytes)': FunctionFragment - 'impl()': FunctionFragment - 'pks(address)': FunctionFragment - 'supportsInterface(bytes4)': FunctionFragment - 'validCaller(address,bytes)': FunctionFragment - 'validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)': FunctionFragment - } + "NAME()": FunctionFragment; + "VERSION()": FunctionFragment; + "enable(bytes)": FunctionFragment; + "impl()": FunctionFragment; + "pks(address)": FunctionFragment; + "supportsInterface(bytes4)": FunctionFragment; + "validCaller(address,bytes)": FunctionFragment; + "validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)": FunctionFragment; + }; getFunction( nameOrSignatureOrTopic: - | 'NAME' - | 'VERSION' - | 'enable' - | 'impl' - | 'pks' - | 'supportsInterface' - | 'validCaller' - | 'validateSignature', - ): FunctionFragment - - encodeFunctionData(functionFragment: 'NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'VERSION', values?: undefined): string - encodeFunctionData(functionFragment: 'enable', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'impl', values?: undefined): string - encodeFunctionData(functionFragment: 'pks', values: [string]): string - encodeFunctionData(functionFragment: 'supportsInterface', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'validCaller', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'validateSignature', values: [UserOperationStruct, BytesLike, BytesLike]): string - - decodeFunctionResult(functionFragment: 'NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'VERSION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'enable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'impl', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'pks', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'supportsInterface', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validCaller', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validateSignature', data: BytesLike): Result + | "NAME" + | "VERSION" + | "enable" + | "impl" + | "pks" + | "supportsInterface" + | "validCaller" + | "validateSignature" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "enable", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "impl", values?: undefined): string; + encodeFunctionData(functionFragment: "pks", values: [string]): string; + encodeFunctionData( + functionFragment: "supportsInterface", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validCaller", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validateSignature", + values: [UserOperationStruct, BytesLike, BytesLike] + ): string; + + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "enable", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "impl", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pks", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "supportsInterface", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validCaller", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validateSignature", + data: BytesLike + ): Result; events: { - 'PkChanged(address,bytes,bytes)': EventFragment - } + "PkChanged(address,bytes,bytes)": EventFragment; + }; - getEvent(nameOrSignatureOrTopic: 'PkChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: "PkChanged"): EventFragment; } export interface PkChangedEventObject { - account: string - oldPk: string - newPk: string + account: string; + oldPk: string; + newPk: string; } -export type PkChangedEvent = TypedEvent<[string, string, string], PkChangedEventObject> +export type PkChangedEvent = TypedEvent< + [string, string, string], + PkChangedEventObject +>; -export type PkChangedEventFilter = TypedEventFilter +export type PkChangedEventFilter = TypedEventFilter; export interface P256Validator extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: P256ValidatorInterface + interface: P256ValidatorInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { - NAME(overrides?: CallOverrides): Promise<[string]> + NAME(overrides?: CallOverrides): Promise<[string]>; - VERSION(overrides?: CallOverrides): Promise<[string]> + VERSION(overrides?: CallOverrides): Promise<[string]>; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - impl(overrides?: CallOverrides): Promise<[string]> + impl(overrides?: CallOverrides): Promise<[string]>; - pks(arg0: string, overrides?: CallOverrides): Promise<[string]> + pks(arg0: string, overrides?: CallOverrides): Promise<[string]>; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; - validCaller(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + validCaller( + arg0: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - impl(overrides?: CallOverrides): Promise + impl(overrides?: CallOverrides): Promise; - pks(arg0: string, overrides?: CallOverrides): Promise + pks(arg0: string, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + arg0: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise + overrides?: PayableOverrides & { from?: string } + ): Promise; callStatic: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: CallOverrides): Promise + enable(data: BytesLike, overrides?: CallOverrides): Promise; - impl(overrides?: CallOverrides): Promise + impl(overrides?: CallOverrides): Promise; - pks(arg0: string, overrides?: CallOverrides): Promise + pks(arg0: string, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + arg0: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; filters: { - 'PkChanged(address,bytes,bytes)'(account?: string | null, oldPk?: null, newPk?: null): PkChangedEventFilter - PkChanged(account?: string | null, oldPk?: null, newPk?: null): PkChangedEventFilter - } + "PkChanged(address,bytes,bytes)"( + account?: string | null, + oldPk?: null, + newPk?: null + ): PkChangedEventFilter; + PkChanged( + account?: string | null, + oldPk?: null, + newPk?: null + ): PkChangedEventFilter; + }; estimateGas: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - impl(overrides?: CallOverrides): Promise + impl(overrides?: CallOverrides): Promise; - pks(arg0: string, overrides?: CallOverrides): Promise + pks(arg0: string, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + arg0: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; populateTransaction: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - impl(overrides?: CallOverrides): Promise + impl(overrides?: CallOverrides): Promise; - pks(arg0: string, overrides?: CallOverrides): Promise + pks(arg0: string, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + arg0: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; } diff --git a/src/types/contracts/validators/p256/Secp256r1.ts b/src/types/contracts/validators/p256/Secp256r1.ts index 3d5aa4c..08e5964 100644 --- a/src/types/contracts/validators/p256/Secp256r1.ts +++ b/src/types/contracts/validators/p256/Secp256r1.ts @@ -1,89 +1,112 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type { BaseContract, BigNumber, BytesLike, CallOverrides, PopulatedTransaction, Signer, utils } from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../../common' +import type { + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../../common"; export interface Secp256r1Interface extends utils.Interface { functions: { - 'validateSignature(bytes32,bytes,bytes)': FunctionFragment - } + "validateSignature(bytes32,bytes,bytes)": FunctionFragment; + }; - getFunction(nameOrSignatureOrTopic: 'validateSignature'): FunctionFragment + getFunction(nameOrSignatureOrTopic: "validateSignature"): FunctionFragment; - encodeFunctionData(functionFragment: 'validateSignature', values: [BytesLike, BytesLike, BytesLike]): string + encodeFunctionData( + functionFragment: "validateSignature", + values: [BytesLike, BytesLike, BytesLike] + ): string; - decodeFunctionResult(functionFragment: 'validateSignature', data: BytesLike): Result + decodeFunctionResult( + functionFragment: "validateSignature", + data: BytesLike + ): Result; - events: {} + events: {}; } export interface Secp256r1 extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: Secp256r1Interface + interface: Secp256r1Interface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> + toBlock?: string | number | undefined + ): Promise>; - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise<[boolean] & { result: boolean }> - } + overrides?: CallOverrides + ): Promise<[boolean] & { result: boolean }>; + }; validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; callStatic: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; - filters: {} + filters: {}; estimateGas: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; populateTransaction: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; } diff --git a/src/types/contracts/validators/p256/Secp256r1IoTeX.ts b/src/types/contracts/validators/p256/Secp256r1IoTeX.ts index eba61bb..7288bf2 100644 --- a/src/types/contracts/validators/p256/Secp256r1IoTeX.ts +++ b/src/types/contracts/validators/p256/Secp256r1IoTeX.ts @@ -1,89 +1,112 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type { BaseContract, BigNumber, BytesLike, CallOverrides, PopulatedTransaction, Signer, utils } from 'ethers' -import type { FunctionFragment, Result } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../../common' +import type { + BaseContract, + BigNumber, + BytesLike, + CallOverrides, + PopulatedTransaction, + Signer, + utils, +} from "ethers"; +import type { FunctionFragment, Result } from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../../common"; export interface Secp256r1IoTeXInterface extends utils.Interface { functions: { - 'validateSignature(bytes32,bytes,bytes)': FunctionFragment - } + "validateSignature(bytes32,bytes,bytes)": FunctionFragment; + }; - getFunction(nameOrSignatureOrTopic: 'validateSignature'): FunctionFragment + getFunction(nameOrSignatureOrTopic: "validateSignature"): FunctionFragment; - encodeFunctionData(functionFragment: 'validateSignature', values: [BytesLike, BytesLike, BytesLike]): string + encodeFunctionData( + functionFragment: "validateSignature", + values: [BytesLike, BytesLike, BytesLike] + ): string; - decodeFunctionResult(functionFragment: 'validateSignature', data: BytesLike): Result + decodeFunctionResult( + functionFragment: "validateSignature", + data: BytesLike + ): Result; - events: {} + events: {}; } export interface Secp256r1IoTeX extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: Secp256r1IoTeXInterface + interface: Secp256r1IoTeXInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> + toBlock?: string | number | undefined + ): Promise>; - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise<[boolean] & { result: boolean }> - } + overrides?: CallOverrides + ): Promise<[boolean] & { result: boolean }>; + }; validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise + overrides?: CallOverrides + ): Promise; callStatic: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; - filters: {} + filters: {}; estimateGas: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; populateTransaction: { validateSignature( message: BytesLike, signature: BytesLike, publicKey: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; } diff --git a/src/types/contracts/validators/p256/WebauthnValidator.ts b/src/types/contracts/validators/p256/WebauthnValidator.ts index 45738b8..9b3f643 100644 --- a/src/types/contracts/validators/p256/WebauthnValidator.ts +++ b/src/types/contracts/validators/p256/WebauthnValidator.ts @@ -12,24 +12,33 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../../common' +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../../common"; export type UserOperationStruct = { - sender: string - nonce: BigNumberish - initCode: BytesLike - callData: BytesLike - callGasLimit: BigNumberish - verificationGasLimit: BigNumberish - preVerificationGas: BigNumberish - maxFeePerGas: BigNumberish - maxPriorityFeePerGas: BigNumberish - paymasterAndData: BytesLike - signature: BytesLike -} + sender: string; + nonce: BigNumberish; + initCode: BytesLike; + callData: BytesLike; + callGasLimit: BigNumberish; + verificationGasLimit: BigNumberish; + preVerificationGas: BigNumberish; + maxFeePerGas: BigNumberish; + maxPriorityFeePerGas: BigNumberish; + paymasterAndData: BytesLike; + signature: BytesLike; +}; export type UserOperationStructOutput = [ string, @@ -42,216 +51,296 @@ export type UserOperationStructOutput = [ BigNumber, BigNumber, string, - string, + string ] & { - sender: string - nonce: BigNumber - initCode: string - callData: string - callGasLimit: BigNumber - verificationGasLimit: BigNumber - preVerificationGas: BigNumber - maxFeePerGas: BigNumber - maxPriorityFeePerGas: BigNumber - paymasterAndData: string - signature: string -} + sender: string; + nonce: BigNumber; + initCode: string; + callData: string; + callGasLimit: BigNumber; + verificationGasLimit: BigNumber; + preVerificationGas: BigNumber; + maxFeePerGas: BigNumber; + maxPriorityFeePerGas: BigNumber; + paymasterAndData: string; + signature: string; +}; export interface WebauthnValidatorInterface extends utils.Interface { functions: { - 'NAME()': FunctionFragment - 'VERSION()': FunctionFragment - 'enable(bytes)': FunctionFragment - 'impl()': FunctionFragment - 'pks(address)': FunctionFragment - 'supportsInterface(bytes4)': FunctionFragment - 'validCaller(address,bytes)': FunctionFragment - 'validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)': FunctionFragment - } + "NAME()": FunctionFragment; + "VERSION()": FunctionFragment; + "enable(bytes)": FunctionFragment; + "impl()": FunctionFragment; + "pks(address)": FunctionFragment; + "supportsInterface(bytes4)": FunctionFragment; + "validCaller(address,bytes)": FunctionFragment; + "validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)": FunctionFragment; + }; getFunction( nameOrSignatureOrTopic: - | 'NAME' - | 'VERSION' - | 'enable' - | 'impl' - | 'pks' - | 'supportsInterface' - | 'validCaller' - | 'validateSignature', - ): FunctionFragment - - encodeFunctionData(functionFragment: 'NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'VERSION', values?: undefined): string - encodeFunctionData(functionFragment: 'enable', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'impl', values?: undefined): string - encodeFunctionData(functionFragment: 'pks', values: [string]): string - encodeFunctionData(functionFragment: 'supportsInterface', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'validCaller', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'validateSignature', values: [UserOperationStruct, BytesLike, BytesLike]): string - - decodeFunctionResult(functionFragment: 'NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'VERSION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'enable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'impl', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'pks', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'supportsInterface', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validCaller', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validateSignature', data: BytesLike): Result + | "NAME" + | "VERSION" + | "enable" + | "impl" + | "pks" + | "supportsInterface" + | "validCaller" + | "validateSignature" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "enable", values: [BytesLike]): string; + encodeFunctionData(functionFragment: "impl", values?: undefined): string; + encodeFunctionData(functionFragment: "pks", values: [string]): string; + encodeFunctionData( + functionFragment: "supportsInterface", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validCaller", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validateSignature", + values: [UserOperationStruct, BytesLike, BytesLike] + ): string; + + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "enable", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "impl", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "pks", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "supportsInterface", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validCaller", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validateSignature", + data: BytesLike + ): Result; events: { - 'PkChanged(address,bytes,bytes)': EventFragment - } + "PkChanged(address,bytes,bytes)": EventFragment; + }; - getEvent(nameOrSignatureOrTopic: 'PkChanged'): EventFragment + getEvent(nameOrSignatureOrTopic: "PkChanged"): EventFragment; } export interface PkChangedEventObject { - account: string - oldPk: string - newPk: string + account: string; + oldPk: string; + newPk: string; } -export type PkChangedEvent = TypedEvent<[string, string, string], PkChangedEventObject> +export type PkChangedEvent = TypedEvent< + [string, string, string], + PkChangedEventObject +>; -export type PkChangedEventFilter = TypedEventFilter +export type PkChangedEventFilter = TypedEventFilter; export interface WebauthnValidator extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: WebauthnValidatorInterface + interface: WebauthnValidatorInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { - NAME(overrides?: CallOverrides): Promise<[string]> + NAME(overrides?: CallOverrides): Promise<[string]>; - VERSION(overrides?: CallOverrides): Promise<[string]> + VERSION(overrides?: CallOverrides): Promise<[string]>; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - impl(overrides?: CallOverrides): Promise<[string]> + impl(overrides?: CallOverrides): Promise<[string]>; - pks(arg0: string, overrides?: CallOverrides): Promise<[string]> + pks(arg0: string, overrides?: CallOverrides): Promise<[string]>; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; - validCaller(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + validCaller( + arg0: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - impl(overrides?: CallOverrides): Promise + impl(overrides?: CallOverrides): Promise; - pks(arg0: string, overrides?: CallOverrides): Promise + pks(arg0: string, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + arg0: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise + overrides?: PayableOverrides & { from?: string } + ): Promise; callStatic: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: CallOverrides): Promise + enable(data: BytesLike, overrides?: CallOverrides): Promise; - impl(overrides?: CallOverrides): Promise + impl(overrides?: CallOverrides): Promise; - pks(arg0: string, overrides?: CallOverrides): Promise + pks(arg0: string, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + arg0: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; filters: { - 'PkChanged(address,bytes,bytes)'(account?: string | null, oldPk?: null, newPk?: null): PkChangedEventFilter - PkChanged(account?: string | null, oldPk?: null, newPk?: null): PkChangedEventFilter - } + "PkChanged(address,bytes,bytes)"( + account?: string | null, + oldPk?: null, + newPk?: null + ): PkChangedEventFilter; + PkChanged( + account?: string | null, + oldPk?: null, + newPk?: null + ): PkChangedEventFilter; + }; estimateGas: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - impl(overrides?: CallOverrides): Promise + impl(overrides?: CallOverrides): Promise; - pks(arg0: string, overrides?: CallOverrides): Promise + pks(arg0: string, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + arg0: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; populateTransaction: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - impl(overrides?: CallOverrides): Promise + impl(overrides?: CallOverrides): Promise; - pks(arg0: string, overrides?: CallOverrides): Promise + pks(arg0: string, overrides?: CallOverrides): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + arg0: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; } diff --git a/src/types/contracts/validators/p256/index.ts b/src/types/contracts/validators/p256/index.ts index 6ea2528..11e4c71 100644 --- a/src/types/contracts/validators/p256/index.ts +++ b/src/types/contracts/validators/p256/index.ts @@ -1,8 +1,8 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { ISecp256r1 } from './ISecp256r1' -export type { P256Validator } from './P256Validator' -export type { Secp256r1 } from './Secp256r1' -export type { Secp256r1IoTeX } from './Secp256r1IoTeX' -export type { WebauthnValidator } from './WebauthnValidator' +export type { ISecp256r1 } from "./ISecp256r1"; +export type { P256Validator } from "./P256Validator"; +export type { Secp256r1 } from "./Secp256r1"; +export type { Secp256r1IoTeX } from "./Secp256r1IoTeX"; +export type { WebauthnValidator } from "./WebauthnValidator"; diff --git a/src/types/contracts/validators/sessionkey/OwnerSessionKeyValidator.ts b/src/types/contracts/validators/sessionkey/OwnerSessionKeyValidator.ts index 392fc04..c319b9b 100644 --- a/src/types/contracts/validators/sessionkey/OwnerSessionKeyValidator.ts +++ b/src/types/contracts/validators/sessionkey/OwnerSessionKeyValidator.ts @@ -12,24 +12,33 @@ import type { PopulatedTransaction, Signer, utils, -} from 'ethers' -import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi' -import type { Listener, Provider } from '@ethersproject/providers' -import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from '../../../common' +} from "ethers"; +import type { + FunctionFragment, + Result, + EventFragment, +} from "@ethersproject/abi"; +import type { Listener, Provider } from "@ethersproject/providers"; +import type { + TypedEventFilter, + TypedEvent, + TypedListener, + OnEvent, +} from "../../../common"; export type UserOperationStruct = { - sender: string - nonce: BigNumberish - initCode: BytesLike - callData: BytesLike - callGasLimit: BigNumberish - verificationGasLimit: BigNumberish - preVerificationGas: BigNumberish - maxFeePerGas: BigNumberish - maxPriorityFeePerGas: BigNumberish - paymasterAndData: BytesLike - signature: BytesLike -} + sender: string; + nonce: BigNumberish; + initCode: BytesLike; + callData: BytesLike; + callGasLimit: BigNumberish; + verificationGasLimit: BigNumberish; + preVerificationGas: BigNumberish; + maxFeePerGas: BigNumberish; + maxPriorityFeePerGas: BigNumberish; + paymasterAndData: BytesLike; + signature: BytesLike; +}; export type UserOperationStructOutput = [ string, @@ -42,225 +51,311 @@ export type UserOperationStructOutput = [ BigNumber, BigNumber, string, - string, + string ] & { - sender: string - nonce: BigNumber - initCode: string - callData: string - callGasLimit: BigNumber - verificationGasLimit: BigNumber - preVerificationGas: BigNumber - maxFeePerGas: BigNumber - maxPriorityFeePerGas: BigNumber - paymasterAndData: string - signature: string -} + sender: string; + nonce: BigNumber; + initCode: string; + callData: string; + callGasLimit: BigNumber; + verificationGasLimit: BigNumber; + preVerificationGas: BigNumber; + maxFeePerGas: BigNumber; + maxPriorityFeePerGas: BigNumber; + paymasterAndData: string; + signature: string; +}; export interface OwnerSessionKeyValidatorInterface extends utils.Interface { functions: { - 'NAME()': FunctionFragment - 'VERSION()': FunctionFragment - 'enable(bytes)': FunctionFragment - 'sessionKeyStorage(address,address)': FunctionFragment - 'supportsInterface(bytes4)': FunctionFragment - 'validCaller(address,bytes)': FunctionFragment - 'validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)': FunctionFragment - } + "NAME()": FunctionFragment; + "VERSION()": FunctionFragment; + "enable(bytes)": FunctionFragment; + "sessionKeyStorage(address,address)": FunctionFragment; + "supportsInterface(bytes4)": FunctionFragment; + "validCaller(address,bytes)": FunctionFragment; + "validateSignature((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,bytes)": FunctionFragment; + }; getFunction( nameOrSignatureOrTopic: - | 'NAME' - | 'VERSION' - | 'enable' - | 'sessionKeyStorage' - | 'supportsInterface' - | 'validCaller' - | 'validateSignature', - ): FunctionFragment - - encodeFunctionData(functionFragment: 'NAME', values?: undefined): string - encodeFunctionData(functionFragment: 'VERSION', values?: undefined): string - encodeFunctionData(functionFragment: 'enable', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'sessionKeyStorage', values: [string, string]): string - encodeFunctionData(functionFragment: 'supportsInterface', values: [BytesLike]): string - encodeFunctionData(functionFragment: 'validCaller', values: [string, BytesLike]): string - encodeFunctionData(functionFragment: 'validateSignature', values: [UserOperationStruct, BytesLike, BytesLike]): string - - decodeFunctionResult(functionFragment: 'NAME', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'VERSION', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'enable', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'sessionKeyStorage', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'supportsInterface', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validCaller', data: BytesLike): Result - decodeFunctionResult(functionFragment: 'validateSignature', data: BytesLike): Result + | "NAME" + | "VERSION" + | "enable" + | "sessionKeyStorage" + | "supportsInterface" + | "validCaller" + | "validateSignature" + ): FunctionFragment; + + encodeFunctionData(functionFragment: "NAME", values?: undefined): string; + encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; + encodeFunctionData(functionFragment: "enable", values: [BytesLike]): string; + encodeFunctionData( + functionFragment: "sessionKeyStorage", + values: [string, string] + ): string; + encodeFunctionData( + functionFragment: "supportsInterface", + values: [BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validCaller", + values: [string, BytesLike] + ): string; + encodeFunctionData( + functionFragment: "validateSignature", + values: [UserOperationStruct, BytesLike, BytesLike] + ): string; + + decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; + decodeFunctionResult(functionFragment: "enable", data: BytesLike): Result; + decodeFunctionResult( + functionFragment: "sessionKeyStorage", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "supportsInterface", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validCaller", + data: BytesLike + ): Result; + decodeFunctionResult( + functionFragment: "validateSignature", + data: BytesLike + ): Result; events: { - 'NewSessionKey(address,address,uint48,uint48)': EventFragment - } + "NewSessionKey(address,address,uint48,uint48)": EventFragment; + }; - getEvent(nameOrSignatureOrTopic: 'NewSessionKey'): EventFragment + getEvent(nameOrSignatureOrTopic: "NewSessionKey"): EventFragment; } export interface NewSessionKeyEventObject { - account: string - sessionKey: string - validUntil: number - validAfter: number + account: string; + sessionKey: string; + validUntil: number; + validAfter: number; } -export type NewSessionKeyEvent = TypedEvent<[string, string, number, number], NewSessionKeyEventObject> +export type NewSessionKeyEvent = TypedEvent< + [string, string, number, number], + NewSessionKeyEventObject +>; -export type NewSessionKeyEventFilter = TypedEventFilter +export type NewSessionKeyEventFilter = TypedEventFilter; export interface OwnerSessionKeyValidator extends BaseContract { - connect(signerOrProvider: Signer | Provider | string): this - attach(addressOrName: string): this - deployed(): Promise + connect(signerOrProvider: Signer | Provider | string): this; + attach(addressOrName: string): this; + deployed(): Promise; - interface: OwnerSessionKeyValidatorInterface + interface: OwnerSessionKeyValidatorInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, - toBlock?: string | number | undefined, - ): Promise> - - listeners(eventFilter?: TypedEventFilter): Array> - listeners(eventName?: string): Array - removeAllListeners(eventFilter: TypedEventFilter): this - removeAllListeners(eventName?: string): this - off: OnEvent - on: OnEvent - once: OnEvent - removeListener: OnEvent + toBlock?: string | number | undefined + ): Promise>; + + listeners( + eventFilter?: TypedEventFilter + ): Array>; + listeners(eventName?: string): Array; + removeAllListeners( + eventFilter: TypedEventFilter + ): this; + removeAllListeners(eventName?: string): this; + off: OnEvent; + on: OnEvent; + once: OnEvent; + removeListener: OnEvent; functions: { - NAME(overrides?: CallOverrides): Promise<[string]> + NAME(overrides?: CallOverrides): Promise<[string]>; - VERSION(overrides?: CallOverrides): Promise<[string]> + VERSION(overrides?: CallOverrides): Promise<[string]>; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; sessionKeyStorage( sessionKey: string, account: string, - overrides?: CallOverrides, - ): Promise<[number, number] & { validUntil: number; validAfter: number }> + overrides?: CallOverrides + ): Promise<[number, number] & { validUntil: number; validAfter: number }>; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; - validCaller(caller: string, arg1: BytesLike, overrides?: CallOverrides): Promise<[boolean]> + validCaller( + caller: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise<[boolean]>; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; sessionKeyStorage( sessionKey: string, account: string, - overrides?: CallOverrides, - ): Promise<[number, number] & { validUntil: number; validAfter: number }> + overrides?: CallOverrides + ): Promise<[number, number] & { validUntil: number; validAfter: number }>; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise + overrides?: PayableOverrides & { from?: string } + ): Promise; callStatic: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: CallOverrides): Promise + enable(data: BytesLike, overrides?: CallOverrides): Promise; sessionKeyStorage( sessionKey: string, account: string, - overrides?: CallOverrides, - ): Promise<[number, number] & { validUntil: number; validAfter: number }> + overrides?: CallOverrides + ): Promise<[number, number] & { validUntil: number; validAfter: number }>; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: CallOverrides, - ): Promise - } + overrides?: CallOverrides + ): Promise; + }; filters: { - 'NewSessionKey(address,address,uint48,uint48)'( + "NewSessionKey(address,address,uint48,uint48)"( account?: string | null, sessionKey?: string | null, validUntil?: null, - validAfter?: null, - ): NewSessionKeyEventFilter + validAfter?: null + ): NewSessionKeyEventFilter; NewSessionKey( account?: string | null, sessionKey?: string | null, validUntil?: null, - validAfter?: null, - ): NewSessionKeyEventFilter - } + validAfter?: null + ): NewSessionKeyEventFilter; + }; estimateGas: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - sessionKeyStorage(sessionKey: string, account: string, overrides?: CallOverrides): Promise + sessionKeyStorage( + sessionKey: string, + account: string, + overrides?: CallOverrides + ): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; populateTransaction: { - NAME(overrides?: CallOverrides): Promise + NAME(overrides?: CallOverrides): Promise; - VERSION(overrides?: CallOverrides): Promise + VERSION(overrides?: CallOverrides): Promise; - enable(data: BytesLike, overrides?: PayableOverrides & { from?: string }): Promise + enable( + data: BytesLike, + overrides?: PayableOverrides & { from?: string } + ): Promise; - sessionKeyStorage(sessionKey: string, account: string, overrides?: CallOverrides): Promise + sessionKeyStorage( + sessionKey: string, + account: string, + overrides?: CallOverrides + ): Promise; - supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise + supportsInterface( + interfaceId: BytesLike, + overrides?: CallOverrides + ): Promise; - validCaller(caller: string, arg1: BytesLike, overrides?: CallOverrides): Promise + validCaller( + caller: string, + arg1: BytesLike, + overrides?: CallOverrides + ): Promise; validateSignature( userOp: UserOperationStruct, userOpHash: BytesLike, signature: BytesLike, - overrides?: PayableOverrides & { from?: string }, - ): Promise - } + overrides?: PayableOverrides & { from?: string } + ): Promise; + }; } diff --git a/src/types/contracts/validators/sessionkey/index.ts b/src/types/contracts/validators/sessionkey/index.ts index a4ce0b1..71f3123 100644 --- a/src/types/contracts/validators/sessionkey/index.ts +++ b/src/types/contracts/validators/sessionkey/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export type { OwnerSessionKeyValidator } from './OwnerSessionKeyValidator' +export type { OwnerSessionKeyValidator } from "./OwnerSessionKeyValidator"; diff --git a/src/types/factories/@account-abstraction/contracts/core/index.ts b/src/types/factories/@account-abstraction/contracts/core/index.ts index 6dedd9e..4f54756 100644 --- a/src/types/factories/@account-abstraction/contracts/core/index.ts +++ b/src/types/factories/@account-abstraction/contracts/core/index.ts @@ -1,9 +1,9 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { BaseAccount__factory } from './BaseAccount__factory' -export { BasePaymaster__factory } from './BasePaymaster__factory' -export { EntryPoint__factory } from './EntryPoint__factory' -export { NonceManager__factory } from './NonceManager__factory' -export { SenderCreator__factory } from './SenderCreator__factory' -export { StakeManager__factory } from './StakeManager__factory' +export { BaseAccount__factory } from "./BaseAccount__factory"; +export { BasePaymaster__factory } from "./BasePaymaster__factory"; +export { EntryPoint__factory } from "./EntryPoint__factory"; +export { NonceManager__factory } from "./NonceManager__factory"; +export { SenderCreator__factory } from "./SenderCreator__factory"; +export { StakeManager__factory } from "./StakeManager__factory"; diff --git a/src/types/factories/@account-abstraction/contracts/index.ts b/src/types/factories/@account-abstraction/contracts/index.ts index a5bb2f9..80ab1f5 100644 --- a/src/types/factories/@account-abstraction/contracts/index.ts +++ b/src/types/factories/@account-abstraction/contracts/index.ts @@ -1,6 +1,6 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as core from './core' -export * as interfaces from './interfaces' -export * as samples from './samples' +export * as core from "./core"; +export * as interfaces from "./interfaces"; +export * as samples from "./samples"; diff --git a/src/types/factories/@account-abstraction/contracts/interfaces/index.ts b/src/types/factories/@account-abstraction/contracts/interfaces/index.ts index 130ef58..e2deec4 100644 --- a/src/types/factories/@account-abstraction/contracts/interfaces/index.ts +++ b/src/types/factories/@account-abstraction/contracts/interfaces/index.ts @@ -1,9 +1,9 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { IAccount__factory } from './IAccount__factory' -export { IAggregator__factory } from './IAggregator__factory' -export { IEntryPoint__factory } from './IEntryPoint__factory' -export { INonceManager__factory } from './INonceManager__factory' -export { IPaymaster__factory } from './IPaymaster__factory' -export { IStakeManager__factory } from './IStakeManager__factory' +export { IAccount__factory } from "./IAccount__factory"; +export { IAggregator__factory } from "./IAggregator__factory"; +export { IEntryPoint__factory } from "./IEntryPoint__factory"; +export { INonceManager__factory } from "./INonceManager__factory"; +export { IPaymaster__factory } from "./IPaymaster__factory"; +export { IStakeManager__factory } from "./IStakeManager__factory"; diff --git a/src/types/factories/@account-abstraction/contracts/samples/callback/index.ts b/src/types/factories/@account-abstraction/contracts/samples/callback/index.ts index 7fb949f..75032bf 100644 --- a/src/types/factories/@account-abstraction/contracts/samples/callback/index.ts +++ b/src/types/factories/@account-abstraction/contracts/samples/callback/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { TokenCallbackHandler__factory } from './TokenCallbackHandler__factory' +export { TokenCallbackHandler__factory } from "./TokenCallbackHandler__factory"; diff --git a/src/types/factories/@account-abstraction/contracts/samples/index.ts b/src/types/factories/@account-abstraction/contracts/samples/index.ts index bdde9cd..01db08e 100644 --- a/src/types/factories/@account-abstraction/contracts/samples/index.ts +++ b/src/types/factories/@account-abstraction/contracts/samples/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as callback from './callback' +export * as callback from "./callback"; diff --git a/src/types/factories/@account-abstraction/index.ts b/src/types/factories/@account-abstraction/index.ts index 48df511..6397da0 100644 --- a/src/types/factories/@account-abstraction/index.ts +++ b/src/types/factories/@account-abstraction/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as contracts from './contracts' +export * as contracts from "./contracts"; diff --git a/src/types/factories/@openzeppelin/contracts/access/index.ts b/src/types/factories/@openzeppelin/contracts/access/index.ts index cfc7ac5..e332ae3 100644 --- a/src/types/factories/@openzeppelin/contracts/access/index.ts +++ b/src/types/factories/@openzeppelin/contracts/access/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { Ownable__factory } from './Ownable__factory' +export { Ownable__factory } from "./Ownable__factory"; diff --git a/src/types/factories/@openzeppelin/contracts/index.ts b/src/types/factories/@openzeppelin/contracts/index.ts index d08892b..cacd2b7 100644 --- a/src/types/factories/@openzeppelin/contracts/index.ts +++ b/src/types/factories/@openzeppelin/contracts/index.ts @@ -1,8 +1,8 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as access from './access' -export * as interfaces from './interfaces' -export * as proxy from './proxy' -export * as token from './token' -export * as utils from './utils' +export * as access from "./access"; +export * as interfaces from "./interfaces"; +export * as proxy from "./proxy"; +export * as token from "./token"; +export * as utils from "./utils"; diff --git a/src/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts b/src/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts index dc55b60..ecca133 100644 --- a/src/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +++ b/src/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { IERC1822Proxiable__factory } from './IERC1822Proxiable__factory' +export { IERC1822Proxiable__factory } from "./IERC1822Proxiable__factory"; diff --git a/src/types/factories/@openzeppelin/contracts/interfaces/index.ts b/src/types/factories/@openzeppelin/contracts/interfaces/index.ts index d739b78..09337a9 100644 --- a/src/types/factories/@openzeppelin/contracts/interfaces/index.ts +++ b/src/types/factories/@openzeppelin/contracts/interfaces/index.ts @@ -1,5 +1,5 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as draftIerc1822Sol from './draft-IERC1822.sol' -export { IERC1967__factory } from './IERC1967__factory' +export * as draftIerc1822Sol from "./draft-IERC1822.sol"; +export { IERC1967__factory } from "./IERC1967__factory"; diff --git a/src/types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts b/src/types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts index f172c6e..62504d8 100644 --- a/src/types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +++ b/src/types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts @@ -1,5 +1,5 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { ERC1967Proxy__factory } from './ERC1967Proxy__factory' -export { ERC1967Upgrade__factory } from './ERC1967Upgrade__factory' +export { ERC1967Proxy__factory } from "./ERC1967Proxy__factory"; +export { ERC1967Upgrade__factory } from "./ERC1967Upgrade__factory"; diff --git a/src/types/factories/@openzeppelin/contracts/proxy/beacon/index.ts b/src/types/factories/@openzeppelin/contracts/proxy/beacon/index.ts index a1c7768..4a9d628 100644 --- a/src/types/factories/@openzeppelin/contracts/proxy/beacon/index.ts +++ b/src/types/factories/@openzeppelin/contracts/proxy/beacon/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { IBeacon__factory } from './IBeacon__factory' +export { IBeacon__factory } from "./IBeacon__factory"; diff --git a/src/types/factories/@openzeppelin/contracts/proxy/index.ts b/src/types/factories/@openzeppelin/contracts/proxy/index.ts index a22f1e1..6706623 100644 --- a/src/types/factories/@openzeppelin/contracts/proxy/index.ts +++ b/src/types/factories/@openzeppelin/contracts/proxy/index.ts @@ -1,7 +1,7 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as erc1967 from './ERC1967' -export * as beacon from './beacon' -export * as utils from './utils' -export { Proxy__factory } from './Proxy__factory' +export * as erc1967 from "./ERC1967"; +export * as beacon from "./beacon"; +export * as utils from "./utils"; +export { Proxy__factory } from "./Proxy__factory"; diff --git a/src/types/factories/@openzeppelin/contracts/proxy/utils/index.ts b/src/types/factories/@openzeppelin/contracts/proxy/utils/index.ts index 21b5162..4baae4a 100644 --- a/src/types/factories/@openzeppelin/contracts/proxy/utils/index.ts +++ b/src/types/factories/@openzeppelin/contracts/proxy/utils/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { Initializable__factory } from './Initializable__factory' +export { Initializable__factory } from "./Initializable__factory"; diff --git a/src/types/factories/@openzeppelin/contracts/token/ERC1155/index.ts b/src/types/factories/@openzeppelin/contracts/token/ERC1155/index.ts index 56dd415..3e57b69 100644 --- a/src/types/factories/@openzeppelin/contracts/token/ERC1155/index.ts +++ b/src/types/factories/@openzeppelin/contracts/token/ERC1155/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { IERC1155Receiver__factory } from './IERC1155Receiver__factory' +export { IERC1155Receiver__factory } from "./IERC1155Receiver__factory"; diff --git a/src/types/factories/@openzeppelin/contracts/token/ERC721/index.ts b/src/types/factories/@openzeppelin/contracts/token/ERC721/index.ts index 993d4c8..aaceed6 100644 --- a/src/types/factories/@openzeppelin/contracts/token/ERC721/index.ts +++ b/src/types/factories/@openzeppelin/contracts/token/ERC721/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { IERC721Receiver__factory } from './IERC721Receiver__factory' +export { IERC721Receiver__factory } from "./IERC721Receiver__factory"; diff --git a/src/types/factories/@openzeppelin/contracts/token/ERC777/index.ts b/src/types/factories/@openzeppelin/contracts/token/ERC777/index.ts index f0b506f..bbf9d2f 100644 --- a/src/types/factories/@openzeppelin/contracts/token/ERC777/index.ts +++ b/src/types/factories/@openzeppelin/contracts/token/ERC777/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { IERC777Recipient__factory } from './IERC777Recipient__factory' +export { IERC777Recipient__factory } from "./IERC777Recipient__factory"; diff --git a/src/types/factories/@openzeppelin/contracts/token/index.ts b/src/types/factories/@openzeppelin/contracts/token/index.ts index 7486260..2111526 100644 --- a/src/types/factories/@openzeppelin/contracts/token/index.ts +++ b/src/types/factories/@openzeppelin/contracts/token/index.ts @@ -1,6 +1,6 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as erc1155 from './ERC1155' -export * as erc721 from './ERC721' -export * as erc777 from './ERC777' +export * as erc1155 from "./ERC1155"; +export * as erc721 from "./ERC721"; +export * as erc777 from "./ERC777"; diff --git a/src/types/factories/@openzeppelin/contracts/utils/index.ts b/src/types/factories/@openzeppelin/contracts/utils/index.ts index 2cd23a6..03cab17 100644 --- a/src/types/factories/@openzeppelin/contracts/utils/index.ts +++ b/src/types/factories/@openzeppelin/contracts/utils/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as introspection from './introspection' +export * as introspection from "./introspection"; diff --git a/src/types/factories/@openzeppelin/contracts/utils/introspection/index.ts b/src/types/factories/@openzeppelin/contracts/utils/introspection/index.ts index 089b72d..85d3733 100644 --- a/src/types/factories/@openzeppelin/contracts/utils/introspection/index.ts +++ b/src/types/factories/@openzeppelin/contracts/utils/introspection/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { IERC165__factory } from './IERC165__factory' +export { IERC165__factory } from "./IERC165__factory"; diff --git a/src/types/factories/@openzeppelin/index.ts b/src/types/factories/@openzeppelin/index.ts index 48df511..6397da0 100644 --- a/src/types/factories/@openzeppelin/index.ts +++ b/src/types/factories/@openzeppelin/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as contracts from './contracts' +export * as contracts from "./contracts"; diff --git a/src/types/factories/contracts/SmartAccountFactory__factory.ts b/src/types/factories/contracts/SmartAccountFactory__factory.ts index 5993d18..e830028 100644 --- a/src/types/factories/contracts/SmartAccountFactory__factory.ts +++ b/src/types/factories/contracts/SmartAccountFactory__factory.ts @@ -1,157 +1,170 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from 'ethers' -import type { Provider, TransactionRequest } from '@ethersproject/providers' -import type { SmartAccountFactory, SmartAccountFactoryInterface } from '../../contracts/SmartAccountFactory' +import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; +import type { Provider, TransactionRequest } from "@ethersproject/providers"; +import type { + SmartAccountFactory, + SmartAccountFactoryInterface, +} from "../../contracts/SmartAccountFactory"; const _abi = [ { inputs: [ { - internalType: 'contract IEntryPoint', - name: '_entryPoint', - type: 'address', + internalType: "contract IEntryPoint", + name: "_entryPoint", + type: "address", }, { - internalType: 'address', - name: '_handler', - type: 'address', + internalType: "address", + name: "_handler", + type: "address", }, ], - stateMutability: 'nonpayable', - type: 'constructor', + stateMutability: "nonpayable", + type: "constructor", }, { inputs: [], - name: 'accountImplementation', + name: "accountImplementation", outputs: [ { - internalType: 'contract SmartAccount', - name: '', - type: 'address', + internalType: "contract SmartAccount", + name: "", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address[]', - name: 'validators', - type: 'address[]', + internalType: "address[]", + name: "validators", + type: "address[]", }, { - internalType: 'bytes[]', - name: 'data', - type: 'bytes[]', + internalType: "bytes[]", + name: "data", + type: "bytes[]", }, { - internalType: 'uint256', - name: 'salt', - type: 'uint256', + internalType: "uint256", + name: "salt", + type: "uint256", }, ], - name: 'createAccount', + name: "createAccount", outputs: [ { - internalType: 'contract SmartAccount', - name: 'ret', - type: 'address', + internalType: "contract SmartAccount", + name: "ret", + type: "address", }, ], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address[]', - name: 'validators', - type: 'address[]', + internalType: "address[]", + name: "validators", + type: "address[]", }, { - internalType: 'bytes[]', - name: 'data', - type: 'bytes[]', + internalType: "bytes[]", + name: "data", + type: "bytes[]", }, { - internalType: 'uint256', - name: 'salt', - type: 'uint256', + internalType: "uint256", + name: "salt", + type: "uint256", }, ], - name: 'getAddress', + name: "getAddress", outputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'handler', + name: "handler", outputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, -] as const +] as const; const _bytecode = - '0x60c0346100f4576001600160401b0390601f612e9f38819003918201601f1916830191848311848410176100de5780849260409485528339810103126100f45780516001600160a01b038082169290918390036100f4576020015190811681036100f45760a0526040519161244390818401908111848210176100de576020928492610a5c843981520301906000f080156100d25760805260405161096290816100fa823960805181818160fd015281816103e401526104d6015260a051818181606c0152818161037901526104830152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052604160045260246000fd5b600080fdfe608080604052600436101561001357600080fd5b600090813560e01c90816311464fbe146100de5750806340d513b8146100c157806397657715146100935763c80916d41461004d57600080fd5b3461009057806003193601126100905760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b80fd5b50346100905760206100b06100a73661015b565b93929092610437565b6001600160a01b0360405191168152f35b50346100905760206100b06100d53661015b565b93929092610342565b9050346101215781600319360112610121576020906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b5080fd5b9181601f840112156101565782359167ffffffffffffffff8311610156576020808501948460051b01011161015657565b600080fd5b60606003198201126101565767ffffffffffffffff91600435838111610156578261018891600401610125565b93909392602435918211610156576101a291600401610125565b909160443590565b90949192939460608201946001600160a01b03809216835280602096606088860152526080830194916000905b8282106102815750505050604081840391015280825282820192808260051b8401019480946000915b848310610211575050505050505090565b90919293949596601f19808883030184528835601e1984360301811215610156578301868101903567ffffffffffffffff811161015657803603821361015657838893601f83808796879660019a5286860137600085828601015201160101990193019301919594939290610200565b909192969495873590828216809203610156579081529496948701959487019291600101906101d7565b90601f8019910116810190811067ffffffffffffffff8211176102cd57604052565b634e487b7160e01b600052604160045260246000fd5b60005b8381106102f65750506000910152565b81810151838201526020016102e6565b90916001600160a01b036060931682526040602083015261033681518092816040860152602086860191016102e3565b601f01601f1916010190565b91939290936103548483838887610437565b803b61042557506103af92916103a19160405196879463d561e48960e01b60208701527f0000000000000000000000000000000000000000000000000000000000000000602487016101aa565b03601f1981018452836102ab565b604051610403928382019382851067ffffffffffffffff8611176102cd57829161040a9161055384396001600160a01b0395867f00000000000000000000000000000000000000000000000000000000000000001690610306565b03906000f58015610419571690565b6040513d6000823e3d90fd5b6001600160a01b031695945050505050565b92600b9361052e61053a6055979495610403936040978851916104ab6020988995610464878b01876102ab565b898652868601996105538b398c5163d561e48960e01b888201529485947f0000000000000000000000000000000000000000000000000000000000000000602487016101aa565b036104be601f19918281018452836102ab565b6105088a5191826104fc878201956001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001687610306565b039081018352826102ab565b895195869361051f868601998a92519283916102e3565b840191518093868401906102e3565b010380845201826102ab565b5190208351938401528201523081520160ff8153209056fe604060808152610403908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160be90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615605f5773ffffffffffffffffffffffffffffffffffffffff7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54166000808092368280378136915af43d82803e15605b573d90f35b3d90fd5b73ffffffffffffffffffffffffffffffffffffffff7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54166000808092368280378136915af43d82803e15605b573d90f3fea164736f6c6343000813000aa164736f6c6343000813000a60a0346200015457601f6200244338819003918201601f19168301916001600160401b0383118484101762000159578084926020946040528339810103126200015457516001600160a01b0381168103620001545760805260005460ff8160081c16620000ff5760ff80821603620000c3575b6040516122d390816200017082396080518181816101c9015281816103db015281816104fe015281816105990152818161088001528181610d3101528181610d7101528181610e920152610f5d0152f35b60ff90811916176000557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160ff8152a13862000072565b60405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b6064820152608490fd5b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001a575b3415611d0c575b600080fd5b60003560e01c80633a871cdd1461018a5780633d6767f81461018557806347e1da2a146101805780634a58db191461017b5780634d44560d146101765780635a438970146101715780635faac46b1461016c5780636dd3bf741461016757806375f2516714610162578063856dfd991461015d5780639229e12014610158578063a28b34c414610153578063ad05234a1461014e578063b0d691fe14610149578063b61d27f614610144578063bb6aa2b41461013f578063c399ec881461013a578063cf777df914610135578063d087d28814610130578063d2b0e7791461012b578063d561e48914610126578063f08a0323146101215763fa8490150361000e57611237565b6111b3565b611089565b610fc7565b610f2a565b610f03565b610e66565b610da6565b610d55565b610d11565b610c35565b610aa7565b61096c565b6108fe565b6108cd565b610864565b610718565b6105f9565b610567565b6104e7565b61036a565b610306565b3461001557600319606036820112610015576004359067ffffffffffffffff821161001557610160908236030112610015576044356001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633036102385761020261021a926024359060040161185e565b908061021e575b506040519081529081906020820190565b0390f35b600080808093338219f150610231611499565b5038610209565b60405162461bcd60e51b815260206004820152601c60248201527f6163636f756e743a206e6f742066726f6d20456e747279506f696e74000000006044820152606490fd5b6001600160a01b0381160361001557565b35906102998261027d565b565b9181601f840112156100155782359167ffffffffffffffff8311610015576020838186019501011161001557565b906040600319830112610015576004356102e28161027d565b916024359067ffffffffffffffff8211610015576103029160040161029b565b9091565b3461001557610314366102c9565b903033036103275761032592611da2565b005b60405163d97d09c160e01b8152600490fd5b9181601f840112156100155782359167ffffffffffffffff8311610015576020808501948460051b01011161001557565b3461001557606036600319011261001557600467ffffffffffffffff81358181116100155761039c9036908401610339565b9092602435838111610015576103b59036908301610339565b9093604435908111610015576103ce9036908401610339565b9490926001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633036104cd578585148015906104b9575b6104aa57508161045e57505060005b82811061042457005b8061045861043d610438600194878a611551565b611566565b61045261044b8489886115a3565b369161168f565b906119d9565b0161041b565b91909460009493945b85811061047057005b806104a46104846104386001948a87611551565b61048f838b89611551565b3561049e61044b858b8a6115a3565b91611b64565b01610467565b60405163150072e360e11b8152fd5b50821515801561040c57508583141561040c565b60405163cb10477360e01b8152fd5b600091031261001557565b600080600319360112610564576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681813b156105645760405163b760faf960e01b8152306004820152918290602490829034905af1801561055f57610553575080f35b61055c90611427565b80f35b611471565b80fd5b346100155760006040366003190112610564576004356105868161027d565b30330361032757816001600160a01b03807f00000000000000000000000000000000000000000000000000000000000000001692833b156105f55760449083604051958694859363040b850f60e31b855216600484015260243560248401525af1801561055f57610553575080f35b8280fd5b3461001557610607366102c9565b9130330361032757806106216001600160a01b0392611f3e565b1690813b156100155760405190633cbcc2b960e21b8252818061064b60009687946004840161192c565b038183865af1801561055f5761068b575b5060207fcc87bd27eafb647c2f20f074fcdd0fe8d9c2171b9876dacd94c4a62149d4fe0391604051908152a180f35b7fcc87bd27eafb647c2f20f074fcdd0fe8d9c2171b9876dacd94c4a62149d4fe0391926106b9602092611427565b92915061065c565b90929192604082016040835281518091526060830160208093019160005b848282106106fb575050506001600160a01b0391509416910152565b84516001600160a01b0316845293840193909201916001016106df565b34610015576040366003190112610015576004356107358161027d565b6024359061074282611e3b565b61074f6040519182611440565b828152601f1961075e84611e3b565b013660208301376000926001600160a01b038093168452600360205261078f604085206001600160a01b0390541690565b838116801515908161081c575b5080610813575b15610800576107f46107e7826107ce6107fa946107c08a89611e53565b906001600160a01b03169052565b6001600160a01b03166000526003602052604060002090565b546001600160a01b031690565b94611e67565b9361078f565b8285815261021a604051928392836106c1565b508185106107a3565b6001915014153861079c565b6060600319820112610015576004356108408161027d565b91602435916044359067ffffffffffffffff8211610015576103029160040161029b565b346100155761087236610828565b6001600160a01b03939291937f00000000000000000000000000000000000000000000000000000000000000001633036108bb57610325936108b591369161168f565b91611cf5565b60405163cb10477360e01b8152600490fd5b346100155760203660031901126100155760206108f46004356108ef8161027d565b611e8c565b6040519015158152f35b346100155760003660031901126100155760207f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4546001600160a01b0360405191168152f35b60409060031901126100155760043561095c8161027d565b906024356109698161027d565b90565b346100155761097a36610944565b90303303610327576001600160a01b03808316809181151580610a9c575b6109a190611ef2565b80841660005260036020526040600020541603610a5757610a4e610a3e846107ce602095610a23610a096107e77fae2356b2cb822c142448e45b195255df334895b014113d50bb822c311cddc8559a6001600160a01b03166000526003602052604060002090565b916001600160a01b03166000526003602052604060002090565b906001600160a01b03166001600160a01b0319825416179055565b6001600160a01b03198154169055565b604051908152a1005b60405162461bcd60e51b815260206004820152601960248201527f6974656d20616e64207072656974656d206d69736d61746368000000000000006044820152606490fd5b506001821415610998565b3461001557606036600319011261001557600435610ac48161027d565b60243590610ad18261027d565b604435610add8161027d565b303303610327576001600160a01b0381169260405163e445e7dd60e01b80825260209182816004818a5afa90811561055f57600091610c18575b50610b218161196d565b610b9a57505050610b3191612184565b803b156100155760405162d638f360e41b815260008160048183865af1801561055f57610b81575b507fa20b2dba0769450542a688d94941808255eb735da2fa53df12ff98fc529ffd4e600080a2005b80610b8e610b9492611427565b806104dc565b38610b59565b6040519081528181600481895afa90811561055f57600192600092610beb575b5050610bc58161196d565b03610bd957610bd49250612225565b610b31565b610be682610bd494612184565b612225565b610c0a9250803d10610c11575b610c028183611440565b810190611955565b3880610bba565b503d610bf8565b610c2f9150833d8511610c1157610c028183611440565b38610b17565b3461001557604036600319011261001557600435610c528161027d565b60243590610c5f82611e3b565b610c6c6040519182611440565b828152601f19610c7b84611e3b565b013660208301376000926001600160a01b0380931684526004602052610cac604085206001600160a01b0390541690565b8381168015159081610d05575b5080610cfc575b15610800576107f46107e782610cdd610cf6946107c08a89611e53565b6001600160a01b03166000526004602052604060002090565b93610cac565b50818510610cc0565b60019150141538610cb9565b346100155760003660031901126100155760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461001557610d6336610828565b6001600160a01b03939291937f00000000000000000000000000000000000000000000000000000000000000001633036108bb576103259361049e91369161168f565b3461001557610db4366102c9565b91610dc5610dc133611ebf565b1590565b610e4e57610dd5610dc182611e8c565b610e2b576001600160a01b031691823b1561001557610e0e926000928360405180968195829463064acaab60e11b84526004840161192c565b03925af1801561055f57610e1e57005b80610b8e61032592611427565b60405163304106bf60e11b81526001600160a01b03919091166004820152602490fd5b60405163a841d6f560e01b8152336004820152602490fd5b34610015576000366003190112610015576040516370a0823160e01b81523060048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa801561055f57602091600091610ed6575b50604051908152f35b610ef69150823d8111610efc575b610eee8183611440565b810190611462565b38610ecd565b503d610ee4565b346100155760203660031901126100155760206108f4600435610f258161027d565b611ebf565b3461001557600036600319011261001557604051631aab3f0d60e11b8152306004820152600060248201526020816044817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa801561055f5761021a91600091610fa957506040519081529081906020820190565b610fc1915060203d8111610efc57610eee8183611440565b38610209565b3461001557610fd536610944565b90303303610327576001600160a01b0380831680918115158061107e575b610ffc90611ef2565b80841660005260046020526040600020541603610a5757610a4e610a3e84610cdd602095610a236110646107e77f779fb1c42fad72db3b3d13498dce770027f44544e8a1a5a9e06e530db8cd68929a6001600160a01b03166000526004602052604060002090565b916001600160a01b03166000526004602052604060002090565b506001821415610ff3565b34610015576060366003190112610015576004356110a68161027d565b67ffffffffffffffff602435818111610015576110c7903690600401610339565b90604435928311610015576110e3611127933690600401610339565b9290916000549561110b60ff8860081c1615809881996111a5575b8115611185575b506114c9565b8661111e600160ff196000541617600055565b61116c576115ba565b61112d57005b61113d61ff001960005416600055565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a1005b61118061010061ff00196000541617600055565b6115ba565b303b15915081611197575b5038611105565b6001915060ff161438611190565b600160ff82161091506110fe565b34610015576020366003190112610015576004356111d08161027d565b303303610327577f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4549061120381611d5d565b6001600160a01b0380911691167f06be9a1bea257286cf2afa8205ed494ca9d6a4b41aa58d04238deebada20fb0c600080a3005b3461001557611245366102c9565b90303303610327576040516301ffc9a760e01b81526329c791d960e01b60048201526001600160a01b03841693906020908181602481895afa90811561055f576000916113e4575b50156113d25760405163e445e7dd60e01b8082529082816004818a5afa90811561055f576000916113b5575b506112c38161196d565b6113485750506112d290611fd0565b823b15610015576040516313861fb560e01b815291600091839182916112fc91906004840161192c565b038183865af1801561055f57611335575b507fe9fdf38cc72369bf1f90f6adc9835796c285cba93070412e0e48413e63c5b908600080a2005b80610b8e61134292611427565b3861130d565b6040519081528181600481895afa90811561055f57600192600092611398575b50506113738161196d565b036113865761138190612071565b6112d2565b8061139361138192611fd0565b612071565b6113ae9250803d10610c1157610c028183611440565b3880611368565b6113cc9150833d8511610c1157610c028183611440565b386112b9565b604051639c9d882360e01b8152600490fd5b6114049150823d841161140a575b6113fc8183611440565b81019061193d565b3861128d565b503d6113f2565b634e487b7160e01b600052604160045260246000fd5b67ffffffffffffffff811161143b57604052565b611411565b90601f8019910116810190811067ffffffffffffffff82111761143b57604052565b90816020910312610015575190565b6040513d6000823e3d90fd5b67ffffffffffffffff811161143b57601f01601f191660200190565b3d156114c4573d906114aa8261147d565b916114b86040519384611440565b82523d6000602084013e565b606090565b156114d057565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608490fd5b634e487b7160e01b600052603260045260246000fd5b91908110156115615760051b0190565b61153b565b356109698161027d565b903590601e1981360301821215610015570180359067ffffffffffffffff82116100155760200191813603831361001557565b90821015611561576103029160051b810190611570565b939092919381850361167d576115cf90611d5d565b600160008190527fa15bc60c955c405d20d9149c709e2460f1c2d9a497496a7f46004d1772c3054c80546001600160a01b0319908116831790915560046020527fabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe058054909116821790559360005b81811061164c57505050505050565b8061167761165c88938589611551565b356116668161027d565b6116718387896115a3565b91611da2565b0161163d565b60405163150072e360e11b8152600490fd5b92919261169b8261147d565b916116a96040519384611440565b829481845281830111610015578281602093846000960137010152565b9035601e198236030181121561001557016020813591019167ffffffffffffffff821161001557813603831361001557565b908060209392818452848401376000828201840152601f01601f1916010190565b919082519283825260005b848110611745575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201611724565b61184b6117b6610969959360608452611785606085016117788361028e565b6001600160a01b03169052565b6020810135608085015261183b61179f60408301836116c6565b9390610160948560a08901526101c08801916116f8565b916118326117de6117ca60608401846116c6565b605f198a8803810160c08c015296916116f8565b608083013560e08901526118216101009660a0850135888b01526101209060c0860135828c01526101409860e08701358a8d0152860135908b01528401846116c6565b90868a8403016101808b01526116f8565b938101906116c6565b91858403016101a08601526116f8565b9260208201526040818403910152611719565b61186c610140820182611570565b8101604082820312610015578135916118848361027d565b60208101359067ffffffffffffffff8211610015570181601f82011215610015576001600160a01b03918160206118bd9335910161168f565b91166118cb610dc182611e8c565b611923576118f593600060209460405196879586948593634dffc32360e01b855260048501611759565b03925af190811561055f5760009161190b575090565b610969915060203d8111610efc57610eee8183611440565b50505050600190565b9160206109699381815201916116f8565b90816020910312610015575180151581036100155790565b90816020910312610015575160038110156100155790565b6003111561197757565b634e487b7160e01b600052602160045260246000fd5b6060906001600160a01b036109699493168152600060208201528160408201520190611719565b61096993926001600160a01b0360609316825260208201528160408201520190611719565b6001600081905260205290611a0d7fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f6107e7565b6001600160a01b038116906001821115611a9657813b1561001557604051632b668a3760e21b8152916000908390818381611a4c898b6004840161198d565b03925af190811561055f57611a7e926107e792611a83575b506001600160a01b03166000526001602052604060002090565b611a0d565b80610b8e611a9092611427565b38611a64565b5050611aa28183611ccd565b60016000526002602052611ad57fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e06107e7565b6001600160a01b038116906001821115611b5e57813b1561001557604051632b668a3760e21b8152916000908390818381611b14898b6004840161198d565b03925af190811561055f57611b46926107e792611b4b575b506001600160a01b03166000526002602052604060002090565b611ad5565b80610b8e611b5892611427565b38611b2c565b50505050565b600160008190526020529291611b997fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f6107e7565b6001600160a01b038116906001821115611c0f57813b1561001557604051632b668a3760e21b8152916000908390818381611bd9898b8e600485016119b4565b03925af190811561055f57611c0a926107e792611a8357506001600160a01b03166000526001602052604060002090565b611b99565b5050611c1c818386611cf5565b60016000526002602052611c4f7fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e06107e7565b6001600160a01b038116906001821115611cc557813b1561001557604051632b668a3760e21b8152916000908390818381611c8f898b8e600485016119b4565b03925af190811561055f57611cc0926107e792611b4b57506001600160a01b03166000526002602052604060002090565b611c4f565b505050509050565b600091829182602083519301915af1611ce4611499565b9015611ced5750565b602081519101fd5b916000928392602083519301915af1611ce4611499565b7f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4548015610325576000808092368280373360601b3652818060143601925af13d82803e15611d59573d90f35b3d90fd5b6001600160a01b03811615611d90577f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d455565b6040516303988b8160e61b8152600490fd5b6001600160a01b0390929192611db781612112565b1690813b156100155760405163064acaab60e11b8152602060048201529260009184918291611deb916024840191906116f8565b038183855af190811561055f577f702ed4645b59645b8a8b7dd88e069cb684a1170094eca847038827e03c1107a492602092611e2c575b50604051908152a1565b611e3590611427565b38611e22565b67ffffffffffffffff811161143b5760051b60200190565b80518210156115615760209160051b010190565b6000198114611e765760010190565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b038091169081600114159182611ea857505090565b909150600052600360205260406000205416151590565b6001600160a01b038091169081600114159182611edb57505090565b909150600052600460205260406000205416151590565b15611ef957565b60405162461bcd60e51b815260206004820152601e60248201527f6974656d2063616e2774206265207a65726f206f722073656e74696e656c00006044820152606490fd5b6001600160a01b039081811680151580611fc5575b611f5c90611ef2565b6000818152600460205283604082205416611b5e57611fa560409261029995600184528484205416908352838320906001600160a01b03166001600160a01b0319825416179055565b6001815220906001600160a01b03166001600160a01b0319825416179055565b506001811415611f53565b6001600160a01b039081811680151580612066575b611fee90611ef2565b600090808252600160205283604083205416611b5e576040826102999560016120369552828220541692815220906001600160a01b03166001600160a01b0319825416179055565b600160008190526020527fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f610a23565b506001811415611fe5565b6001600160a01b039081811680151580612107575b61208f90611ef2565b600090808252600260205283604083205416611b5e576040826102999560016120d79552828220541692815220906001600160a01b03166001600160a01b0319825416179055565b600160005260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e0610a23565b506001811415612086565b6001600160a01b039081811680151580612179575b61213090611ef2565b6000818152600360205283604082205416611b5e57611fa560409261029995600184528484205416908352838320906001600160a01b03166001600160a01b0319825416179055565b506001811415612127565b6001600160a01b03918281168015158061221a575b6121a290611ef2565b8383166000526001602052836040600020541603610a5757612201610a3e92610a23610299956121e5856001600160a01b03166000526001602052604060002090565b5416916001600160a01b03166000526001602052604060002090565b6001600160a01b03166000526001602052604060002090565b506001811415612199565b6001600160a01b0391828116801515806122bb575b61224390611ef2565b8383166000526002602052836040600020541603610a57576122a2610a3e92610a2361029995612286856001600160a01b03166000526002602052604060002090565b5416916001600160a01b03166000526002602052604060002090565b6001600160a01b03166000526002602052604060002090565b50600181141561223a56fea164736f6c6343000813000a' + "0x60c0346100f4576001600160401b0390601f612e9f38819003918201601f1916830191848311848410176100de5780849260409485528339810103126100f45780516001600160a01b038082169290918390036100f4576020015190811681036100f45760a0526040519161244390818401908111848210176100de576020928492610a5c843981520301906000f080156100d25760805260405161096290816100fa823960805181818160fd015281816103e401526104d6015260a051818181606c0152818161037901526104830152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052604160045260246000fd5b600080fdfe608080604052600436101561001357600080fd5b600090813560e01c90816311464fbe146100de5750806340d513b8146100c157806397657715146100935763c80916d41461004d57600080fd5b3461009057806003193601126100905760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b80fd5b50346100905760206100b06100a73661015b565b93929092610437565b6001600160a01b0360405191168152f35b50346100905760206100b06100d53661015b565b93929092610342565b9050346101215781600319360112610121576020906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b5080fd5b9181601f840112156101565782359167ffffffffffffffff8311610156576020808501948460051b01011161015657565b600080fd5b60606003198201126101565767ffffffffffffffff91600435838111610156578261018891600401610125565b93909392602435918211610156576101a291600401610125565b909160443590565b90949192939460608201946001600160a01b03809216835280602096606088860152526080830194916000905b8282106102815750505050604081840391015280825282820192808260051b8401019480946000915b848310610211575050505050505090565b90919293949596601f19808883030184528835601e1984360301811215610156578301868101903567ffffffffffffffff811161015657803603821361015657838893601f83808796879660019a5286860137600085828601015201160101990193019301919594939290610200565b909192969495873590828216809203610156579081529496948701959487019291600101906101d7565b90601f8019910116810190811067ffffffffffffffff8211176102cd57604052565b634e487b7160e01b600052604160045260246000fd5b60005b8381106102f65750506000910152565b81810151838201526020016102e6565b90916001600160a01b036060931682526040602083015261033681518092816040860152602086860191016102e3565b601f01601f1916010190565b91939290936103548483838887610437565b803b61042557506103af92916103a19160405196879463d561e48960e01b60208701527f0000000000000000000000000000000000000000000000000000000000000000602487016101aa565b03601f1981018452836102ab565b604051610403928382019382851067ffffffffffffffff8611176102cd57829161040a9161055384396001600160a01b0395867f00000000000000000000000000000000000000000000000000000000000000001690610306565b03906000f58015610419571690565b6040513d6000823e3d90fd5b6001600160a01b031695945050505050565b92600b9361052e61053a6055979495610403936040978851916104ab6020988995610464878b01876102ab565b898652868601996105538b398c5163d561e48960e01b888201529485947f0000000000000000000000000000000000000000000000000000000000000000602487016101aa565b036104be601f19918281018452836102ab565b6105088a5191826104fc878201956001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001687610306565b039081018352826102ab565b895195869361051f868601998a92519283916102e3565b840191518093868401906102e3565b010380845201826102ab565b5190208351938401528201523081520160ff8153209056fe604060808152610403908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160be90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615605f5773ffffffffffffffffffffffffffffffffffffffff7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54166000808092368280378136915af43d82803e15605b573d90f35b3d90fd5b73ffffffffffffffffffffffffffffffffffffffff7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54166000808092368280378136915af43d82803e15605b573d90f3fea164736f6c6343000813000aa164736f6c6343000813000a60a0346200015457601f6200244338819003918201601f19168301916001600160401b0383118484101762000159578084926020946040528339810103126200015457516001600160a01b0381168103620001545760805260005460ff8160081c16620000ff5760ff80821603620000c3575b6040516122d390816200017082396080518181816101c9015281816103db015281816104fe015281816105990152818161088001528181610d3101528181610d7101528181610e920152610f5d0152f35b60ff90811916176000557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160ff8152a13862000072565b60405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b6064820152608490fd5b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001a575b3415611d0c575b600080fd5b60003560e01c80633a871cdd1461018a5780633d6767f81461018557806347e1da2a146101805780634a58db191461017b5780634d44560d146101765780635a438970146101715780635faac46b1461016c5780636dd3bf741461016757806375f2516714610162578063856dfd991461015d5780639229e12014610158578063a28b34c414610153578063ad05234a1461014e578063b0d691fe14610149578063b61d27f614610144578063bb6aa2b41461013f578063c399ec881461013a578063cf777df914610135578063d087d28814610130578063d2b0e7791461012b578063d561e48914610126578063f08a0323146101215763fa8490150361000e57611237565b6111b3565b611089565b610fc7565b610f2a565b610f03565b610e66565b610da6565b610d55565b610d11565b610c35565b610aa7565b61096c565b6108fe565b6108cd565b610864565b610718565b6105f9565b610567565b6104e7565b61036a565b610306565b3461001557600319606036820112610015576004359067ffffffffffffffff821161001557610160908236030112610015576044356001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633036102385761020261021a926024359060040161185e565b908061021e575b506040519081529081906020820190565b0390f35b600080808093338219f150610231611499565b5038610209565b60405162461bcd60e51b815260206004820152601c60248201527f6163636f756e743a206e6f742066726f6d20456e747279506f696e74000000006044820152606490fd5b6001600160a01b0381160361001557565b35906102998261027d565b565b9181601f840112156100155782359167ffffffffffffffff8311610015576020838186019501011161001557565b906040600319830112610015576004356102e28161027d565b916024359067ffffffffffffffff8211610015576103029160040161029b565b9091565b3461001557610314366102c9565b903033036103275761032592611da2565b005b60405163d97d09c160e01b8152600490fd5b9181601f840112156100155782359167ffffffffffffffff8311610015576020808501948460051b01011161001557565b3461001557606036600319011261001557600467ffffffffffffffff81358181116100155761039c9036908401610339565b9092602435838111610015576103b59036908301610339565b9093604435908111610015576103ce9036908401610339565b9490926001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633036104cd578585148015906104b9575b6104aa57508161045e57505060005b82811061042457005b8061045861043d610438600194878a611551565b611566565b61045261044b8489886115a3565b369161168f565b906119d9565b0161041b565b91909460009493945b85811061047057005b806104a46104846104386001948a87611551565b61048f838b89611551565b3561049e61044b858b8a6115a3565b91611b64565b01610467565b60405163150072e360e11b8152fd5b50821515801561040c57508583141561040c565b60405163cb10477360e01b8152fd5b600091031261001557565b600080600319360112610564576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681813b156105645760405163b760faf960e01b8152306004820152918290602490829034905af1801561055f57610553575080f35b61055c90611427565b80f35b611471565b80fd5b346100155760006040366003190112610564576004356105868161027d565b30330361032757816001600160a01b03807f00000000000000000000000000000000000000000000000000000000000000001692833b156105f55760449083604051958694859363040b850f60e31b855216600484015260243560248401525af1801561055f57610553575080f35b8280fd5b3461001557610607366102c9565b9130330361032757806106216001600160a01b0392611f3e565b1690813b156100155760405190633cbcc2b960e21b8252818061064b60009687946004840161192c565b038183865af1801561055f5761068b575b5060207fcc87bd27eafb647c2f20f074fcdd0fe8d9c2171b9876dacd94c4a62149d4fe0391604051908152a180f35b7fcc87bd27eafb647c2f20f074fcdd0fe8d9c2171b9876dacd94c4a62149d4fe0391926106b9602092611427565b92915061065c565b90929192604082016040835281518091526060830160208093019160005b848282106106fb575050506001600160a01b0391509416910152565b84516001600160a01b0316845293840193909201916001016106df565b34610015576040366003190112610015576004356107358161027d565b6024359061074282611e3b565b61074f6040519182611440565b828152601f1961075e84611e3b565b013660208301376000926001600160a01b038093168452600360205261078f604085206001600160a01b0390541690565b838116801515908161081c575b5080610813575b15610800576107f46107e7826107ce6107fa946107c08a89611e53565b906001600160a01b03169052565b6001600160a01b03166000526003602052604060002090565b546001600160a01b031690565b94611e67565b9361078f565b8285815261021a604051928392836106c1565b508185106107a3565b6001915014153861079c565b6060600319820112610015576004356108408161027d565b91602435916044359067ffffffffffffffff8211610015576103029160040161029b565b346100155761087236610828565b6001600160a01b03939291937f00000000000000000000000000000000000000000000000000000000000000001633036108bb57610325936108b591369161168f565b91611cf5565b60405163cb10477360e01b8152600490fd5b346100155760203660031901126100155760206108f46004356108ef8161027d565b611e8c565b6040519015158152f35b346100155760003660031901126100155760207f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4546001600160a01b0360405191168152f35b60409060031901126100155760043561095c8161027d565b906024356109698161027d565b90565b346100155761097a36610944565b90303303610327576001600160a01b03808316809181151580610a9c575b6109a190611ef2565b80841660005260036020526040600020541603610a5757610a4e610a3e846107ce602095610a23610a096107e77fae2356b2cb822c142448e45b195255df334895b014113d50bb822c311cddc8559a6001600160a01b03166000526003602052604060002090565b916001600160a01b03166000526003602052604060002090565b906001600160a01b03166001600160a01b0319825416179055565b6001600160a01b03198154169055565b604051908152a1005b60405162461bcd60e51b815260206004820152601960248201527f6974656d20616e64207072656974656d206d69736d61746368000000000000006044820152606490fd5b506001821415610998565b3461001557606036600319011261001557600435610ac48161027d565b60243590610ad18261027d565b604435610add8161027d565b303303610327576001600160a01b0381169260405163e445e7dd60e01b80825260209182816004818a5afa90811561055f57600091610c18575b50610b218161196d565b610b9a57505050610b3191612184565b803b156100155760405162d638f360e41b815260008160048183865af1801561055f57610b81575b507fa20b2dba0769450542a688d94941808255eb735da2fa53df12ff98fc529ffd4e600080a2005b80610b8e610b9492611427565b806104dc565b38610b59565b6040519081528181600481895afa90811561055f57600192600092610beb575b5050610bc58161196d565b03610bd957610bd49250612225565b610b31565b610be682610bd494612184565b612225565b610c0a9250803d10610c11575b610c028183611440565b810190611955565b3880610bba565b503d610bf8565b610c2f9150833d8511610c1157610c028183611440565b38610b17565b3461001557604036600319011261001557600435610c528161027d565b60243590610c5f82611e3b565b610c6c6040519182611440565b828152601f19610c7b84611e3b565b013660208301376000926001600160a01b0380931684526004602052610cac604085206001600160a01b0390541690565b8381168015159081610d05575b5080610cfc575b15610800576107f46107e782610cdd610cf6946107c08a89611e53565b6001600160a01b03166000526004602052604060002090565b93610cac565b50818510610cc0565b60019150141538610cb9565b346100155760003660031901126100155760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461001557610d6336610828565b6001600160a01b03939291937f00000000000000000000000000000000000000000000000000000000000000001633036108bb576103259361049e91369161168f565b3461001557610db4366102c9565b91610dc5610dc133611ebf565b1590565b610e4e57610dd5610dc182611e8c565b610e2b576001600160a01b031691823b1561001557610e0e926000928360405180968195829463064acaab60e11b84526004840161192c565b03925af1801561055f57610e1e57005b80610b8e61032592611427565b60405163304106bf60e11b81526001600160a01b03919091166004820152602490fd5b60405163a841d6f560e01b8152336004820152602490fd5b34610015576000366003190112610015576040516370a0823160e01b81523060048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa801561055f57602091600091610ed6575b50604051908152f35b610ef69150823d8111610efc575b610eee8183611440565b810190611462565b38610ecd565b503d610ee4565b346100155760203660031901126100155760206108f4600435610f258161027d565b611ebf565b3461001557600036600319011261001557604051631aab3f0d60e11b8152306004820152600060248201526020816044817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa801561055f5761021a91600091610fa957506040519081529081906020820190565b610fc1915060203d8111610efc57610eee8183611440565b38610209565b3461001557610fd536610944565b90303303610327576001600160a01b0380831680918115158061107e575b610ffc90611ef2565b80841660005260046020526040600020541603610a5757610a4e610a3e84610cdd602095610a236110646107e77f779fb1c42fad72db3b3d13498dce770027f44544e8a1a5a9e06e530db8cd68929a6001600160a01b03166000526004602052604060002090565b916001600160a01b03166000526004602052604060002090565b506001821415610ff3565b34610015576060366003190112610015576004356110a68161027d565b67ffffffffffffffff602435818111610015576110c7903690600401610339565b90604435928311610015576110e3611127933690600401610339565b9290916000549561110b60ff8860081c1615809881996111a5575b8115611185575b506114c9565b8661111e600160ff196000541617600055565b61116c576115ba565b61112d57005b61113d61ff001960005416600055565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a1005b61118061010061ff00196000541617600055565b6115ba565b303b15915081611197575b5038611105565b6001915060ff161438611190565b600160ff82161091506110fe565b34610015576020366003190112610015576004356111d08161027d565b303303610327577f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4549061120381611d5d565b6001600160a01b0380911691167f06be9a1bea257286cf2afa8205ed494ca9d6a4b41aa58d04238deebada20fb0c600080a3005b3461001557611245366102c9565b90303303610327576040516301ffc9a760e01b81526329c791d960e01b60048201526001600160a01b03841693906020908181602481895afa90811561055f576000916113e4575b50156113d25760405163e445e7dd60e01b8082529082816004818a5afa90811561055f576000916113b5575b506112c38161196d565b6113485750506112d290611fd0565b823b15610015576040516313861fb560e01b815291600091839182916112fc91906004840161192c565b038183865af1801561055f57611335575b507fe9fdf38cc72369bf1f90f6adc9835796c285cba93070412e0e48413e63c5b908600080a2005b80610b8e61134292611427565b3861130d565b6040519081528181600481895afa90811561055f57600192600092611398575b50506113738161196d565b036113865761138190612071565b6112d2565b8061139361138192611fd0565b612071565b6113ae9250803d10610c1157610c028183611440565b3880611368565b6113cc9150833d8511610c1157610c028183611440565b386112b9565b604051639c9d882360e01b8152600490fd5b6114049150823d841161140a575b6113fc8183611440565b81019061193d565b3861128d565b503d6113f2565b634e487b7160e01b600052604160045260246000fd5b67ffffffffffffffff811161143b57604052565b611411565b90601f8019910116810190811067ffffffffffffffff82111761143b57604052565b90816020910312610015575190565b6040513d6000823e3d90fd5b67ffffffffffffffff811161143b57601f01601f191660200190565b3d156114c4573d906114aa8261147d565b916114b86040519384611440565b82523d6000602084013e565b606090565b156114d057565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608490fd5b634e487b7160e01b600052603260045260246000fd5b91908110156115615760051b0190565b61153b565b356109698161027d565b903590601e1981360301821215610015570180359067ffffffffffffffff82116100155760200191813603831361001557565b90821015611561576103029160051b810190611570565b939092919381850361167d576115cf90611d5d565b600160008190527fa15bc60c955c405d20d9149c709e2460f1c2d9a497496a7f46004d1772c3054c80546001600160a01b0319908116831790915560046020527fabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe058054909116821790559360005b81811061164c57505050505050565b8061167761165c88938589611551565b356116668161027d565b6116718387896115a3565b91611da2565b0161163d565b60405163150072e360e11b8152600490fd5b92919261169b8261147d565b916116a96040519384611440565b829481845281830111610015578281602093846000960137010152565b9035601e198236030181121561001557016020813591019167ffffffffffffffff821161001557813603831361001557565b908060209392818452848401376000828201840152601f01601f1916010190565b919082519283825260005b848110611745575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201611724565b61184b6117b6610969959360608452611785606085016117788361028e565b6001600160a01b03169052565b6020810135608085015261183b61179f60408301836116c6565b9390610160948560a08901526101c08801916116f8565b916118326117de6117ca60608401846116c6565b605f198a8803810160c08c015296916116f8565b608083013560e08901526118216101009660a0850135888b01526101209060c0860135828c01526101409860e08701358a8d0152860135908b01528401846116c6565b90868a8403016101808b01526116f8565b938101906116c6565b91858403016101a08601526116f8565b9260208201526040818403910152611719565b61186c610140820182611570565b8101604082820312610015578135916118848361027d565b60208101359067ffffffffffffffff8211610015570181601f82011215610015576001600160a01b03918160206118bd9335910161168f565b91166118cb610dc182611e8c565b611923576118f593600060209460405196879586948593634dffc32360e01b855260048501611759565b03925af190811561055f5760009161190b575090565b610969915060203d8111610efc57610eee8183611440565b50505050600190565b9160206109699381815201916116f8565b90816020910312610015575180151581036100155790565b90816020910312610015575160038110156100155790565b6003111561197757565b634e487b7160e01b600052602160045260246000fd5b6060906001600160a01b036109699493168152600060208201528160408201520190611719565b61096993926001600160a01b0360609316825260208201528160408201520190611719565b6001600081905260205290611a0d7fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f6107e7565b6001600160a01b038116906001821115611a9657813b1561001557604051632b668a3760e21b8152916000908390818381611a4c898b6004840161198d565b03925af190811561055f57611a7e926107e792611a83575b506001600160a01b03166000526001602052604060002090565b611a0d565b80610b8e611a9092611427565b38611a64565b5050611aa28183611ccd565b60016000526002602052611ad57fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e06107e7565b6001600160a01b038116906001821115611b5e57813b1561001557604051632b668a3760e21b8152916000908390818381611b14898b6004840161198d565b03925af190811561055f57611b46926107e792611b4b575b506001600160a01b03166000526002602052604060002090565b611ad5565b80610b8e611b5892611427565b38611b2c565b50505050565b600160008190526020529291611b997fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f6107e7565b6001600160a01b038116906001821115611c0f57813b1561001557604051632b668a3760e21b8152916000908390818381611bd9898b8e600485016119b4565b03925af190811561055f57611c0a926107e792611a8357506001600160a01b03166000526001602052604060002090565b611b99565b5050611c1c818386611cf5565b60016000526002602052611c4f7fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e06107e7565b6001600160a01b038116906001821115611cc557813b1561001557604051632b668a3760e21b8152916000908390818381611c8f898b8e600485016119b4565b03925af190811561055f57611cc0926107e792611b4b57506001600160a01b03166000526002602052604060002090565b611c4f565b505050509050565b600091829182602083519301915af1611ce4611499565b9015611ced5750565b602081519101fd5b916000928392602083519301915af1611ce4611499565b7f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4548015610325576000808092368280373360601b3652818060143601925af13d82803e15611d59573d90f35b3d90fd5b6001600160a01b03811615611d90577f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d455565b6040516303988b8160e61b8152600490fd5b6001600160a01b0390929192611db781612112565b1690813b156100155760405163064acaab60e11b8152602060048201529260009184918291611deb916024840191906116f8565b038183855af190811561055f577f702ed4645b59645b8a8b7dd88e069cb684a1170094eca847038827e03c1107a492602092611e2c575b50604051908152a1565b611e3590611427565b38611e22565b67ffffffffffffffff811161143b5760051b60200190565b80518210156115615760209160051b010190565b6000198114611e765760010190565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b038091169081600114159182611ea857505090565b909150600052600360205260406000205416151590565b6001600160a01b038091169081600114159182611edb57505090565b909150600052600460205260406000205416151590565b15611ef957565b60405162461bcd60e51b815260206004820152601e60248201527f6974656d2063616e2774206265207a65726f206f722073656e74696e656c00006044820152606490fd5b6001600160a01b039081811680151580611fc5575b611f5c90611ef2565b6000818152600460205283604082205416611b5e57611fa560409261029995600184528484205416908352838320906001600160a01b03166001600160a01b0319825416179055565b6001815220906001600160a01b03166001600160a01b0319825416179055565b506001811415611f53565b6001600160a01b039081811680151580612066575b611fee90611ef2565b600090808252600160205283604083205416611b5e576040826102999560016120369552828220541692815220906001600160a01b03166001600160a01b0319825416179055565b600160008190526020527fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f610a23565b506001811415611fe5565b6001600160a01b039081811680151580612107575b61208f90611ef2565b600090808252600260205283604083205416611b5e576040826102999560016120d79552828220541692815220906001600160a01b03166001600160a01b0319825416179055565b600160005260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e0610a23565b506001811415612086565b6001600160a01b039081811680151580612179575b61213090611ef2565b6000818152600360205283604082205416611b5e57611fa560409261029995600184528484205416908352838320906001600160a01b03166001600160a01b0319825416179055565b506001811415612127565b6001600160a01b03918281168015158061221a575b6121a290611ef2565b8383166000526001602052836040600020541603610a5757612201610a3e92610a23610299956121e5856001600160a01b03166000526001602052604060002090565b5416916001600160a01b03166000526001602052604060002090565b6001600160a01b03166000526001602052604060002090565b506001811415612199565b6001600160a01b0391828116801515806122bb575b61224390611ef2565b8383166000526002602052836040600020541603610a57576122a2610a3e92610a2361029995612286856001600160a01b03166000526002602052604060002090565b5416916001600160a01b03166000526002602052604060002090565b6001600160a01b03166000526002602052604060002090565b50600181141561223a56fea164736f6c6343000813000a"; -type SmartAccountFactoryConstructorParams = [signer?: Signer] | ConstructorParameters +type SmartAccountFactoryConstructorParams = + | [signer?: Signer] + | ConstructorParameters; -const isSuperArgs = (xs: SmartAccountFactoryConstructorParams): xs is ConstructorParameters => - xs.length > 1 +const isSuperArgs = ( + xs: SmartAccountFactoryConstructorParams +): xs is ConstructorParameters => xs.length > 1; export class SmartAccountFactory__factory extends ContractFactory { constructor(...args: SmartAccountFactoryConstructorParams) { if (isSuperArgs(args)) { - super(...args) + super(...args); } else { - super(_abi, _bytecode, args[0]) + super(_abi, _bytecode, args[0]); } } override deploy( _entryPoint: string, _handler: string, - overrides?: Overrides & { from?: string }, + overrides?: Overrides & { from?: string } ): Promise { - return super.deploy(_entryPoint, _handler, overrides || {}) as Promise + return super.deploy( + _entryPoint, + _handler, + overrides || {} + ) as Promise; } override getDeployTransaction( _entryPoint: string, _handler: string, - overrides?: Overrides & { from?: string }, + overrides?: Overrides & { from?: string } ): TransactionRequest { - return super.getDeployTransaction(_entryPoint, _handler, overrides || {}) + return super.getDeployTransaction(_entryPoint, _handler, overrides || {}); } override attach(address: string): SmartAccountFactory { - return super.attach(address) as SmartAccountFactory + return super.attach(address) as SmartAccountFactory; } override connect(signer: Signer): SmartAccountFactory__factory { - return super.connect(signer) as SmartAccountFactory__factory + return super.connect(signer) as SmartAccountFactory__factory; } - static readonly bytecode = _bytecode - static readonly abi = _abi + static readonly bytecode = _bytecode; + static readonly abi = _abi; static createInterface(): SmartAccountFactoryInterface { - return new utils.Interface(_abi) as SmartAccountFactoryInterface + return new utils.Interface(_abi) as SmartAccountFactoryInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): SmartAccountFactory { - return new Contract(address, _abi, signerOrProvider) as SmartAccountFactory + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SmartAccountFactory { + return new Contract(address, _abi, signerOrProvider) as SmartAccountFactory; } } diff --git a/src/types/factories/contracts/SmartAccount__factory.ts b/src/types/factories/contracts/SmartAccount__factory.ts index 6b6d452..11a3abf 100644 --- a/src/types/factories/contracts/SmartAccount__factory.ts +++ b/src/types/factories/contracts/SmartAccount__factory.ts @@ -1,759 +1,774 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from 'ethers' -import type { Provider, TransactionRequest } from '@ethersproject/providers' -import type { SmartAccount, SmartAccountInterface } from '../../contracts/SmartAccount' +import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; +import type { Provider, TransactionRequest } from "@ethersproject/providers"; +import type { + SmartAccount, + SmartAccountInterface, +} from "../../contracts/SmartAccount"; const _abi = [ { inputs: [ { - internalType: 'contract IEntryPoint', - name: '_EntryPoint', - type: 'address', + internalType: "contract IEntryPoint", + name: "_EntryPoint", + type: "address", }, ], - stateMutability: 'nonpayable', - type: 'constructor', + stateMutability: "nonpayable", + type: "constructor", }, { inputs: [], - name: 'AddressCannotBeZero', - type: 'error', + name: "AddressCannotBeZero", + type: "error", }, { inputs: [], - name: 'CallerNotEntryPoint', - type: 'error', + name: "CallerNotEntryPoint", + type: "error", }, { inputs: [], - name: 'CallerNotSelf', - type: 'error', + name: "CallerNotSelf", + type: "error", }, { inputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - name: 'ErrorRecoveror', - type: 'error', + name: "ErrorRecoveror", + type: "error", }, { inputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - name: 'ErrorValidator', - type: 'error', + name: "ErrorValidator", + type: "error", }, { inputs: [], - name: 'InvalidHook', - type: 'error', + name: "InvalidHook", + type: "error", }, { inputs: [ { - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'ValidatorAlreadyEnabled', - type: 'error', + name: "ValidatorAlreadyEnabled", + type: "error", }, { inputs: [ { - internalType: 'address', - name: 'expectedValidator', - type: 'address', + internalType: "address", + name: "expectedValidator", + type: "address", }, { - internalType: 'address', - name: 'returnedValidator', - type: 'address', + internalType: "address", + name: "returnedValidator", + type: "address", }, { - internalType: 'address', - name: 'prevValidator', - type: 'address', + internalType: "address", + name: "prevValidator", + type: "address", }, ], - name: 'ValidatorAndPrevValidatorMismatch', - type: 'error', + name: "ValidatorAndPrevValidatorMismatch", + type: "error", }, { inputs: [ { - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'ValidatorCannotBeZeroOrSentinel', - type: 'error', + name: "ValidatorCannotBeZeroOrSentinel", + type: "error", }, { inputs: [], - name: 'WrongArrayLength', - type: 'error', + name: "WrongArrayLength", + type: "error", }, { anonymous: false, inputs: [ { indexed: false, - internalType: 'address', - name: 'recoveror', - type: 'address', + internalType: "address", + name: "recoveror", + type: "address", }, ], - name: 'AddedRecoveror', - type: 'event', + name: "AddedRecoveror", + type: "event", }, { anonymous: false, inputs: [ { indexed: true, - internalType: 'address', - name: 'previousHandler', - type: 'address', + internalType: "address", + name: "previousHandler", + type: "address", }, { indexed: true, - internalType: 'address', - name: 'handler', - type: 'address', + internalType: "address", + name: "handler", + type: "address", }, ], - name: 'ChangedFallbackHandler', - type: 'event', + name: "ChangedFallbackHandler", + type: "event", }, { anonymous: false, inputs: [ { indexed: false, - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'DisabledValidator', - type: 'event', + name: "DisabledValidator", + type: "event", }, { anonymous: false, inputs: [ { indexed: false, - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'EnabledValidator', - type: 'event', + name: "EnabledValidator", + type: "event", }, { anonymous: false, inputs: [ { indexed: false, - internalType: 'uint8', - name: 'version', - type: 'uint8', + internalType: "uint8", + name: "version", + type: "uint8", }, ], - name: 'Initialized', - type: 'event', + name: "Initialized", + type: "event", }, { anonymous: false, inputs: [ { indexed: true, - internalType: 'address', - name: 'hook', - type: 'address', + internalType: "address", + name: "hook", + type: "address", }, ], - name: 'InstalledHook', - type: 'event', + name: "InstalledHook", + type: "event", }, { anonymous: false, inputs: [ { indexed: false, - internalType: 'address', - name: 'recoveror', - type: 'address', + internalType: "address", + name: "recoveror", + type: "address", }, ], - name: 'RemovedRecoveror', - type: 'event', + name: "RemovedRecoveror", + type: "event", }, { anonymous: false, inputs: [ { indexed: true, - internalType: 'address', - name: 'hook', - type: 'address', + internalType: "address", + name: "hook", + type: "address", }, ], - name: 'UninstalledHook', - type: 'event', + name: "UninstalledHook", + type: "event", }, { - stateMutability: 'nonpayable', - type: 'fallback', + stateMutability: "nonpayable", + type: "fallback", }, { inputs: [], - name: 'addDeposit', + name: "addDeposit", outputs: [], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'hook', - type: 'address', + internalType: "address", + name: "hook", + type: "address", }, { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'addHook', + name: "addHook", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'recoveror', - type: 'address', + internalType: "address", + name: "recoveror", + type: "address", }, { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'addRecoveror', + name: "addRecoveror", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'prevValidator', - type: 'address', + internalType: "address", + name: "prevValidator", + type: "address", }, { - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'disableValidator', + name: "disableValidator", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'enableValidator', + name: "enableValidator", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [], - name: 'entryPoint', + name: "entryPoint", outputs: [ { - internalType: 'contract IEntryPoint', - name: '', - type: 'address', + internalType: "contract IEntryPoint", + name: "", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'dest', - type: 'address', + internalType: "address", + name: "dest", + type: "address", }, { - internalType: 'uint256', - name: 'value', - type: 'uint256', + internalType: "uint256", + name: "value", + type: "uint256", }, { - internalType: 'bytes', - name: 'func', - type: 'bytes', + internalType: "bytes", + name: "func", + type: "bytes", }, ], - name: 'execute', + name: "execute", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address[]', - name: 'dest', - type: 'address[]', + internalType: "address[]", + name: "dest", + type: "address[]", }, { - internalType: 'uint256[]', - name: 'value', - type: 'uint256[]', + internalType: "uint256[]", + name: "value", + type: "uint256[]", }, { - internalType: 'bytes[]', - name: 'func', - type: 'bytes[]', + internalType: "bytes[]", + name: "func", + type: "bytes[]", }, ], - name: 'executeBatch', + name: "executeBatch", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [], - name: 'getDeposit', + name: "getDeposit", outputs: [ { - internalType: 'uint256', - name: '', - type: 'uint256', + internalType: "uint256", + name: "", + type: "uint256", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'getFallbackHandler', + name: "getFallbackHandler", outputs: [ { - internalType: 'address', - name: '_handler', - type: 'address', + internalType: "address", + name: "_handler", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'getNonce', + name: "getNonce", outputs: [ { - internalType: 'uint256', - name: '', - type: 'uint256', + internalType: "uint256", + name: "", + type: "uint256", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'start', - type: 'address', + internalType: "address", + name: "start", + type: "address", }, { - internalType: 'uint256', - name: 'pageSize', - type: 'uint256', + internalType: "uint256", + name: "pageSize", + type: "uint256", }, ], - name: 'getRecoverorsPaginated', + name: "getRecoverorsPaginated", outputs: [ { - internalType: 'address[]', - name: 'array', - type: 'address[]', + internalType: "address[]", + name: "array", + type: "address[]", }, { - internalType: 'address', - name: 'next', - type: 'address', + internalType: "address", + name: "next", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'start', - type: 'address', + internalType: "address", + name: "start", + type: "address", }, { - internalType: 'uint256', - name: 'pageSize', - type: 'uint256', + internalType: "uint256", + name: "pageSize", + type: "uint256", }, ], - name: 'getValidatorsPaginated', + name: "getValidatorsPaginated", outputs: [ { - internalType: 'address[]', - name: 'array', - type: 'address[]', + internalType: "address[]", + name: "array", + type: "address[]", }, { - internalType: 'address', - name: 'next', - type: 'address', + internalType: "address", + name: "next", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'defalutCallbackHandler', - type: 'address', + internalType: "address", + name: "defalutCallbackHandler", + type: "address", }, { - internalType: 'address[]', - name: 'validators', - type: 'address[]', + internalType: "address[]", + name: "validators", + type: "address[]", }, { - internalType: 'bytes[]', - name: 'data', - type: 'bytes[]', + internalType: "bytes[]", + name: "data", + type: "bytes[]", }, ], - name: 'initialize', + name: "initialize", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'recoveror', - type: 'address', + internalType: "address", + name: "recoveror", + type: "address", }, ], - name: 'isRecoverorEnabled', + name: "isRecoverorEnabled", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'isValidatorEnabled', + name: "isValidatorEnabled", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'recovery', + name: "recovery", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'prevBeforeHook', - type: 'address', + internalType: "address", + name: "prevBeforeHook", + type: "address", }, { - internalType: 'address', - name: 'prevAfterHook', - type: 'address', + internalType: "address", + name: "prevAfterHook", + type: "address", }, { - internalType: 'address', - name: 'hook', - type: 'address', + internalType: "address", + name: "hook", + type: "address", }, ], - name: 'removeHook', + name: "removeHook", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'prevRecoveror', - type: 'address', + internalType: "address", + name: "prevRecoveror", + type: "address", }, { - internalType: 'address', - name: 'recoveror', - type: 'address', + internalType: "address", + name: "recoveror", + type: "address", }, ], - name: 'removeRecoveror', + name: "removeRecoveror", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'handler', - type: 'address', + internalType: "address", + name: "handler", + type: "address", }, ], - name: 'setFallbackHandler', + name: "setFallbackHandler", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'dest', - type: 'address', + internalType: "address", + name: "dest", + type: "address", }, { - internalType: 'uint256', - name: 'value', - type: 'uint256', + internalType: "uint256", + name: "value", + type: "uint256", }, { - internalType: 'bytes', - name: 'func', - type: 'bytes', + internalType: "bytes", + name: "func", + type: "bytes", }, ], - name: 'sudo', + name: "sudo", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { components: [ { - internalType: 'address', - name: 'sender', - type: 'address', + internalType: "address", + name: "sender", + type: "address", }, { - internalType: 'uint256', - name: 'nonce', - type: 'uint256', + internalType: "uint256", + name: "nonce", + type: "uint256", }, { - internalType: 'bytes', - name: 'initCode', - type: 'bytes', + internalType: "bytes", + name: "initCode", + type: "bytes", }, { - internalType: 'bytes', - name: 'callData', - type: 'bytes', + internalType: "bytes", + name: "callData", + type: "bytes", }, { - internalType: 'uint256', - name: 'callGasLimit', - type: 'uint256', + internalType: "uint256", + name: "callGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'verificationGasLimit', - type: 'uint256', + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'preVerificationGas', - type: 'uint256', + internalType: "uint256", + name: "preVerificationGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxPriorityFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256", }, { - internalType: 'bytes', - name: 'paymasterAndData', - type: 'bytes', + internalType: "bytes", + name: "paymasterAndData", + type: "bytes", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - internalType: 'struct UserOperation', - name: 'userOp', - type: 'tuple', + internalType: "struct UserOperation", + name: "userOp", + type: "tuple", }, { - internalType: 'bytes32', - name: 'userOpHash', - type: 'bytes32', + internalType: "bytes32", + name: "userOpHash", + type: "bytes32", }, { - internalType: 'uint256', - name: 'missingAccountFunds', - type: 'uint256', + internalType: "uint256", + name: "missingAccountFunds", + type: "uint256", }, ], - name: 'validateUserOp', + name: "validateUserOp", outputs: [ { - internalType: 'uint256', - name: 'validationData', - type: 'uint256', + internalType: "uint256", + name: "validationData", + type: "uint256", }, ], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address payable', - name: 'withdrawAddress', - type: 'address', + internalType: "address payable", + name: "withdrawAddress", + type: "address", }, { - internalType: 'uint256', - name: 'amount', - type: 'uint256', + internalType: "uint256", + name: "amount", + type: "uint256", }, ], - name: 'withdrawDepositTo', + name: "withdrawDepositTo", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, -] as const +] as const; const _bytecode = - '0x60a0346200015457601f6200244338819003918201601f19168301916001600160401b0383118484101762000159578084926020946040528339810103126200015457516001600160a01b0381168103620001545760805260005460ff8160081c16620000ff5760ff80821603620000c3575b6040516122d390816200017082396080518181816101c9015281816103db015281816104fe015281816105990152818161088001528181610d3101528181610d7101528181610e920152610f5d0152f35b60ff90811916176000557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160ff8152a13862000072565b60405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b6064820152608490fd5b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001a575b3415611d0c575b600080fd5b60003560e01c80633a871cdd1461018a5780633d6767f81461018557806347e1da2a146101805780634a58db191461017b5780634d44560d146101765780635a438970146101715780635faac46b1461016c5780636dd3bf741461016757806375f2516714610162578063856dfd991461015d5780639229e12014610158578063a28b34c414610153578063ad05234a1461014e578063b0d691fe14610149578063b61d27f614610144578063bb6aa2b41461013f578063c399ec881461013a578063cf777df914610135578063d087d28814610130578063d2b0e7791461012b578063d561e48914610126578063f08a0323146101215763fa8490150361000e57611237565b6111b3565b611089565b610fc7565b610f2a565b610f03565b610e66565b610da6565b610d55565b610d11565b610c35565b610aa7565b61096c565b6108fe565b6108cd565b610864565b610718565b6105f9565b610567565b6104e7565b61036a565b610306565b3461001557600319606036820112610015576004359067ffffffffffffffff821161001557610160908236030112610015576044356001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633036102385761020261021a926024359060040161185e565b908061021e575b506040519081529081906020820190565b0390f35b600080808093338219f150610231611499565b5038610209565b60405162461bcd60e51b815260206004820152601c60248201527f6163636f756e743a206e6f742066726f6d20456e747279506f696e74000000006044820152606490fd5b6001600160a01b0381160361001557565b35906102998261027d565b565b9181601f840112156100155782359167ffffffffffffffff8311610015576020838186019501011161001557565b906040600319830112610015576004356102e28161027d565b916024359067ffffffffffffffff8211610015576103029160040161029b565b9091565b3461001557610314366102c9565b903033036103275761032592611da2565b005b60405163d97d09c160e01b8152600490fd5b9181601f840112156100155782359167ffffffffffffffff8311610015576020808501948460051b01011161001557565b3461001557606036600319011261001557600467ffffffffffffffff81358181116100155761039c9036908401610339565b9092602435838111610015576103b59036908301610339565b9093604435908111610015576103ce9036908401610339565b9490926001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633036104cd578585148015906104b9575b6104aa57508161045e57505060005b82811061042457005b8061045861043d610438600194878a611551565b611566565b61045261044b8489886115a3565b369161168f565b906119d9565b0161041b565b91909460009493945b85811061047057005b806104a46104846104386001948a87611551565b61048f838b89611551565b3561049e61044b858b8a6115a3565b91611b64565b01610467565b60405163150072e360e11b8152fd5b50821515801561040c57508583141561040c565b60405163cb10477360e01b8152fd5b600091031261001557565b600080600319360112610564576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681813b156105645760405163b760faf960e01b8152306004820152918290602490829034905af1801561055f57610553575080f35b61055c90611427565b80f35b611471565b80fd5b346100155760006040366003190112610564576004356105868161027d565b30330361032757816001600160a01b03807f00000000000000000000000000000000000000000000000000000000000000001692833b156105f55760449083604051958694859363040b850f60e31b855216600484015260243560248401525af1801561055f57610553575080f35b8280fd5b3461001557610607366102c9565b9130330361032757806106216001600160a01b0392611f3e565b1690813b156100155760405190633cbcc2b960e21b8252818061064b60009687946004840161192c565b038183865af1801561055f5761068b575b5060207fcc87bd27eafb647c2f20f074fcdd0fe8d9c2171b9876dacd94c4a62149d4fe0391604051908152a180f35b7fcc87bd27eafb647c2f20f074fcdd0fe8d9c2171b9876dacd94c4a62149d4fe0391926106b9602092611427565b92915061065c565b90929192604082016040835281518091526060830160208093019160005b848282106106fb575050506001600160a01b0391509416910152565b84516001600160a01b0316845293840193909201916001016106df565b34610015576040366003190112610015576004356107358161027d565b6024359061074282611e3b565b61074f6040519182611440565b828152601f1961075e84611e3b565b013660208301376000926001600160a01b038093168452600360205261078f604085206001600160a01b0390541690565b838116801515908161081c575b5080610813575b15610800576107f46107e7826107ce6107fa946107c08a89611e53565b906001600160a01b03169052565b6001600160a01b03166000526003602052604060002090565b546001600160a01b031690565b94611e67565b9361078f565b8285815261021a604051928392836106c1565b508185106107a3565b6001915014153861079c565b6060600319820112610015576004356108408161027d565b91602435916044359067ffffffffffffffff8211610015576103029160040161029b565b346100155761087236610828565b6001600160a01b03939291937f00000000000000000000000000000000000000000000000000000000000000001633036108bb57610325936108b591369161168f565b91611cf5565b60405163cb10477360e01b8152600490fd5b346100155760203660031901126100155760206108f46004356108ef8161027d565b611e8c565b6040519015158152f35b346100155760003660031901126100155760207f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4546001600160a01b0360405191168152f35b60409060031901126100155760043561095c8161027d565b906024356109698161027d565b90565b346100155761097a36610944565b90303303610327576001600160a01b03808316809181151580610a9c575b6109a190611ef2565b80841660005260036020526040600020541603610a5757610a4e610a3e846107ce602095610a23610a096107e77fae2356b2cb822c142448e45b195255df334895b014113d50bb822c311cddc8559a6001600160a01b03166000526003602052604060002090565b916001600160a01b03166000526003602052604060002090565b906001600160a01b03166001600160a01b0319825416179055565b6001600160a01b03198154169055565b604051908152a1005b60405162461bcd60e51b815260206004820152601960248201527f6974656d20616e64207072656974656d206d69736d61746368000000000000006044820152606490fd5b506001821415610998565b3461001557606036600319011261001557600435610ac48161027d565b60243590610ad18261027d565b604435610add8161027d565b303303610327576001600160a01b0381169260405163e445e7dd60e01b80825260209182816004818a5afa90811561055f57600091610c18575b50610b218161196d565b610b9a57505050610b3191612184565b803b156100155760405162d638f360e41b815260008160048183865af1801561055f57610b81575b507fa20b2dba0769450542a688d94941808255eb735da2fa53df12ff98fc529ffd4e600080a2005b80610b8e610b9492611427565b806104dc565b38610b59565b6040519081528181600481895afa90811561055f57600192600092610beb575b5050610bc58161196d565b03610bd957610bd49250612225565b610b31565b610be682610bd494612184565b612225565b610c0a9250803d10610c11575b610c028183611440565b810190611955565b3880610bba565b503d610bf8565b610c2f9150833d8511610c1157610c028183611440565b38610b17565b3461001557604036600319011261001557600435610c528161027d565b60243590610c5f82611e3b565b610c6c6040519182611440565b828152601f19610c7b84611e3b565b013660208301376000926001600160a01b0380931684526004602052610cac604085206001600160a01b0390541690565b8381168015159081610d05575b5080610cfc575b15610800576107f46107e782610cdd610cf6946107c08a89611e53565b6001600160a01b03166000526004602052604060002090565b93610cac565b50818510610cc0565b60019150141538610cb9565b346100155760003660031901126100155760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461001557610d6336610828565b6001600160a01b03939291937f00000000000000000000000000000000000000000000000000000000000000001633036108bb576103259361049e91369161168f565b3461001557610db4366102c9565b91610dc5610dc133611ebf565b1590565b610e4e57610dd5610dc182611e8c565b610e2b576001600160a01b031691823b1561001557610e0e926000928360405180968195829463064acaab60e11b84526004840161192c565b03925af1801561055f57610e1e57005b80610b8e61032592611427565b60405163304106bf60e11b81526001600160a01b03919091166004820152602490fd5b60405163a841d6f560e01b8152336004820152602490fd5b34610015576000366003190112610015576040516370a0823160e01b81523060048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa801561055f57602091600091610ed6575b50604051908152f35b610ef69150823d8111610efc575b610eee8183611440565b810190611462565b38610ecd565b503d610ee4565b346100155760203660031901126100155760206108f4600435610f258161027d565b611ebf565b3461001557600036600319011261001557604051631aab3f0d60e11b8152306004820152600060248201526020816044817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa801561055f5761021a91600091610fa957506040519081529081906020820190565b610fc1915060203d8111610efc57610eee8183611440565b38610209565b3461001557610fd536610944565b90303303610327576001600160a01b0380831680918115158061107e575b610ffc90611ef2565b80841660005260046020526040600020541603610a5757610a4e610a3e84610cdd602095610a236110646107e77f779fb1c42fad72db3b3d13498dce770027f44544e8a1a5a9e06e530db8cd68929a6001600160a01b03166000526004602052604060002090565b916001600160a01b03166000526004602052604060002090565b506001821415610ff3565b34610015576060366003190112610015576004356110a68161027d565b67ffffffffffffffff602435818111610015576110c7903690600401610339565b90604435928311610015576110e3611127933690600401610339565b9290916000549561110b60ff8860081c1615809881996111a5575b8115611185575b506114c9565b8661111e600160ff196000541617600055565b61116c576115ba565b61112d57005b61113d61ff001960005416600055565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a1005b61118061010061ff00196000541617600055565b6115ba565b303b15915081611197575b5038611105565b6001915060ff161438611190565b600160ff82161091506110fe565b34610015576020366003190112610015576004356111d08161027d565b303303610327577f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4549061120381611d5d565b6001600160a01b0380911691167f06be9a1bea257286cf2afa8205ed494ca9d6a4b41aa58d04238deebada20fb0c600080a3005b3461001557611245366102c9565b90303303610327576040516301ffc9a760e01b81526329c791d960e01b60048201526001600160a01b03841693906020908181602481895afa90811561055f576000916113e4575b50156113d25760405163e445e7dd60e01b8082529082816004818a5afa90811561055f576000916113b5575b506112c38161196d565b6113485750506112d290611fd0565b823b15610015576040516313861fb560e01b815291600091839182916112fc91906004840161192c565b038183865af1801561055f57611335575b507fe9fdf38cc72369bf1f90f6adc9835796c285cba93070412e0e48413e63c5b908600080a2005b80610b8e61134292611427565b3861130d565b6040519081528181600481895afa90811561055f57600192600092611398575b50506113738161196d565b036113865761138190612071565b6112d2565b8061139361138192611fd0565b612071565b6113ae9250803d10610c1157610c028183611440565b3880611368565b6113cc9150833d8511610c1157610c028183611440565b386112b9565b604051639c9d882360e01b8152600490fd5b6114049150823d841161140a575b6113fc8183611440565b81019061193d565b3861128d565b503d6113f2565b634e487b7160e01b600052604160045260246000fd5b67ffffffffffffffff811161143b57604052565b611411565b90601f8019910116810190811067ffffffffffffffff82111761143b57604052565b90816020910312610015575190565b6040513d6000823e3d90fd5b67ffffffffffffffff811161143b57601f01601f191660200190565b3d156114c4573d906114aa8261147d565b916114b86040519384611440565b82523d6000602084013e565b606090565b156114d057565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608490fd5b634e487b7160e01b600052603260045260246000fd5b91908110156115615760051b0190565b61153b565b356109698161027d565b903590601e1981360301821215610015570180359067ffffffffffffffff82116100155760200191813603831361001557565b90821015611561576103029160051b810190611570565b939092919381850361167d576115cf90611d5d565b600160008190527fa15bc60c955c405d20d9149c709e2460f1c2d9a497496a7f46004d1772c3054c80546001600160a01b0319908116831790915560046020527fabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe058054909116821790559360005b81811061164c57505050505050565b8061167761165c88938589611551565b356116668161027d565b6116718387896115a3565b91611da2565b0161163d565b60405163150072e360e11b8152600490fd5b92919261169b8261147d565b916116a96040519384611440565b829481845281830111610015578281602093846000960137010152565b9035601e198236030181121561001557016020813591019167ffffffffffffffff821161001557813603831361001557565b908060209392818452848401376000828201840152601f01601f1916010190565b919082519283825260005b848110611745575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201611724565b61184b6117b6610969959360608452611785606085016117788361028e565b6001600160a01b03169052565b6020810135608085015261183b61179f60408301836116c6565b9390610160948560a08901526101c08801916116f8565b916118326117de6117ca60608401846116c6565b605f198a8803810160c08c015296916116f8565b608083013560e08901526118216101009660a0850135888b01526101209060c0860135828c01526101409860e08701358a8d0152860135908b01528401846116c6565b90868a8403016101808b01526116f8565b938101906116c6565b91858403016101a08601526116f8565b9260208201526040818403910152611719565b61186c610140820182611570565b8101604082820312610015578135916118848361027d565b60208101359067ffffffffffffffff8211610015570181601f82011215610015576001600160a01b03918160206118bd9335910161168f565b91166118cb610dc182611e8c565b611923576118f593600060209460405196879586948593634dffc32360e01b855260048501611759565b03925af190811561055f5760009161190b575090565b610969915060203d8111610efc57610eee8183611440565b50505050600190565b9160206109699381815201916116f8565b90816020910312610015575180151581036100155790565b90816020910312610015575160038110156100155790565b6003111561197757565b634e487b7160e01b600052602160045260246000fd5b6060906001600160a01b036109699493168152600060208201528160408201520190611719565b61096993926001600160a01b0360609316825260208201528160408201520190611719565b6001600081905260205290611a0d7fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f6107e7565b6001600160a01b038116906001821115611a9657813b1561001557604051632b668a3760e21b8152916000908390818381611a4c898b6004840161198d565b03925af190811561055f57611a7e926107e792611a83575b506001600160a01b03166000526001602052604060002090565b611a0d565b80610b8e611a9092611427565b38611a64565b5050611aa28183611ccd565b60016000526002602052611ad57fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e06107e7565b6001600160a01b038116906001821115611b5e57813b1561001557604051632b668a3760e21b8152916000908390818381611b14898b6004840161198d565b03925af190811561055f57611b46926107e792611b4b575b506001600160a01b03166000526002602052604060002090565b611ad5565b80610b8e611b5892611427565b38611b2c565b50505050565b600160008190526020529291611b997fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f6107e7565b6001600160a01b038116906001821115611c0f57813b1561001557604051632b668a3760e21b8152916000908390818381611bd9898b8e600485016119b4565b03925af190811561055f57611c0a926107e792611a8357506001600160a01b03166000526001602052604060002090565b611b99565b5050611c1c818386611cf5565b60016000526002602052611c4f7fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e06107e7565b6001600160a01b038116906001821115611cc557813b1561001557604051632b668a3760e21b8152916000908390818381611c8f898b8e600485016119b4565b03925af190811561055f57611cc0926107e792611b4b57506001600160a01b03166000526002602052604060002090565b611c4f565b505050509050565b600091829182602083519301915af1611ce4611499565b9015611ced5750565b602081519101fd5b916000928392602083519301915af1611ce4611499565b7f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4548015610325576000808092368280373360601b3652818060143601925af13d82803e15611d59573d90f35b3d90fd5b6001600160a01b03811615611d90577f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d455565b6040516303988b8160e61b8152600490fd5b6001600160a01b0390929192611db781612112565b1690813b156100155760405163064acaab60e11b8152602060048201529260009184918291611deb916024840191906116f8565b038183855af190811561055f577f702ed4645b59645b8a8b7dd88e069cb684a1170094eca847038827e03c1107a492602092611e2c575b50604051908152a1565b611e3590611427565b38611e22565b67ffffffffffffffff811161143b5760051b60200190565b80518210156115615760209160051b010190565b6000198114611e765760010190565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b038091169081600114159182611ea857505090565b909150600052600360205260406000205416151590565b6001600160a01b038091169081600114159182611edb57505090565b909150600052600460205260406000205416151590565b15611ef957565b60405162461bcd60e51b815260206004820152601e60248201527f6974656d2063616e2774206265207a65726f206f722073656e74696e656c00006044820152606490fd5b6001600160a01b039081811680151580611fc5575b611f5c90611ef2565b6000818152600460205283604082205416611b5e57611fa560409261029995600184528484205416908352838320906001600160a01b03166001600160a01b0319825416179055565b6001815220906001600160a01b03166001600160a01b0319825416179055565b506001811415611f53565b6001600160a01b039081811680151580612066575b611fee90611ef2565b600090808252600160205283604083205416611b5e576040826102999560016120369552828220541692815220906001600160a01b03166001600160a01b0319825416179055565b600160008190526020527fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f610a23565b506001811415611fe5565b6001600160a01b039081811680151580612107575b61208f90611ef2565b600090808252600260205283604083205416611b5e576040826102999560016120d79552828220541692815220906001600160a01b03166001600160a01b0319825416179055565b600160005260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e0610a23565b506001811415612086565b6001600160a01b039081811680151580612179575b61213090611ef2565b6000818152600360205283604082205416611b5e57611fa560409261029995600184528484205416908352838320906001600160a01b03166001600160a01b0319825416179055565b506001811415612127565b6001600160a01b03918281168015158061221a575b6121a290611ef2565b8383166000526001602052836040600020541603610a5757612201610a3e92610a23610299956121e5856001600160a01b03166000526001602052604060002090565b5416916001600160a01b03166000526001602052604060002090565b6001600160a01b03166000526001602052604060002090565b506001811415612199565b6001600160a01b0391828116801515806122bb575b61224390611ef2565b8383166000526002602052836040600020541603610a57576122a2610a3e92610a2361029995612286856001600160a01b03166000526002602052604060002090565b5416916001600160a01b03166000526002602052604060002090565b6001600160a01b03166000526002602052604060002090565b50600181141561223a56fea164736f6c6343000813000a' + "0x60a0346200015457601f6200244338819003918201601f19168301916001600160401b0383118484101762000159578084926020946040528339810103126200015457516001600160a01b0381168103620001545760805260005460ff8160081c16620000ff5760ff80821603620000c3575b6040516122d390816200017082396080518181816101c9015281816103db015281816104fe015281816105990152818161088001528181610d3101528181610d7101528181610e920152610f5d0152f35b60ff90811916176000557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160ff8152a13862000072565b60405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b6064820152608490fd5b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001a575b3415611d0c575b600080fd5b60003560e01c80633a871cdd1461018a5780633d6767f81461018557806347e1da2a146101805780634a58db191461017b5780634d44560d146101765780635a438970146101715780635faac46b1461016c5780636dd3bf741461016757806375f2516714610162578063856dfd991461015d5780639229e12014610158578063a28b34c414610153578063ad05234a1461014e578063b0d691fe14610149578063b61d27f614610144578063bb6aa2b41461013f578063c399ec881461013a578063cf777df914610135578063d087d28814610130578063d2b0e7791461012b578063d561e48914610126578063f08a0323146101215763fa8490150361000e57611237565b6111b3565b611089565b610fc7565b610f2a565b610f03565b610e66565b610da6565b610d55565b610d11565b610c35565b610aa7565b61096c565b6108fe565b6108cd565b610864565b610718565b6105f9565b610567565b6104e7565b61036a565b610306565b3461001557600319606036820112610015576004359067ffffffffffffffff821161001557610160908236030112610015576044356001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633036102385761020261021a926024359060040161185e565b908061021e575b506040519081529081906020820190565b0390f35b600080808093338219f150610231611499565b5038610209565b60405162461bcd60e51b815260206004820152601c60248201527f6163636f756e743a206e6f742066726f6d20456e747279506f696e74000000006044820152606490fd5b6001600160a01b0381160361001557565b35906102998261027d565b565b9181601f840112156100155782359167ffffffffffffffff8311610015576020838186019501011161001557565b906040600319830112610015576004356102e28161027d565b916024359067ffffffffffffffff8211610015576103029160040161029b565b9091565b3461001557610314366102c9565b903033036103275761032592611da2565b005b60405163d97d09c160e01b8152600490fd5b9181601f840112156100155782359167ffffffffffffffff8311610015576020808501948460051b01011161001557565b3461001557606036600319011261001557600467ffffffffffffffff81358181116100155761039c9036908401610339565b9092602435838111610015576103b59036908301610339565b9093604435908111610015576103ce9036908401610339565b9490926001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633036104cd578585148015906104b9575b6104aa57508161045e57505060005b82811061042457005b8061045861043d610438600194878a611551565b611566565b61045261044b8489886115a3565b369161168f565b906119d9565b0161041b565b91909460009493945b85811061047057005b806104a46104846104386001948a87611551565b61048f838b89611551565b3561049e61044b858b8a6115a3565b91611b64565b01610467565b60405163150072e360e11b8152fd5b50821515801561040c57508583141561040c565b60405163cb10477360e01b8152fd5b600091031261001557565b600080600319360112610564576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681813b156105645760405163b760faf960e01b8152306004820152918290602490829034905af1801561055f57610553575080f35b61055c90611427565b80f35b611471565b80fd5b346100155760006040366003190112610564576004356105868161027d565b30330361032757816001600160a01b03807f00000000000000000000000000000000000000000000000000000000000000001692833b156105f55760449083604051958694859363040b850f60e31b855216600484015260243560248401525af1801561055f57610553575080f35b8280fd5b3461001557610607366102c9565b9130330361032757806106216001600160a01b0392611f3e565b1690813b156100155760405190633cbcc2b960e21b8252818061064b60009687946004840161192c565b038183865af1801561055f5761068b575b5060207fcc87bd27eafb647c2f20f074fcdd0fe8d9c2171b9876dacd94c4a62149d4fe0391604051908152a180f35b7fcc87bd27eafb647c2f20f074fcdd0fe8d9c2171b9876dacd94c4a62149d4fe0391926106b9602092611427565b92915061065c565b90929192604082016040835281518091526060830160208093019160005b848282106106fb575050506001600160a01b0391509416910152565b84516001600160a01b0316845293840193909201916001016106df565b34610015576040366003190112610015576004356107358161027d565b6024359061074282611e3b565b61074f6040519182611440565b828152601f1961075e84611e3b565b013660208301376000926001600160a01b038093168452600360205261078f604085206001600160a01b0390541690565b838116801515908161081c575b5080610813575b15610800576107f46107e7826107ce6107fa946107c08a89611e53565b906001600160a01b03169052565b6001600160a01b03166000526003602052604060002090565b546001600160a01b031690565b94611e67565b9361078f565b8285815261021a604051928392836106c1565b508185106107a3565b6001915014153861079c565b6060600319820112610015576004356108408161027d565b91602435916044359067ffffffffffffffff8211610015576103029160040161029b565b346100155761087236610828565b6001600160a01b03939291937f00000000000000000000000000000000000000000000000000000000000000001633036108bb57610325936108b591369161168f565b91611cf5565b60405163cb10477360e01b8152600490fd5b346100155760203660031901126100155760206108f46004356108ef8161027d565b611e8c565b6040519015158152f35b346100155760003660031901126100155760207f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4546001600160a01b0360405191168152f35b60409060031901126100155760043561095c8161027d565b906024356109698161027d565b90565b346100155761097a36610944565b90303303610327576001600160a01b03808316809181151580610a9c575b6109a190611ef2565b80841660005260036020526040600020541603610a5757610a4e610a3e846107ce602095610a23610a096107e77fae2356b2cb822c142448e45b195255df334895b014113d50bb822c311cddc8559a6001600160a01b03166000526003602052604060002090565b916001600160a01b03166000526003602052604060002090565b906001600160a01b03166001600160a01b0319825416179055565b6001600160a01b03198154169055565b604051908152a1005b60405162461bcd60e51b815260206004820152601960248201527f6974656d20616e64207072656974656d206d69736d61746368000000000000006044820152606490fd5b506001821415610998565b3461001557606036600319011261001557600435610ac48161027d565b60243590610ad18261027d565b604435610add8161027d565b303303610327576001600160a01b0381169260405163e445e7dd60e01b80825260209182816004818a5afa90811561055f57600091610c18575b50610b218161196d565b610b9a57505050610b3191612184565b803b156100155760405162d638f360e41b815260008160048183865af1801561055f57610b81575b507fa20b2dba0769450542a688d94941808255eb735da2fa53df12ff98fc529ffd4e600080a2005b80610b8e610b9492611427565b806104dc565b38610b59565b6040519081528181600481895afa90811561055f57600192600092610beb575b5050610bc58161196d565b03610bd957610bd49250612225565b610b31565b610be682610bd494612184565b612225565b610c0a9250803d10610c11575b610c028183611440565b810190611955565b3880610bba565b503d610bf8565b610c2f9150833d8511610c1157610c028183611440565b38610b17565b3461001557604036600319011261001557600435610c528161027d565b60243590610c5f82611e3b565b610c6c6040519182611440565b828152601f19610c7b84611e3b565b013660208301376000926001600160a01b0380931684526004602052610cac604085206001600160a01b0390541690565b8381168015159081610d05575b5080610cfc575b15610800576107f46107e782610cdd610cf6946107c08a89611e53565b6001600160a01b03166000526004602052604060002090565b93610cac565b50818510610cc0565b60019150141538610cb9565b346100155760003660031901126100155760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461001557610d6336610828565b6001600160a01b03939291937f00000000000000000000000000000000000000000000000000000000000000001633036108bb576103259361049e91369161168f565b3461001557610db4366102c9565b91610dc5610dc133611ebf565b1590565b610e4e57610dd5610dc182611e8c565b610e2b576001600160a01b031691823b1561001557610e0e926000928360405180968195829463064acaab60e11b84526004840161192c565b03925af1801561055f57610e1e57005b80610b8e61032592611427565b60405163304106bf60e11b81526001600160a01b03919091166004820152602490fd5b60405163a841d6f560e01b8152336004820152602490fd5b34610015576000366003190112610015576040516370a0823160e01b81523060048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa801561055f57602091600091610ed6575b50604051908152f35b610ef69150823d8111610efc575b610eee8183611440565b810190611462565b38610ecd565b503d610ee4565b346100155760203660031901126100155760206108f4600435610f258161027d565b611ebf565b3461001557600036600319011261001557604051631aab3f0d60e11b8152306004820152600060248201526020816044817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa801561055f5761021a91600091610fa957506040519081529081906020820190565b610fc1915060203d8111610efc57610eee8183611440565b38610209565b3461001557610fd536610944565b90303303610327576001600160a01b0380831680918115158061107e575b610ffc90611ef2565b80841660005260046020526040600020541603610a5757610a4e610a3e84610cdd602095610a236110646107e77f779fb1c42fad72db3b3d13498dce770027f44544e8a1a5a9e06e530db8cd68929a6001600160a01b03166000526004602052604060002090565b916001600160a01b03166000526004602052604060002090565b506001821415610ff3565b34610015576060366003190112610015576004356110a68161027d565b67ffffffffffffffff602435818111610015576110c7903690600401610339565b90604435928311610015576110e3611127933690600401610339565b9290916000549561110b60ff8860081c1615809881996111a5575b8115611185575b506114c9565b8661111e600160ff196000541617600055565b61116c576115ba565b61112d57005b61113d61ff001960005416600055565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a1005b61118061010061ff00196000541617600055565b6115ba565b303b15915081611197575b5038611105565b6001915060ff161438611190565b600160ff82161091506110fe565b34610015576020366003190112610015576004356111d08161027d565b303303610327577f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4549061120381611d5d565b6001600160a01b0380911691167f06be9a1bea257286cf2afa8205ed494ca9d6a4b41aa58d04238deebada20fb0c600080a3005b3461001557611245366102c9565b90303303610327576040516301ffc9a760e01b81526329c791d960e01b60048201526001600160a01b03841693906020908181602481895afa90811561055f576000916113e4575b50156113d25760405163e445e7dd60e01b8082529082816004818a5afa90811561055f576000916113b5575b506112c38161196d565b6113485750506112d290611fd0565b823b15610015576040516313861fb560e01b815291600091839182916112fc91906004840161192c565b038183865af1801561055f57611335575b507fe9fdf38cc72369bf1f90f6adc9835796c285cba93070412e0e48413e63c5b908600080a2005b80610b8e61134292611427565b3861130d565b6040519081528181600481895afa90811561055f57600192600092611398575b50506113738161196d565b036113865761138190612071565b6112d2565b8061139361138192611fd0565b612071565b6113ae9250803d10610c1157610c028183611440565b3880611368565b6113cc9150833d8511610c1157610c028183611440565b386112b9565b604051639c9d882360e01b8152600490fd5b6114049150823d841161140a575b6113fc8183611440565b81019061193d565b3861128d565b503d6113f2565b634e487b7160e01b600052604160045260246000fd5b67ffffffffffffffff811161143b57604052565b611411565b90601f8019910116810190811067ffffffffffffffff82111761143b57604052565b90816020910312610015575190565b6040513d6000823e3d90fd5b67ffffffffffffffff811161143b57601f01601f191660200190565b3d156114c4573d906114aa8261147d565b916114b86040519384611440565b82523d6000602084013e565b606090565b156114d057565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608490fd5b634e487b7160e01b600052603260045260246000fd5b91908110156115615760051b0190565b61153b565b356109698161027d565b903590601e1981360301821215610015570180359067ffffffffffffffff82116100155760200191813603831361001557565b90821015611561576103029160051b810190611570565b939092919381850361167d576115cf90611d5d565b600160008190527fa15bc60c955c405d20d9149c709e2460f1c2d9a497496a7f46004d1772c3054c80546001600160a01b0319908116831790915560046020527fabd6e7cb50984ff9c2f3e18a2660c3353dadf4e3291deeb275dae2cd1e44fe058054909116821790559360005b81811061164c57505050505050565b8061167761165c88938589611551565b356116668161027d565b6116718387896115a3565b91611da2565b0161163d565b60405163150072e360e11b8152600490fd5b92919261169b8261147d565b916116a96040519384611440565b829481845281830111610015578281602093846000960137010152565b9035601e198236030181121561001557016020813591019167ffffffffffffffff821161001557813603831361001557565b908060209392818452848401376000828201840152601f01601f1916010190565b919082519283825260005b848110611745575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201611724565b61184b6117b6610969959360608452611785606085016117788361028e565b6001600160a01b03169052565b6020810135608085015261183b61179f60408301836116c6565b9390610160948560a08901526101c08801916116f8565b916118326117de6117ca60608401846116c6565b605f198a8803810160c08c015296916116f8565b608083013560e08901526118216101009660a0850135888b01526101209060c0860135828c01526101409860e08701358a8d0152860135908b01528401846116c6565b90868a8403016101808b01526116f8565b938101906116c6565b91858403016101a08601526116f8565b9260208201526040818403910152611719565b61186c610140820182611570565b8101604082820312610015578135916118848361027d565b60208101359067ffffffffffffffff8211610015570181601f82011215610015576001600160a01b03918160206118bd9335910161168f565b91166118cb610dc182611e8c565b611923576118f593600060209460405196879586948593634dffc32360e01b855260048501611759565b03925af190811561055f5760009161190b575090565b610969915060203d8111610efc57610eee8183611440565b50505050600190565b9160206109699381815201916116f8565b90816020910312610015575180151581036100155790565b90816020910312610015575160038110156100155790565b6003111561197757565b634e487b7160e01b600052602160045260246000fd5b6060906001600160a01b036109699493168152600060208201528160408201520190611719565b61096993926001600160a01b0360609316825260208201528160408201520190611719565b6001600081905260205290611a0d7fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f6107e7565b6001600160a01b038116906001821115611a9657813b1561001557604051632b668a3760e21b8152916000908390818381611a4c898b6004840161198d565b03925af190811561055f57611a7e926107e792611a83575b506001600160a01b03166000526001602052604060002090565b611a0d565b80610b8e611a9092611427565b38611a64565b5050611aa28183611ccd565b60016000526002602052611ad57fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e06107e7565b6001600160a01b038116906001821115611b5e57813b1561001557604051632b668a3760e21b8152916000908390818381611b14898b6004840161198d565b03925af190811561055f57611b46926107e792611b4b575b506001600160a01b03166000526002602052604060002090565b611ad5565b80610b8e611b5892611427565b38611b2c565b50505050565b600160008190526020529291611b997fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f6107e7565b6001600160a01b038116906001821115611c0f57813b1561001557604051632b668a3760e21b8152916000908390818381611bd9898b8e600485016119b4565b03925af190811561055f57611c0a926107e792611a8357506001600160a01b03166000526001602052604060002090565b611b99565b5050611c1c818386611cf5565b60016000526002602052611c4f7fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e06107e7565b6001600160a01b038116906001821115611cc557813b1561001557604051632b668a3760e21b8152916000908390818381611c8f898b8e600485016119b4565b03925af190811561055f57611cc0926107e792611b4b57506001600160a01b03166000526002602052604060002090565b611c4f565b505050509050565b600091829182602083519301915af1611ce4611499565b9015611ced5750565b602081519101fd5b916000928392602083519301915af1611ce4611499565b7f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d4548015610325576000808092368280373360601b3652818060143601925af13d82803e15611d59573d90f35b3d90fd5b6001600160a01b03811615611d90577f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d455565b6040516303988b8160e61b8152600490fd5b6001600160a01b0390929192611db781612112565b1690813b156100155760405163064acaab60e11b8152602060048201529260009184918291611deb916024840191906116f8565b038183855af190811561055f577f702ed4645b59645b8a8b7dd88e069cb684a1170094eca847038827e03c1107a492602092611e2c575b50604051908152a1565b611e3590611427565b38611e22565b67ffffffffffffffff811161143b5760051b60200190565b80518210156115615760209160051b010190565b6000198114611e765760010190565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b038091169081600114159182611ea857505090565b909150600052600360205260406000205416151590565b6001600160a01b038091169081600114159182611edb57505090565b909150600052600460205260406000205416151590565b15611ef957565b60405162461bcd60e51b815260206004820152601e60248201527f6974656d2063616e2774206265207a65726f206f722073656e74696e656c00006044820152606490fd5b6001600160a01b039081811680151580611fc5575b611f5c90611ef2565b6000818152600460205283604082205416611b5e57611fa560409261029995600184528484205416908352838320906001600160a01b03166001600160a01b0319825416179055565b6001815220906001600160a01b03166001600160a01b0319825416179055565b506001811415611f53565b6001600160a01b039081811680151580612066575b611fee90611ef2565b600090808252600160205283604083205416611b5e576040826102999560016120369552828220541692815220906001600160a01b03166001600160a01b0319825416179055565b600160008190526020527fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f610a23565b506001811415611fe5565b6001600160a01b039081811680151580612107575b61208f90611ef2565b600090808252600260205283604083205416611b5e576040826102999560016120d79552828220541692815220906001600160a01b03166001600160a01b0319825416179055565b600160005260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e0610a23565b506001811415612086565b6001600160a01b039081811680151580612179575b61213090611ef2565b6000818152600360205283604082205416611b5e57611fa560409261029995600184528484205416908352838320906001600160a01b03166001600160a01b0319825416179055565b506001811415612127565b6001600160a01b03918281168015158061221a575b6121a290611ef2565b8383166000526001602052836040600020541603610a5757612201610a3e92610a23610299956121e5856001600160a01b03166000526001602052604060002090565b5416916001600160a01b03166000526001602052604060002090565b6001600160a01b03166000526001602052604060002090565b506001811415612199565b6001600160a01b0391828116801515806122bb575b61224390611ef2565b8383166000526002602052836040600020541603610a57576122a2610a3e92610a2361029995612286856001600160a01b03166000526002602052604060002090565b5416916001600160a01b03166000526002602052604060002090565b6001600160a01b03166000526002602052604060002090565b50600181141561223a56fea164736f6c6343000813000a"; -type SmartAccountConstructorParams = [signer?: Signer] | ConstructorParameters +type SmartAccountConstructorParams = + | [signer?: Signer] + | ConstructorParameters; -const isSuperArgs = (xs: SmartAccountConstructorParams): xs is ConstructorParameters => - xs.length > 1 +const isSuperArgs = ( + xs: SmartAccountConstructorParams +): xs is ConstructorParameters => xs.length > 1; export class SmartAccount__factory extends ContractFactory { constructor(...args: SmartAccountConstructorParams) { if (isSuperArgs(args)) { - super(...args) + super(...args); } else { - super(_abi, _bytecode, args[0]) + super(_abi, _bytecode, args[0]); } } - override deploy(_EntryPoint: string, overrides?: Overrides & { from?: string }): Promise { - return super.deploy(_EntryPoint, overrides || {}) as Promise + override deploy( + _EntryPoint: string, + overrides?: Overrides & { from?: string } + ): Promise { + return super.deploy(_EntryPoint, overrides || {}) as Promise; } - override getDeployTransaction(_EntryPoint: string, overrides?: Overrides & { from?: string }): TransactionRequest { - return super.getDeployTransaction(_EntryPoint, overrides || {}) + override getDeployTransaction( + _EntryPoint: string, + overrides?: Overrides & { from?: string } + ): TransactionRequest { + return super.getDeployTransaction(_EntryPoint, overrides || {}); } override attach(address: string): SmartAccount { - return super.attach(address) as SmartAccount + return super.attach(address) as SmartAccount; } override connect(signer: Signer): SmartAccount__factory { - return super.connect(signer) as SmartAccount__factory + return super.connect(signer) as SmartAccount__factory; } - static readonly bytecode = _bytecode - static readonly abi = _abi + static readonly bytecode = _bytecode; + static readonly abi = _abi; static createInterface(): SmartAccountInterface { - return new utils.Interface(_abi) as SmartAccountInterface + return new utils.Interface(_abi) as SmartAccountInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): SmartAccount { - return new Contract(address, _abi, signerOrProvider) as SmartAccount + static connect( + address: string, + signerOrProvider: Signer | Provider + ): SmartAccount { + return new Contract(address, _abi, signerOrProvider) as SmartAccount; } } diff --git a/src/types/factories/contracts/common/index.ts b/src/types/factories/contracts/common/index.ts index 734ee41..0a8daf8 100644 --- a/src/types/factories/contracts/common/index.ts +++ b/src/types/factories/contracts/common/index.ts @@ -1,5 +1,5 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { Authority__factory } from './Authority__factory' -export { EntryPointAuth__factory } from './EntryPointAuth__factory' +export { Authority__factory } from "./Authority__factory"; +export { EntryPointAuth__factory } from "./EntryPointAuth__factory"; diff --git a/src/types/factories/contracts/core/ExecutionManager__factory.ts b/src/types/factories/contracts/core/ExecutionManager__factory.ts index 62f31c3..8c39196 100644 --- a/src/types/factories/contracts/core/ExecutionManager__factory.ts +++ b/src/types/factories/contracts/core/ExecutionManager__factory.ts @@ -2,175 +2,181 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { ExecutionManager, ExecutionManagerInterface } from '../../../contracts/core/ExecutionManager' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + ExecutionManager, + ExecutionManagerInterface, +} from "../../../contracts/core/ExecutionManager"; const _abi = [ { inputs: [], - name: 'CallerNotEntryPoint', - type: 'error', + name: "CallerNotEntryPoint", + type: "error", }, { inputs: [], - name: 'CallerNotSelf', - type: 'error', + name: "CallerNotSelf", + type: "error", }, { inputs: [], - name: 'InvalidHook', - type: 'error', + name: "InvalidHook", + type: "error", }, { inputs: [], - name: 'WrongArrayLength', - type: 'error', + name: "WrongArrayLength", + type: "error", }, { anonymous: false, inputs: [ { indexed: true, - internalType: 'address', - name: 'hook', - type: 'address', + internalType: "address", + name: "hook", + type: "address", }, ], - name: 'InstalledHook', - type: 'event', + name: "InstalledHook", + type: "event", }, { anonymous: false, inputs: [ { indexed: true, - internalType: 'address', - name: 'hook', - type: 'address', + internalType: "address", + name: "hook", + type: "address", }, ], - name: 'UninstalledHook', - type: 'event', + name: "UninstalledHook", + type: "event", }, { inputs: [ { - internalType: 'address', - name: 'hook', - type: 'address', + internalType: "address", + name: "hook", + type: "address", }, { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'addHook', + name: "addHook", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'dest', - type: 'address', + internalType: "address", + name: "dest", + type: "address", }, { - internalType: 'uint256', - name: 'value', - type: 'uint256', + internalType: "uint256", + name: "value", + type: "uint256", }, { - internalType: 'bytes', - name: 'func', - type: 'bytes', + internalType: "bytes", + name: "func", + type: "bytes", }, ], - name: 'execute', + name: "execute", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address[]', - name: 'dest', - type: 'address[]', + internalType: "address[]", + name: "dest", + type: "address[]", }, { - internalType: 'uint256[]', - name: 'value', - type: 'uint256[]', + internalType: "uint256[]", + name: "value", + type: "uint256[]", }, { - internalType: 'bytes[]', - name: 'func', - type: 'bytes[]', + internalType: "bytes[]", + name: "func", + type: "bytes[]", }, ], - name: 'executeBatch', + name: "executeBatch", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'prevBeforeHook', - type: 'address', + internalType: "address", + name: "prevBeforeHook", + type: "address", }, { - internalType: 'address', - name: 'prevAfterHook', - type: 'address', + internalType: "address", + name: "prevAfterHook", + type: "address", }, { - internalType: 'address', - name: 'hook', - type: 'address', + internalType: "address", + name: "hook", + type: "address", }, ], - name: 'removeHook', + name: "removeHook", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'dest', - type: 'address', + internalType: "address", + name: "dest", + type: "address", }, { - internalType: 'uint256', - name: 'value', - type: 'uint256', + internalType: "uint256", + name: "value", + type: "uint256", }, { - internalType: 'bytes', - name: 'func', - type: 'bytes', + internalType: "bytes", + name: "func", + type: "bytes", }, ], - name: 'sudo', + name: "sudo", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, -] as const +] as const; export class ExecutionManager__factory { - static readonly abi = _abi + static readonly abi = _abi; static createInterface(): ExecutionManagerInterface { - return new utils.Interface(_abi) as ExecutionManagerInterface + return new utils.Interface(_abi) as ExecutionManagerInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): ExecutionManager { - return new Contract(address, _abi, signerOrProvider) as ExecutionManager + static connect( + address: string, + signerOrProvider: Signer | Provider + ): ExecutionManager { + return new Contract(address, _abi, signerOrProvider) as ExecutionManager; } } diff --git a/src/types/factories/contracts/core/FallbackManager__factory.ts b/src/types/factories/contracts/core/FallbackManager__factory.ts index 034931d..406adfd 100644 --- a/src/types/factories/contracts/core/FallbackManager__factory.ts +++ b/src/types/factories/contracts/core/FallbackManager__factory.ts @@ -2,83 +2,89 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { FallbackManager, FallbackManagerInterface } from '../../../contracts/core/FallbackManager' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + FallbackManager, + FallbackManagerInterface, +} from "../../../contracts/core/FallbackManager"; const _abi = [ { inputs: [], - name: 'AddressCannotBeZero', - type: 'error', + name: "AddressCannotBeZero", + type: "error", }, { inputs: [], - name: 'CallerNotEntryPoint', - type: 'error', + name: "CallerNotEntryPoint", + type: "error", }, { inputs: [], - name: 'CallerNotSelf', - type: 'error', + name: "CallerNotSelf", + type: "error", }, { anonymous: false, inputs: [ { indexed: true, - internalType: 'address', - name: 'previousHandler', - type: 'address', + internalType: "address", + name: "previousHandler", + type: "address", }, { indexed: true, - internalType: 'address', - name: 'handler', - type: 'address', + internalType: "address", + name: "handler", + type: "address", }, ], - name: 'ChangedFallbackHandler', - type: 'event', + name: "ChangedFallbackHandler", + type: "event", }, { - stateMutability: 'nonpayable', - type: 'fallback', + stateMutability: "nonpayable", + type: "fallback", }, { inputs: [], - name: 'getFallbackHandler', + name: "getFallbackHandler", outputs: [ { - internalType: 'address', - name: '_handler', - type: 'address', + internalType: "address", + name: "_handler", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'handler', - type: 'address', + internalType: "address", + name: "handler", + type: "address", }, ], - name: 'setFallbackHandler', + name: "setFallbackHandler", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, -] as const +] as const; export class FallbackManager__factory { - static readonly abi = _abi + static readonly abi = _abi; static createInterface(): FallbackManagerInterface { - return new utils.Interface(_abi) as FallbackManagerInterface + return new utils.Interface(_abi) as FallbackManagerInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): FallbackManager { - return new Contract(address, _abi, signerOrProvider) as FallbackManager + static connect( + address: string, + signerOrProvider: Signer | Provider + ): FallbackManager { + return new Contract(address, _abi, signerOrProvider) as FallbackManager; } } diff --git a/src/types/factories/contracts/core/RecoveryManager__factory.ts b/src/types/factories/contracts/core/RecoveryManager__factory.ts index fe7651a..de60510 100644 --- a/src/types/factories/contracts/core/RecoveryManager__factory.ts +++ b/src/types/factories/contracts/core/RecoveryManager__factory.ts @@ -2,150 +2,156 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { RecoveryManager, RecoveryManagerInterface } from '../../../contracts/core/RecoveryManager' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + RecoveryManager, + RecoveryManagerInterface, +} from "../../../contracts/core/RecoveryManager"; const _abi = [ { inputs: [], - name: 'CallerNotEntryPoint', - type: 'error', + name: "CallerNotEntryPoint", + type: "error", }, { inputs: [], - name: 'CallerNotSelf', - type: 'error', + name: "CallerNotSelf", + type: "error", }, { inputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - name: 'ErrorRecoveror', - type: 'error', + name: "ErrorRecoveror", + type: "error", }, { anonymous: false, inputs: [ { indexed: false, - internalType: 'address', - name: 'recoveror', - type: 'address', + internalType: "address", + name: "recoveror", + type: "address", }, ], - name: 'AddedRecoveror', - type: 'event', + name: "AddedRecoveror", + type: "event", }, { anonymous: false, inputs: [ { indexed: false, - internalType: 'address', - name: 'recoveror', - type: 'address', + internalType: "address", + name: "recoveror", + type: "address", }, ], - name: 'RemovedRecoveror', - type: 'event', + name: "RemovedRecoveror", + type: "event", }, { inputs: [ { - internalType: 'address', - name: 'recoveror', - type: 'address', + internalType: "address", + name: "recoveror", + type: "address", }, { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'addRecoveror', + name: "addRecoveror", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'start', - type: 'address', + internalType: "address", + name: "start", + type: "address", }, { - internalType: 'uint256', - name: 'pageSize', - type: 'uint256', + internalType: "uint256", + name: "pageSize", + type: "uint256", }, ], - name: 'getRecoverorsPaginated', + name: "getRecoverorsPaginated", outputs: [ { - internalType: 'address[]', - name: 'array', - type: 'address[]', + internalType: "address[]", + name: "array", + type: "address[]", }, { - internalType: 'address', - name: 'next', - type: 'address', + internalType: "address", + name: "next", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'recoveror', - type: 'address', + internalType: "address", + name: "recoveror", + type: "address", }, ], - name: 'isRecoverorEnabled', + name: "isRecoverorEnabled", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'prevRecoveror', - type: 'address', + internalType: "address", + name: "prevRecoveror", + type: "address", }, { - internalType: 'address', - name: 'recoveror', - type: 'address', + internalType: "address", + name: "recoveror", + type: "address", }, ], - name: 'removeRecoveror', + name: "removeRecoveror", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, -] as const +] as const; export class RecoveryManager__factory { - static readonly abi = _abi + static readonly abi = _abi; static createInterface(): RecoveryManagerInterface { - return new utils.Interface(_abi) as RecoveryManagerInterface + return new utils.Interface(_abi) as RecoveryManagerInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): RecoveryManager { - return new Contract(address, _abi, signerOrProvider) as RecoveryManager + static connect( + address: string, + signerOrProvider: Signer | Provider + ): RecoveryManager { + return new Contract(address, _abi, signerOrProvider) as RecoveryManager; } } diff --git a/src/types/factories/contracts/core/ValidatorManager__factory.ts b/src/types/factories/contracts/core/ValidatorManager__factory.ts index 407ebca..117bc78 100644 --- a/src/types/factories/contracts/core/ValidatorManager__factory.ts +++ b/src/types/factories/contracts/core/ValidatorManager__factory.ts @@ -2,193 +2,199 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { ValidatorManager, ValidatorManagerInterface } from '../../../contracts/core/ValidatorManager' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + ValidatorManager, + ValidatorManagerInterface, +} from "../../../contracts/core/ValidatorManager"; const _abi = [ { inputs: [], - name: 'CallerNotEntryPoint', - type: 'error', + name: "CallerNotEntryPoint", + type: "error", }, { inputs: [], - name: 'CallerNotSelf', - type: 'error', + name: "CallerNotSelf", + type: "error", }, { inputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - name: 'ErrorValidator', - type: 'error', + name: "ErrorValidator", + type: "error", }, { inputs: [ { - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'ValidatorAlreadyEnabled', - type: 'error', + name: "ValidatorAlreadyEnabled", + type: "error", }, { inputs: [ { - internalType: 'address', - name: 'expectedValidator', - type: 'address', + internalType: "address", + name: "expectedValidator", + type: "address", }, { - internalType: 'address', - name: 'returnedValidator', - type: 'address', + internalType: "address", + name: "returnedValidator", + type: "address", }, { - internalType: 'address', - name: 'prevValidator', - type: 'address', + internalType: "address", + name: "prevValidator", + type: "address", }, ], - name: 'ValidatorAndPrevValidatorMismatch', - type: 'error', + name: "ValidatorAndPrevValidatorMismatch", + type: "error", }, { inputs: [ { - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'ValidatorCannotBeZeroOrSentinel', - type: 'error', + name: "ValidatorCannotBeZeroOrSentinel", + type: "error", }, { anonymous: false, inputs: [ { indexed: false, - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'DisabledValidator', - type: 'event', + name: "DisabledValidator", + type: "event", }, { anonymous: false, inputs: [ { indexed: false, - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'EnabledValidator', - type: 'event', + name: "EnabledValidator", + type: "event", }, { inputs: [ { - internalType: 'address', - name: 'prevValidator', - type: 'address', + internalType: "address", + name: "prevValidator", + type: "address", }, { - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'disableValidator', + name: "disableValidator", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'enableValidator', + name: "enableValidator", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'start', - type: 'address', + internalType: "address", + name: "start", + type: "address", }, { - internalType: 'uint256', - name: 'pageSize', - type: 'uint256', + internalType: "uint256", + name: "pageSize", + type: "uint256", }, ], - name: 'getValidatorsPaginated', + name: "getValidatorsPaginated", outputs: [ { - internalType: 'address[]', - name: 'array', - type: 'address[]', + internalType: "address[]", + name: "array", + type: "address[]", }, { - internalType: 'address', - name: 'next', - type: 'address', + internalType: "address", + name: "next", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'validator', - type: 'address', + internalType: "address", + name: "validator", + type: "address", }, ], - name: 'isValidatorEnabled', + name: "isValidatorEnabled", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, -] as const +] as const; export class ValidatorManager__factory { - static readonly abi = _abi + static readonly abi = _abi; static createInterface(): ValidatorManagerInterface { - return new utils.Interface(_abi) as ValidatorManagerInterface + return new utils.Interface(_abi) as ValidatorManagerInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): ValidatorManager { - return new Contract(address, _abi, signerOrProvider) as ValidatorManager + static connect( + address: string, + signerOrProvider: Signer | Provider + ): ValidatorManager { + return new Contract(address, _abi, signerOrProvider) as ValidatorManager; } } diff --git a/src/types/factories/contracts/core/index.ts b/src/types/factories/contracts/core/index.ts index d28d455..ddd69bb 100644 --- a/src/types/factories/contracts/core/index.ts +++ b/src/types/factories/contracts/core/index.ts @@ -1,8 +1,8 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { EntryPointManager__factory } from './EntryPointManager__factory' -export { ExecutionManager__factory } from './ExecutionManager__factory' -export { FallbackManager__factory } from './FallbackManager__factory' -export { RecoveryManager__factory } from './RecoveryManager__factory' -export { ValidatorManager__factory } from './ValidatorManager__factory' +export { EntryPointManager__factory } from "./EntryPointManager__factory"; +export { ExecutionManager__factory } from "./ExecutionManager__factory"; +export { FallbackManager__factory } from "./FallbackManager__factory"; +export { RecoveryManager__factory } from "./RecoveryManager__factory"; +export { ValidatorManager__factory } from "./ValidatorManager__factory"; diff --git a/src/types/factories/contracts/handler/index.ts b/src/types/factories/contracts/handler/index.ts index 845d5a3..5b44ce2 100644 --- a/src/types/factories/contracts/handler/index.ts +++ b/src/types/factories/contracts/handler/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { DefaultCallbackHandler__factory } from './DefaultCallbackHandler__factory' +export { DefaultCallbackHandler__factory } from "./DefaultCallbackHandler__factory"; diff --git a/src/types/factories/contracts/hooks/index.ts b/src/types/factories/contracts/hooks/index.ts index 9dace9a..aa1f310 100644 --- a/src/types/factories/contracts/hooks/index.ts +++ b/src/types/factories/contracts/hooks/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { BaseHook__factory } from './BaseHook__factory' +export { BaseHook__factory } from "./BaseHook__factory"; diff --git a/src/types/factories/contracts/index.ts b/src/types/factories/contracts/index.ts index ba27086..60e69a7 100644 --- a/src/types/factories/contracts/index.ts +++ b/src/types/factories/contracts/index.ts @@ -1,12 +1,12 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as common from './common' -export * as core from './core' -export * as handler from './handler' -export * as hooks from './hooks' -export * as interfaces from './interfaces' -export * as paymaster from './paymaster' -export * as validators from './validators' -export { SmartAccount__factory } from './SmartAccount__factory' -export { SmartAccountFactory__factory } from './SmartAccountFactory__factory' +export * as common from "./common"; +export * as core from "./core"; +export * as handler from "./handler"; +export * as hooks from "./hooks"; +export * as interfaces from "./interfaces"; +export * as paymaster from "./paymaster"; +export * as validators from "./validators"; +export { SmartAccount__factory } from "./SmartAccount__factory"; +export { SmartAccountFactory__factory } from "./SmartAccountFactory__factory"; diff --git a/src/types/factories/contracts/interfaces/IValidator__factory.ts b/src/types/factories/contracts/interfaces/IValidator__factory.ts index e70eda2..5dbca85 100644 --- a/src/types/factories/contracts/interfaces/IValidator__factory.ts +++ b/src/types/factories/contracts/interfaces/IValidator__factory.ts @@ -2,187 +2,193 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { IValidator, IValidatorInterface } from '../../../contracts/interfaces/IValidator' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + IValidator, + IValidatorInterface, +} from "../../../contracts/interfaces/IValidator"; const _abi = [ { inputs: [], - name: 'NAME', + name: "NAME", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'VERSION', + name: "VERSION", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'enable', + name: "enable", outputs: [], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, { inputs: [ { - internalType: 'bytes4', - name: 'interfaceId', - type: 'bytes4', + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", }, ], - name: 'supportsInterface', + name: "supportsInterface", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'caller', - type: 'address', + internalType: "address", + name: "caller", + type: "address", }, { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'validCaller', + name: "validCaller", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { components: [ { - internalType: 'address', - name: 'sender', - type: 'address', + internalType: "address", + name: "sender", + type: "address", }, { - internalType: 'uint256', - name: 'nonce', - type: 'uint256', + internalType: "uint256", + name: "nonce", + type: "uint256", }, { - internalType: 'bytes', - name: 'initCode', - type: 'bytes', + internalType: "bytes", + name: "initCode", + type: "bytes", }, { - internalType: 'bytes', - name: 'callData', - type: 'bytes', + internalType: "bytes", + name: "callData", + type: "bytes", }, { - internalType: 'uint256', - name: 'callGasLimit', - type: 'uint256', + internalType: "uint256", + name: "callGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'verificationGasLimit', - type: 'uint256', + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'preVerificationGas', - type: 'uint256', + internalType: "uint256", + name: "preVerificationGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxPriorityFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256", }, { - internalType: 'bytes', - name: 'paymasterAndData', - type: 'bytes', + internalType: "bytes", + name: "paymasterAndData", + type: "bytes", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - internalType: 'struct UserOperation', - name: 'userOp', - type: 'tuple', + internalType: "struct UserOperation", + name: "userOp", + type: "tuple", }, { - internalType: 'bytes32', - name: 'userOpHash', - type: 'bytes32', + internalType: "bytes32", + name: "userOpHash", + type: "bytes32", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - name: 'validateSignature', + name: "validateSignature", outputs: [ { - internalType: 'uint256', - name: 'validationData', - type: 'uint256', + internalType: "uint256", + name: "validationData", + type: "uint256", }, ], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, -] as const +] as const; export class IValidator__factory { - static readonly abi = _abi + static readonly abi = _abi; static createInterface(): IValidatorInterface { - return new utils.Interface(_abi) as IValidatorInterface + return new utils.Interface(_abi) as IValidatorInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): IValidator { - return new Contract(address, _abi, signerOrProvider) as IValidator + static connect( + address: string, + signerOrProvider: Signer | Provider + ): IValidator { + return new Contract(address, _abi, signerOrProvider) as IValidator; } } diff --git a/src/types/factories/contracts/interfaces/index.ts b/src/types/factories/contracts/interfaces/index.ts index 778dac8..2323c94 100644 --- a/src/types/factories/contracts/interfaces/index.ts +++ b/src/types/factories/contracts/interfaces/index.ts @@ -1,7 +1,7 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { IHook__factory } from './IHook__factory' -export { IRecoveror__factory } from './IRecoveror__factory' -export { IValidator__factory } from './IValidator__factory' -export { Metadata__factory } from './Metadata__factory' +export { IHook__factory } from "./IHook__factory"; +export { IRecoveror__factory } from "./IRecoveror__factory"; +export { IValidator__factory } from "./IValidator__factory"; +export { Metadata__factory } from "./Metadata__factory"; diff --git a/src/types/factories/contracts/paymaster/VerifyingPaymaster__factory.ts b/src/types/factories/contracts/paymaster/VerifyingPaymaster__factory.ts index d359e64..4e23921 100644 --- a/src/types/factories/contracts/paymaster/VerifyingPaymaster__factory.ts +++ b/src/types/factories/contracts/paymaster/VerifyingPaymaster__factory.ts @@ -1,496 +1,509 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from 'ethers' -import type { Provider, TransactionRequest } from '@ethersproject/providers' -import type { VerifyingPaymaster, VerifyingPaymasterInterface } from '../../../contracts/paymaster/VerifyingPaymaster' +import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; +import type { Provider, TransactionRequest } from "@ethersproject/providers"; +import type { + VerifyingPaymaster, + VerifyingPaymasterInterface, +} from "../../../contracts/paymaster/VerifyingPaymaster"; const _abi = [ { inputs: [ { - internalType: 'contract IEntryPoint', - name: '_entryPoint', - type: 'address', + internalType: "contract IEntryPoint", + name: "_entryPoint", + type: "address", }, { - internalType: 'address', - name: '_signer', - type: 'address', + internalType: "address", + name: "_signer", + type: "address", }, ], - stateMutability: 'nonpayable', - type: 'constructor', + stateMutability: "nonpayable", + type: "constructor", }, { anonymous: false, inputs: [ { indexed: true, - internalType: 'address', - name: 'previousOwner', - type: 'address', + internalType: "address", + name: "previousOwner", + type: "address", }, { indexed: true, - internalType: 'address', - name: 'newOwner', - type: 'address', + internalType: "address", + name: "newOwner", + type: "address", }, ], - name: 'OwnershipTransferred', - type: 'event', + name: "OwnershipTransferred", + type: "event", }, { anonymous: false, inputs: [ { indexed: true, - internalType: 'address', - name: 'signer', - type: 'address', + internalType: "address", + name: "signer", + type: "address", }, ], - name: 'SignerChanged', - type: 'event', + name: "SignerChanged", + type: "event", }, { inputs: [ { - internalType: 'uint32', - name: 'unstakeDelaySec', - type: 'uint32', + internalType: "uint32", + name: "unstakeDelaySec", + type: "uint32", }, ], - name: 'addStake', + name: "addStake", outputs: [], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: '_signer', - type: 'address', + internalType: "address", + name: "_signer", + type: "address", }, ], - name: 'changeSigner', + name: "changeSigner", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [], - name: 'deposit', + name: "deposit", outputs: [], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, { inputs: [], - name: 'entryPoint', + name: "entryPoint", outputs: [ { - internalType: 'contract IEntryPoint', - name: '', - type: 'address', + internalType: "contract IEntryPoint", + name: "", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'getDeposit', + name: "getDeposit", outputs: [ { - internalType: 'uint256', - name: '', - type: 'uint256', + internalType: "uint256", + name: "", + type: "uint256", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { components: [ { - internalType: 'address', - name: 'sender', - type: 'address', + internalType: "address", + name: "sender", + type: "address", }, { - internalType: 'uint256', - name: 'nonce', - type: 'uint256', + internalType: "uint256", + name: "nonce", + type: "uint256", }, { - internalType: 'bytes', - name: 'initCode', - type: 'bytes', + internalType: "bytes", + name: "initCode", + type: "bytes", }, { - internalType: 'bytes', - name: 'callData', - type: 'bytes', + internalType: "bytes", + name: "callData", + type: "bytes", }, { - internalType: 'uint256', - name: 'callGasLimit', - type: 'uint256', + internalType: "uint256", + name: "callGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'verificationGasLimit', - type: 'uint256', + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'preVerificationGas', - type: 'uint256', + internalType: "uint256", + name: "preVerificationGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxPriorityFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256", }, { - internalType: 'bytes', - name: 'paymasterAndData', - type: 'bytes', + internalType: "bytes", + name: "paymasterAndData", + type: "bytes", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - internalType: 'struct UserOperation', - name: 'userOp', - type: 'tuple', + internalType: "struct UserOperation", + name: "userOp", + type: "tuple", }, { - internalType: 'uint48', - name: 'validUntil', - type: 'uint48', + internalType: "uint48", + name: "validUntil", + type: "uint48", }, { - internalType: 'uint48', - name: 'validAfter', - type: 'uint48', + internalType: "uint48", + name: "validAfter", + type: "uint48", }, ], - name: 'getHash', + name: "getHash", outputs: [ { - internalType: 'bytes32', - name: '', - type: 'bytes32', + internalType: "bytes32", + name: "", + type: "bytes32", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'owner', + name: "owner", outputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'bytes', - name: 'paymasterAndData', - type: 'bytes', + internalType: "bytes", + name: "paymasterAndData", + type: "bytes", }, ], - name: 'parsePaymasterAndData', + name: "parsePaymasterAndData", outputs: [ { - internalType: 'uint48', - name: 'validUntil', - type: 'uint48', + internalType: "uint48", + name: "validUntil", + type: "uint48", }, { - internalType: 'uint48', - name: 'validAfter', - type: 'uint48', + internalType: "uint48", + name: "validAfter", + type: "uint48", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - stateMutability: 'pure', - type: 'function', + stateMutability: "pure", + type: "function", }, { inputs: [ { - internalType: 'enum IPaymaster.PostOpMode', - name: 'mode', - type: 'uint8', + internalType: "enum IPaymaster.PostOpMode", + name: "mode", + type: "uint8", }, { - internalType: 'bytes', - name: 'context', - type: 'bytes', + internalType: "bytes", + name: "context", + type: "bytes", }, { - internalType: 'uint256', - name: 'actualGasCost', - type: 'uint256', + internalType: "uint256", + name: "actualGasCost", + type: "uint256", }, ], - name: 'postOp', + name: "postOp", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [], - name: 'renounceOwnership', + name: "renounceOwnership", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - name: 'senderNonce', + name: "senderNonce", outputs: [ { - internalType: 'uint256', - name: '', - type: 'uint256', + internalType: "uint256", + name: "", + type: "uint256", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'signer', + name: "signer", outputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'newOwner', - type: 'address', + internalType: "address", + name: "newOwner", + type: "address", }, ], - name: 'transferOwnership', + name: "transferOwnership", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [], - name: 'unlockStake', + name: "unlockStake", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { components: [ { - internalType: 'address', - name: 'sender', - type: 'address', + internalType: "address", + name: "sender", + type: "address", }, { - internalType: 'uint256', - name: 'nonce', - type: 'uint256', + internalType: "uint256", + name: "nonce", + type: "uint256", }, { - internalType: 'bytes', - name: 'initCode', - type: 'bytes', + internalType: "bytes", + name: "initCode", + type: "bytes", }, { - internalType: 'bytes', - name: 'callData', - type: 'bytes', + internalType: "bytes", + name: "callData", + type: "bytes", }, { - internalType: 'uint256', - name: 'callGasLimit', - type: 'uint256', + internalType: "uint256", + name: "callGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'verificationGasLimit', - type: 'uint256', + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'preVerificationGas', - type: 'uint256', + internalType: "uint256", + name: "preVerificationGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxPriorityFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256", }, { - internalType: 'bytes', - name: 'paymasterAndData', - type: 'bytes', + internalType: "bytes", + name: "paymasterAndData", + type: "bytes", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - internalType: 'struct UserOperation', - name: 'userOp', - type: 'tuple', + internalType: "struct UserOperation", + name: "userOp", + type: "tuple", }, { - internalType: 'bytes32', - name: 'userOpHash', - type: 'bytes32', + internalType: "bytes32", + name: "userOpHash", + type: "bytes32", }, { - internalType: 'uint256', - name: 'maxCost', - type: 'uint256', + internalType: "uint256", + name: "maxCost", + type: "uint256", }, ], - name: 'validatePaymasterUserOp', + name: "validatePaymasterUserOp", outputs: [ { - internalType: 'bytes', - name: 'context', - type: 'bytes', + internalType: "bytes", + name: "context", + type: "bytes", }, { - internalType: 'uint256', - name: 'validationData', - type: 'uint256', + internalType: "uint256", + name: "validationData", + type: "uint256", }, ], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address payable', - name: 'withdrawAddress', - type: 'address', + internalType: "address payable", + name: "withdrawAddress", + type: "address", }, ], - name: 'withdrawStake', + name: "withdrawStake", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, { inputs: [ { - internalType: 'address payable', - name: 'withdrawAddress', - type: 'address', + internalType: "address payable", + name: "withdrawAddress", + type: "address", }, { - internalType: 'uint256', - name: 'amount', - type: 'uint256', + internalType: "uint256", + name: "amount", + type: "uint256", }, ], - name: 'withdrawTo', + name: "withdrawTo", outputs: [], - stateMutability: 'nonpayable', - type: 'function', + stateMutability: "nonpayable", + type: "function", }, -] as const +] as const; const _bytecode = - '0x60a03461011957601f61114a38819003918201601f19168301916001600160401b0383118484101761011e5780849260409485528339810103126101195780516001600160a01b0391828216820361011957602001519082821680920361011957600080546001600160a01b0319808216339081178455604051967f5719a5656c5cfdaafa148ecf366fd3b0a7fae06449ce2a46225977fb7417e29d958794909291167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08680a3608052600154161760015580a2611015908161013582396080518181816101590152818161020b015281816105b2015281816105fb0152818161067d015281816106fe0152818161079201526109da0152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001257600080fd5b60003560e01c80630396cb6014610127578063205c287814610122578063238ac9331461011d578063715018a6146101185780638da5cb5b1461011357806394d4ad601461010e57806394e1fc19146101095780639c90b44314610104578063a9a23409146100ff578063aad2b723146100fa578063b0d691fe146100f5578063bb9fe6bf146100f0578063c23a5cea146100eb578063c399ec88146100e6578063d0e30db0146100e1578063f2fde38b146100dc5763f465c77e146100d757600080fd5b610911565b6107e7565b61077b565b6106d1565b61064a565b6105d6565b610592565b61051e565b610493565b610455565b6103f0565b61034e565b6102f9565b610292565b61026b565b6101d8565b600060203660031901126101bf5760043563ffffffff81168091036101bb5761014e610a47565b816001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b156101bb57602460405180948193621cb65b60e51b8352600483015234905af180156101b6576101aa575080f35b6101b390610989565b80f35b6109c4565b5080fd5b80fd5b6001600160a01b038116036101d357565b600080fd5b346101d357600060403660031901126101bf576004356101f7816101c2565b6101ff610a47565b816001600160a01b03807f00000000000000000000000000000000000000000000000000000000000000001692833b156102675760449083604051958694859363040b850f60e31b855216600484015260243560248401525af180156101b6576101aa575080f35b8280fd5b346101d35760003660031901126101d35760206001600160a01b0360015416604051908152f35b346101d3576000806003193601126101bf576102ac610a47565b806001600160a01b03815473ffffffffffffffffffffffffffffffffffffffff1981168355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b346101d35760003660031901126101d35760206001600160a01b0360005416604051908152f35b9181601f840112156101d35782359167ffffffffffffffff83116101d357602083818601950101116101d357565b346101d35760203660031901126101d35760043567ffffffffffffffff81116101d35761038a6103846080923690600401610320565b90610fd8565b809160409594955195869465ffffffffffff809216865216602085015260606040850152816060850152848401376000828201840152601f01601f19168101030190f35b90816101609103126101d35790565b359065ffffffffffff821682036101d357565b346101d35760603660031901126101d35760043567ffffffffffffffff81116101d3576104219036906004016103ce565b6024359065ffffffffffff80831683036101d35760443590811681036101d35760209261044d92610a9f565b604051908152f35b346101d35760203660031901126101d3576001600160a01b0360043561047a816101c2565b1660005260026020526020604060002054604051908152f35b346101d35760603660031901126101d357600360043510156101d35760243567ffffffffffffffff81116101d3576104cf903690600401610320565b50506104d96109d0565b60405162461bcd60e51b815260206004820152600d60248201527f6d757374206f76657272696465000000000000000000000000000000000000006044820152606490fd5b346101d35760203660031901126101d3576001600160a01b03600435610543816101c2565b61054b610a47565b168073ffffffffffffffffffffffffffffffffffffffff1960015416176001557f5719a5656c5cfdaafa148ecf366fd3b0a7fae06449ce2a46225977fb7417e29d600080a2005b346101d35760003660031901126101d35760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101d3576000806003193601126101bf576105f0610a47565b806001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b1561064757819060046040518094819363bb9fe6bf60e01b83525af180156101b6576101aa575080f35b50fd5b346101d357600060203660031901126101bf57600435610669816101c2565b610671610a47565b816001600160a01b03807f00000000000000000000000000000000000000000000000000000000000000001692833b156102675760249083604051958694859363611d2e7560e11b85521660048401525af180156101b6576101aa575080f35b346101d3576000806003193601126101bf576040516370a0823160e01b81523060048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa9081156101b6578291610745575b604051828152602090f35b0390f35b90506020813d8211610773575b8161075f602093836109a2565b810103126101bb5761074191505138610736565b3d9150610752565b6000806003193601126101bf576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681813b156101bf5760405163b760faf960e01b8152306004820152918290602490829034905af180156101b6576101aa575080f35b346101d35760203660031901126101d357600435610804816101c2565b61080c610a47565b6001600160a01b0380911680156108665760009182548273ffffffffffffffffffffffffffffffffffffffff198216178455167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608490fd5b919082519283825260005b8481106108fd575050826000602080949584010152601f8019910116010190565b6020818301810151848301820152016108dc565b346101d35760603660031901126101d35760043567ffffffffffffffff81116101d3576109556109486109699236906004016103ce565b6109506109d0565b610bfe565b6040519283926040845260408401906108d1565b9060208301520390f35b634e487b7160e01b600052604160045260246000fd5b67ffffffffffffffff811161099d57604052565b610973565b90601f8019910116810190811067ffffffffffffffff82111761099d57604052565b6040513d6000823e3d90fd5b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163303610a0257565b60405162461bcd60e51b815260206004820152601560248201527f53656e646572206e6f7420456e747279506f696e7400000000000000000000006044820152606490fd5b6001600160a01b03600054163303610a5b57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b610b359080610ab2610120820182610b3b565b5003936001600160a01b03601f199283870160405197880160405280885281602089013735166000526002602052604060002054604051948592610b02602085019860c08a5260e08601906108d1565b92466040860152306060860152608085015265ffffffffffff80921660a08501521660c0830152039081018352826109a2565b51902090565b903590601e19813603018212156101d3570180359067ffffffffffffffff82116101d3576020019181360383136101d357565b6000198114610b7d5760010190565b634e487b7160e01b600052601160045260246000fd5b92919267ffffffffffffffff821161099d5760405191610bbd601f8201601f1916602001846109a2565b8294818452818301116101d3578281602093846000960137010152565b604051906020820182811067ffffffffffffffff82111761099d5760405260008252565b90610c10610384610120840184610b3b565b919490604083148015610dbc575b15610d5257610cb9610cc591610cb3610c6a610c3b8a8988610a9f565b7f19457468657265756d205369676e6564204d6573736167653a0a333200000000600052601c52603c60002090565b91610c936001600160a01b03809735166001600160a01b03166000526002602052604060002090565b610c9d8154610b6e565b90556001546001600160a01b0316963691610b93565b90610dc6565b6001600160a01b031690565b911603610d0d5765ffffffffffff60a01b7fffffffffffff0000000000000000000000000000000000000000000000000000610cff610bda565b9460d01b169160a01b161790565b60019065ffffffffffff60a01b7fffffffffffff0000000000000000000000000000000000000000000000000000610d43610bda565b9560d01b169160a01b16171790565b608460405162461bcd60e51b815260206004820152604060248201527f566572696679696e675061796d61737465723a20696e76616c6964207369676e60448201527f6174757265206c656e67746820696e207061796d6173746572416e64446174616064820152fd5b5060418314610c1e565b610ddb91610dd391610f1e565b919091610dfe565b90565b60051115610de857565b634e487b7160e01b600052602160045260246000fd5b610e0781610dde565b80610e0f5750565b610e1881610dde565b60018103610e655760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606490fd5b610e6e81610dde565b60028103610ebb5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606490fd5b80610ec7600392610dde565b14610ece57565b60405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608490fd5b906041815114600014610f4c57610f48916020820151906060604084015193015160001a90610f56565b9091565b5050600090600290565b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311610fcc5791608094939160ff602094604051948552168484015260408301526060820152600093849182805260015afa156101b65781516001600160a01b03811615610fc6579190565b50600190565b50505050600090600390565b9190806054116101d357610fee601484016103dd565b916054610ffd603486016103dd565b93940191605319019056fea164736f6c6343000813000a' + "0x60a03461011957601f61114a38819003918201601f19168301916001600160401b0383118484101761011e5780849260409485528339810103126101195780516001600160a01b0391828216820361011957602001519082821680920361011957600080546001600160a01b0319808216339081178455604051967f5719a5656c5cfdaafa148ecf366fd3b0a7fae06449ce2a46225977fb7417e29d958794909291167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08680a3608052600154161760015580a2611015908161013582396080518181816101590152818161020b015281816105b2015281816105fb0152818161067d015281816106fe0152818161079201526109da0152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001257600080fd5b60003560e01c80630396cb6014610127578063205c287814610122578063238ac9331461011d578063715018a6146101185780638da5cb5b1461011357806394d4ad601461010e57806394e1fc19146101095780639c90b44314610104578063a9a23409146100ff578063aad2b723146100fa578063b0d691fe146100f5578063bb9fe6bf146100f0578063c23a5cea146100eb578063c399ec88146100e6578063d0e30db0146100e1578063f2fde38b146100dc5763f465c77e146100d757600080fd5b610911565b6107e7565b61077b565b6106d1565b61064a565b6105d6565b610592565b61051e565b610493565b610455565b6103f0565b61034e565b6102f9565b610292565b61026b565b6101d8565b600060203660031901126101bf5760043563ffffffff81168091036101bb5761014e610a47565b816001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691823b156101bb57602460405180948193621cb65b60e51b8352600483015234905af180156101b6576101aa575080f35b6101b390610989565b80f35b6109c4565b5080fd5b80fd5b6001600160a01b038116036101d357565b600080fd5b346101d357600060403660031901126101bf576004356101f7816101c2565b6101ff610a47565b816001600160a01b03807f00000000000000000000000000000000000000000000000000000000000000001692833b156102675760449083604051958694859363040b850f60e31b855216600484015260243560248401525af180156101b6576101aa575080f35b8280fd5b346101d35760003660031901126101d35760206001600160a01b0360015416604051908152f35b346101d3576000806003193601126101bf576102ac610a47565b806001600160a01b03815473ffffffffffffffffffffffffffffffffffffffff1981168355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b346101d35760003660031901126101d35760206001600160a01b0360005416604051908152f35b9181601f840112156101d35782359167ffffffffffffffff83116101d357602083818601950101116101d357565b346101d35760203660031901126101d35760043567ffffffffffffffff81116101d35761038a6103846080923690600401610320565b90610fd8565b809160409594955195869465ffffffffffff809216865216602085015260606040850152816060850152848401376000828201840152601f01601f19168101030190f35b90816101609103126101d35790565b359065ffffffffffff821682036101d357565b346101d35760603660031901126101d35760043567ffffffffffffffff81116101d3576104219036906004016103ce565b6024359065ffffffffffff80831683036101d35760443590811681036101d35760209261044d92610a9f565b604051908152f35b346101d35760203660031901126101d3576001600160a01b0360043561047a816101c2565b1660005260026020526020604060002054604051908152f35b346101d35760603660031901126101d357600360043510156101d35760243567ffffffffffffffff81116101d3576104cf903690600401610320565b50506104d96109d0565b60405162461bcd60e51b815260206004820152600d60248201527f6d757374206f76657272696465000000000000000000000000000000000000006044820152606490fd5b346101d35760203660031901126101d3576001600160a01b03600435610543816101c2565b61054b610a47565b168073ffffffffffffffffffffffffffffffffffffffff1960015416176001557f5719a5656c5cfdaafa148ecf366fd3b0a7fae06449ce2a46225977fb7417e29d600080a2005b346101d35760003660031901126101d35760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101d3576000806003193601126101bf576105f0610a47565b806001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016803b1561064757819060046040518094819363bb9fe6bf60e01b83525af180156101b6576101aa575080f35b50fd5b346101d357600060203660031901126101bf57600435610669816101c2565b610671610a47565b816001600160a01b03807f00000000000000000000000000000000000000000000000000000000000000001692833b156102675760249083604051958694859363611d2e7560e11b85521660048401525af180156101b6576101aa575080f35b346101d3576000806003193601126101bf576040516370a0823160e01b81523060048201526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa9081156101b6578291610745575b604051828152602090f35b0390f35b90506020813d8211610773575b8161075f602093836109a2565b810103126101bb5761074191505138610736565b3d9150610752565b6000806003193601126101bf576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681813b156101bf5760405163b760faf960e01b8152306004820152918290602490829034905af180156101b6576101aa575080f35b346101d35760203660031901126101d357600435610804816101c2565b61080c610a47565b6001600160a01b0380911680156108665760009182548273ffffffffffffffffffffffffffffffffffffffff198216178455167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608490fd5b919082519283825260005b8481106108fd575050826000602080949584010152601f8019910116010190565b6020818301810151848301820152016108dc565b346101d35760603660031901126101d35760043567ffffffffffffffff81116101d3576109556109486109699236906004016103ce565b6109506109d0565b610bfe565b6040519283926040845260408401906108d1565b9060208301520390f35b634e487b7160e01b600052604160045260246000fd5b67ffffffffffffffff811161099d57604052565b610973565b90601f8019910116810190811067ffffffffffffffff82111761099d57604052565b6040513d6000823e3d90fd5b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163303610a0257565b60405162461bcd60e51b815260206004820152601560248201527f53656e646572206e6f7420456e747279506f696e7400000000000000000000006044820152606490fd5b6001600160a01b03600054163303610a5b57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b610b359080610ab2610120820182610b3b565b5003936001600160a01b03601f199283870160405197880160405280885281602089013735166000526002602052604060002054604051948592610b02602085019860c08a5260e08601906108d1565b92466040860152306060860152608085015265ffffffffffff80921660a08501521660c0830152039081018352826109a2565b51902090565b903590601e19813603018212156101d3570180359067ffffffffffffffff82116101d3576020019181360383136101d357565b6000198114610b7d5760010190565b634e487b7160e01b600052601160045260246000fd5b92919267ffffffffffffffff821161099d5760405191610bbd601f8201601f1916602001846109a2565b8294818452818301116101d3578281602093846000960137010152565b604051906020820182811067ffffffffffffffff82111761099d5760405260008252565b90610c10610384610120840184610b3b565b919490604083148015610dbc575b15610d5257610cb9610cc591610cb3610c6a610c3b8a8988610a9f565b7f19457468657265756d205369676e6564204d6573736167653a0a333200000000600052601c52603c60002090565b91610c936001600160a01b03809735166001600160a01b03166000526002602052604060002090565b610c9d8154610b6e565b90556001546001600160a01b0316963691610b93565b90610dc6565b6001600160a01b031690565b911603610d0d5765ffffffffffff60a01b7fffffffffffff0000000000000000000000000000000000000000000000000000610cff610bda565b9460d01b169160a01b161790565b60019065ffffffffffff60a01b7fffffffffffff0000000000000000000000000000000000000000000000000000610d43610bda565b9560d01b169160a01b16171790565b608460405162461bcd60e51b815260206004820152604060248201527f566572696679696e675061796d61737465723a20696e76616c6964207369676e60448201527f6174757265206c656e67746820696e207061796d6173746572416e64446174616064820152fd5b5060418314610c1e565b610ddb91610dd391610f1e565b919091610dfe565b90565b60051115610de857565b634e487b7160e01b600052602160045260246000fd5b610e0781610dde565b80610e0f5750565b610e1881610dde565b60018103610e655760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606490fd5b610e6e81610dde565b60028103610ebb5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606490fd5b80610ec7600392610dde565b14610ece57565b60405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608490fd5b906041815114600014610f4c57610f48916020820151906060604084015193015160001a90610f56565b9091565b5050600090600290565b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311610fcc5791608094939160ff602094604051948552168484015260408301526060820152600093849182805260015afa156101b65781516001600160a01b03811615610fc6579190565b50600190565b50505050600090600390565b9190806054116101d357610fee601484016103dd565b916054610ffd603486016103dd565b93940191605319019056fea164736f6c6343000813000a"; -type VerifyingPaymasterConstructorParams = [signer?: Signer] | ConstructorParameters +type VerifyingPaymasterConstructorParams = + | [signer?: Signer] + | ConstructorParameters; -const isSuperArgs = (xs: VerifyingPaymasterConstructorParams): xs is ConstructorParameters => - xs.length > 1 +const isSuperArgs = ( + xs: VerifyingPaymasterConstructorParams +): xs is ConstructorParameters => xs.length > 1; export class VerifyingPaymaster__factory extends ContractFactory { constructor(...args: VerifyingPaymasterConstructorParams) { if (isSuperArgs(args)) { - super(...args) + super(...args); } else { - super(_abi, _bytecode, args[0]) + super(_abi, _bytecode, args[0]); } } override deploy( _entryPoint: string, _signer: string, - overrides?: Overrides & { from?: string }, + overrides?: Overrides & { from?: string } ): Promise { - return super.deploy(_entryPoint, _signer, overrides || {}) as Promise + return super.deploy( + _entryPoint, + _signer, + overrides || {} + ) as Promise; } override getDeployTransaction( _entryPoint: string, _signer: string, - overrides?: Overrides & { from?: string }, + overrides?: Overrides & { from?: string } ): TransactionRequest { - return super.getDeployTransaction(_entryPoint, _signer, overrides || {}) + return super.getDeployTransaction(_entryPoint, _signer, overrides || {}); } override attach(address: string): VerifyingPaymaster { - return super.attach(address) as VerifyingPaymaster + return super.attach(address) as VerifyingPaymaster; } override connect(signer: Signer): VerifyingPaymaster__factory { - return super.connect(signer) as VerifyingPaymaster__factory + return super.connect(signer) as VerifyingPaymaster__factory; } - static readonly bytecode = _bytecode - static readonly abi = _abi + static readonly bytecode = _bytecode; + static readonly abi = _abi; static createInterface(): VerifyingPaymasterInterface { - return new utils.Interface(_abi) as VerifyingPaymasterInterface + return new utils.Interface(_abi) as VerifyingPaymasterInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): VerifyingPaymaster { - return new Contract(address, _abi, signerOrProvider) as VerifyingPaymaster + static connect( + address: string, + signerOrProvider: Signer | Provider + ): VerifyingPaymaster { + return new Contract(address, _abi, signerOrProvider) as VerifyingPaymaster; } } diff --git a/src/types/factories/contracts/paymaster/index.ts b/src/types/factories/contracts/paymaster/index.ts index 1f0d3b6..1b68dd7 100644 --- a/src/types/factories/contracts/paymaster/index.ts +++ b/src/types/factories/contracts/paymaster/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { VerifyingPaymaster__factory } from './VerifyingPaymaster__factory' +export { VerifyingPaymaster__factory } from "./VerifyingPaymaster__factory"; diff --git a/src/types/factories/contracts/validators/BaseValidator__factory.ts b/src/types/factories/contracts/validators/BaseValidator__factory.ts index 6d4210a..19493ac 100644 --- a/src/types/factories/contracts/validators/BaseValidator__factory.ts +++ b/src/types/factories/contracts/validators/BaseValidator__factory.ts @@ -2,187 +2,193 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { BaseValidator, BaseValidatorInterface } from '../../../contracts/validators/BaseValidator' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + BaseValidator, + BaseValidatorInterface, +} from "../../../contracts/validators/BaseValidator"; const _abi = [ { inputs: [], - name: 'NAME', + name: "NAME", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'VERSION', + name: "VERSION", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'enable', + name: "enable", outputs: [], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, { inputs: [ { - internalType: 'bytes4', - name: 'interfaceId', - type: 'bytes4', + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", }, ], - name: 'supportsInterface', + name: "supportsInterface", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'pure', - type: 'function', + stateMutability: "pure", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'caller', - type: 'address', + internalType: "address", + name: "caller", + type: "address", }, { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'validCaller', + name: "validCaller", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { components: [ { - internalType: 'address', - name: 'sender', - type: 'address', + internalType: "address", + name: "sender", + type: "address", }, { - internalType: 'uint256', - name: 'nonce', - type: 'uint256', + internalType: "uint256", + name: "nonce", + type: "uint256", }, { - internalType: 'bytes', - name: 'initCode', - type: 'bytes', + internalType: "bytes", + name: "initCode", + type: "bytes", }, { - internalType: 'bytes', - name: 'callData', - type: 'bytes', + internalType: "bytes", + name: "callData", + type: "bytes", }, { - internalType: 'uint256', - name: 'callGasLimit', - type: 'uint256', + internalType: "uint256", + name: "callGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'verificationGasLimit', - type: 'uint256', + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'preVerificationGas', - type: 'uint256', + internalType: "uint256", + name: "preVerificationGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxPriorityFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256", }, { - internalType: 'bytes', - name: 'paymasterAndData', - type: 'bytes', + internalType: "bytes", + name: "paymasterAndData", + type: "bytes", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - internalType: 'struct UserOperation', - name: 'userOp', - type: 'tuple', + internalType: "struct UserOperation", + name: "userOp", + type: "tuple", }, { - internalType: 'bytes32', - name: 'userOpHash', - type: 'bytes32', + internalType: "bytes32", + name: "userOpHash", + type: "bytes32", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - name: 'validateSignature', + name: "validateSignature", outputs: [ { - internalType: 'uint256', - name: 'validationData', - type: 'uint256', + internalType: "uint256", + name: "validationData", + type: "uint256", }, ], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, -] as const +] as const; export class BaseValidator__factory { - static readonly abi = _abi + static readonly abi = _abi; static createInterface(): BaseValidatorInterface { - return new utils.Interface(_abi) as BaseValidatorInterface + return new utils.Interface(_abi) as BaseValidatorInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): BaseValidator { - return new Contract(address, _abi, signerOrProvider) as BaseValidator + static connect( + address: string, + signerOrProvider: Signer | Provider + ): BaseValidator { + return new Contract(address, _abi, signerOrProvider) as BaseValidator; } } diff --git a/src/types/factories/contracts/validators/ECDSAValidator__factory.ts b/src/types/factories/contracts/validators/ECDSAValidator__factory.ts index fb4bf0a..4cb97bd 100644 --- a/src/types/factories/contracts/validators/ECDSAValidator__factory.ts +++ b/src/types/factories/contracts/validators/ECDSAValidator__factory.ts @@ -1,9 +1,12 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from 'ethers' -import type { Provider, TransactionRequest } from '@ethersproject/providers' -import type { ECDSAValidator, ECDSAValidatorInterface } from '../../../contracts/validators/ECDSAValidator' +import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; +import type { Provider, TransactionRequest } from "@ethersproject/providers"; +import type { + ECDSAValidator, + ECDSAValidatorInterface, +} from "../../../contracts/validators/ECDSAValidator"; const _abi = [ { @@ -11,251 +14,261 @@ const _abi = [ inputs: [ { indexed: true, - internalType: 'address', - name: 'account', - type: 'address', + internalType: "address", + name: "account", + type: "address", }, { indexed: true, - internalType: 'address', - name: 'oldOwner', - type: 'address', + internalType: "address", + name: "oldOwner", + type: "address", }, { indexed: true, - internalType: 'address', - name: 'newOwner', - type: 'address', + internalType: "address", + name: "newOwner", + type: "address", }, ], - name: 'OwnerChanged', - type: 'event', + name: "OwnerChanged", + type: "event", }, { inputs: [], - name: 'NAME', + name: "NAME", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'VERSION', + name: "VERSION", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'enable', + name: "enable", outputs: [], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - name: 'owner', + name: "owner", outputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'bytes4', - name: 'interfaceId', - type: 'bytes4', + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", }, ], - name: 'supportsInterface', + name: "supportsInterface", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'pure', - type: 'function', + stateMutability: "pure", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'caller', - type: 'address', + internalType: "address", + name: "caller", + type: "address", }, { - internalType: 'bytes', - name: '', - type: 'bytes', + internalType: "bytes", + name: "", + type: "bytes", }, ], - name: 'validCaller', + name: "validCaller", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { components: [ { - internalType: 'address', - name: 'sender', - type: 'address', + internalType: "address", + name: "sender", + type: "address", }, { - internalType: 'uint256', - name: 'nonce', - type: 'uint256', + internalType: "uint256", + name: "nonce", + type: "uint256", }, { - internalType: 'bytes', - name: 'initCode', - type: 'bytes', + internalType: "bytes", + name: "initCode", + type: "bytes", }, { - internalType: 'bytes', - name: 'callData', - type: 'bytes', + internalType: "bytes", + name: "callData", + type: "bytes", }, { - internalType: 'uint256', - name: 'callGasLimit', - type: 'uint256', + internalType: "uint256", + name: "callGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'verificationGasLimit', - type: 'uint256', + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'preVerificationGas', - type: 'uint256', + internalType: "uint256", + name: "preVerificationGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxPriorityFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256", }, { - internalType: 'bytes', - name: 'paymasterAndData', - type: 'bytes', + internalType: "bytes", + name: "paymasterAndData", + type: "bytes", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - internalType: 'struct UserOperation', - name: 'userOp', - type: 'tuple', + internalType: "struct UserOperation", + name: "userOp", + type: "tuple", }, { - internalType: 'bytes32', - name: 'userOpHash', - type: 'bytes32', + internalType: "bytes32", + name: "userOpHash", + type: "bytes32", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - name: 'validateSignature', + name: "validateSignature", outputs: [ { - internalType: 'uint256', - name: 'validationData', - type: 'uint256', + internalType: "uint256", + name: "validationData", + type: "uint256", }, ], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, -] as const +] as const; const _bytecode = - '0x608080604052346100165761069b908161001c8239f35b600080fdfe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a7146102c3575081630c959556146102225781634dffc323146101bc578163666e1b39146101835781639ea9bd591461011d57508063a3f4df7e146100cb5763ffa1ad741461007257600080fd5b346100c757816003193601126100c7576100c39061008e610342565b90600582527f302e302e3100000000000000000000000000000000000000000000000000000060208301525191829182610378565b0390f35b5080fd5b50346100c757816003193601126100c7576100c3906100e8610342565b90600f82527f45434453412056616c696461746f72000000000000000000000000000000000060208301525191829182610378565b9190503461017f578060031936011261017f5761013861032c565b9160243567ffffffffffffffff811161017b579361015c83926020963691016102f9565b50503381528085526001600160a01b0391829120541691519216148152f35b8480fd5b8280fd5b5050346100c75760203660031901126100c757602091816001600160a01b0391826101ac61032c565b1681528085522054169051908152f35b82846003196060368201126100c75783359167ffffffffffffffff918284116100c75761016090843603011261021f5760443591821161021f5750926102189161020b602095369084016102f9565b92909160243591016103c1565b9051908152f35b80fd5b9050602036600319011261017f5780359067ffffffffffffffff82116102bf5761024e913691016102f9565b60141161017f576001600160a01b03903560601c91338452836020528320805490837fffffffffffffffffffffffff0000000000000000000000000000000000000000831617905516337f381c0d11398486654573703c51ee8210ce9461764d133f9f0e53b6a5397053318480a480f35b8380fd5b84913461017f57602036600319011261017f573563ffffffff60e01b811680910361017f576337f0facb60e21b14815260209150f35b9181601f840112156103275782359167ffffffffffffffff8311610327576020838186019501011161032757565b600080fd5b600435906001600160a01b038216820361032757565b604051906040820182811067ffffffffffffffff82111761036257604052565b634e487b7160e01b600052604160045260246000fd5b6020808252825181830181905290939260005b8281106103ad57505060409293506000838284010152601f8019910116010190565b81810186015184820160400152850161038b565b9290919235926001600160a01b03918285168095036103275760009485528460205282604086205416937f19457468657265756d205369676e6564204d6573736167653a0a3332000000008652601c52603c85209067ffffffffffffffff9283821161049f5760405193601f8301601f19908116603f011685019081118582101761048b57604052818452368282011161048757918660208386946104709683610478990137840101526105cd565b9190916104b3565b16036104815790565b50600190565b8680fd5b634e487b7160e01b88526041600452602488fd5b634e487b7160e01b87526041600452602487fd5b60058110156105b757806104c45750565b600181036105115760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606490fd5b6002810361055e5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606490fd5b60031461056757565b60405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608490fd5b634e487b7160e01b600052602160045260246000fd5b9060418151146000146105fb576105f7916020820151906060604084015193015160001a90610605565b9091565b5050600090600290565b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083116106825791608094939160ff602094604051948552168484015260408301526060820152600093849182805260015afa156106755781516001600160a01b03811615610481579190565b50604051903d90823e3d90fd5b5050505060009060039056fea164736f6c6343000813000a' + "0x608080604052346100165761069b908161001c8239f35b600080fdfe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a7146102c3575081630c959556146102225781634dffc323146101bc578163666e1b39146101835781639ea9bd591461011d57508063a3f4df7e146100cb5763ffa1ad741461007257600080fd5b346100c757816003193601126100c7576100c39061008e610342565b90600582527f302e302e3100000000000000000000000000000000000000000000000000000060208301525191829182610378565b0390f35b5080fd5b50346100c757816003193601126100c7576100c3906100e8610342565b90600f82527f45434453412056616c696461746f72000000000000000000000000000000000060208301525191829182610378565b9190503461017f578060031936011261017f5761013861032c565b9160243567ffffffffffffffff811161017b579361015c83926020963691016102f9565b50503381528085526001600160a01b0391829120541691519216148152f35b8480fd5b8280fd5b5050346100c75760203660031901126100c757602091816001600160a01b0391826101ac61032c565b1681528085522054169051908152f35b82846003196060368201126100c75783359167ffffffffffffffff918284116100c75761016090843603011261021f5760443591821161021f5750926102189161020b602095369084016102f9565b92909160243591016103c1565b9051908152f35b80fd5b9050602036600319011261017f5780359067ffffffffffffffff82116102bf5761024e913691016102f9565b60141161017f576001600160a01b03903560601c91338452836020528320805490837fffffffffffffffffffffffff0000000000000000000000000000000000000000831617905516337f381c0d11398486654573703c51ee8210ce9461764d133f9f0e53b6a5397053318480a480f35b8380fd5b84913461017f57602036600319011261017f573563ffffffff60e01b811680910361017f576337f0facb60e21b14815260209150f35b9181601f840112156103275782359167ffffffffffffffff8311610327576020838186019501011161032757565b600080fd5b600435906001600160a01b038216820361032757565b604051906040820182811067ffffffffffffffff82111761036257604052565b634e487b7160e01b600052604160045260246000fd5b6020808252825181830181905290939260005b8281106103ad57505060409293506000838284010152601f8019910116010190565b81810186015184820160400152850161038b565b9290919235926001600160a01b03918285168095036103275760009485528460205282604086205416937f19457468657265756d205369676e6564204d6573736167653a0a3332000000008652601c52603c85209067ffffffffffffffff9283821161049f5760405193601f8301601f19908116603f011685019081118582101761048b57604052818452368282011161048757918660208386946104709683610478990137840101526105cd565b9190916104b3565b16036104815790565b50600190565b8680fd5b634e487b7160e01b88526041600452602488fd5b634e487b7160e01b87526041600452602487fd5b60058110156105b757806104c45750565b600181036105115760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606490fd5b6002810361055e5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606490fd5b60031461056757565b60405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608490fd5b634e487b7160e01b600052602160045260246000fd5b9060418151146000146105fb576105f7916020820151906060604084015193015160001a90610605565b9091565b5050600090600290565b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083116106825791608094939160ff602094604051948552168484015260408301526060820152600093849182805260015afa156106755781516001600160a01b03811615610481579190565b50604051903d90823e3d90fd5b5050505060009060039056fea164736f6c6343000813000a"; -type ECDSAValidatorConstructorParams = [signer?: Signer] | ConstructorParameters +type ECDSAValidatorConstructorParams = + | [signer?: Signer] + | ConstructorParameters; -const isSuperArgs = (xs: ECDSAValidatorConstructorParams): xs is ConstructorParameters => - xs.length > 1 +const isSuperArgs = ( + xs: ECDSAValidatorConstructorParams +): xs is ConstructorParameters => xs.length > 1; export class ECDSAValidator__factory extends ContractFactory { constructor(...args: ECDSAValidatorConstructorParams) { if (isSuperArgs(args)) { - super(...args) + super(...args); } else { - super(_abi, _bytecode, args[0]) + super(_abi, _bytecode, args[0]); } } - override deploy(overrides?: Overrides & { from?: string }): Promise { - return super.deploy(overrides || {}) as Promise + override deploy( + overrides?: Overrides & { from?: string } + ): Promise { + return super.deploy(overrides || {}) as Promise; } - override getDeployTransaction(overrides?: Overrides & { from?: string }): TransactionRequest { - return super.getDeployTransaction(overrides || {}) + override getDeployTransaction( + overrides?: Overrides & { from?: string } + ): TransactionRequest { + return super.getDeployTransaction(overrides || {}); } override attach(address: string): ECDSAValidator { - return super.attach(address) as ECDSAValidator + return super.attach(address) as ECDSAValidator; } override connect(signer: Signer): ECDSAValidator__factory { - return super.connect(signer) as ECDSAValidator__factory + return super.connect(signer) as ECDSAValidator__factory; } - static readonly bytecode = _bytecode - static readonly abi = _abi + static readonly bytecode = _bytecode; + static readonly abi = _abi; static createInterface(): ECDSAValidatorInterface { - return new utils.Interface(_abi) as ECDSAValidatorInterface + return new utils.Interface(_abi) as ECDSAValidatorInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): ECDSAValidator { - return new Contract(address, _abi, signerOrProvider) as ECDSAValidator + static connect( + address: string, + signerOrProvider: Signer | Provider + ): ECDSAValidator { + return new Contract(address, _abi, signerOrProvider) as ECDSAValidator; } } diff --git a/src/types/factories/contracts/validators/OIDCSessionOnlyValidator.sol/IVerifier__factory.ts b/src/types/factories/contracts/validators/OIDCSessionOnlyValidator.sol/IVerifier__factory.ts new file mode 100644 index 0000000..30a1e1b --- /dev/null +++ b/src/types/factories/contracts/validators/OIDCSessionOnlyValidator.sol/IVerifier__factory.ts @@ -0,0 +1,60 @@ +/* Autogenerated file. Do not edit manually. */ +/* tslint:disable */ +/* eslint-disable */ + +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + IVerifier, + IVerifierInterface, +} from "../../../../contracts/validators/OIDCSessionOnlyValidator.sol/IVerifier"; + +const _abi = [ + { + inputs: [ + { + internalType: "uint256[2]", + name: "a", + type: "uint256[2]", + }, + { + internalType: "uint256[2][2]", + name: "b", + type: "uint256[2][2]", + }, + { + internalType: "uint256[2]", + name: "c", + type: "uint256[2]", + }, + { + internalType: "uint256[2]", + name: "input", + type: "uint256[2]", + }, + ], + name: "verifyProof", + outputs: [ + { + internalType: "bool", + name: "r", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, +] as const; + +export class IVerifier__factory { + static readonly abi = _abi; + static createInterface(): IVerifierInterface { + return new utils.Interface(_abi) as IVerifierInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): IVerifier { + return new Contract(address, _abi, signerOrProvider) as IVerifier; + } +} diff --git a/src/types/factories/contracts/validators/OIDCSessionOnlyValidator.sol/OIDCSessionOnlyValidator__factory.ts b/src/types/factories/contracts/validators/OIDCSessionOnlyValidator.sol/OIDCSessionOnlyValidator__factory.ts new file mode 100644 index 0000000..cdef581 --- /dev/null +++ b/src/types/factories/contracts/validators/OIDCSessionOnlyValidator.sol/OIDCSessionOnlyValidator__factory.ts @@ -0,0 +1,234 @@ +/* Autogenerated file. Do not edit manually. */ +/* tslint:disable */ +/* eslint-disable */ +import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; +import type { Provider, TransactionRequest } from "@ethersproject/providers"; +import type { + OIDCSessionOnlyValidator, + OIDCSessionOnlyValidatorInterface, +} from "../../../../contracts/validators/OIDCSessionOnlyValidator.sol/OIDCSessionOnlyValidator"; + +const _abi = [ + { + inputs: [], + name: "NAME", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "VERSION", + outputs: [ + { + internalType: "string", + name: "", + type: "string", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "enable", + outputs: [], + stateMutability: "payable", + type: "function", + }, + { + inputs: [ + { + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", + }, + ], + name: "supportsInterface", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "pure", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "caller", + type: "address", + }, + { + internalType: "bytes", + name: "data", + type: "bytes", + }, + ], + name: "validCaller", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + components: [ + { + internalType: "address", + name: "sender", + type: "address", + }, + { + internalType: "uint256", + name: "nonce", + type: "uint256", + }, + { + internalType: "bytes", + name: "initCode", + type: "bytes", + }, + { + internalType: "bytes", + name: "callData", + type: "bytes", + }, + { + internalType: "uint256", + name: "callGasLimit", + type: "uint256", + }, + { + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256", + }, + { + internalType: "uint256", + name: "preVerificationGas", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256", + }, + { + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256", + }, + { + internalType: "bytes", + name: "paymasterAndData", + type: "bytes", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + internalType: "struct UserOperation", + name: "userOp", + type: "tuple", + }, + { + internalType: "bytes32", + name: "userOpHash", + type: "bytes32", + }, + { + internalType: "bytes", + name: "signature", + type: "bytes", + }, + ], + name: "validateSignature", + outputs: [ + { + internalType: "uint256", + name: "validationData", + type: "uint256", + }, + ], + stateMutability: "payable", + type: "function", + }, +] as const; + +const _bytecode = + "0x60808060405234610016576102e7908161001c8239f35b600080fdfe60806040908082526004918236101561001757600080fd5b600091823560e01c90816301ffc9a714610227575080630c959556146101f65780634dffc323146101ab5780639ea9bd591461014f578063a3f4df7e146100e85763ffa1ad741461006757600080fd5b346100e457816003193601126100e4578051918183019083821067ffffffffffffffff8311176100d157506100cd93508152600582527f302e302e3100000000000000000000000000000000000000000000000000000060208301525191829182610291565b0390f35b634e487b7160e01b815260418552602490fd5b5080fd5b50346100e457816003193601126100e4578051918183019083821067ffffffffffffffff8311176100d157506100cd93508152600e82527f4f4944432056616c696461746f7200000000000000000000000000000000000060208301525191829182610291565b50346100e457806003193601126100e457823573ffffffffffffffffffffffffffffffffffffffff8116036100e45760243567ffffffffffffffff81116101a75760209361019f9136910161025e565b505051908152f35b8280fd5b506003196060368201126101a75767ffffffffffffffff9084358281116101f2579061016091360301126101a7576044359081116101a75760209361019f9136910161025e565b8480fd5b828460203660031901126100e45780359067ffffffffffffffff82116101a7576102229136910161025e565b505080f35b839085346101a75760203660031901126101a7573563ffffffff60e01b81168091036101a7576337f0facb60e21b14815260209150f35b9181601f8401121561028c5782359167ffffffffffffffff831161028c576020838186019501011161028c57565b600080fd5b6020808252825181830181905290939260005b8281106102c657505060409293506000838284010152601f8019910116010190565b8181018601518482016040015285016102a456fea164736f6c6343000813000a"; + +type OIDCSessionOnlyValidatorConstructorParams = + | [signer?: Signer] + | ConstructorParameters; + +const isSuperArgs = ( + xs: OIDCSessionOnlyValidatorConstructorParams +): xs is ConstructorParameters => xs.length > 1; + +export class OIDCSessionOnlyValidator__factory extends ContractFactory { + constructor(...args: OIDCSessionOnlyValidatorConstructorParams) { + if (isSuperArgs(args)) { + super(...args); + } else { + super(_abi, _bytecode, args[0]); + } + } + + override deploy( + overrides?: Overrides & { from?: string } + ): Promise { + return super.deploy(overrides || {}) as Promise; + } + override getDeployTransaction( + overrides?: Overrides & { from?: string } + ): TransactionRequest { + return super.getDeployTransaction(overrides || {}); + } + override attach(address: string): OIDCSessionOnlyValidator { + return super.attach(address) as OIDCSessionOnlyValidator; + } + override connect(signer: Signer): OIDCSessionOnlyValidator__factory { + return super.connect(signer) as OIDCSessionOnlyValidator__factory; + } + + static readonly bytecode = _bytecode; + static readonly abi = _abi; + static createInterface(): OIDCSessionOnlyValidatorInterface { + return new utils.Interface(_abi) as OIDCSessionOnlyValidatorInterface; + } + static connect( + address: string, + signerOrProvider: Signer | Provider + ): OIDCSessionOnlyValidator { + return new Contract( + address, + _abi, + signerOrProvider + ) as OIDCSessionOnlyValidator; + } +} diff --git a/src/types/factories/contracts/validators/OIDCSessionOnlyValidator.sol/index.ts b/src/types/factories/contracts/validators/OIDCSessionOnlyValidator.sol/index.ts new file mode 100644 index 0000000..8413ca2 --- /dev/null +++ b/src/types/factories/contracts/validators/OIDCSessionOnlyValidator.sol/index.ts @@ -0,0 +1,5 @@ +/* Autogenerated file. Do not edit manually. */ +/* tslint:disable */ +/* eslint-disable */ +export { IVerifier__factory } from "./IVerifier__factory"; +export { OIDCSessionOnlyValidator__factory } from "./OIDCSessionOnlyValidator__factory"; diff --git a/src/types/factories/contracts/validators/index.ts b/src/types/factories/contracts/validators/index.ts index 0b1d9a1..9dbb4e3 100644 --- a/src/types/factories/contracts/validators/index.ts +++ b/src/types/factories/contracts/validators/index.ts @@ -1,8 +1,8 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as p256 from './p256' -export * as sessionkey from './sessionkey' -export { BaseValidator__factory } from './BaseValidator__factory' -export { ECDSAValidator__factory } from './ECDSAValidator__factory' -export { OIDCSessionOnlyValidator__factory } from './OIDCSessionOnlyValidator__factory' +export * as oidcSessionOnlyValidatorSol from "./OIDCSessionOnlyValidator.sol"; +export * as p256 from "./p256"; +export * as sessionkey from "./sessionkey"; +export { BaseValidator__factory } from "./BaseValidator__factory"; +export { ECDSAValidator__factory } from "./ECDSAValidator__factory"; diff --git a/src/types/factories/contracts/validators/p256/ISecp256r1__factory.ts b/src/types/factories/contracts/validators/p256/ISecp256r1__factory.ts index 8b6deee..0000922 100644 --- a/src/types/factories/contracts/validators/p256/ISecp256r1__factory.ts +++ b/src/types/factories/contracts/validators/p256/ISecp256r1__factory.ts @@ -2,48 +2,54 @@ /* tslint:disable */ /* eslint-disable */ -import { Contract, Signer, utils } from 'ethers' -import type { Provider } from '@ethersproject/providers' -import type { ISecp256r1, ISecp256r1Interface } from '../../../../contracts/validators/p256/ISecp256r1' +import { Contract, Signer, utils } from "ethers"; +import type { Provider } from "@ethersproject/providers"; +import type { + ISecp256r1, + ISecp256r1Interface, +} from "../../../../contracts/validators/p256/ISecp256r1"; const _abi = [ { inputs: [ { - internalType: 'bytes32', - name: 'message', - type: 'bytes32', + internalType: "bytes32", + name: "message", + type: "bytes32", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, { - internalType: 'bytes', - name: 'publicKey', - type: 'bytes', + internalType: "bytes", + name: "publicKey", + type: "bytes", }, ], - name: 'validateSignature', + name: "validateSignature", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, -] as const +] as const; export class ISecp256r1__factory { - static readonly abi = _abi + static readonly abi = _abi; static createInterface(): ISecp256r1Interface { - return new utils.Interface(_abi) as ISecp256r1Interface + return new utils.Interface(_abi) as ISecp256r1Interface; } - static connect(address: string, signerOrProvider: Signer | Provider): ISecp256r1 { - return new Contract(address, _abi, signerOrProvider) as ISecp256r1 + static connect( + address: string, + signerOrProvider: Signer | Provider + ): ISecp256r1 { + return new Contract(address, _abi, signerOrProvider) as ISecp256r1; } } diff --git a/src/types/factories/contracts/validators/p256/P256Validator__factory.ts b/src/types/factories/contracts/validators/p256/P256Validator__factory.ts index 474adc0..81c472c 100644 --- a/src/types/factories/contracts/validators/p256/P256Validator__factory.ts +++ b/src/types/factories/contracts/validators/p256/P256Validator__factory.ts @@ -1,285 +1,300 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from 'ethers' -import type { Provider, TransactionRequest } from '@ethersproject/providers' -import type { P256Validator, P256ValidatorInterface } from '../../../../contracts/validators/p256/P256Validator' +import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; +import type { Provider, TransactionRequest } from "@ethersproject/providers"; +import type { + P256Validator, + P256ValidatorInterface, +} from "../../../../contracts/validators/p256/P256Validator"; const _abi = [ { inputs: [ { - internalType: 'contract ISecp256r1', - name: '_impl', - type: 'address', + internalType: "contract ISecp256r1", + name: "_impl", + type: "address", }, ], - stateMutability: 'nonpayable', - type: 'constructor', + stateMutability: "nonpayable", + type: "constructor", }, { anonymous: false, inputs: [ { indexed: true, - internalType: 'address', - name: 'account', - type: 'address', + internalType: "address", + name: "account", + type: "address", }, { indexed: false, - internalType: 'bytes', - name: 'oldPk', - type: 'bytes', + internalType: "bytes", + name: "oldPk", + type: "bytes", }, { indexed: false, - internalType: 'bytes', - name: 'newPk', - type: 'bytes', + internalType: "bytes", + name: "newPk", + type: "bytes", }, ], - name: 'PkChanged', - type: 'event', + name: "PkChanged", + type: "event", }, { inputs: [], - name: 'NAME', + name: "NAME", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'VERSION', + name: "VERSION", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'enable', + name: "enable", outputs: [], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, { inputs: [], - name: 'impl', + name: "impl", outputs: [ { - internalType: 'contract ISecp256r1', - name: '', - type: 'address', + internalType: "contract ISecp256r1", + name: "", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - name: 'pks', + name: "pks", outputs: [ { - internalType: 'bytes', - name: '', - type: 'bytes', + internalType: "bytes", + name: "", + type: "bytes", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'bytes4', - name: 'interfaceId', - type: 'bytes4', + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", }, ], - name: 'supportsInterface', + name: "supportsInterface", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'pure', - type: 'function', + stateMutability: "pure", + type: "function", }, { inputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, { - internalType: 'bytes', - name: '', - type: 'bytes', + internalType: "bytes", + name: "", + type: "bytes", }, ], - name: 'validCaller', + name: "validCaller", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'pure', - type: 'function', + stateMutability: "pure", + type: "function", }, { inputs: [ { components: [ { - internalType: 'address', - name: 'sender', - type: 'address', + internalType: "address", + name: "sender", + type: "address", }, { - internalType: 'uint256', - name: 'nonce', - type: 'uint256', + internalType: "uint256", + name: "nonce", + type: "uint256", }, { - internalType: 'bytes', - name: 'initCode', - type: 'bytes', + internalType: "bytes", + name: "initCode", + type: "bytes", }, { - internalType: 'bytes', - name: 'callData', - type: 'bytes', + internalType: "bytes", + name: "callData", + type: "bytes", }, { - internalType: 'uint256', - name: 'callGasLimit', - type: 'uint256', + internalType: "uint256", + name: "callGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'verificationGasLimit', - type: 'uint256', + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'preVerificationGas', - type: 'uint256', + internalType: "uint256", + name: "preVerificationGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxPriorityFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256", }, { - internalType: 'bytes', - name: 'paymasterAndData', - type: 'bytes', + internalType: "bytes", + name: "paymasterAndData", + type: "bytes", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - internalType: 'struct UserOperation', - name: 'userOp', - type: 'tuple', + internalType: "struct UserOperation", + name: "userOp", + type: "tuple", }, { - internalType: 'bytes32', - name: 'userOpHash', - type: 'bytes32', + internalType: "bytes32", + name: "userOpHash", + type: "bytes32", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - name: 'validateSignature', + name: "validateSignature", outputs: [ { - internalType: 'uint256', - name: 'validationData', - type: 'uint256', + internalType: "uint256", + name: "validationData", + type: "uint256", }, ], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, -] as const +] as const; const _bytecode = - '0x60a03461007157601f61090038819003918201601f19168301916001600160401b038311848410176100765780849260209460405283398101031261007157516001600160a01b038116810361007157608052604051610873908161008d823960805181818161022b01526107790152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a714610487575081630c959556146102b25781634dffc3231461024f5781638abf60771461020b5781639356375c146101c05781639ea9bd591461013c57508063a3f4df7e146100e05763ffa1ad741461007d57600080fd5b346100dc57816003193601126100dc5780516100d89161009c82610540565b600582527f302e302e3100000000000000000000000000000000000000000000000000000060208301525191829160208352602083019061065d565b0390f35b5080fd5b50346100dc57816003193601126100dc5780516100d89161010082610540565b600e82527f503235362056616c696461746f7200000000000000000000000000000000000060208301525191829160208352602083019061065d565b905082346101bd57826003193601126101bd576101576104f0565b506024359067ffffffffffffffff82116101bd575060649261017e602092369085016104bd565b50505162461bcd60e51b815291820152600f60248201527f6e6f7420696d706c656d656e74656400000000000000000000000000000000006044820152fd5b80fd5b5050346100dc5760203660031901126100dc576101f8816100d8936001600160a01b036101eb6104f0565b1681528060205220610594565b905191829160208352602083019061065d565b5050346100dc57816003193601126100dc57602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b82846003196060368201126100dc5783359167ffffffffffffffff918284116100dc576101609084360301126101bd576044359182116101bd5750926102ab9161029e602095369084016104bd565b92909160243591016106a3565b9051908152f35b8383602092836003193601126104835767ffffffffffffffff91813583811161047f576102e290369084016104bd565b90933386528587526102f5838720610594565b9333875286885283872091831161046c57506103118154610506565b601f8111610429575b5085601f83116001146103a057918697918161038f947f49a125229beaa1b288f0f807170a37c7a131925683b0250b113db84181bfb066989991610395575b508260011b906000198460031b1c19161790555b610380845195858796875286019061065d565b91848303908501523396610682565b0390a280f35b90508801358a610359565b81875287872090601f198416885b8181106104125750917f49a125229beaa1b288f0f807170a37c7a131925683b0250b113db84181bfb06697989993918561038f9694106103f8575b5050600182811b01905561036d565b890135600019600385901b60f8161c1916905589806103e9565b91928a60018192868c0135815501940192016103ae565b818752878720601f840160051c810191898510610462575b601f0160051c01905b818110610457575061031a565b87815560010161044a565b9091508190610441565b634e487b7160e01b875260419052602486fd5b8480fd5b8280fd5b849134610483576020366003190112610483573563ffffffff60e01b8116809103610483576337f0facb60e21b14815260209150f35b9181601f840112156104eb5782359167ffffffffffffffff83116104eb57602083818601950101116104eb57565b600080fd5b600435906001600160a01b03821682036104eb57565b90600182811c92168015610536575b602083101461052057565b634e487b7160e01b600052602260045260246000fd5b91607f1691610515565b6040810190811067ffffffffffffffff82111761055c57604052565b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff82111761055c57604052565b90604051918260008254926105a884610506565b90818452600194858116908160001461061757506001146105d4575b50506105d292500383610572565b565b9093915060005260209081600020936000915b8183106105ff5750506105d2935082010138806105c4565b855488840185015294850194879450918301916105e7565b9150506105d294506020925060ff191682840152151560051b82010138806105c4565b60005b83811061064d5750506000910152565b818101518382015260200161063d565b906020916106768151809281855285808601910161063a565b601f01601f1916010190565b908060209392818452848401376000828201840152601f01601f1916010190565b909192604091825194602086818098019687528181526106c281610540565b6106d386519788925192839161063a565b8660009788928101039060025afa156108595784519135906001600160a01b0391828116809103610855579187939184938852878452610735878920918851978895630ae7e17f60e41b87526004870152606060248701526064860191610682565b90600319848303016044850152889181549161075083610506565b928383528660019d8e83169283600014610835575050506001146107f9575b50505082809103917f0000000000000000000000000000000000000000000000000000000000000000165afa9283156107f0575083926107b9575b50506107b4575090565b905090565b90809250813d83116107e9575b6107d08183610572565b810103126100dc575180151581036100dc5738806107aa565b503d6107c6565b513d85823e3d90fd5b909192508952848920918a8a935b82851061081c5750505001830182803861076f565b805484860189015288978a9750909401938c9101610807565b9196509392508594915060ff191683830152151560051b0101913861076f565b8680fd5b50505051903d90823e3d90fdfea164736f6c6343000813000a' + "0x60a03461007157601f61090038819003918201601f19168301916001600160401b038311848410176100765780849260209460405283398101031261007157516001600160a01b038116810361007157608052604051610873908161008d823960805181818161022b01526107790152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a714610487575081630c959556146102b25781634dffc3231461024f5781638abf60771461020b5781639356375c146101c05781639ea9bd591461013c57508063a3f4df7e146100e05763ffa1ad741461007d57600080fd5b346100dc57816003193601126100dc5780516100d89161009c82610540565b600582527f302e302e3100000000000000000000000000000000000000000000000000000060208301525191829160208352602083019061065d565b0390f35b5080fd5b50346100dc57816003193601126100dc5780516100d89161010082610540565b600e82527f503235362056616c696461746f7200000000000000000000000000000000000060208301525191829160208352602083019061065d565b905082346101bd57826003193601126101bd576101576104f0565b506024359067ffffffffffffffff82116101bd575060649261017e602092369085016104bd565b50505162461bcd60e51b815291820152600f60248201527f6e6f7420696d706c656d656e74656400000000000000000000000000000000006044820152fd5b80fd5b5050346100dc5760203660031901126100dc576101f8816100d8936001600160a01b036101eb6104f0565b1681528060205220610594565b905191829160208352602083019061065d565b5050346100dc57816003193601126100dc57602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b82846003196060368201126100dc5783359167ffffffffffffffff918284116100dc576101609084360301126101bd576044359182116101bd5750926102ab9161029e602095369084016104bd565b92909160243591016106a3565b9051908152f35b8383602092836003193601126104835767ffffffffffffffff91813583811161047f576102e290369084016104bd565b90933386528587526102f5838720610594565b9333875286885283872091831161046c57506103118154610506565b601f8111610429575b5085601f83116001146103a057918697918161038f947f49a125229beaa1b288f0f807170a37c7a131925683b0250b113db84181bfb066989991610395575b508260011b906000198460031b1c19161790555b610380845195858796875286019061065d565b91848303908501523396610682565b0390a280f35b90508801358a610359565b81875287872090601f198416885b8181106104125750917f49a125229beaa1b288f0f807170a37c7a131925683b0250b113db84181bfb06697989993918561038f9694106103f8575b5050600182811b01905561036d565b890135600019600385901b60f8161c1916905589806103e9565b91928a60018192868c0135815501940192016103ae565b818752878720601f840160051c810191898510610462575b601f0160051c01905b818110610457575061031a565b87815560010161044a565b9091508190610441565b634e487b7160e01b875260419052602486fd5b8480fd5b8280fd5b849134610483576020366003190112610483573563ffffffff60e01b8116809103610483576337f0facb60e21b14815260209150f35b9181601f840112156104eb5782359167ffffffffffffffff83116104eb57602083818601950101116104eb57565b600080fd5b600435906001600160a01b03821682036104eb57565b90600182811c92168015610536575b602083101461052057565b634e487b7160e01b600052602260045260246000fd5b91607f1691610515565b6040810190811067ffffffffffffffff82111761055c57604052565b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff82111761055c57604052565b90604051918260008254926105a884610506565b90818452600194858116908160001461061757506001146105d4575b50506105d292500383610572565b565b9093915060005260209081600020936000915b8183106105ff5750506105d2935082010138806105c4565b855488840185015294850194879450918301916105e7565b9150506105d294506020925060ff191682840152151560051b82010138806105c4565b60005b83811061064d5750506000910152565b818101518382015260200161063d565b906020916106768151809281855285808601910161063a565b601f01601f1916010190565b908060209392818452848401376000828201840152601f01601f1916010190565b909192604091825194602086818098019687528181526106c281610540565b6106d386519788925192839161063a565b8660009788928101039060025afa156108595784519135906001600160a01b0391828116809103610855579187939184938852878452610735878920918851978895630ae7e17f60e41b87526004870152606060248701526064860191610682565b90600319848303016044850152889181549161075083610506565b928383528660019d8e83169283600014610835575050506001146107f9575b50505082809103917f0000000000000000000000000000000000000000000000000000000000000000165afa9283156107f0575083926107b9575b50506107b4575090565b905090565b90809250813d83116107e9575b6107d08183610572565b810103126100dc575180151581036100dc5738806107aa565b503d6107c6565b513d85823e3d90fd5b909192508952848920918a8a935b82851061081c5750505001830182803861076f565b805484860189015288978a9750909401938c9101610807565b9196509392508594915060ff191683830152151560051b0101913861076f565b8680fd5b50505051903d90823e3d90fdfea164736f6c6343000813000a"; -type P256ValidatorConstructorParams = [signer?: Signer] | ConstructorParameters +type P256ValidatorConstructorParams = + | [signer?: Signer] + | ConstructorParameters; -const isSuperArgs = (xs: P256ValidatorConstructorParams): xs is ConstructorParameters => - xs.length > 1 +const isSuperArgs = ( + xs: P256ValidatorConstructorParams +): xs is ConstructorParameters => xs.length > 1; export class P256Validator__factory extends ContractFactory { constructor(...args: P256ValidatorConstructorParams) { if (isSuperArgs(args)) { - super(...args) + super(...args); } else { - super(_abi, _bytecode, args[0]) + super(_abi, _bytecode, args[0]); } } - override deploy(_impl: string, overrides?: Overrides & { from?: string }): Promise { - return super.deploy(_impl, overrides || {}) as Promise + override deploy( + _impl: string, + overrides?: Overrides & { from?: string } + ): Promise { + return super.deploy(_impl, overrides || {}) as Promise; } - override getDeployTransaction(_impl: string, overrides?: Overrides & { from?: string }): TransactionRequest { - return super.getDeployTransaction(_impl, overrides || {}) + override getDeployTransaction( + _impl: string, + overrides?: Overrides & { from?: string } + ): TransactionRequest { + return super.getDeployTransaction(_impl, overrides || {}); } override attach(address: string): P256Validator { - return super.attach(address) as P256Validator + return super.attach(address) as P256Validator; } override connect(signer: Signer): P256Validator__factory { - return super.connect(signer) as P256Validator__factory + return super.connect(signer) as P256Validator__factory; } - static readonly bytecode = _bytecode - static readonly abi = _abi + static readonly bytecode = _bytecode; + static readonly abi = _abi; static createInterface(): P256ValidatorInterface { - return new utils.Interface(_abi) as P256ValidatorInterface + return new utils.Interface(_abi) as P256ValidatorInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): P256Validator { - return new Contract(address, _abi, signerOrProvider) as P256Validator + static connect( + address: string, + signerOrProvider: Signer | Provider + ): P256Validator { + return new Contract(address, _abi, signerOrProvider) as P256Validator; } } diff --git a/src/types/factories/contracts/validators/p256/Secp256r1IoTeX__factory.ts b/src/types/factories/contracts/validators/p256/Secp256r1IoTeX__factory.ts index 8375fd4..304cd2e 100644 --- a/src/types/factories/contracts/validators/p256/Secp256r1IoTeX__factory.ts +++ b/src/types/factories/contracts/validators/p256/Secp256r1IoTeX__factory.ts @@ -1,78 +1,91 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from 'ethers' -import type { Provider, TransactionRequest } from '@ethersproject/providers' -import type { Secp256r1IoTeX, Secp256r1IoTeXInterface } from '../../../../contracts/validators/p256/Secp256r1IoTeX' +import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; +import type { Provider, TransactionRequest } from "@ethersproject/providers"; +import type { + Secp256r1IoTeX, + Secp256r1IoTeXInterface, +} from "../../../../contracts/validators/p256/Secp256r1IoTeX"; const _abi = [ { inputs: [ { - internalType: 'bytes32', - name: 'message', - type: 'bytes32', + internalType: "bytes32", + name: "message", + type: "bytes32", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, { - internalType: 'bytes', - name: 'publicKey', - type: 'bytes', + internalType: "bytes", + name: "publicKey", + type: "bytes", }, ], - name: 'validateSignature', + name: "validateSignature", outputs: [ { - internalType: 'bool', - name: 'result', - type: 'bool', + internalType: "bool", + name: "result", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, -] as const +] as const; const _bytecode = - '0x608080604052346100165761012d908161001c8239f35b600080fdfe6080604052600436101561001257600080fd5b6000803560e01c63ae7e17f01461002857600080fd5b346100cc5760603660031901126100cc5767ffffffffffffffff6024358181116100d35761005a9036906004016100d7565b916044359081116100cf5761008461007961008f9236906004016100d7565b93909481019061010a565b93909281019061010a565b92909160043560805260a05260c052600160fa1b60e05260e1526101015260018160a160806180015afa156100cc57516040519015158152602090f35b80fd5b8380fd5b8280fd5b9181601f840112156101055782359167ffffffffffffffff8311610105576020838186019501011161010557565b600080fd5b919082604091031261010557602082359201359056fea164736f6c6343000813000a' + "0x608080604052346100165761012d908161001c8239f35b600080fdfe6080604052600436101561001257600080fd5b6000803560e01c63ae7e17f01461002857600080fd5b346100cc5760603660031901126100cc5767ffffffffffffffff6024358181116100d35761005a9036906004016100d7565b916044359081116100cf5761008461007961008f9236906004016100d7565b93909481019061010a565b93909281019061010a565b92909160043560805260a05260c052600160fa1b60e05260e1526101015260018160a160806180015afa156100cc57516040519015158152602090f35b80fd5b8380fd5b8280fd5b9181601f840112156101055782359167ffffffffffffffff8311610105576020838186019501011161010557565b600080fd5b919082604091031261010557602082359201359056fea164736f6c6343000813000a"; -type Secp256r1IoTeXConstructorParams = [signer?: Signer] | ConstructorParameters +type Secp256r1IoTeXConstructorParams = + | [signer?: Signer] + | ConstructorParameters; -const isSuperArgs = (xs: Secp256r1IoTeXConstructorParams): xs is ConstructorParameters => - xs.length > 1 +const isSuperArgs = ( + xs: Secp256r1IoTeXConstructorParams +): xs is ConstructorParameters => xs.length > 1; export class Secp256r1IoTeX__factory extends ContractFactory { constructor(...args: Secp256r1IoTeXConstructorParams) { if (isSuperArgs(args)) { - super(...args) + super(...args); } else { - super(_abi, _bytecode, args[0]) + super(_abi, _bytecode, args[0]); } } - override deploy(overrides?: Overrides & { from?: string }): Promise { - return super.deploy(overrides || {}) as Promise + override deploy( + overrides?: Overrides & { from?: string } + ): Promise { + return super.deploy(overrides || {}) as Promise; } - override getDeployTransaction(overrides?: Overrides & { from?: string }): TransactionRequest { - return super.getDeployTransaction(overrides || {}) + override getDeployTransaction( + overrides?: Overrides & { from?: string } + ): TransactionRequest { + return super.getDeployTransaction(overrides || {}); } override attach(address: string): Secp256r1IoTeX { - return super.attach(address) as Secp256r1IoTeX + return super.attach(address) as Secp256r1IoTeX; } override connect(signer: Signer): Secp256r1IoTeX__factory { - return super.connect(signer) as Secp256r1IoTeX__factory + return super.connect(signer) as Secp256r1IoTeX__factory; } - static readonly bytecode = _bytecode - static readonly abi = _abi + static readonly bytecode = _bytecode; + static readonly abi = _abi; static createInterface(): Secp256r1IoTeXInterface { - return new utils.Interface(_abi) as Secp256r1IoTeXInterface + return new utils.Interface(_abi) as Secp256r1IoTeXInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): Secp256r1IoTeX { - return new Contract(address, _abi, signerOrProvider) as Secp256r1IoTeX + static connect( + address: string, + signerOrProvider: Signer | Provider + ): Secp256r1IoTeX { + return new Contract(address, _abi, signerOrProvider) as Secp256r1IoTeX; } } diff --git a/src/types/factories/contracts/validators/p256/Secp256r1__factory.ts b/src/types/factories/contracts/validators/p256/Secp256r1__factory.ts index b28165c..1391f24 100644 --- a/src/types/factories/contracts/validators/p256/Secp256r1__factory.ts +++ b/src/types/factories/contracts/validators/p256/Secp256r1__factory.ts @@ -1,78 +1,91 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from 'ethers' -import type { Provider, TransactionRequest } from '@ethersproject/providers' -import type { Secp256r1, Secp256r1Interface } from '../../../../contracts/validators/p256/Secp256r1' +import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; +import type { Provider, TransactionRequest } from "@ethersproject/providers"; +import type { + Secp256r1, + Secp256r1Interface, +} from "../../../../contracts/validators/p256/Secp256r1"; const _abi = [ { inputs: [ { - internalType: 'bytes32', - name: 'message', - type: 'bytes32', + internalType: "bytes32", + name: "message", + type: "bytes32", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, { - internalType: 'bytes', - name: 'publicKey', - type: 'bytes', + internalType: "bytes", + name: "publicKey", + type: "bytes", }, ], - name: 'validateSignature', + name: "validateSignature", outputs: [ { - internalType: 'bool', - name: 'result', - type: 'bool', + internalType: "bool", + name: "result", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, -] as const +] as const; const _bytecode = - '0x6080806040523461001657610c40908161001c8239f35b600080fdfe60e080604052600436101561001357600080fd5b600090813560e01c63ae7e17f01461002a57600080fd5b346100e55760603660031901126100e55767ffffffffffffffff906024358281116100e15761005d9036906004016100e9565b9290936044359182116100de5760206100d48686866100c261009e6100853660048b016100e9565b9590946100918561011c565b604036863781019061018c565b93908784019485528352604051946100b58661011c565b604036873781019061018c565b868501528352519051906004356101a2565b6040519015158152f35b80fd5b8380fd5b5080fd5b9181601f840112156101175782359167ffffffffffffffff8311610117576020838186019501011161011757565b600080fd5b6040810190811067ffffffffffffffff82111761013857604052565b634e487b7160e01b600052604160045260246000fd5b60e0810190811067ffffffffffffffff82111761013857604052565b90601f8019910116810190811067ffffffffffffffff82111761013857604052565b9190826040910312610117576020823592013590565b90928315801561033a575b8015610332575b8015610308575b6102ff5780519060206101d381830193845190610364565b156102f457604051948186019082825282604088015282606088015260808701527fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f60a08701527fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551958660c082015260c0815261024f8161014e565b600080928192519060055afa903d156102ec573d9167ffffffffffffffff83116102d8576040519261028a601f8201601f191686018561016a565b83523d828585013e5b156102c45782828051810103126100de5750015190516102bf939291859081818909940991519061042d565b061490565b634e487b7160e01b81526001600452602490fd5b634e487b7160e01b82526041600452602482fd5b606091610293565b505050505050600090565b50505050600090565b507fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325518310156101bb565b5082156101b4565b507fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325518410156101ad565b600160601b63ffffffff60c01b0319908181108015906103fb575b80156103ea575b6103e2577f5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b8282818080957fffffffff00000001000000000000000000000000fffffffffffffffffffffffc0991818180090908089180091490565b505050600090565b508015801561038657508215610386565b508183101561037f565b600160ff1b8114610417576000190190565b634e487b7160e01b600052601160045260246000fd5b60a084815260016080818152969095919493916000918291889183918815908161064a575b5061063c57908a9291610465878961066e565b9590968b60c09660ff88528c865b895190888212610633575061048b9082855191610653565b926104968a51610405565b8a52836104a35792610473565b50505b518103610605575050507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5907f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2969093915b838651126105d857928d6105138c948f97948f9784519161099f565b9081939293919981865261052d8c869a869c519151610653565b906105388d51610405565b8d528161055057505050505050505b929093916104f7565b9193959a508092949699506105b3979850146000146105bf57507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5937f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2969361086e565b93929395529192610547565b6002036105cf578b938d9361086e565b89938b9361086e565b509950505098945050505050600160601b63ffffffff60c01b03199350610600915051610b6d565b900990565b6002810361061b575050508690889093916104f7565b91939092916002190161054757879350869250610547565b935050506104a6565b995097505050505050505090565b90501538610452565b91906002600192841c831b16921c1681018091116104175790565b8015806106dc575b6106945761069091610687916106e4565b92919091610b1f565b9091565b50507f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296907f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f590565b508115610676565b9190821580610866575b1561074057507f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29691507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5906001908190565b7fb01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a91600160601b63ffffffff60c01b0319808481600186090894817f94e82e0c1ed3bdb90743191a9c5bbf0d88fc827fd214cc5f0b5ec6ba27673d69816001840908938415610837575050808084800993840994818460010994828088600109957f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29609918784038481116104175784908180867bfffffffeffffffffffffffffffffffff00000000000000000000000219099181858009080897888503858111610417578580949281930994080908935b93929190565b935093505092156000146108575761084e91610a5f565b91939092610831565b50506000806000926000610831565b5080156106ee565b91949592939095811580610997575b156108ad5750508315806108a5575b6108965793929190565b50600093508392508291508190565b50821561088c565b8591929495158061098f575b61097f57600160601b63ffffffff60c01b0319968703918783116104175787838189850908938689038981116104175789908184840908928315610964575050818880959493928180848196099b8c9485099b8c920999099609918784038481116104175784908180867bfffffffeffffffffffffffffffffffff00000000000000000000000219099181858009080897888503858111610417578580949281930994080908929190565b96509650505050909350156000146108575761084e91610a5f565b9550509150915091906001908190565b5085156108b9565b50801561087d565b939092821580610a57575b61089657600160601b63ffffffff60c01b0319908185600209948280878009809709948380888a0998818080808680097fffffffff00000001000000000000000000000000fffffffffffffffffffffffc099280096003090884808a7bfffffffeffffffffffffffffffffffff0000000000000000000000021909818380090898898603918683116104175788870390878211610417578780969481809681950994089009089609930990565b5080156109aa565b919091801580610b17575b610b0a57600160601b63ffffffff60c01b031990818460020991808084800980940991817fffffffff00000001000000000000000000000000fffffffffffffffffffffffc81808088860994800960030908958280837bfffffffeffffffffffffffffffffffff00000000000000000000000219098189800908968784039184831161041757858503928584116104175785809492819309940890090892565b5060009150819081908190565b508215610a6a565b909392821580610b65575b610b5857610b3790610b6d565b918291600160601b63ffffffff60c01b031980809581940980099009930990565b5050509050600090600090565b508015610b2a565b604051906020918281019183835283604083015283606083015260808201527bfffffffeffffffffffffffffffffffff0000000000000000000000021960a0820152600160601b63ffffffff60c01b031960c082015260c08152610bd08161014e565b600080928192519060055afa903d15610c2b573d9167ffffffffffffffff83116102d85760405192610c0b601f8201601f191686018561016a565b83523d828585013e5b156102c45782828051810103126100de5750015190565b606091610c1456fea164736f6c6343000813000a' + "0x6080806040523461001657610c40908161001c8239f35b600080fdfe60e080604052600436101561001357600080fd5b600090813560e01c63ae7e17f01461002a57600080fd5b346100e55760603660031901126100e55767ffffffffffffffff906024358281116100e15761005d9036906004016100e9565b9290936044359182116100de5760206100d48686866100c261009e6100853660048b016100e9565b9590946100918561011c565b604036863781019061018c565b93908784019485528352604051946100b58661011c565b604036873781019061018c565b868501528352519051906004356101a2565b6040519015158152f35b80fd5b8380fd5b5080fd5b9181601f840112156101175782359167ffffffffffffffff8311610117576020838186019501011161011757565b600080fd5b6040810190811067ffffffffffffffff82111761013857604052565b634e487b7160e01b600052604160045260246000fd5b60e0810190811067ffffffffffffffff82111761013857604052565b90601f8019910116810190811067ffffffffffffffff82111761013857604052565b9190826040910312610117576020823592013590565b90928315801561033a575b8015610332575b8015610308575b6102ff5780519060206101d381830193845190610364565b156102f457604051948186019082825282604088015282606088015260808701527fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f60a08701527fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551958660c082015260c0815261024f8161014e565b600080928192519060055afa903d156102ec573d9167ffffffffffffffff83116102d8576040519261028a601f8201601f191686018561016a565b83523d828585013e5b156102c45782828051810103126100de5750015190516102bf939291859081818909940991519061042d565b061490565b634e487b7160e01b81526001600452602490fd5b634e487b7160e01b82526041600452602482fd5b606091610293565b505050505050600090565b50505050600090565b507fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325518310156101bb565b5082156101b4565b507fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325518410156101ad565b600160601b63ffffffff60c01b0319908181108015906103fb575b80156103ea575b6103e2577f5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b8282818080957fffffffff00000001000000000000000000000000fffffffffffffffffffffffc0991818180090908089180091490565b505050600090565b508015801561038657508215610386565b508183101561037f565b600160ff1b8114610417576000190190565b634e487b7160e01b600052601160045260246000fd5b6080848152600160a0818152969095919493916000918291889183918815908161064a575b5061063c57908a9291610465878961066e565b9590968b60c09660ff88528c865b895190888212610633575061048b9082855191610653565b926104968a51610405565b8a52836104a35792610473565b50505b518103610605575050507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5907f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2969093915b838651126105d857928d6105138c948f97948f9784519161099f565b9081939293919981865261052d8c869a869c519151610653565b906105388d51610405565b8d528161055057505050505050505b929093916104f7565b9193959a508092949699506105b3979850146000146105bf57507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5937f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2969361086e565b93929395529192610547565b6002036105cf578b938d9361086e565b89938b9361086e565b509950505098945050505050600160601b63ffffffff60c01b03199350610600915051610b6d565b900990565b6002810361061b575050508690889093916104f7565b91939092916002190161054757879350869250610547565b935050506104a6565b995097505050505050505090565b90501538610452565b91906002600192841c831b16921c1681018091116104175790565b8015806106dc575b6106945761069091610687916106e4565b92919091610b1f565b9091565b50507f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296907f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f590565b508115610676565b9190821580610866575b1561074057507f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29691507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5906001908190565b7fb01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a91600160601b63ffffffff60c01b0319808481600186090894817f94e82e0c1ed3bdb90743191a9c5bbf0d88fc827fd214cc5f0b5ec6ba27673d69816001840908938415610837575050808084800993840994818460010994828088600109957f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29609918784038481116104175784908180867bfffffffeffffffffffffffffffffffff00000000000000000000000219099181858009080897888503858111610417578580949281930994080908935b93929190565b935093505092156000146108575761084e91610a5f565b91939092610831565b50506000806000926000610831565b5080156106ee565b91949592939095811580610997575b156108ad5750508315806108a5575b6108965793929190565b50600093508392508291508190565b50821561088c565b8591929495158061098f575b61097f57600160601b63ffffffff60c01b0319968703918783116104175787838189850908938689038981116104175789908184840908928315610964575050818880959493928180848196099b8c9485099b8c920999099609918784038481116104175784908180867bfffffffeffffffffffffffffffffffff00000000000000000000000219099181858009080897888503858111610417578580949281930994080908929190565b96509650505050909350156000146108575761084e91610a5f565b9550509150915091906001908190565b5085156108b9565b50801561087d565b939092821580610a57575b61089657600160601b63ffffffff60c01b0319908185600209948280878009809709948380888a0998818080808680097fffffffff00000001000000000000000000000000fffffffffffffffffffffffc099280096003090884808a7bfffffffeffffffffffffffffffffffff0000000000000000000000021909818380090898898603918683116104175788870390878211610417578780969481809681950994089009089609930990565b5080156109aa565b919091801580610b17575b610b0a57600160601b63ffffffff60c01b031990818460020991808084800980940991817fffffffff00000001000000000000000000000000fffffffffffffffffffffffc81808088860994800960030908958280837bfffffffeffffffffffffffffffffffff00000000000000000000000219098189800908968784039184831161041757858503928584116104175785809492819309940890090892565b5060009150819081908190565b508215610a6a565b909392821580610b65575b610b5857610b3790610b6d565b918291600160601b63ffffffff60c01b031980809581940980099009930990565b5050509050600090600090565b508015610b2a565b604051906020918281019183835283604083015283606083015260808201527bfffffffeffffffffffffffffffffffff0000000000000000000000021960a0820152600160601b63ffffffff60c01b031960c082015260c08152610bd08161014e565b600080928192519060055afa903d15610c2b573d9167ffffffffffffffff83116102d85760405192610c0b601f8201601f191686018561016a565b83523d828585013e5b156102c45782828051810103126100de5750015190565b606091610c1456fea164736f6c6343000813000a"; -type Secp256r1ConstructorParams = [signer?: Signer] | ConstructorParameters +type Secp256r1ConstructorParams = + | [signer?: Signer] + | ConstructorParameters; -const isSuperArgs = (xs: Secp256r1ConstructorParams): xs is ConstructorParameters => - xs.length > 1 +const isSuperArgs = ( + xs: Secp256r1ConstructorParams +): xs is ConstructorParameters => xs.length > 1; export class Secp256r1__factory extends ContractFactory { constructor(...args: Secp256r1ConstructorParams) { if (isSuperArgs(args)) { - super(...args) + super(...args); } else { - super(_abi, _bytecode, args[0]) + super(_abi, _bytecode, args[0]); } } - override deploy(overrides?: Overrides & { from?: string }): Promise { - return super.deploy(overrides || {}) as Promise + override deploy( + overrides?: Overrides & { from?: string } + ): Promise { + return super.deploy(overrides || {}) as Promise; } - override getDeployTransaction(overrides?: Overrides & { from?: string }): TransactionRequest { - return super.getDeployTransaction(overrides || {}) + override getDeployTransaction( + overrides?: Overrides & { from?: string } + ): TransactionRequest { + return super.getDeployTransaction(overrides || {}); } override attach(address: string): Secp256r1 { - return super.attach(address) as Secp256r1 + return super.attach(address) as Secp256r1; } override connect(signer: Signer): Secp256r1__factory { - return super.connect(signer) as Secp256r1__factory + return super.connect(signer) as Secp256r1__factory; } - static readonly bytecode = _bytecode - static readonly abi = _abi + static readonly bytecode = _bytecode; + static readonly abi = _abi; static createInterface(): Secp256r1Interface { - return new utils.Interface(_abi) as Secp256r1Interface + return new utils.Interface(_abi) as Secp256r1Interface; } - static connect(address: string, signerOrProvider: Signer | Provider): Secp256r1 { - return new Contract(address, _abi, signerOrProvider) as Secp256r1 + static connect( + address: string, + signerOrProvider: Signer | Provider + ): Secp256r1 { + return new Contract(address, _abi, signerOrProvider) as Secp256r1; } } diff --git a/src/types/factories/contracts/validators/p256/WebauthnValidator__factory.ts b/src/types/factories/contracts/validators/p256/WebauthnValidator__factory.ts index cf5e77f..cbe5233 100644 --- a/src/types/factories/contracts/validators/p256/WebauthnValidator__factory.ts +++ b/src/types/factories/contracts/validators/p256/WebauthnValidator__factory.ts @@ -1,288 +1,300 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from 'ethers' -import type { Provider, TransactionRequest } from '@ethersproject/providers' +import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; +import type { Provider, TransactionRequest } from "@ethersproject/providers"; import type { WebauthnValidator, WebauthnValidatorInterface, -} from '../../../../contracts/validators/p256/WebauthnValidator' +} from "../../../../contracts/validators/p256/WebauthnValidator"; const _abi = [ { inputs: [ { - internalType: 'contract ISecp256r1', - name: '_impl', - type: 'address', + internalType: "contract ISecp256r1", + name: "_impl", + type: "address", }, ], - stateMutability: 'nonpayable', - type: 'constructor', + stateMutability: "nonpayable", + type: "constructor", }, { anonymous: false, inputs: [ { indexed: true, - internalType: 'address', - name: 'account', - type: 'address', + internalType: "address", + name: "account", + type: "address", }, { indexed: false, - internalType: 'bytes', - name: 'oldPk', - type: 'bytes', + internalType: "bytes", + name: "oldPk", + type: "bytes", }, { indexed: false, - internalType: 'bytes', - name: 'newPk', - type: 'bytes', + internalType: "bytes", + name: "newPk", + type: "bytes", }, ], - name: 'PkChanged', - type: 'event', + name: "PkChanged", + type: "event", }, { inputs: [], - name: 'NAME', + name: "NAME", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'VERSION', + name: "VERSION", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'enable', + name: "enable", outputs: [], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, { inputs: [], - name: 'impl', + name: "impl", outputs: [ { - internalType: 'contract ISecp256r1', - name: '', - type: 'address', + internalType: "contract ISecp256r1", + name: "", + type: "address", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, ], - name: 'pks', + name: "pks", outputs: [ { - internalType: 'bytes', - name: '', - type: 'bytes', + internalType: "bytes", + name: "", + type: "bytes", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'bytes4', - name: 'interfaceId', - type: 'bytes4', + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", }, ], - name: 'supportsInterface', + name: "supportsInterface", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'pure', - type: 'function', + stateMutability: "pure", + type: "function", }, { inputs: [ { - internalType: 'address', - name: '', - type: 'address', + internalType: "address", + name: "", + type: "address", }, { - internalType: 'bytes', - name: '', - type: 'bytes', + internalType: "bytes", + name: "", + type: "bytes", }, ], - name: 'validCaller', + name: "validCaller", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'pure', - type: 'function', + stateMutability: "pure", + type: "function", }, { inputs: [ { components: [ { - internalType: 'address', - name: 'sender', - type: 'address', + internalType: "address", + name: "sender", + type: "address", }, { - internalType: 'uint256', - name: 'nonce', - type: 'uint256', + internalType: "uint256", + name: "nonce", + type: "uint256", }, { - internalType: 'bytes', - name: 'initCode', - type: 'bytes', + internalType: "bytes", + name: "initCode", + type: "bytes", }, { - internalType: 'bytes', - name: 'callData', - type: 'bytes', + internalType: "bytes", + name: "callData", + type: "bytes", }, { - internalType: 'uint256', - name: 'callGasLimit', - type: 'uint256', + internalType: "uint256", + name: "callGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'verificationGasLimit', - type: 'uint256', + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'preVerificationGas', - type: 'uint256', + internalType: "uint256", + name: "preVerificationGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxPriorityFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256", }, { - internalType: 'bytes', - name: 'paymasterAndData', - type: 'bytes', + internalType: "bytes", + name: "paymasterAndData", + type: "bytes", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - internalType: 'struct UserOperation', - name: 'userOp', - type: 'tuple', + internalType: "struct UserOperation", + name: "userOp", + type: "tuple", }, { - internalType: 'bytes32', - name: 'userOpHash', - type: 'bytes32', + internalType: "bytes32", + name: "userOpHash", + type: "bytes32", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - name: 'validateSignature', + name: "validateSignature", outputs: [ { - internalType: 'uint256', - name: 'validationData', - type: 'uint256', + internalType: "uint256", + name: "validationData", + type: "uint256", }, ], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, -] as const +] as const; const _bytecode = - '0x60a03461007157601f610bea38819003918201601f19168301916001600160401b038311848410176100765780849260209460405283398101031261007157516001600160a01b038116810361007157608052604051610b5d908161008d823960805181818161022b01526108e10152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a71461048e575081630c959556146102b25781634dffc3231461024f5781638abf60771461020b5781639356375c146101c05781639ea9bd591461013c57508063a3f4df7e146100e05763ffa1ad741461007d57600080fd5b346100dc57816003193601126100dc5780516100d89161009c82610547565b600582527f302e302e31000000000000000000000000000000000000000000000000000000602083015251918291602083526020830190610664565b0390f35b5080fd5b50346100dc57816003193601126100dc5780516100d89161010082610547565b601282527f576562617574686e2056616c696461746f720000000000000000000000000000602083015251918291602083526020830190610664565b905082346101bd57826003193601126101bd576101576104f7565b506024359067ffffffffffffffff82116101bd575060649261017e602092369085016104c4565b50505162461bcd60e51b815291820152600f60248201527f6e6f7420696d706c656d656e74656400000000000000000000000000000000006044820152fd5b80fd5b5050346100dc5760203660031901126100dc576101f8816100d8936001600160a01b036101eb6104f7565b168152806020522061059b565b9051918291602083526020830190610664565b5050346100dc57816003193601126100dc57602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b82846003196060368201126100dc5783359167ffffffffffffffff918284116100dc576101609084360301126101bd576044359182116101bd5750926102ab9161029e602095369084016104c4565b92909160243591016106ec565b9051908152f35b83836020928360031936011261048a5767ffffffffffffffff938135858111610486576102e290369084016104c4565b93903386528583526102f582872061059b565b933387528684528287209786116104735750610311875461050d565b601f8111610430575b508596601f86116001146103af578587987f49a125229beaa1b288f0f807170a37c7a131925683b0250b113db84181bfb0669798916103a4575b508760011b906000198960031b1c19161790555b8561037c8351958487958652850190610664565b91838303858501528183528483013780860183018790523395601f01601f191601030190a280f35b905082013589610354565b808752838720601f19871698885b8a81106104195750877f49a125229beaa1b288f0f807170a37c7a131925683b0250b113db84181bfb06698999a106103ff575b5050600187811b019055610368565b83013560001960038a901b60f8161c1916905588806103f0565b9091866001819285880135815501930191016103bd565b878752838720601f870160051c810191858810610469575b601f0160051c01905b81811061045e575061031a565b878155600101610451565b9091508190610448565b634e487b7160e01b875260419052602486fd5b8480fd5b8280fd5b84913461048a57602036600319011261048a573563ffffffff60e01b811680910361048a576337f0facb60e21b14815260209150f35b9181601f840112156104f25782359167ffffffffffffffff83116104f257602083818601950101116104f257565b600080fd5b600435906001600160a01b03821682036104f257565b90600182811c9216801561053d575b602083101461052757565b634e487b7160e01b600052602260045260246000fd5b91607f169161051c565b6040810190811067ffffffffffffffff82111761056357604052565b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff82111761056357604052565b90604051918260008254926105af8461050d565b90818452600194858116908160001461061e57506001146105db575b50506105d992500383610579565b565b9093915060005260209081600020936000915b8183106106065750506105d9935082010138806105cb565b855488840185015294850194879450918301916105ee565b9150506105d994506020925060ff191682840152151560051b82010138806105cb565b60005b8381106106545750506000910152565b8181015183820152602001610644565b9060209161067d81518092818552858086019101610641565b601f01601f1916010190565b67ffffffffffffffff811161056357601f01601f191660200190565b81601f820112156104f2578035906106bc82610689565b926106ca6040519485610579565b828452602083830101116104f257816000926020809301838601378301015290565b92820191906080828403126104f25767ffffffffffffffff9382358581116104f2578461071a9185016106a5565b91602095868501358181116104f257866107359187016106a5565b91604095868101358381116104f257886107509183016106a5565b9760608201359384116104f25761078b6107728b959286936107d795016106a5565b938951908382015282815261078681610547565b6109da565b8851938491836107a48185019d8e815193849201610641565b83016107b882518093878085019101610641565b016107cb82518093868085019101610641565b01038084520182610579565b6107e8865197889251928391610641565b8660009788928101039060025afa156109cd57846108438792825161083388805180938861081f8184019788815193849201610641565b820190898201520387810184520182610579565b8751928392839251928391610641565b8101039060025afa156109c157835190356001600160a01b03908181168091036109bd57918692918392875286835285872061089d8751968794630ae7e17f60e41b86526004860152606060248601526064850190610664565b9060031984830301604485015288918154916108b88361050d565b928383528660019d8e8316928360001461099d57505050600114610961575b50505082809103917f0000000000000000000000000000000000000000000000000000000000000000165afa92831561095857508392610921575b505061091c575090565b905090565b90809250813d8311610951575b6109388183610579565b810103126100dc575180151581036100dc573880610912565b503d61092e565b513d85823e3d90fd5b909192508952848920918a8a935b828510610984575050500183018280386108d7565b805484860189015288978a9750909401938c910161096f565b9196509392508594915060ff191683830152151560051b010191386108d7565b8580fd5b505051903d90823e3d90fd5b50505051903d90823e3d90fd5b805115610b2b57604051906060820182811067ffffffffffffffff82111761056357604052604082527f4142434445464748494a4b4c4d4e4f505152535455565758595a61626364656660208301527f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392d5f6040830152805160039080821b9080820460081490151715610b155760068091049381845106610b02575b610a97610a8186610689565b95610a8f6040519788610579565b808752610689565b6020860190601f190136823784805101945b858110610ab95750505050505090565b8460049101918251600190603f9082828260121c16880101518453828282600c1c1688010151838501538282828a1c168801015160028501531685010151868201530190610aa9565b936000198114610b155760010193610a75565b634e487b7160e01b600052601160045260246000fd5b506040516020810181811067ffffffffffffffff82111761056357604052600081529056fea164736f6c6343000813000a' + "0x60a03461007157601f610bea38819003918201601f19168301916001600160401b038311848410176100765780849260209460405283398101031261007157516001600160a01b038116810361007157608052604051610b5d908161008d823960805181818161022b01526108e10152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a71461048e575081630c959556146102b25781634dffc3231461024f5781638abf60771461020b5781639356375c146101c05781639ea9bd591461013c57508063a3f4df7e146100e05763ffa1ad741461007d57600080fd5b346100dc57816003193601126100dc5780516100d89161009c82610547565b600582527f302e302e31000000000000000000000000000000000000000000000000000000602083015251918291602083526020830190610664565b0390f35b5080fd5b50346100dc57816003193601126100dc5780516100d89161010082610547565b601282527f576562617574686e2056616c696461746f720000000000000000000000000000602083015251918291602083526020830190610664565b905082346101bd57826003193601126101bd576101576104f7565b506024359067ffffffffffffffff82116101bd575060649261017e602092369085016104c4565b50505162461bcd60e51b815291820152600f60248201527f6e6f7420696d706c656d656e74656400000000000000000000000000000000006044820152fd5b80fd5b5050346100dc5760203660031901126100dc576101f8816100d8936001600160a01b036101eb6104f7565b168152806020522061059b565b9051918291602083526020830190610664565b5050346100dc57816003193601126100dc57602090516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b82846003196060368201126100dc5783359167ffffffffffffffff918284116100dc576101609084360301126101bd576044359182116101bd5750926102ab9161029e602095369084016104c4565b92909160243591016106ec565b9051908152f35b83836020928360031936011261048a5767ffffffffffffffff938135858111610486576102e290369084016104c4565b93903386528583526102f582872061059b565b933387528684528287209786116104735750610311875461050d565b601f8111610430575b508596601f86116001146103af578587987f49a125229beaa1b288f0f807170a37c7a131925683b0250b113db84181bfb0669798916103a4575b508760011b906000198960031b1c19161790555b8561037c8351958487958652850190610664565b91838303858501528183528483013780860183018790523395601f01601f191601030190a280f35b905082013589610354565b808752838720601f19871698885b8a81106104195750877f49a125229beaa1b288f0f807170a37c7a131925683b0250b113db84181bfb06698999a106103ff575b5050600187811b019055610368565b83013560001960038a901b60f8161c1916905588806103f0565b9091866001819285880135815501930191016103bd565b878752838720601f870160051c810191858810610469575b601f0160051c01905b81811061045e575061031a565b878155600101610451565b9091508190610448565b634e487b7160e01b875260419052602486fd5b8480fd5b8280fd5b84913461048a57602036600319011261048a573563ffffffff60e01b811680910361048a576337f0facb60e21b14815260209150f35b9181601f840112156104f25782359167ffffffffffffffff83116104f257602083818601950101116104f257565b600080fd5b600435906001600160a01b03821682036104f257565b90600182811c9216801561053d575b602083101461052757565b634e487b7160e01b600052602260045260246000fd5b91607f169161051c565b6040810190811067ffffffffffffffff82111761056357604052565b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff82111761056357604052565b90604051918260008254926105af8461050d565b90818452600194858116908160001461061e57506001146105db575b50506105d992500383610579565b565b9093915060005260209081600020936000915b8183106106065750506105d9935082010138806105cb565b855488840185015294850194879450918301916105ee565b9150506105d994506020925060ff191682840152151560051b82010138806105cb565b60005b8381106106545750506000910152565b8181015183820152602001610644565b9060209161067d81518092818552858086019101610641565b601f01601f1916010190565b67ffffffffffffffff811161056357601f01601f191660200190565b81601f820112156104f2578035906106bc82610689565b926106ca6040519485610579565b828452602083830101116104f257816000926020809301838601378301015290565b92820191906080828403126104f25767ffffffffffffffff9382358581116104f2578461071a9185016106a5565b91602095868501358181116104f257866107359187016106a5565b91604095868101358381116104f257886107509183016106a5565b9760608201359384116104f25761078b6107728b959286936107d795016106a5565b938951908382015282815261078681610547565b6109da565b8851938491836107a48185019d8e815193849201610641565b83016107b882518093878085019101610641565b016107cb82518093868085019101610641565b01038084520182610579565b6107e8865197889251928391610641565b8660009788928101039060025afa156109cd57846108438792825161083388805180938861081f8184019788815193849201610641565b820190898201520387810184520182610579565b8751928392839251928391610641565b8101039060025afa156109c157835190356001600160a01b03908181168091036109bd57918692918392875286835285872061089d8751968794630ae7e17f60e41b86526004860152606060248601526064850190610664565b9060031984830301604485015288918154916108b88361050d565b928383528660019d8e8316928360001461099d57505050600114610961575b50505082809103917f0000000000000000000000000000000000000000000000000000000000000000165afa92831561095857508392610921575b505061091c575090565b905090565b90809250813d8311610951575b6109388183610579565b810103126100dc575180151581036100dc573880610912565b503d61092e565b513d85823e3d90fd5b909192508952848920918a8a935b828510610984575050500183018280386108d7565b805484860189015288978a9750909401938c910161096f565b9196509392508594915060ff191683830152151560051b010191386108d7565b8580fd5b505051903d90823e3d90fd5b50505051903d90823e3d90fd5b805115610b2b57604051906060820182811067ffffffffffffffff82111761056357604052604082527f4142434445464748494a4b4c4d4e4f505152535455565758595a61626364656660208301527f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392d5f6040830152805160039080821b9080820460081490151715610b155760068091049381845106610b02575b610a97610a8186610689565b95610a8f6040519788610579565b808752610689565b6020860190601f190136823784805101945b858110610ab95750505050505090565b8460049101918251600190603f9082828260121c16880101518453828282600c1c1688010151838501538282828a1c168801015160028501531685010151868201530190610aa9565b936000198114610b155760010193610a75565b634e487b7160e01b600052601160045260246000fd5b506040516020810181811067ffffffffffffffff82111761056357604052600081529056fea164736f6c6343000813000a"; -type WebauthnValidatorConstructorParams = [signer?: Signer] | ConstructorParameters +type WebauthnValidatorConstructorParams = + | [signer?: Signer] + | ConstructorParameters; -const isSuperArgs = (xs: WebauthnValidatorConstructorParams): xs is ConstructorParameters => - xs.length > 1 +const isSuperArgs = ( + xs: WebauthnValidatorConstructorParams +): xs is ConstructorParameters => xs.length > 1; export class WebauthnValidator__factory extends ContractFactory { constructor(...args: WebauthnValidatorConstructorParams) { if (isSuperArgs(args)) { - super(...args) + super(...args); } else { - super(_abi, _bytecode, args[0]) + super(_abi, _bytecode, args[0]); } } - override deploy(_impl: string, overrides?: Overrides & { from?: string }): Promise { - return super.deploy(_impl, overrides || {}) as Promise + override deploy( + _impl: string, + overrides?: Overrides & { from?: string } + ): Promise { + return super.deploy(_impl, overrides || {}) as Promise; } - override getDeployTransaction(_impl: string, overrides?: Overrides & { from?: string }): TransactionRequest { - return super.getDeployTransaction(_impl, overrides || {}) + override getDeployTransaction( + _impl: string, + overrides?: Overrides & { from?: string } + ): TransactionRequest { + return super.getDeployTransaction(_impl, overrides || {}); } override attach(address: string): WebauthnValidator { - return super.attach(address) as WebauthnValidator + return super.attach(address) as WebauthnValidator; } override connect(signer: Signer): WebauthnValidator__factory { - return super.connect(signer) as WebauthnValidator__factory + return super.connect(signer) as WebauthnValidator__factory; } - static readonly bytecode = _bytecode - static readonly abi = _abi + static readonly bytecode = _bytecode; + static readonly abi = _abi; static createInterface(): WebauthnValidatorInterface { - return new utils.Interface(_abi) as WebauthnValidatorInterface + return new utils.Interface(_abi) as WebauthnValidatorInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): WebauthnValidator { - return new Contract(address, _abi, signerOrProvider) as WebauthnValidator + static connect( + address: string, + signerOrProvider: Signer | Provider + ): WebauthnValidator { + return new Contract(address, _abi, signerOrProvider) as WebauthnValidator; } } diff --git a/src/types/factories/contracts/validators/p256/index.ts b/src/types/factories/contracts/validators/p256/index.ts index 4323e92..9ecfefc 100644 --- a/src/types/factories/contracts/validators/p256/index.ts +++ b/src/types/factories/contracts/validators/p256/index.ts @@ -1,8 +1,8 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { ISecp256r1__factory } from './ISecp256r1__factory' -export { P256Validator__factory } from './P256Validator__factory' -export { Secp256r1__factory } from './Secp256r1__factory' -export { Secp256r1IoTeX__factory } from './Secp256r1IoTeX__factory' -export { WebauthnValidator__factory } from './WebauthnValidator__factory' +export { ISecp256r1__factory } from "./ISecp256r1__factory"; +export { P256Validator__factory } from "./P256Validator__factory"; +export { Secp256r1__factory } from "./Secp256r1__factory"; +export { Secp256r1IoTeX__factory } from "./Secp256r1IoTeX__factory"; +export { WebauthnValidator__factory } from "./WebauthnValidator__factory"; diff --git a/src/types/factories/contracts/validators/sessionkey/OwnerSessionKeyValidator__factory.ts b/src/types/factories/contracts/validators/sessionkey/OwnerSessionKeyValidator__factory.ts index 40c0569..67ac011 100644 --- a/src/types/factories/contracts/validators/sessionkey/OwnerSessionKeyValidator__factory.ts +++ b/src/types/factories/contracts/validators/sessionkey/OwnerSessionKeyValidator__factory.ts @@ -1,12 +1,12 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import { Signer, utils, Contract, ContractFactory, Overrides } from 'ethers' -import type { Provider, TransactionRequest } from '@ethersproject/providers' +import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers"; +import type { Provider, TransactionRequest } from "@ethersproject/providers"; import type { OwnerSessionKeyValidator, OwnerSessionKeyValidatorInterface, -} from '../../../../contracts/validators/sessionkey/OwnerSessionKeyValidator' +} from "../../../../contracts/validators/sessionkey/OwnerSessionKeyValidator"; const _abi = [ { @@ -14,268 +14,281 @@ const _abi = [ inputs: [ { indexed: true, - internalType: 'address', - name: 'account', - type: 'address', + internalType: "address", + name: "account", + type: "address", }, { indexed: true, - internalType: 'address', - name: 'sessionKey', - type: 'address', + internalType: "address", + name: "sessionKey", + type: "address", }, { indexed: false, - internalType: 'uint48', - name: 'validUntil', - type: 'uint48', + internalType: "uint48", + name: "validUntil", + type: "uint48", }, { indexed: false, - internalType: 'uint48', - name: 'validAfter', - type: 'uint48', + internalType: "uint48", + name: "validAfter", + type: "uint48", }, ], - name: 'NewSessionKey', - type: 'event', + name: "NewSessionKey", + type: "event", }, { inputs: [], - name: 'NAME', + name: "NAME", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [], - name: 'VERSION', + name: "VERSION", outputs: [ { - internalType: 'string', - name: '', - type: 'string', + internalType: "string", + name: "", + type: "string", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'bytes', - name: 'data', - type: 'bytes', + internalType: "bytes", + name: "data", + type: "bytes", }, ], - name: 'enable', + name: "enable", outputs: [], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'sessionKey', - type: 'address', + internalType: "address", + name: "sessionKey", + type: "address", }, { - internalType: 'address', - name: 'account', - type: 'address', + internalType: "address", + name: "account", + type: "address", }, ], - name: 'sessionKeyStorage', + name: "sessionKeyStorage", outputs: [ { - internalType: 'uint48', - name: 'validUntil', - type: 'uint48', + internalType: "uint48", + name: "validUntil", + type: "uint48", }, { - internalType: 'uint48', - name: 'validAfter', - type: 'uint48', + internalType: "uint48", + name: "validAfter", + type: "uint48", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { - internalType: 'bytes4', - name: 'interfaceId', - type: 'bytes4', + internalType: "bytes4", + name: "interfaceId", + type: "bytes4", }, ], - name: 'supportsInterface', + name: "supportsInterface", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'pure', - type: 'function', + stateMutability: "pure", + type: "function", }, { inputs: [ { - internalType: 'address', - name: 'caller', - type: 'address', + internalType: "address", + name: "caller", + type: "address", }, { - internalType: 'bytes', - name: '', - type: 'bytes', + internalType: "bytes", + name: "", + type: "bytes", }, ], - name: 'validCaller', + name: "validCaller", outputs: [ { - internalType: 'bool', - name: '', - type: 'bool', + internalType: "bool", + name: "", + type: "bool", }, ], - stateMutability: 'view', - type: 'function', + stateMutability: "view", + type: "function", }, { inputs: [ { components: [ { - internalType: 'address', - name: 'sender', - type: 'address', + internalType: "address", + name: "sender", + type: "address", }, { - internalType: 'uint256', - name: 'nonce', - type: 'uint256', + internalType: "uint256", + name: "nonce", + type: "uint256", }, { - internalType: 'bytes', - name: 'initCode', - type: 'bytes', + internalType: "bytes", + name: "initCode", + type: "bytes", }, { - internalType: 'bytes', - name: 'callData', - type: 'bytes', + internalType: "bytes", + name: "callData", + type: "bytes", }, { - internalType: 'uint256', - name: 'callGasLimit', - type: 'uint256', + internalType: "uint256", + name: "callGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'verificationGasLimit', - type: 'uint256', + internalType: "uint256", + name: "verificationGasLimit", + type: "uint256", }, { - internalType: 'uint256', - name: 'preVerificationGas', - type: 'uint256', + internalType: "uint256", + name: "preVerificationGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxFeePerGas", + type: "uint256", }, { - internalType: 'uint256', - name: 'maxPriorityFeePerGas', - type: 'uint256', + internalType: "uint256", + name: "maxPriorityFeePerGas", + type: "uint256", }, { - internalType: 'bytes', - name: 'paymasterAndData', - type: 'bytes', + internalType: "bytes", + name: "paymasterAndData", + type: "bytes", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - internalType: 'struct UserOperation', - name: 'userOp', - type: 'tuple', + internalType: "struct UserOperation", + name: "userOp", + type: "tuple", }, { - internalType: 'bytes32', - name: 'userOpHash', - type: 'bytes32', + internalType: "bytes32", + name: "userOpHash", + type: "bytes32", }, { - internalType: 'bytes', - name: 'signature', - type: 'bytes', + internalType: "bytes", + name: "signature", + type: "bytes", }, ], - name: 'validateSignature', + name: "validateSignature", outputs: [ { - internalType: 'uint256', - name: 'validationData', - type: 'uint256', + internalType: "uint256", + name: "validationData", + type: "uint256", }, ], - stateMutability: 'payable', - type: 'function', + stateMutability: "payable", + type: "function", }, -] as const +] as const; const _bytecode = - '0x6080806040523461001657610851908161001c8239f35b600080fdfe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a7146103dd575081630c959556146102465781634dffc323146101e35781639ea9bd591461018a57508063a3f4df7e14610138578063fbab6a7a146100cb5763ffa1ad741461007257600080fd5b346100c757816003193601126100c7576100c39061008e61045c565b90600582527f302e302e3100000000000000000000000000000000000000000000000000000060208301525191829182610492565b0390f35b5080fd5b50346100c757806003193601126100c7576100e4610446565b602435906001600160a01b03908183168093036101345716835260208381528284209184529081529181902054905165ffffffffffff808316825260309290921c90911691810191909152604090f35b8480fd5b50346100c757816003193601126100c7576100c39061015561045c565b90601b82527f4f776e65722053657373696f6e204b65792056616c696461746f72000000000060208301525191829182610492565b9050346101df57816003193601126101df576101a4610446565b926024359067ffffffffffffffff82116101dc5750926101cc6101d392602095369101610413565b50506107f9565b90519015158152f35b80fd5b8280fd5b82846003196060368201126100c75783359167ffffffffffffffff918284116100c7576101609084360301126101dc576044359182116101dc57509261023f9161023260209536908401610413565b92909160243591016104db565b9051908152f35b9050602091826003193601126103d95767ffffffffffffffff9082358281116103d5576102769036908501610413565b939094846014116103d157853560601c9585601a116103cd57601481013560d01c9582116103cd57601a013560d01c938486111561036657835192838501918211848310176103535750835284825280820184815286885287825283882033808a5292528388209251835491516bffffffffffffffffffffffff1990921665ffffffffffff9182161760309290921b6bffffffffffff0000000000001691909117909255915193811684529091166020830152907f31b5c77503fad62fe58a0293e3020e533a464b77d0a29f3495d61c90c09086c790604090a380f35b634e487b7160e01b895260419052602488fd5b50608492519162461bcd60e51b8352820152603760248201527f4f776e657253657373696f6e4b657956616c696461746f723a20696e76616c6960448201527f642076616c6964556e74696c2f76616c696441667465720000000000000000006064820152fd5b8780fd5b8680fd5b8580fd5b8380fd5b8491346101df5760203660031901126101df573563ffffffff60e01b81168091036101df576337f0facb60e21b14815260209150f35b9181601f840112156104415782359167ffffffffffffffff8311610441576020838186019501011161044157565b600080fd5b600435906001600160a01b038216820361044157565b604051906040820182811067ffffffffffffffff82111761047c57604052565b634e487b7160e01b600052604160045260246000fd5b6020808252825181830181905290939260005b8281106104c757505060409293506000838284010152601f8019910116010190565b8181018601518482016040015285016104a5565b909193926000927f19457468657265756d205369676e6564204d6573736167653a0a3332000000008452601c52603c83209067ffffffffffffffff9586821161060a5760405196601f8301601f19908116603f01168801908111888210176105f65760405281875236828201116101345791846020838994610567968361056f9c013784010152610738565b94909461061e565b6001600160a01b038094168252816020526040822090359384168094036100c757604092938252602052205465ffffffffffff8116156105f05760a01b79ffffffffffff00000000000000000000000000000000000000007fffffffffffff0000000000000000000000000000000000000000000000000000821691161790565b50600190565b634e487b7160e01b86526041600452602486fd5b634e487b7160e01b85526041600452602485fd5b6005811015610722578061062f5750565b6001810361067c5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606490fd5b600281036106c95760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606490fd5b6003146106d257565b60405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608490fd5b634e487b7160e01b600052602160045260246000fd5b90604181511460001461076657610762916020820151906060604084015193015160001a90610770565b9091565b5050600090600290565b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083116107ed5791608094939160ff602094604051948552168484015260408301526060820152600093849182805260015afa156107e05781516001600160a01b038116156105f0579190565b50604051903d90823e3d90fd5b50505050600090600390565b6001600160a01b036000911681528060205260408120338252602052604081205465ffffffffffff90818160301c1642111561083f5716421161083c5750600190565b90565b50509056fea164736f6c6343000813000a' + "0x6080806040523461001657610851908161001c8239f35b600080fdfe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a7146103dd575081630c959556146102465781634dffc323146101e35781639ea9bd591461018a57508063a3f4df7e14610138578063fbab6a7a146100cb5763ffa1ad741461007257600080fd5b346100c757816003193601126100c7576100c39061008e61045c565b90600582527f302e302e3100000000000000000000000000000000000000000000000000000060208301525191829182610492565b0390f35b5080fd5b50346100c757806003193601126100c7576100e4610446565b602435906001600160a01b03908183168093036101345716835260208381528284209184529081529181902054905165ffffffffffff808316825260309290921c90911691810191909152604090f35b8480fd5b50346100c757816003193601126100c7576100c39061015561045c565b90601b82527f4f776e65722053657373696f6e204b65792056616c696461746f72000000000060208301525191829182610492565b9050346101df57816003193601126101df576101a4610446565b926024359067ffffffffffffffff82116101dc5750926101cc6101d392602095369101610413565b50506107f9565b90519015158152f35b80fd5b8280fd5b82846003196060368201126100c75783359167ffffffffffffffff918284116100c7576101609084360301126101dc576044359182116101dc57509261023f9161023260209536908401610413565b92909160243591016104db565b9051908152f35b9050602091826003193601126103d95767ffffffffffffffff9082358281116103d5576102769036908501610413565b939094846014116103d157853560601c9585601a116103cd57601481013560d01c9582116103cd57601a013560d01c938486111561036657835192838501918211848310176103535750835284825280820184815286885287825283882033808a5292528388209251835491516bffffffffffffffffffffffff1990921665ffffffffffff9182161760309290921b6bffffffffffff0000000000001691909117909255915193811684529091166020830152907f31b5c77503fad62fe58a0293e3020e533a464b77d0a29f3495d61c90c09086c790604090a380f35b634e487b7160e01b895260419052602488fd5b50608492519162461bcd60e51b8352820152603760248201527f4f776e657253657373696f6e4b657956616c696461746f723a20696e76616c6960448201527f642076616c6964556e74696c2f76616c696441667465720000000000000000006064820152fd5b8780fd5b8680fd5b8580fd5b8380fd5b8491346101df5760203660031901126101df573563ffffffff60e01b81168091036101df576337f0facb60e21b14815260209150f35b9181601f840112156104415782359167ffffffffffffffff8311610441576020838186019501011161044157565b600080fd5b600435906001600160a01b038216820361044157565b604051906040820182811067ffffffffffffffff82111761047c57604052565b634e487b7160e01b600052604160045260246000fd5b6020808252825181830181905290939260005b8281106104c757505060409293506000838284010152601f8019910116010190565b8181018601518482016040015285016104a5565b909193926000927f19457468657265756d205369676e6564204d6573736167653a0a3332000000008452601c52603c83209067ffffffffffffffff9586821161060a5760405196601f8301601f19908116603f01168801908111888210176105f65760405281875236828201116101345791846020838994610567968361056f9c013784010152610738565b94909461061e565b6001600160a01b038094168252816020526040822090359384168094036100c757604092938252602052205465ffffffffffff8116156105f05760a01b79ffffffffffff00000000000000000000000000000000000000007fffffffffffff0000000000000000000000000000000000000000000000000000821691161790565b50600190565b634e487b7160e01b86526041600452602486fd5b634e487b7160e01b85526041600452602485fd5b6005811015610722578061062f5750565b6001810361067c5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606490fd5b600281036106c95760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606490fd5b6003146106d257565b60405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608490fd5b634e487b7160e01b600052602160045260246000fd5b90604181511460001461076657610762916020820151906060604084015193015160001a90610770565b9091565b5050600090600290565b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083116107ed5791608094939160ff602094604051948552168484015260408301526060820152600093849182805260015afa156107e05781516001600160a01b038116156105f0579190565b50604051903d90823e3d90fd5b50505050600090600390565b6001600160a01b036000911681528060205260408120338252602052604081205465ffffffffffff90818160301c1642111561083f5716421161083c5750600190565b90565b50509056fea164736f6c6343000813000a"; -type OwnerSessionKeyValidatorConstructorParams = [signer?: Signer] | ConstructorParameters +type OwnerSessionKeyValidatorConstructorParams = + | [signer?: Signer] + | ConstructorParameters; const isSuperArgs = ( - xs: OwnerSessionKeyValidatorConstructorParams, -): xs is ConstructorParameters => xs.length > 1 + xs: OwnerSessionKeyValidatorConstructorParams +): xs is ConstructorParameters => xs.length > 1; export class OwnerSessionKeyValidator__factory extends ContractFactory { constructor(...args: OwnerSessionKeyValidatorConstructorParams) { if (isSuperArgs(args)) { - super(...args) + super(...args); } else { - super(_abi, _bytecode, args[0]) + super(_abi, _bytecode, args[0]); } } - override deploy(overrides?: Overrides & { from?: string }): Promise { - return super.deploy(overrides || {}) as Promise + override deploy( + overrides?: Overrides & { from?: string } + ): Promise { + return super.deploy(overrides || {}) as Promise; } - override getDeployTransaction(overrides?: Overrides & { from?: string }): TransactionRequest { - return super.getDeployTransaction(overrides || {}) + override getDeployTransaction( + overrides?: Overrides & { from?: string } + ): TransactionRequest { + return super.getDeployTransaction(overrides || {}); } override attach(address: string): OwnerSessionKeyValidator { - return super.attach(address) as OwnerSessionKeyValidator + return super.attach(address) as OwnerSessionKeyValidator; } override connect(signer: Signer): OwnerSessionKeyValidator__factory { - return super.connect(signer) as OwnerSessionKeyValidator__factory + return super.connect(signer) as OwnerSessionKeyValidator__factory; } - static readonly bytecode = _bytecode - static readonly abi = _abi + static readonly bytecode = _bytecode; + static readonly abi = _abi; static createInterface(): OwnerSessionKeyValidatorInterface { - return new utils.Interface(_abi) as OwnerSessionKeyValidatorInterface + return new utils.Interface(_abi) as OwnerSessionKeyValidatorInterface; } - static connect(address: string, signerOrProvider: Signer | Provider): OwnerSessionKeyValidator { - return new Contract(address, _abi, signerOrProvider) as OwnerSessionKeyValidator + static connect( + address: string, + signerOrProvider: Signer | Provider + ): OwnerSessionKeyValidator { + return new Contract( + address, + _abi, + signerOrProvider + ) as OwnerSessionKeyValidator; } } diff --git a/src/types/factories/contracts/validators/sessionkey/index.ts b/src/types/factories/contracts/validators/sessionkey/index.ts index 9396200..c2ab526 100644 --- a/src/types/factories/contracts/validators/sessionkey/index.ts +++ b/src/types/factories/contracts/validators/sessionkey/index.ts @@ -1,4 +1,4 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export { OwnerSessionKeyValidator__factory } from './OwnerSessionKeyValidator__factory' +export { OwnerSessionKeyValidator__factory } from "./OwnerSessionKeyValidator__factory"; diff --git a/src/types/factories/index.ts b/src/types/factories/index.ts index 15c3de1..b99f7e3 100644 --- a/src/types/factories/index.ts +++ b/src/types/factories/index.ts @@ -1,6 +1,6 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -export * as accountAbstraction from './@account-abstraction' -export * as openzeppelin from './@openzeppelin' -export * as contracts from './contracts' +export * as accountAbstraction from "./@account-abstraction"; +export * as openzeppelin from "./@openzeppelin"; +export * as contracts from "./contracts"; diff --git a/src/types/index.ts b/src/types/index.ts index 7ea73bb..e05265f 100644 --- a/src/types/index.ts +++ b/src/types/index.ts @@ -1,110 +1,112 @@ /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ -import type * as accountAbstraction from './@account-abstraction' -export type { accountAbstraction } -import type * as openzeppelin from './@openzeppelin' -export type { openzeppelin } -import type * as contracts from './contracts' -export type { contracts } -export * as factories from './factories' -export type { BaseAccount } from './@account-abstraction/contracts/core/BaseAccount' -export { BaseAccount__factory } from './factories/@account-abstraction/contracts/core/BaseAccount__factory' -export type { BasePaymaster } from './@account-abstraction/contracts/core/BasePaymaster' -export { BasePaymaster__factory } from './factories/@account-abstraction/contracts/core/BasePaymaster__factory' -export type { EntryPoint } from './@account-abstraction/contracts/core/EntryPoint' -export { EntryPoint__factory } from './factories/@account-abstraction/contracts/core/EntryPoint__factory' -export type { NonceManager } from './@account-abstraction/contracts/core/NonceManager' -export { NonceManager__factory } from './factories/@account-abstraction/contracts/core/NonceManager__factory' -export type { SenderCreator } from './@account-abstraction/contracts/core/SenderCreator' -export { SenderCreator__factory } from './factories/@account-abstraction/contracts/core/SenderCreator__factory' -export type { StakeManager } from './@account-abstraction/contracts/core/StakeManager' -export { StakeManager__factory } from './factories/@account-abstraction/contracts/core/StakeManager__factory' -export type { IAccount } from './@account-abstraction/contracts/interfaces/IAccount' -export { IAccount__factory } from './factories/@account-abstraction/contracts/interfaces/IAccount__factory' -export type { IAggregator } from './@account-abstraction/contracts/interfaces/IAggregator' -export { IAggregator__factory } from './factories/@account-abstraction/contracts/interfaces/IAggregator__factory' -export type { IEntryPoint } from './@account-abstraction/contracts/interfaces/IEntryPoint' -export { IEntryPoint__factory } from './factories/@account-abstraction/contracts/interfaces/IEntryPoint__factory' -export type { INonceManager } from './@account-abstraction/contracts/interfaces/INonceManager' -export { INonceManager__factory } from './factories/@account-abstraction/contracts/interfaces/INonceManager__factory' -export type { IPaymaster } from './@account-abstraction/contracts/interfaces/IPaymaster' -export { IPaymaster__factory } from './factories/@account-abstraction/contracts/interfaces/IPaymaster__factory' -export type { IStakeManager } from './@account-abstraction/contracts/interfaces/IStakeManager' -export { IStakeManager__factory } from './factories/@account-abstraction/contracts/interfaces/IStakeManager__factory' -export type { TokenCallbackHandler } from './@account-abstraction/contracts/samples/callback/TokenCallbackHandler' -export { TokenCallbackHandler__factory } from './factories/@account-abstraction/contracts/samples/callback/TokenCallbackHandler__factory' -export type { Ownable } from './@openzeppelin/contracts/access/Ownable' -export { Ownable__factory } from './factories/@openzeppelin/contracts/access/Ownable__factory' -export type { IERC1822Proxiable } from './@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable' -export { IERC1822Proxiable__factory } from './factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory' -export type { IERC1967 } from './@openzeppelin/contracts/interfaces/IERC1967' -export { IERC1967__factory } from './factories/@openzeppelin/contracts/interfaces/IERC1967__factory' -export type { IBeacon } from './@openzeppelin/contracts/proxy/beacon/IBeacon' -export { IBeacon__factory } from './factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory' -export type { ERC1967Proxy } from './@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy' -export { ERC1967Proxy__factory } from './factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory' -export type { ERC1967Upgrade } from './@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade' -export { ERC1967Upgrade__factory } from './factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade__factory' -export type { Proxy } from './@openzeppelin/contracts/proxy/Proxy' -export { Proxy__factory } from './factories/@openzeppelin/contracts/proxy/Proxy__factory' -export type { Initializable } from './@openzeppelin/contracts/proxy/utils/Initializable' -export { Initializable__factory } from './factories/@openzeppelin/contracts/proxy/utils/Initializable__factory' -export type { IERC1155Receiver } from './@openzeppelin/contracts/token/ERC1155/IERC1155Receiver' -export { IERC1155Receiver__factory } from './factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory' -export type { IERC721Receiver } from './@openzeppelin/contracts/token/ERC721/IERC721Receiver' -export { IERC721Receiver__factory } from './factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory' -export type { IERC777Recipient } from './@openzeppelin/contracts/token/ERC777/IERC777Recipient' -export { IERC777Recipient__factory } from './factories/@openzeppelin/contracts/token/ERC777/IERC777Recipient__factory' -export type { IERC165 } from './@openzeppelin/contracts/utils/introspection/IERC165' -export { IERC165__factory } from './factories/@openzeppelin/contracts/utils/introspection/IERC165__factory' -export type { Authority } from './contracts/common/Authority' -export { Authority__factory } from './factories/contracts/common/Authority__factory' -export type { EntryPointAuth } from './contracts/common/EntryPointAuth' -export { EntryPointAuth__factory } from './factories/contracts/common/EntryPointAuth__factory' -export type { EntryPointManager } from './contracts/core/EntryPointManager' -export { EntryPointManager__factory } from './factories/contracts/core/EntryPointManager__factory' -export type { ExecutionManager } from './contracts/core/ExecutionManager' -export { ExecutionManager__factory } from './factories/contracts/core/ExecutionManager__factory' -export type { FallbackManager } from './contracts/core/FallbackManager' -export { FallbackManager__factory } from './factories/contracts/core/FallbackManager__factory' -export type { RecoveryManager } from './contracts/core/RecoveryManager' -export { RecoveryManager__factory } from './factories/contracts/core/RecoveryManager__factory' -export type { ValidatorManager } from './contracts/core/ValidatorManager' -export { ValidatorManager__factory } from './factories/contracts/core/ValidatorManager__factory' -export type { DefaultCallbackHandler } from './contracts/handler/DefaultCallbackHandler' -export { DefaultCallbackHandler__factory } from './factories/contracts/handler/DefaultCallbackHandler__factory' -export type { BaseHook } from './contracts/hooks/BaseHook' -export { BaseHook__factory } from './factories/contracts/hooks/BaseHook__factory' -export type { IHook } from './contracts/interfaces/IHook' -export { IHook__factory } from './factories/contracts/interfaces/IHook__factory' -export type { IRecoveror } from './contracts/interfaces/IRecoveror' -export { IRecoveror__factory } from './factories/contracts/interfaces/IRecoveror__factory' -export type { IValidator } from './contracts/interfaces/IValidator' -export { IValidator__factory } from './factories/contracts/interfaces/IValidator__factory' -export type { Metadata } from './contracts/interfaces/Metadata' -export { Metadata__factory } from './factories/contracts/interfaces/Metadata__factory' -export type { VerifyingPaymaster } from './contracts/paymaster/VerifyingPaymaster' -export { VerifyingPaymaster__factory } from './factories/contracts/paymaster/VerifyingPaymaster__factory' -export type { SmartAccount } from './contracts/SmartAccount' -export { SmartAccount__factory } from './factories/contracts/SmartAccount__factory' -export type { SmartAccountFactory } from './contracts/SmartAccountFactory' -export { SmartAccountFactory__factory } from './factories/contracts/SmartAccountFactory__factory' -export type { BaseValidator } from './contracts/validators/BaseValidator' -export { BaseValidator__factory } from './factories/contracts/validators/BaseValidator__factory' -export type { ECDSAValidator } from './contracts/validators/ECDSAValidator' -export { ECDSAValidator__factory } from './factories/contracts/validators/ECDSAValidator__factory' -export type { OIDCSessionOnlyValidator } from './contracts/validators/OIDCSessionOnlyValidator' -export { OIDCSessionOnlyValidator__factory } from './factories/contracts/validators/OIDCSessionOnlyValidator__factory' -export type { ISecp256r1 } from './contracts/validators/p256/ISecp256r1' -export { ISecp256r1__factory } from './factories/contracts/validators/p256/ISecp256r1__factory' -export type { P256Validator } from './contracts/validators/p256/P256Validator' -export { P256Validator__factory } from './factories/contracts/validators/p256/P256Validator__factory' -export type { Secp256r1 } from './contracts/validators/p256/Secp256r1' -export { Secp256r1__factory } from './factories/contracts/validators/p256/Secp256r1__factory' -export type { Secp256r1IoTeX } from './contracts/validators/p256/Secp256r1IoTeX' -export { Secp256r1IoTeX__factory } from './factories/contracts/validators/p256/Secp256r1IoTeX__factory' -export type { WebauthnValidator } from './contracts/validators/p256/WebauthnValidator' -export { WebauthnValidator__factory } from './factories/contracts/validators/p256/WebauthnValidator__factory' -export type { OwnerSessionKeyValidator } from './contracts/validators/sessionkey/OwnerSessionKeyValidator' -export { OwnerSessionKeyValidator__factory } from './factories/contracts/validators/sessionkey/OwnerSessionKeyValidator__factory' +import type * as accountAbstraction from "./@account-abstraction"; +export type { accountAbstraction }; +import type * as openzeppelin from "./@openzeppelin"; +export type { openzeppelin }; +import type * as contracts from "./contracts"; +export type { contracts }; +export * as factories from "./factories"; +export type { BaseAccount } from "./@account-abstraction/contracts/core/BaseAccount"; +export { BaseAccount__factory } from "./factories/@account-abstraction/contracts/core/BaseAccount__factory"; +export type { BasePaymaster } from "./@account-abstraction/contracts/core/BasePaymaster"; +export { BasePaymaster__factory } from "./factories/@account-abstraction/contracts/core/BasePaymaster__factory"; +export type { EntryPoint } from "./@account-abstraction/contracts/core/EntryPoint"; +export { EntryPoint__factory } from "./factories/@account-abstraction/contracts/core/EntryPoint__factory"; +export type { NonceManager } from "./@account-abstraction/contracts/core/NonceManager"; +export { NonceManager__factory } from "./factories/@account-abstraction/contracts/core/NonceManager__factory"; +export type { SenderCreator } from "./@account-abstraction/contracts/core/SenderCreator"; +export { SenderCreator__factory } from "./factories/@account-abstraction/contracts/core/SenderCreator__factory"; +export type { StakeManager } from "./@account-abstraction/contracts/core/StakeManager"; +export { StakeManager__factory } from "./factories/@account-abstraction/contracts/core/StakeManager__factory"; +export type { IAccount } from "./@account-abstraction/contracts/interfaces/IAccount"; +export { IAccount__factory } from "./factories/@account-abstraction/contracts/interfaces/IAccount__factory"; +export type { IAggregator } from "./@account-abstraction/contracts/interfaces/IAggregator"; +export { IAggregator__factory } from "./factories/@account-abstraction/contracts/interfaces/IAggregator__factory"; +export type { IEntryPoint } from "./@account-abstraction/contracts/interfaces/IEntryPoint"; +export { IEntryPoint__factory } from "./factories/@account-abstraction/contracts/interfaces/IEntryPoint__factory"; +export type { INonceManager } from "./@account-abstraction/contracts/interfaces/INonceManager"; +export { INonceManager__factory } from "./factories/@account-abstraction/contracts/interfaces/INonceManager__factory"; +export type { IPaymaster } from "./@account-abstraction/contracts/interfaces/IPaymaster"; +export { IPaymaster__factory } from "./factories/@account-abstraction/contracts/interfaces/IPaymaster__factory"; +export type { IStakeManager } from "./@account-abstraction/contracts/interfaces/IStakeManager"; +export { IStakeManager__factory } from "./factories/@account-abstraction/contracts/interfaces/IStakeManager__factory"; +export type { TokenCallbackHandler } from "./@account-abstraction/contracts/samples/callback/TokenCallbackHandler"; +export { TokenCallbackHandler__factory } from "./factories/@account-abstraction/contracts/samples/callback/TokenCallbackHandler__factory"; +export type { Ownable } from "./@openzeppelin/contracts/access/Ownable"; +export { Ownable__factory } from "./factories/@openzeppelin/contracts/access/Ownable__factory"; +export type { IERC1822Proxiable } from "./@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable"; +export { IERC1822Proxiable__factory } from "./factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory"; +export type { IERC1967 } from "./@openzeppelin/contracts/interfaces/IERC1967"; +export { IERC1967__factory } from "./factories/@openzeppelin/contracts/interfaces/IERC1967__factory"; +export type { IBeacon } from "./@openzeppelin/contracts/proxy/beacon/IBeacon"; +export { IBeacon__factory } from "./factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory"; +export type { ERC1967Proxy } from "./@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy"; +export { ERC1967Proxy__factory } from "./factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory"; +export type { ERC1967Upgrade } from "./@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade"; +export { ERC1967Upgrade__factory } from "./factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade__factory"; +export type { Proxy } from "./@openzeppelin/contracts/proxy/Proxy"; +export { Proxy__factory } from "./factories/@openzeppelin/contracts/proxy/Proxy__factory"; +export type { Initializable } from "./@openzeppelin/contracts/proxy/utils/Initializable"; +export { Initializable__factory } from "./factories/@openzeppelin/contracts/proxy/utils/Initializable__factory"; +export type { IERC1155Receiver } from "./@openzeppelin/contracts/token/ERC1155/IERC1155Receiver"; +export { IERC1155Receiver__factory } from "./factories/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver__factory"; +export type { IERC721Receiver } from "./@openzeppelin/contracts/token/ERC721/IERC721Receiver"; +export { IERC721Receiver__factory } from "./factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory"; +export type { IERC777Recipient } from "./@openzeppelin/contracts/token/ERC777/IERC777Recipient"; +export { IERC777Recipient__factory } from "./factories/@openzeppelin/contracts/token/ERC777/IERC777Recipient__factory"; +export type { IERC165 } from "./@openzeppelin/contracts/utils/introspection/IERC165"; +export { IERC165__factory } from "./factories/@openzeppelin/contracts/utils/introspection/IERC165__factory"; +export type { Authority } from "./contracts/common/Authority"; +export { Authority__factory } from "./factories/contracts/common/Authority__factory"; +export type { EntryPointAuth } from "./contracts/common/EntryPointAuth"; +export { EntryPointAuth__factory } from "./factories/contracts/common/EntryPointAuth__factory"; +export type { EntryPointManager } from "./contracts/core/EntryPointManager"; +export { EntryPointManager__factory } from "./factories/contracts/core/EntryPointManager__factory"; +export type { ExecutionManager } from "./contracts/core/ExecutionManager"; +export { ExecutionManager__factory } from "./factories/contracts/core/ExecutionManager__factory"; +export type { FallbackManager } from "./contracts/core/FallbackManager"; +export { FallbackManager__factory } from "./factories/contracts/core/FallbackManager__factory"; +export type { RecoveryManager } from "./contracts/core/RecoveryManager"; +export { RecoveryManager__factory } from "./factories/contracts/core/RecoveryManager__factory"; +export type { ValidatorManager } from "./contracts/core/ValidatorManager"; +export { ValidatorManager__factory } from "./factories/contracts/core/ValidatorManager__factory"; +export type { DefaultCallbackHandler } from "./contracts/handler/DefaultCallbackHandler"; +export { DefaultCallbackHandler__factory } from "./factories/contracts/handler/DefaultCallbackHandler__factory"; +export type { BaseHook } from "./contracts/hooks/BaseHook"; +export { BaseHook__factory } from "./factories/contracts/hooks/BaseHook__factory"; +export type { IHook } from "./contracts/interfaces/IHook"; +export { IHook__factory } from "./factories/contracts/interfaces/IHook__factory"; +export type { IRecoveror } from "./contracts/interfaces/IRecoveror"; +export { IRecoveror__factory } from "./factories/contracts/interfaces/IRecoveror__factory"; +export type { IValidator } from "./contracts/interfaces/IValidator"; +export { IValidator__factory } from "./factories/contracts/interfaces/IValidator__factory"; +export type { Metadata } from "./contracts/interfaces/Metadata"; +export { Metadata__factory } from "./factories/contracts/interfaces/Metadata__factory"; +export type { VerifyingPaymaster } from "./contracts/paymaster/VerifyingPaymaster"; +export { VerifyingPaymaster__factory } from "./factories/contracts/paymaster/VerifyingPaymaster__factory"; +export type { SmartAccount } from "./contracts/SmartAccount"; +export { SmartAccount__factory } from "./factories/contracts/SmartAccount__factory"; +export type { SmartAccountFactory } from "./contracts/SmartAccountFactory"; +export { SmartAccountFactory__factory } from "./factories/contracts/SmartAccountFactory__factory"; +export type { BaseValidator } from "./contracts/validators/BaseValidator"; +export { BaseValidator__factory } from "./factories/contracts/validators/BaseValidator__factory"; +export type { ECDSAValidator } from "./contracts/validators/ECDSAValidator"; +export { ECDSAValidator__factory } from "./factories/contracts/validators/ECDSAValidator__factory"; +export type { IVerifier } from "./contracts/validators/OIDCSessionOnlyValidator.sol/IVerifier"; +export { IVerifier__factory } from "./factories/contracts/validators/OIDCSessionOnlyValidator.sol/IVerifier__factory"; +export type { OIDCSessionOnlyValidator } from "./contracts/validators/OIDCSessionOnlyValidator.sol/OIDCSessionOnlyValidator"; +export { OIDCSessionOnlyValidator__factory } from "./factories/contracts/validators/OIDCSessionOnlyValidator.sol/OIDCSessionOnlyValidator__factory"; +export type { ISecp256r1 } from "./contracts/validators/p256/ISecp256r1"; +export { ISecp256r1__factory } from "./factories/contracts/validators/p256/ISecp256r1__factory"; +export type { P256Validator } from "./contracts/validators/p256/P256Validator"; +export { P256Validator__factory } from "./factories/contracts/validators/p256/P256Validator__factory"; +export type { Secp256r1 } from "./contracts/validators/p256/Secp256r1"; +export { Secp256r1__factory } from "./factories/contracts/validators/p256/Secp256r1__factory"; +export type { Secp256r1IoTeX } from "./contracts/validators/p256/Secp256r1IoTeX"; +export { Secp256r1IoTeX__factory } from "./factories/contracts/validators/p256/Secp256r1IoTeX__factory"; +export type { WebauthnValidator } from "./contracts/validators/p256/WebauthnValidator"; +export { WebauthnValidator__factory } from "./factories/contracts/validators/p256/WebauthnValidator__factory"; +export type { OwnerSessionKeyValidator } from "./contracts/validators/sessionkey/OwnerSessionKeyValidator"; +export { OwnerSessionKeyValidator__factory } from "./factories/contracts/validators/sessionkey/OwnerSessionKeyValidator__factory"; diff --git a/src/userop-builder.ts b/src/userop-builder.ts index 8460b23..2fac1c6 100644 --- a/src/userop-builder.ts +++ b/src/userop-builder.ts @@ -1,67 +1,67 @@ -import * as ethers from 'ethers' -import { EntryPoint, EntryPoint__factory } from '@account-abstraction/contracts' +import * as ethers from 'ethers'; +import { EntryPoint, EntryPoint__factory } from '@account-abstraction/contracts'; import { SmartAccountFactory__factory, SmartAccount__factory, SmartAccount as SmartAccountImpl, SmartAccountFactory, -} from './types' +} from './types'; import { BundlerJsonRpcProvider, IPresetBuilderOpts, UserOperationBuilder, UserOperationMiddlewareFn, Presets, -} from 'userop' -import { BytesLike } from 'ethers' -import { arrayify, defaultAbiCoder } from 'ethers/lib/utils' +} from 'userop'; +import { BytesLike } from 'ethers'; +import { arrayify, defaultAbiCoder } from 'ethers/lib/utils'; export const ERC4337 = { EntryPoint: '0x7873addD5b8537b236d53bA195493890c65A887C', Factory: '0x8a204086f3CefCa2a0BAE208F35576AF719dE884', -} +}; export interface Signer { - address(): string - signatureLength(): number - data(): Promise - sign(opHash: string): Promise + address(): string; + signatureLength(): number; + data(): Promise; + sign(opHash: string): Promise; } export const Signature = (signer: Signer): UserOperationMiddlewareFn => - async (ctx) => { + async ctx => { ctx.op.signature = defaultAbiCoder.encode( ['address', 'bytes'], [signer.address(), arrayify(await signer.sign(ctx.getUserOpHash()))], - ) - } + ); + }; export class SmartAccount extends UserOperationBuilder { - private signer: Signer - private provider: ethers.providers.JsonRpcProvider - private entryPoint: EntryPoint - private factory: SmartAccountFactory - private initCode: string - proxy: SmartAccountImpl + private signer: Signer; + private provider: ethers.providers.JsonRpcProvider; + private entryPoint: EntryPoint; + private factory: SmartAccountFactory; + private initCode: string; + proxy: SmartAccountImpl; private constructor(signer: Signer, rpcUrl: string, opts?: IPresetBuilderOpts) { - super() - this.signer = signer - this.provider = new BundlerJsonRpcProvider(rpcUrl).setBundlerRpc(opts?.overrideBundlerRpc) - this.entryPoint = EntryPoint__factory.connect(opts?.entryPoint || ERC4337.EntryPoint, this.provider) - this.factory = SmartAccountFactory__factory.connect(opts?.factory || ERC4337.Factory, this.provider) - this.initCode = '0x' - this.proxy = SmartAccount__factory.connect(ethers.constants.AddressZero, this.provider) + super(); + this.signer = signer; + this.provider = new BundlerJsonRpcProvider(rpcUrl).setBundlerRpc(opts?.overrideBundlerRpc); + this.entryPoint = EntryPoint__factory.connect(opts?.entryPoint || ERC4337.EntryPoint, this.provider); + this.factory = SmartAccountFactory__factory.connect(opts?.factory || ERC4337.Factory, this.provider); + this.initCode = '0x'; + this.proxy = SmartAccount__factory.connect(ethers.constants.AddressZero, this.provider); } - private resolveAccount: UserOperationMiddlewareFn = async (ctx) => { - ctx.op.nonce = await this.entryPoint.getNonce(ctx.op.sender, 0) - ctx.op.initCode = ctx.op.nonce.eq(0) ? this.initCode : '0x' - } + private resolveAccount: UserOperationMiddlewareFn = async ctx => { + ctx.op.nonce = await this.entryPoint.getNonce(ctx.op.sender, 0); + ctx.op.initCode = ctx.op.nonce.eq(0) ? this.initCode : '0x'; + }; public static async init(signer: Signer, rpcUrl: string, opts?: IPresetBuilderOpts): Promise { - const instance = new SmartAccount(signer, rpcUrl, opts) + const instance = new SmartAccount(signer, rpcUrl, opts); try { instance.initCode = ethers.utils.hexConcat([ @@ -71,15 +71,15 @@ export class SmartAccount extends UserOperationBuilder { [await signer.data()], ethers.BigNumber.from(opts?.salt ?? 0), ]), - ]) - await instance.entryPoint.callStatic.getSenderAddress(instance.initCode) + ]); + await instance.entryPoint.callStatic.getSenderAddress(instance.initCode); - throw new Error('getSenderAddress: unexpected result') + throw new Error('getSenderAddress: unexpected result'); } catch (error: any) { - const addr = error?.errorArgs?.sender - if (!addr) throw error + const addr = error?.errorArgs?.sender; + if (!addr) throw error; - instance.proxy = SmartAccount__factory.connect(addr, instance.provider) + instance.proxy = SmartAccount__factory.connect(addr, instance.provider); } const base = instance @@ -88,13 +88,13 @@ export class SmartAccount extends UserOperationBuilder { signature: '0x' + '0'.repeat(signer.signatureLength()), }) .useMiddleware(instance.resolveAccount) - .useMiddleware(Presets.Middleware.getGasPrice(instance.provider)) + .useMiddleware(Presets.Middleware.getGasPrice(instance.provider)); if (opts?.paymasterMiddleware) { - base.useMiddleware(opts.paymasterMiddleware) + base.useMiddleware(opts.paymasterMiddleware); } - return base.useMiddleware(Signature(instance.signer)) + return base.useMiddleware(Signature(instance.signer)); } public static async new( @@ -103,8 +103,8 @@ export class SmartAccount extends UserOperationBuilder { rpcUrl: string, opts?: IPresetBuilderOpts, ): Promise { - const instance = new SmartAccount(signer, rpcUrl, opts) - instance.proxy = SmartAccount__factory.connect(account, instance.provider) + const instance = new SmartAccount(signer, rpcUrl, opts); + instance.proxy = SmartAccount__factory.connect(account, instance.provider); const base = instance .useDefaults({ @@ -112,20 +112,20 @@ export class SmartAccount extends UserOperationBuilder { signature: '0x' + '0'.repeat(signer.signatureLength()), }) .useMiddleware(instance.resolveAccount) - .useMiddleware(Presets.Middleware.getGasPrice(instance.provider)) + .useMiddleware(Presets.Middleware.getGasPrice(instance.provider)); if (opts?.paymasterMiddleware) { - base.useMiddleware(opts.paymasterMiddleware) + base.useMiddleware(opts.paymasterMiddleware); } - return base.useMiddleware(Signature(instance.signer)) + return base.useMiddleware(Signature(instance.signer)); } execute(to: string, value: ethers.BigNumberish, data: ethers.BytesLike) { - return this.setCallData(this.proxy.interface.encodeFunctionData('execute', [to, value, data])) + return this.setCallData(this.proxy.interface.encodeFunctionData('execute', [to, value, data])); } executeBatch(to: Array, values: Array, data: Array) { - return this.setCallData(this.proxy.interface.encodeFunctionData('executeBatch', [to, values, data])) + return this.setCallData(this.proxy.interface.encodeFunctionData('executeBatch', [to, values, data])); } } diff --git a/test/all-flows.spec.ts b/test/all-flows.spec.ts index df98296..2d154f3 100644 --- a/test/all-flows.spec.ts +++ b/test/all-flows.spec.ts @@ -1,83 +1,83 @@ -import { expect } from 'chai' -import { ethers } from 'hardhat' +import { expect } from 'chai'; +import { ethers } from 'hardhat'; -import { ECDSAValidator, EntryPoint, SmartAccountFactory } from '../src/types' -import { SignerWithAddress } from '@nomiclabs/hardhat-ethers/signers' -import { UserOperationBuilder, UserOperationMiddlewareCtx } from 'userop' -import { getGasPrice } from 'userop/dist/preset/middleware' +import { ECDSAValidator, EntryPoint, SmartAccountFactory } from '../src/types'; +import { SignerWithAddress } from '@nomiclabs/hardhat-ethers/signers'; +import { UserOperationBuilder, UserOperationMiddlewareCtx } from 'userop'; +import { getGasPrice } from 'userop/dist/preset/middleware'; export async function deployEntryPoint(): Promise { - const factory = await ethers.getContractFactory('EntryPoint') - return (await factory.deploy()) as EntryPoint + const factory = await ethers.getContractFactory('EntryPoint'); + return (await factory.deploy()) as EntryPoint; } describe('Smart Account tests', () => { - let entryPoint: EntryPoint - let accountFactory: SmartAccountFactory - let accounts: SignerWithAddress[] - let beneficiary: SignerWithAddress + let entryPoint: EntryPoint; + let accountFactory: SmartAccountFactory; + let accounts: SignerWithAddress[]; + let beneficiary: SignerWithAddress; before(async () => { - accounts = await ethers.getSigners() - beneficiary = accounts[1] - entryPoint = await deployEntryPoint() + accounts = await ethers.getSigners(); + beneficiary = accounts[1]; + entryPoint = await deployEntryPoint(); - const handler = await (await ethers.getContractFactory('DefaultCallbackHandler')).deploy() + const handler = await (await ethers.getContractFactory('DefaultCallbackHandler')).deploy(); accountFactory = (await ( await ethers.getContractFactory('SmartAccountFactory') - ).deploy(entryPoint.address, handler.address)) as SmartAccountFactory - }) + ).deploy(entryPoint.address, handler.address)) as SmartAccountFactory; + }); describe('ECDSA validator account', () => { - let owner: SignerWithAddress - let validator: ECDSAValidator + let owner: SignerWithAddress; + let validator: ECDSAValidator; before(async () => { - owner = accounts[0] - validator = (await (await ethers.getContractFactory('ECDSAValidator')).deploy()) as ECDSAValidator - }) + owner = accounts[0]; + validator = (await (await ethers.getContractFactory('ECDSAValidator')).deploy()) as ECDSAValidator; + }); it('create account use factory', async () => { - const account = await accountFactory.getAddress([validator.address], [owner.address], 0) - expect(await ethers.provider.getCode(account)).to.equal('0x') + const account = await accountFactory.getAddress([validator.address], [owner.address], 0); + expect(await ethers.provider.getCode(account)).to.equal('0x'); - await accountFactory.createAccount([validator.address], [owner.address], 0) - expect(ethers.provider.getCode(account)).not.to.equal('0x') - expect(await validator.owner(account)).to.equal(owner.address) - }) + await accountFactory.createAccount([validator.address], [owner.address], 0); + expect(ethers.provider.getCode(account)).not.to.equal('0x'); + expect(await validator.owner(account)).to.equal(owner.address); + }); it('create account use userop', async () => { - const account = await accountFactory.getAddress([validator.address], [owner.address], 1) - expect(await ethers.provider.getCode(account)).to.equal('0x') + const account = await accountFactory.getAddress([validator.address], [owner.address], 1); + expect(await ethers.provider.getCode(account)).to.equal('0x'); - const { chainId } = await ethers.provider.getNetwork() - const builder = new UserOperationBuilder() - builder.useMiddleware(getGasPrice(ethers.provider)) - builder.setSender(account) + const { chainId } = await ethers.provider.getNetwork(); + const builder = new UserOperationBuilder(); + builder.useMiddleware(getGasPrice(ethers.provider)); + builder.setSender(account); builder.setInitCode( ethers.utils.hexConcat([ accountFactory.address, accountFactory.interface.encodeFunctionData('createAccount', [[validator.address], [owner.address], 1]), ]), - ) - builder.setVerificationGasLimit(350000) - const op = await builder.buildOp(entryPoint.address, chainId) - const ctx = new UserOperationMiddlewareCtx(op, entryPoint.address, chainId) - let signature = await beneficiary.signMessage(ethers.utils.arrayify(ctx.getUserOpHash())) - ctx.op.signature = ethers.utils.defaultAbiCoder.encode(['address', 'bytes'], [validator.address, signature]) + ); + builder.setVerificationGasLimit(350000); + const op = await builder.buildOp(entryPoint.address, chainId); + const ctx = new UserOperationMiddlewareCtx(op, entryPoint.address, chainId); + let signature = await beneficiary.signMessage(ethers.utils.arrayify(ctx.getUserOpHash())); + ctx.op.signature = ethers.utils.defaultAbiCoder.encode(['address', 'bytes'], [validator.address, signature]); // deposit gas - await owner.sendTransaction({ to: account, value: ethers.utils.parseEther('10') }) + await owner.sendTransaction({ to: account, value: ethers.utils.parseEther('10') }); - await expect(entryPoint.handleOps([ctx.op], beneficiary.address)).to.be.revertedWith('AA24 signature error') + await expect(entryPoint.handleOps([ctx.op], beneficiary.address)).to.be.revertedWith('AA24 signature error'); - signature = await owner.signMessage(ethers.utils.arrayify(ctx.getUserOpHash())) - ctx.op.signature = ethers.utils.defaultAbiCoder.encode(['address', 'bytes'], [validator.address, signature]) + signature = await owner.signMessage(ethers.utils.arrayify(ctx.getUserOpHash())); + ctx.op.signature = ethers.utils.defaultAbiCoder.encode(['address', 'bytes'], [validator.address, signature]); - await entryPoint.handleOps([ctx.op], beneficiary.address) + await entryPoint.handleOps([ctx.op], beneficiary.address); - expect(ethers.provider.getCode(account)).not.to.equal('0x') - expect(await validator.owner(account)).to.equal(owner.address) - }) - }) -}) + expect(ethers.provider.getCode(account)).not.to.equal('0x'); + expect(await validator.owner(account)).to.equal(owner.address); + }); + }); +}); diff --git a/test/secp256r1.spec.ts b/test/secp256r1.spec.ts index 10bff04..13cfd5e 100644 --- a/test/secp256r1.spec.ts +++ b/test/secp256r1.spec.ts @@ -1,30 +1,30 @@ -import { expect } from 'chai' -import { ethers } from 'hardhat' -import { Buffer } from 'buffer' +import { expect } from 'chai'; +import { ethers } from 'hardhat'; +import { Buffer } from 'buffer'; // @ts-ignore -import ecPem from 'ec-pem' -import crypto from 'crypto' -import { Secp256r1 } from '../src/types' -import { sign } from '../src/p256' +import ecPem from 'ec-pem'; +import crypto from 'crypto'; +import { Secp256r1 } from '../src/types'; +import { sign } from '../src/p256'; describe('Secp256r1 tests', () => { - let secp256r1: Secp256r1 + let secp256r1: Secp256r1; before(async () => { - secp256r1 = (await (await ethers.getContractFactory('Secp256r1')).deploy()) as Secp256r1 - }) + secp256r1 = (await (await ethers.getContractFactory('Secp256r1')).deploy()) as Secp256r1; + }); it('validate secp256r1 signature', async () => { - var prime256v1 = crypto.createECDH('prime256v1') - prime256v1.generateKeys() + var prime256v1 = crypto.createECDH('prime256v1'); + prime256v1.generateKeys(); - var keyPair = ecPem(prime256v1, 'prime256v1') + var keyPair = ecPem(prime256v1, 'prime256v1'); - const { messageHash, signature } = sign(keyPair, Buffer.from('123')) - const publicKey1 = '0x' + prime256v1.getPublicKey('hex').slice(2) - const publicKey2 = '0x' + keyPair.getPublicKey('hex').substring(2) + const { messageHash, signature } = sign(keyPair, Buffer.from('123')); + const publicKey1 = '0x' + prime256v1.getPublicKey('hex').slice(2); + const publicKey2 = '0x' + keyPair.getPublicKey('hex').substring(2); - expect(publicKey1).to.eq(publicKey2) - expect(await secp256r1.validateSignature(messageHash, signature, publicKey1)).to.equal(true) - }) -}) + expect(publicKey1).to.eq(publicKey2); + expect(await secp256r1.validateSignature(messageHash, signature, publicKey1)).to.equal(true); + }); +}); diff --git a/test/userop/middleware.ts b/test/userop/middleware.ts index 8f46791..18c0ded 100644 --- a/test/userop/middleware.ts +++ b/test/userop/middleware.ts @@ -1,56 +1,56 @@ -import * as ethers from 'ethers' -import { EntryPoint, EntryPoint__factory } from '@account-abstraction/contracts' +import * as ethers from 'ethers'; +import { EntryPoint, EntryPoint__factory } from '@account-abstraction/contracts'; import { SmartAccountFactory__factory, SmartAccount__factory, SmartAccount as SmartAccountImpl, SmartAccountFactory, -} from '../../src/types' +} from '../../src/types'; import { BundlerJsonRpcProvider, IPresetBuilderOpts, UserOperationBuilder, UserOperationMiddlewareFn, Presets, -} from 'userop' +} from 'userop'; export interface ECDSASigner { - signer: ethers.Signer - validator: string + signer: ethers.Signer; + validator: string; } export const ECDSASignature = (signer: ECDSASigner): UserOperationMiddlewareFn => - async (ctx) => { - const signature = await signer.signer.signMessage(ethers.utils.arrayify(ctx.getUserOpHash())) - ctx.op.signature = ethers.utils.defaultAbiCoder.encode(['address', 'bytes'], [signer.validator, signature]) - } + async ctx => { + const signature = await signer.signer.signMessage(ethers.utils.arrayify(ctx.getUserOpHash())); + ctx.op.signature = ethers.utils.defaultAbiCoder.encode(['address', 'bytes'], [signer.validator, signature]); + }; export class SmartAccount extends UserOperationBuilder { - private signer: ECDSASigner - private provider: ethers.providers.JsonRpcProvider - private entryPoint: EntryPoint - private factory: SmartAccountFactory - private initCode: string - proxy: SmartAccountImpl + private signer: ECDSASigner; + private provider: ethers.providers.JsonRpcProvider; + private entryPoint: EntryPoint; + private factory: SmartAccountFactory; + private initCode: string; + proxy: SmartAccountImpl; private constructor(signer: ECDSASigner, rpcUrl: string, opts?: IPresetBuilderOpts) { - super() - this.signer = signer - this.provider = new BundlerJsonRpcProvider(rpcUrl).setBundlerRpc(opts?.overrideBundlerRpc) - this.entryPoint = EntryPoint__factory.connect(opts?.entryPoint!, this.provider) - this.factory = SmartAccountFactory__factory.connect(opts?.factory!, this.provider) - this.initCode = '0x' - this.proxy = SmartAccount__factory.connect(ethers.constants.AddressZero, this.provider) + super(); + this.signer = signer; + this.provider = new BundlerJsonRpcProvider(rpcUrl).setBundlerRpc(opts?.overrideBundlerRpc); + this.entryPoint = EntryPoint__factory.connect(opts?.entryPoint!, this.provider); + this.factory = SmartAccountFactory__factory.connect(opts?.factory!, this.provider); + this.initCode = '0x'; + this.proxy = SmartAccount__factory.connect(ethers.constants.AddressZero, this.provider); } - private resolveAccount: UserOperationMiddlewareFn = async (ctx) => { - ctx.op.nonce = await this.entryPoint.getNonce(ctx.op.sender, 0) - ctx.op.initCode = ctx.op.nonce.eq(0) ? this.initCode : '0x' - } + private resolveAccount: UserOperationMiddlewareFn = async ctx => { + ctx.op.nonce = await this.entryPoint.getNonce(ctx.op.sender, 0); + ctx.op.initCode = ctx.op.nonce.eq(0) ? this.initCode : '0x'; + }; public static async init(signer: ECDSASigner, rpcUrl: string, opts?: IPresetBuilderOpts): Promise { - const instance = new SmartAccount(signer, rpcUrl, opts) + const instance = new SmartAccount(signer, rpcUrl, opts); try { instance.initCode = ethers.utils.hexConcat([ @@ -61,15 +61,15 @@ export class SmartAccount extends UserOperationBuilder { [await signer.signer.getAddress()], ethers.BigNumber.from(opts?.salt ?? 0), ]), - ]) - await instance.entryPoint.callStatic.getSenderAddress(instance.initCode) + ]); + await instance.entryPoint.callStatic.getSenderAddress(instance.initCode); - throw new Error('getSenderAddress: unexpected result') + throw new Error('getSenderAddress: unexpected result'); } catch (error: any) { - const addr = error?.errorArgs?.sender - if (!addr) throw error + const addr = error?.errorArgs?.sender; + if (!addr) throw error; - instance.proxy = SmartAccount__factory.connect(addr, instance.provider) + instance.proxy = SmartAccount__factory.connect(addr, instance.provider); } const base = instance @@ -81,20 +81,20 @@ export class SmartAccount extends UserOperationBuilder { ), }) .useMiddleware(instance.resolveAccount) - .useMiddleware(Presets.Middleware.getGasPrice(instance.provider)) + .useMiddleware(Presets.Middleware.getGasPrice(instance.provider)); const withPM = opts?.paymasterMiddleware ? base.useMiddleware(opts.paymasterMiddleware) - : base.useMiddleware(Presets.Middleware.estimateUserOperationGas(instance.provider)) + : base.useMiddleware(Presets.Middleware.estimateUserOperationGas(instance.provider)); - return withPM.useMiddleware(ECDSASignature(instance.signer)) + return withPM.useMiddleware(ECDSASignature(instance.signer)); } execute(to: string, value: ethers.BigNumberish, data: ethers.BytesLike) { - return this.setCallData(this.proxy.interface.encodeFunctionData('execute', [to, value, data])) + return this.setCallData(this.proxy.interface.encodeFunctionData('execute', [to, value, data])); } executeBatch(to: Array, values: Array, data: Array) { - return this.setCallData(this.proxy.interface.encodeFunctionData('executeBatch', [to, values, data])) + return this.setCallData(this.proxy.interface.encodeFunctionData('executeBatch', [to, values, data])); } } diff --git a/yarn.lock b/yarn.lock index 63fef4f..402f41b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -989,6 +989,13 @@ dependencies: antlr4ts "^0.5.0-alpha.4" +"@solidity-parser/parser@^0.16.2": + version "0.16.2" + resolved "https://registry.yarnpkg.com/@solidity-parser/parser/-/parser-0.16.2.tgz#42cb1e3d88b3e8029b0c9befff00b634cd92d2fa" + integrity sha512-PI9NfoA3P8XK2VBkK5oIfRgKDsicwDZfkVq9ZTBCQYGOP1N2owgY2dyLGyU5/J/hQs8KRk55kdmvTLjy3Mu3vg== + dependencies: + antlr4ts "^0.5.0-alpha.4" + "@szmarczak/http-timer@^1.1.2": version "1.1.2" resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" @@ -6829,6 +6836,15 @@ prepend-http@^2.0.0: resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA== +prettier-plugin-solidity@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/prettier-plugin-solidity/-/prettier-plugin-solidity-1.2.0.tgz#dc620b4fc7708a60687a87cdc803e57a1856b6fd" + integrity sha512-fgxcUZpVAP+LlRfy5JI5oaAkXGkmsje2VJ5krv/YMm+rcTZbIUwFguSw5f+WFuttMjpDm6wB4UL7WVkArEfiVA== + dependencies: + "@solidity-parser/parser" "^0.16.2" + semver "^7.5.4" + solidity-comments-extractor "^0.0.7" + prettier@^2.1.2, prettier@^2.3.1: version "2.8.8" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" @@ -7456,7 +7472,7 @@ semver@^6.3.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.4: +semver@^7.3.4, semver@^7.5.4: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== @@ -7691,6 +7707,11 @@ solc@^0.6.3: semver "^5.5.0" tmp "0.0.33" +solidity-comments-extractor@^0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/solidity-comments-extractor/-/solidity-comments-extractor-0.0.7.tgz#99d8f1361438f84019795d928b931f4e5c39ca19" + integrity sha512-wciNMLg/Irp8OKGrh3S2tfvZiZ0NEyILfcRCXCD4mp7SgK/i9gzLfhY2hY7VMCQJ3kH9UB9BzNdibIVMchzyYw== + solidity-coverage@^0.8.0: version "0.8.5" resolved "https://registry.yarnpkg.com/solidity-coverage/-/solidity-coverage-0.8.5.tgz#64071c3a0c06a0cecf9a7776c35f49edc961e875"