@pvpbet/pvpbet
Version:
A decentralized PVP betting platform based on the Ethereum Virtual Machine (EVM).
157 lines (151 loc) • 12.2 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 { AbiParameterToPrimitiveType, GetContractReturnType } from "@nomicfoundation/hardhat-viem/types";
import "@nomicfoundation/hardhat-viem/types";
export interface UniswapRouter$Type {
"_format": "hh-sol-artifact-1",
"contractName": "UniswapRouter",
"sourceName": "contracts/UniswapRouter.sol",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "swapRouter_",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [
{
"internalType": "bytes",
"name": "commands",
"type": "bytes"
},
{
"internalType": "bytes[]",
"name": "inputs",
"type": "bytes[]"
},
{
"internalType": "address",
"name": "token",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "nonce",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "deadline",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "signature",
"type": "bytes"
}
],
"name": "execute",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes",
"name": "commands",
"type": "bytes"
},
{
"internalType": "bytes[]",
"name": "inputs",
"type": "bytes[]"
},
{
"internalType": "address",
"name": "token",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "execute",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "swapRouter",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x60a060405234801561001057600080fd5b506040516107e63803806107e683398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b6080516107416100a56000396000818160730152818160c7015281816101070152818161019601526101d201526107416000f3fe6080604052600436106100345760003560e01c80633edd8c571461003957806386f585c51461004e578063c31c9c0714610061575b600080fd5b61004c61004736600461042b565b6100b1565b005b61004c61005c3660046104f8565b610180565b34801561006d57600080fd5b506100957f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b84156100f0576100f06001600160a01b038716337f00000000000000000000000000000000000000000000000000000000000000008888888888610247565b6040516324856bc360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906324856bc390610142908d908d908d908d906004016105aa565b600060405180830381600087803b15801561015c57600080fd5b505af1158015610170573d6000803e3d6000fd5b5050505050505050505050505050565b80156101bb576101bb6001600160a01b038316337f0000000000000000000000000000000000000000000000000000000000000000846102ff565b6040516324856bc360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906324856bc39061020d9089908990899089906004016105aa565b600060405180830381600087803b15801561022757600080fd5b505af115801561023b573d6000803e3d6000fd5b50505050505050505050565b6040805160a0810182526001600160a01b038a811660608301908152608083018990528252602080830188905282840187905283518085018552918a1682528101889052915163187945bd60e11b81526e22d473030f116ddee9f6b43ac78ba3926330f28b7a926102c3929091908c908890889060040161065c565b600060405180830381600087803b1580156102dd57600080fd5b505af11580156102f1573d6000803e3d6000fd5b505050505050505050505050565b6040516323b872dd60e01b81526001600160a01b0384811660048301528381166024830152604482018390528516906323b872dd906064016020604051808303816000875af1158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a91906106e2565b5050505050565b60008083601f84011261039357600080fd5b50813567ffffffffffffffff8111156103ab57600080fd5b6020830191508360208285010111156103c357600080fd5b9250929050565b60008083601f8401126103dc57600080fd5b50813567ffffffffffffffff8111156103f457600080fd5b6020830191508360208260051b85010111156103c357600080fd5b80356001600160a01b038116811461042657600080fd5b919050565b60008060008060008060008060008060e08b8d03121561044a57600080fd5b8a3567ffffffffffffffff8082111561046257600080fd5b61046e8e838f01610381565b909c509a5060208d013591508082111561048757600080fd5b6104938e838f016103ca565b909a5098508891506104a760408e0161040f565b975060608d0135965060808d0135955060a08d0135945060c08d01359150808211156104d257600080fd5b506104df8d828e01610381565b915080935050809150509295989b9194979a5092959850565b6000806000806000806080878903121561051157600080fd5b863567ffffffffffffffff8082111561052957600080fd5b6105358a838b01610381565b9098509650602089013591508082111561054e57600080fd5b5061055b89828a016103ca565b909550935061056e90506040880161040f565b9150606087013590509295509295509295565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6040815260006105be604083018688610581565b602083820381850152818583528183019050818660051b8401018760005b8881101561064c57858303601f190184528135368b9003601e1901811261060257600080fd5b8a01858101903567ffffffffffffffff81111561061e57600080fd5b80360382131561062d57600080fd5b610638858284610581565b9587019594505050908401906001016105dc565b50909a9950505050505050505050565b600061010061067f83895180516001600160a01b03168252602090810151910152565b60208801516040840152604088015160608401526106b3608084018880516001600160a01b03168252602090810151910152565b6001600160a01b03861660c084015260e083018190526106d68184018587610581565b98975050505050505050565b6000602082840312156106f457600080fd5b8151801515811461070457600080fd5b939250505056fea26469706673582212200a82c60650a3b7e05c896c06a957ff45709423034cec948e67d4193009c7d82b64736f6c63430008140033",
"deployedBytecode": "0x6080604052600436106100345760003560e01c80633edd8c571461003957806386f585c51461004e578063c31c9c0714610061575b600080fd5b61004c61004736600461042b565b6100b1565b005b61004c61005c3660046104f8565b610180565b34801561006d57600080fd5b506100957f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b84156100f0576100f06001600160a01b038716337f00000000000000000000000000000000000000000000000000000000000000008888888888610247565b6040516324856bc360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906324856bc390610142908d908d908d908d906004016105aa565b600060405180830381600087803b15801561015c57600080fd5b505af1158015610170573d6000803e3d6000fd5b5050505050505050505050505050565b80156101bb576101bb6001600160a01b038316337f0000000000000000000000000000000000000000000000000000000000000000846102ff565b6040516324856bc360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906324856bc39061020d9089908990899089906004016105aa565b600060405180830381600087803b15801561022757600080fd5b505af115801561023b573d6000803e3d6000fd5b50505050505050505050565b6040805160a0810182526001600160a01b038a811660608301908152608083018990528252602080830188905282840187905283518085018552918a1682528101889052915163187945bd60e11b81526e22d473030f116ddee9f6b43ac78ba3926330f28b7a926102c3929091908c908890889060040161065c565b600060405180830381600087803b1580156102dd57600080fd5b505af11580156102f1573d6000803e3d6000fd5b505050505050505050505050565b6040516323b872dd60e01b81526001600160a01b0384811660048301528381166024830152604482018390528516906323b872dd906064016020604051808303816000875af1158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a91906106e2565b5050505050565b60008083601f84011261039357600080fd5b50813567ffffffffffffffff8111156103ab57600080fd5b6020830191508360208285010111156103c357600080fd5b9250929050565b60008083601f8401126103dc57600080fd5b50813567ffffffffffffffff8111156103f457600080fd5b6020830191508360208260051b85010111156103c357600080fd5b80356001600160a01b038116811461042657600080fd5b919050565b60008060008060008060008060008060e08b8d03121561044a57600080fd5b8a3567ffffffffffffffff8082111561046257600080fd5b61046e8e838f01610381565b909c509a5060208d013591508082111561048757600080fd5b6104938e838f016103ca565b909a5098508891506104a760408e0161040f565b975060608d0135965060808d0135955060a08d0135945060c08d01359150808211156104d257600080fd5b506104df8d828e01610381565b915080935050809150509295989b9194979a5092959850565b6000806000806000806080878903121561051157600080fd5b863567ffffffffffffffff8082111561052957600080fd5b6105358a838b01610381565b9098509650602089013591508082111561054e57600080fd5b5061055b89828a016103ca565b909550935061056e90506040880161040f565b9150606087013590509295509295509295565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6040815260006105be604083018688610581565b602083820381850152818583528183019050818660051b8401018760005b8881101561064c57858303601f190184528135368b9003601e1901811261060257600080fd5b8a01858101903567ffffffffffffffff81111561061e57600080fd5b80360382131561062d57600080fd5b610638858284610581565b9587019594505050908401906001016105dc565b50909a9950505050505050505050565b600061010061067f83895180516001600160a01b03168252602090810151910152565b60208801516040840152604088015160608401526106b3608084018880516001600160a01b03168252602090810151910152565b6001600160a01b03861660c084015260e083018190526106d68184018587610581565b98975050505050505050565b6000602082840312156106f457600080fd5b8151801515811461070457600080fd5b939250505056fea26469706673582212200a82c60650a3b7e05c896c06a957ff45709423034cec948e67d4193009c7d82b64736f6c63430008140033",
"linkReferences": {},
"deployedLinkReferences": {}
}
declare module "@nomicfoundation/hardhat-viem/types" {
export function deployContract(
contractName: "UniswapRouter",
constructorArgs: [swapRouter_: AbiParameterToPrimitiveType<{"name":"swapRouter_","type":"address"}>],
config?: DeployContractConfig
): Promise<GetContractReturnType<UniswapRouter$Type["abi"]>>;
export function deployContract(
contractName: "contracts/UniswapRouter.sol:UniswapRouter",
constructorArgs: [swapRouter_: AbiParameterToPrimitiveType<{"name":"swapRouter_","type":"address"}>],
config?: DeployContractConfig
): Promise<GetContractReturnType<UniswapRouter$Type["abi"]>>;
export function sendDeploymentTransaction(
contractName: "UniswapRouter",
constructorArgs: [swapRouter_: AbiParameterToPrimitiveType<{"name":"swapRouter_","type":"address"}>],
config?: SendDeploymentTransactionConfig
): Promise<{
contract: GetContractReturnType<UniswapRouter$Type["abi"]>;
deploymentTransaction: GetTransactionReturnType;
}>;
export function sendDeploymentTransaction(
contractName: "contracts/UniswapRouter.sol:UniswapRouter",
constructorArgs: [swapRouter_: AbiParameterToPrimitiveType<{"name":"swapRouter_","type":"address"}>],
config?: SendDeploymentTransactionConfig
): Promise<{
contract: GetContractReturnType<UniswapRouter$Type["abi"]>;
deploymentTransaction: GetTransactionReturnType;
}>;
export function getContractAt(
contractName: "UniswapRouter",
address: Address,
config?: GetContractAtConfig
): Promise<GetContractReturnType<UniswapRouter$Type["abi"]>>;
export function getContractAt(
contractName: "contracts/UniswapRouter.sol:UniswapRouter",
address: Address,
config?: GetContractAtConfig
): Promise<GetContractReturnType<UniswapRouter$Type["abi"]>>;
}