@settlemint/solidity-token-erc20-metatx
Version:
Smart contract set to use ERC20 meta transactions in SettleMint
257 lines (251 loc) • 11.9 kB
TypeScript
// This file was autogenerated by hardhat-viem, do not edit it.
// prettier-ignore
// tslint:disable
// eslint-disable
import type { Address } from "viem";
import type { GetContractReturnType } from "@nomicfoundation/hardhat-viem/types";
import "@nomicfoundation/hardhat-viem/types";
export interface CallReceiverMock$Type {
"_format": "hh-sol-artifact-1",
"contractName": "CallReceiverMock",
"sourceName": "contracts/mocks/CallReceiverMock.sol",
"abi": [
{
"inputs": [],
"stateMutability": "payable",
"type": "constructor"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "OwnableInvalidOwner",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "OwnableUnauthorizedAccount",
"type": "error"
},
{
"anonymous": false,
"inputs": [],
"name": "MockFunctionCalled",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "a",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "b",
"type": "uint256"
}
],
"name": "MockFunctionCalledWithArgs",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"inputs": [],
"name": "mockFunction",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "mockFunctionEmptyReturn",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "mockFunctionNonPayable",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "mockFunctionRevertsNoReason",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "mockFunctionRevertsReason",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "mockFunctionThrows",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "a",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "b",
"type": "uint256"
}
],
"name": "mockFunctionWithArgs",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "mockStaticFunction",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [],
"name": "owner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "renounceOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x6080806040523315605b5760008054336001600160a01b0319821681178355916001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a361055590816100728239f35b631e4fbdf760e01b600052600060045260246000fdfe608080604052600436101561001357600080fd5b60003560e01c9081630c03496814610387575080630f63e42c146103465780632c81d638146100f25780633bcfaa141461030b5780633e6fec04146102cf578063715018a6146102515780638da5cb5b1461021d578063c292d81c146101ea578063c8fc7696146101ce578063f2fde38b146100f75763fdb273251461009857600080fd5b60406003193601126100f2577f2b42b3c9af4187c86225f201736204c7597312c830cb5c2537dff6ef24b946ae6040805160043581526024356020820152a16100ee6100e2610457565b604051918291826103ef565b0390f35b600080fd5b346100f25760206003193601126100f25760043573ffffffffffffffffffffffffffffffffffffffff81168091036100f2576101316104d0565b801561019f5773ffffffffffffffffffffffffffffffffffffffff600054827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600055167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3005b7f1e4fbdf700000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b346100f25760006003193601126100f2576100ee6100e2610457565b60006003193601126100f2577f52c66ed6ec9ca819cba26fe2b2650059270d8981b295af300187a964f54a8c23600080a1005b346100f25760006003193601126100f257602073ffffffffffffffffffffffffffffffffffffffff60005416604051908152f35b346100f25760006003193601126100f25761026a6104d0565b600073ffffffffffffffffffffffffffffffffffffffff81547fffffffffffffffffffffffff000000000000000000000000000000000000000081168355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b60006003193601126100f2577f52c66ed6ec9ca819cba26fe2b2650059270d8981b295af300187a964f54a8c23600080a16100ee6100e2610457565b60006003193601126100f2577f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b346100f25760006003193601126100f2577f52c66ed6ec9ca819cba26fe2b2650059270d8981b295af300187a964f54a8c23600080a16100ee6100e2610457565b60006003193601126100f257807f08c379a0000000000000000000000000000000000000000000000000000000006064925260206004820152601b60248201527f43616c6c52656365697665724d6f636b3a20726576657274696e6700000000006044820152fd5b9190916020815282519283602083015260005b8481106104415750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006040809697860101520116010190565b8060208092840101516040828601015201610402565b604051906040820182811067ffffffffffffffff8211176104a157604052600682527f30783132333400000000000000000000000000000000000000000000000000006020830152565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b73ffffffffffffffffffffffffffffffffffffffff6000541633036104f157565b7f118cdaa7000000000000000000000000000000000000000000000000000000006000523360045260246000fdfea2646970667358221220ac295cadc6d81bf327fa66a3e1382ccd1532d0065224a82cb161c856d153179564736f6c634300081b0033",
"deployedBytecode": "0x608080604052600436101561001357600080fd5b60003560e01c9081630c03496814610387575080630f63e42c146103465780632c81d638146100f25780633bcfaa141461030b5780633e6fec04146102cf578063715018a6146102515780638da5cb5b1461021d578063c292d81c146101ea578063c8fc7696146101ce578063f2fde38b146100f75763fdb273251461009857600080fd5b60406003193601126100f2577f2b42b3c9af4187c86225f201736204c7597312c830cb5c2537dff6ef24b946ae6040805160043581526024356020820152a16100ee6100e2610457565b604051918291826103ef565b0390f35b600080fd5b346100f25760206003193601126100f25760043573ffffffffffffffffffffffffffffffffffffffff81168091036100f2576101316104d0565b801561019f5773ffffffffffffffffffffffffffffffffffffffff600054827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600055167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3005b7f1e4fbdf700000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b346100f25760006003193601126100f2576100ee6100e2610457565b60006003193601126100f2577f52c66ed6ec9ca819cba26fe2b2650059270d8981b295af300187a964f54a8c23600080a1005b346100f25760006003193601126100f257602073ffffffffffffffffffffffffffffffffffffffff60005416604051908152f35b346100f25760006003193601126100f25761026a6104d0565b600073ffffffffffffffffffffffffffffffffffffffff81547fffffffffffffffffffffffff000000000000000000000000000000000000000081168355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b60006003193601126100f2577f52c66ed6ec9ca819cba26fe2b2650059270d8981b295af300187a964f54a8c23600080a16100ee6100e2610457565b60006003193601126100f2577f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b346100f25760006003193601126100f2577f52c66ed6ec9ca819cba26fe2b2650059270d8981b295af300187a964f54a8c23600080a16100ee6100e2610457565b60006003193601126100f257807f08c379a0000000000000000000000000000000000000000000000000000000006064925260206004820152601b60248201527f43616c6c52656365697665724d6f636b3a20726576657274696e6700000000006044820152fd5b9190916020815282519283602083015260005b8481106104415750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006040809697860101520116010190565b8060208092840101516040828601015201610402565b604051906040820182811067ffffffffffffffff8211176104a157604052600682527f30783132333400000000000000000000000000000000000000000000000000006020830152565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b73ffffffffffffffffffffffffffffffffffffffff6000541633036104f157565b7f118cdaa7000000000000000000000000000000000000000000000000000000006000523360045260246000fdfea2646970667358221220ac295cadc6d81bf327fa66a3e1382ccd1532d0065224a82cb161c856d153179564736f6c634300081b0033",
"linkReferences": {},
"deployedLinkReferences": {}
}
declare module "@nomicfoundation/hardhat-viem/types" {
export function deployContract(
contractName: "CallReceiverMock",
constructorArgs?: [],
config?: DeployContractConfig
): Promise<GetContractReturnType<CallReceiverMock$Type["abi"]>>;
export function deployContract(
contractName: "contracts/mocks/CallReceiverMock.sol:CallReceiverMock",
constructorArgs?: [],
config?: DeployContractConfig
): Promise<GetContractReturnType<CallReceiverMock$Type["abi"]>>;
export function sendDeploymentTransaction(
contractName: "CallReceiverMock",
constructorArgs?: [],
config?: SendDeploymentTransactionConfig
): Promise<{
contract: GetContractReturnType<CallReceiverMock$Type["abi"]>;
deploymentTransaction: GetTransactionReturnType;
}>;
export function sendDeploymentTransaction(
contractName: "contracts/mocks/CallReceiverMock.sol:CallReceiverMock",
constructorArgs?: [],
config?: SendDeploymentTransactionConfig
): Promise<{
contract: GetContractReturnType<CallReceiverMock$Type["abi"]>;
deploymentTransaction: GetTransactionReturnType;
}>;
export function getContractAt(
contractName: "CallReceiverMock",
address: Address,
config?: GetContractAtConfig
): Promise<GetContractReturnType<CallReceiverMock$Type["abi"]>>;
export function getContractAt(
contractName: "contracts/mocks/CallReceiverMock.sol:CallReceiverMock",
address: Address,
config?: GetContractAtConfig
): Promise<GetContractReturnType<CallReceiverMock$Type["abi"]>>;
}