/* 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 { PromiseOrValue } from "../common"; import type { ECDSAValidator, ECDSAValidatorInterface, } from "../ECDSAValidator"; const _abi = [ { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "kernel", type: "address", }, { indexed: true, internalType: "address", name: "oldOwner", type: "address", }, { indexed: true, internalType: "address", name: "newOwner", type: "address", }, ], name: "OwnerChanged", type: "event", }, { inputs: [ { internalType: "bytes", name: "", type: "bytes", }, ], name: "disable", outputs: [], stateMutability: "payable", type: "function", }, { inputs: [ { internalType: "address", name: "", type: "address", }, ], name: "ecdsaValidatorStorage", outputs: [ { internalType: "address", name: "owner", type: "address", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "bytes", name: "_data", type: "bytes", }, ], name: "enable", outputs: [], stateMutability: "payable", type: "function", }, { inputs: [ { internalType: "address", name: "_caller", type: "address", }, { internalType: "bytes", name: "", type: "bytes", }, ], name: "validCaller", outputs: [ { internalType: "bool", name: "", type: "bool", }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "bytes32", name: "hash", type: "bytes32", }, { internalType: "bytes", name: "signature", type: "bytes", }, ], name: "validateSignature", outputs: [ { internalType: "ValidationData", name: "", type: "uint256", }, ], 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: "uint256", name: "", type: "uint256", }, ], name: "validateUserOp", outputs: [ { internalType: "ValidationData", name: "validationData", type: "uint256", }, ], stateMutability: "payable", type: "function", }, ] as const; const _bytecode = "0x60808060405234610016576104ee908161001c8239f35b600080fdfe60406080815260048036101561001457600080fd5b600091823560e01c80630c959556146101d557806320709efc1461019b578063333daf921461015b5780633a871cdd1461010d578381638fc925aa146100c85750639ea9bd591461006457600080fd5b346100c457806003193601126100c45761007c610296565b9160243567ffffffffffffffff81116100c057936100a08392602096369101610263565b5050338152808552205490516001600160a01b0392831691909216148152f35b8480fd5b8280fd5b92905060203660031901126101095780359067ffffffffffffffff8211610104576100f591369101610263565b50503382528160205281205580f35b505050fd5b5050fd5b50600319836060368301126101545783359167ffffffffffffffff831161015757610160908336030112610154575060209261014d916024359101610348565b9051908152f35b80fd5b5080fd5b5082346101545781600319360112610154576024359067ffffffffffffffff8211610154575060209261019461014d9236908301610263565b9135610464565b838234610157576020366003190112610157576020916001600160a01b03908290826101c5610296565b1681528085522054169051908152f35b509060203660031901126100c45780359067ffffffffffffffff821161025f5761020191369101610263565b6014116100c4573560601c90338352826020528220805490826bffffffffffffffffffffffff60a01b831617905560018060a01b0316337f381c0d11398486654573703c51ee8210ce9461764d133f9f0e53b6a5397053318480a480f35b8380fd5b9181601f840112156102915782359167ffffffffffffffff8311610291576020838186019501011161029157565b600080fd5b600435906001600160a01b038216820361029157565b903590601e1981360301821215610291570180359067ffffffffffffffff82116102915760200191813603831361029157565b92919267ffffffffffffffff918281116103325760405192601f8201601f19908116603f011684019081118482101761033257604052829481845281830111610291578281602093846000960137010152565b634e487b7160e01b600052604160045260246000fd5b600092916001600160a01b039084833583811690819003610157578152806020528260408220541693826020527b19457468657265756d205369676e6564204d6573736167653a0a33328252603c60042091846103be6101408401946103b86103b187876102ac565b36916102df565b906103ee565b1686146103e557506103b16103d793926103b8926102ac565b16036103df57565b60019150565b96505050505050565b60207f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a19392608060405193838301516040526040830151928360605260416000988995869485526060840151851a885210915114165afa508251923d1561045757606052604052565b638baa579f90526004601cfd5b3360009081526020819052604081205490936001600160a01b03918216939192836104996104933685876102df565b836103ee565b1685146104e6576104d7926103b8916020527b19457468657265756d205369676e6564204d6573736167653a0a33328752603c6004209236916102df565b16036104e05790565b50600190565b50505050509056"; type ECDSAValidatorConstructorParams = | [signer?: Signer] | ConstructorParameters; const isSuperArgs = ( xs: ECDSAValidatorConstructorParams ): xs is ConstructorParameters => xs.length > 1; export class ECDSAValidator__factory extends ContractFactory { constructor(...args: ECDSAValidatorConstructorParams) { if (isSuperArgs(args)) { super(...args); } else { super(_abi, _bytecode, args[0]); } } override deploy( overrides?: Overrides & { from?: PromiseOrValue } ): Promise { return super.deploy(overrides || {}) as Promise; } override getDeployTransaction( overrides?: Overrides & { from?: PromiseOrValue } ): TransactionRequest { return super.getDeployTransaction(overrides || {}); } override attach(address: string): ECDSAValidator { return super.attach(address) as ECDSAValidator; } override connect(signer: Signer): ECDSAValidator__factory { return super.connect(signer) as ECDSAValidator__factory; } static readonly bytecode = _bytecode; static readonly abi = _abi; static createInterface(): ECDSAValidatorInterface { return new utils.Interface(_abi) as ECDSAValidatorInterface; } static connect( address: string, signerOrProvider: Signer | Provider ): ECDSAValidator { return new Contract(address, _abi, signerOrProvider) as ECDSAValidator; } }