// This file was autogenerated by hardhat-viem, do not edit it. // prettier-ignore // tslint:disable // eslint-disable import type { Address } from "viem"; import type { AbiParameterToPrimitiveType, GetContractReturnType } from "@nomicfoundation/hardhat-viem/types"; import "@nomicfoundation/hardhat-viem/types"; export interface ExampleVestingWallet$Type { "_format": "hh-sol-artifact-1", "contractName": "ExampleVestingWallet", "sourceName": "contracts/ExampleVestingWallet.sol", "abi": [ { "inputs": [ { "internalType": "address", "name": "beneficiaryAddress", "type": "address" }, { "internalType": "uint64", "name": "startTimestamp", "type": "uint64" }, { "internalType": "uint64", "name": "durationSeconds", "type": "uint64" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "FailedCall", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "needed", "type": "uint256" } ], "name": "InsufficientBalance", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "OwnableInvalidOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "OwnableUnauthorizedAccount", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "token", "type": "address" } ], "name": "SafeERC20FailedOperation", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "token", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "ERC20Released", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "EtherReleased", "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": "duration", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "end", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "token", "type": "address" } ], "name": "releasable", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "releasable", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "token", "type": "address" } ], "name": "release", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "release", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "released", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "token", "type": "address" } ], "name": "released", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "start", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint64", "name": "timestamp", "type": "uint64" } ], "name": "vestedAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint64", "name": "timestamp", "type": "uint64" } ], "name": "vestedAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ], "bytecode": "0x60c03461010c57601f61095a38819003918201601f19168301916001600160401b038311848410176101105780849260609460405283398101031261010c5780516001600160a01b038116919082900361010c5761006b604061006460208401610124565b9201610124565b9082156100f9575f80546001600160a01b031981168517825560405194916001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a360805260a052610821908161013982396080518181816101c0015281816106ec0152610720015260a051818181610535015281816106c201526107860152f35b631e4fbdf760e01b5f525f60045260245ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160401b038216820361010c5756fe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c80630a17b06b146105595780630fb5a6b414610516578063191655871461042c578063715018a6146103d5578063810ec23b1461039c57806386d1a69f146102835780638da5cb5b1461025c578063961325211461023f5780639852595c14610207578063a3f8eace146101e4578063be9a6555146101a1578063efbe1c1c14610187578063f2fde38b146101025763fbccedae0361000e57346100fe575f3660031901126100fe5760206100f66100ed476100e86001600160401b03421691600154906105a6565b610711565b60015490610672565b604051908152f35b5f80fd5b346100fe5760203660031901126100fe5761011b610590565b6101236107c5565b6001600160a01b03168015610174575f80546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3005b631e4fbdf760e01b5f525f60045260245ffd5b346100fe575f3660031901126100fe5760206100f66106b5565b346100fe575f3660031901126100fe5760206040516001600160401b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100fe5760203660031901126100fe5760206100f6610202610590565b61067f565b346100fe5760203660031901126100fe576001600160a01b03610228610590565b165f526002602052602060405f2054604051908152f35b346100fe575f3660031901126100fe576020600154604051908152f35b346100fe575f3660031901126100fe575f546040516001600160a01b039091168152602090f35b346100fe575f3660031901126100fe576102ae476100e86001600160401b03421691600154906105a6565b6102c56102be6001548093610672565b80926105a6565b6001557fda9d4e5f101b8b9b1c5b76d0c5a9f7923571acfc02376aa076b75a8c080c956b6020604051838152a15f546001600160a01b0316478211610385575f80809381935af13d1561037d573d906001600160401b038211610369576040519161033a601f8201601f1916602001846105c7565b82523d5f602084013e5b1561034b57005b80511561035a57602081519101fd5b63d6bda27560e01b5f5260045ffd5b634e487b7160e01b5f52604160045260245ffd5b606090610344565b504763cf47918160e01b5f5260045260245260445ffd5b346100fe5760403660031901126100fe576103b5610590565b602435906001600160401b03821682036100fe576020916100f6916105e8565b346100fe575f3660031901126100fe576103ed6107c5565b5f80546001600160a01b0319811682556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b346100fe5760203660031901126100fe57610445610590565b60205f6104518361067f565b9260018060a01b03169283825260028352604082206104718282546105a6565b9055837fc0e523490dd523c33b1878c9eb14ff46991e3f5b2cd33710918618f2a39cba1b84604051848152a260018060a01b0382541690604051908482019263a9059cbb60e01b845260248301526044820152604481526104d36064826105c7565b519082855af11561050b575f513d6105025750803b155b6104f057005b635274afe760e01b5f5260045260245ffd5b600114156104ea565b6040513d5f823e3d90fd5b346100fe575f3660031901126100fe5760206040516001600160401b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100fe5760203660031901126100fe576004356001600160401b03811681036100fe576100f66020916100e847600154906105a6565b600435906001600160a01b03821682036100fe57565b919082018092116105b357565b634e487b7160e01b5f52601160045260245ffd5b90601f801991011681019081106001600160401b0382111761036957604052565b6040516370a0823160e01b81523060048201526001600160a01b03919091169190602081602481865afa90811561050b575f9161063e575b506100e89061063b935f52600260205260405f2054906105a6565b90565b90506020813d60201161066a575b81610659602093836105c7565b810103126100fe575161063b610620565b3d915061064c565b919082039182116105b357565b61063b906106966001600160401b034216826105e8565b6001600160a01b039091165f9081526002602052604090205490610672565b61063b6001600160401b037f0000000000000000000000000000000000000000000000000000000000000000166001600160401b037f0000000000000000000000000000000000000000000000000000000000000000166105a6565b906001600160401b03908116907f0000000000000000000000000000000000000000000000000000000000000000168082101561074f575050505f90565b6107576106b5565b821061076257505090565b61076b91610672565b908181029181830414901517156105b3576001600160401b037f0000000000000000000000000000000000000000000000000000000000000000169081156107b1570490565b634e487b7160e01b5f52601260045260245ffd5b5f546001600160a01b031633036107d857565b63118cdaa760e01b5f523360045260245ffdfea26469706673582212205ee8340248e8eb217c94b39636fb209cc3790d07e8deba299b9f3469c47b323f64736f6c634300081e0033", "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c80630a17b06b146105595780630fb5a6b414610516578063191655871461042c578063715018a6146103d5578063810ec23b1461039c57806386d1a69f146102835780638da5cb5b1461025c578063961325211461023f5780639852595c14610207578063a3f8eace146101e4578063be9a6555146101a1578063efbe1c1c14610187578063f2fde38b146101025763fbccedae0361000e57346100fe575f3660031901126100fe5760206100f66100ed476100e86001600160401b03421691600154906105a6565b610711565b60015490610672565b604051908152f35b5f80fd5b346100fe5760203660031901126100fe5761011b610590565b6101236107c5565b6001600160a01b03168015610174575f80546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3005b631e4fbdf760e01b5f525f60045260245ffd5b346100fe575f3660031901126100fe5760206100f66106b5565b346100fe575f3660031901126100fe5760206040516001600160401b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100fe5760203660031901126100fe5760206100f6610202610590565b61067f565b346100fe5760203660031901126100fe576001600160a01b03610228610590565b165f526002602052602060405f2054604051908152f35b346100fe575f3660031901126100fe576020600154604051908152f35b346100fe575f3660031901126100fe575f546040516001600160a01b039091168152602090f35b346100fe575f3660031901126100fe576102ae476100e86001600160401b03421691600154906105a6565b6102c56102be6001548093610672565b80926105a6565b6001557fda9d4e5f101b8b9b1c5b76d0c5a9f7923571acfc02376aa076b75a8c080c956b6020604051838152a15f546001600160a01b0316478211610385575f80809381935af13d1561037d573d906001600160401b038211610369576040519161033a601f8201601f1916602001846105c7565b82523d5f602084013e5b1561034b57005b80511561035a57602081519101fd5b63d6bda27560e01b5f5260045ffd5b634e487b7160e01b5f52604160045260245ffd5b606090610344565b504763cf47918160e01b5f5260045260245260445ffd5b346100fe5760403660031901126100fe576103b5610590565b602435906001600160401b03821682036100fe576020916100f6916105e8565b346100fe575f3660031901126100fe576103ed6107c5565b5f80546001600160a01b0319811682556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b346100fe5760203660031901126100fe57610445610590565b60205f6104518361067f565b9260018060a01b03169283825260028352604082206104718282546105a6565b9055837fc0e523490dd523c33b1878c9eb14ff46991e3f5b2cd33710918618f2a39cba1b84604051848152a260018060a01b0382541690604051908482019263a9059cbb60e01b845260248301526044820152604481526104d36064826105c7565b519082855af11561050b575f513d6105025750803b155b6104f057005b635274afe760e01b5f5260045260245ffd5b600114156104ea565b6040513d5f823e3d90fd5b346100fe575f3660031901126100fe5760206040516001600160401b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100fe5760203660031901126100fe576004356001600160401b03811681036100fe576100f66020916100e847600154906105a6565b600435906001600160a01b03821682036100fe57565b919082018092116105b357565b634e487b7160e01b5f52601160045260245ffd5b90601f801991011681019081106001600160401b0382111761036957604052565b6040516370a0823160e01b81523060048201526001600160a01b03919091169190602081602481865afa90811561050b575f9161063e575b506100e89061063b935f52600260205260405f2054906105a6565b90565b90506020813d60201161066a575b81610659602093836105c7565b810103126100fe575161063b610620565b3d915061064c565b919082039182116105b357565b61063b906106966001600160401b034216826105e8565b6001600160a01b039091165f9081526002602052604090205490610672565b61063b6001600160401b037f0000000000000000000000000000000000000000000000000000000000000000166001600160401b037f0000000000000000000000000000000000000000000000000000000000000000166105a6565b906001600160401b03908116907f0000000000000000000000000000000000000000000000000000000000000000168082101561074f575050505f90565b6107576106b5565b821061076257505090565b61076b91610672565b908181029181830414901517156105b3576001600160401b037f0000000000000000000000000000000000000000000000000000000000000000169081156107b1570490565b634e487b7160e01b5f52601260045260245ffd5b5f546001600160a01b031633036107d857565b63118cdaa760e01b5f523360045260245ffdfea26469706673582212205ee8340248e8eb217c94b39636fb209cc3790d07e8deba299b9f3469c47b323f64736f6c634300081e0033", "linkReferences": {}, "deployedLinkReferences": {} } declare module "@nomicfoundation/hardhat-viem/types" { export function deployContract( contractName: "ExampleVestingWallet", constructorArgs: [beneficiaryAddress: AbiParameterToPrimitiveType<{"name":"beneficiaryAddress","type":"address"}>, startTimestamp: AbiParameterToPrimitiveType<{"name":"startTimestamp","type":"uint64"}>, durationSeconds: AbiParameterToPrimitiveType<{"name":"durationSeconds","type":"uint64"}>], config?: DeployContractConfig ): Promise>; export function deployContract( contractName: "contracts/ExampleVestingWallet.sol:ExampleVestingWallet", constructorArgs: [beneficiaryAddress: AbiParameterToPrimitiveType<{"name":"beneficiaryAddress","type":"address"}>, startTimestamp: AbiParameterToPrimitiveType<{"name":"startTimestamp","type":"uint64"}>, durationSeconds: AbiParameterToPrimitiveType<{"name":"durationSeconds","type":"uint64"}>], config?: DeployContractConfig ): Promise>; export function sendDeploymentTransaction( contractName: "ExampleVestingWallet", constructorArgs: [beneficiaryAddress: AbiParameterToPrimitiveType<{"name":"beneficiaryAddress","type":"address"}>, startTimestamp: AbiParameterToPrimitiveType<{"name":"startTimestamp","type":"uint64"}>, durationSeconds: AbiParameterToPrimitiveType<{"name":"durationSeconds","type":"uint64"}>], config?: SendDeploymentTransactionConfig ): Promise<{ contract: GetContractReturnType; deploymentTransaction: GetTransactionReturnType; }>; export function sendDeploymentTransaction( contractName: "contracts/ExampleVestingWallet.sol:ExampleVestingWallet", constructorArgs: [beneficiaryAddress: AbiParameterToPrimitiveType<{"name":"beneficiaryAddress","type":"address"}>, startTimestamp: AbiParameterToPrimitiveType<{"name":"startTimestamp","type":"uint64"}>, durationSeconds: AbiParameterToPrimitiveType<{"name":"durationSeconds","type":"uint64"}>], config?: SendDeploymentTransactionConfig ): Promise<{ contract: GetContractReturnType; deploymentTransaction: GetTransactionReturnType; }>; export function getContractAt( contractName: "ExampleVestingWallet", address: Address, config?: GetContractAtConfig ): Promise>; export function getContractAt( contractName: "contracts/ExampleVestingWallet.sol:ExampleVestingWallet", address: Address, config?: GetContractAtConfig ): Promise>; }