contract

package
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 31, 2024 License: GPL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ContractABI = ContractMetaData.ABI

ContractABI is the input ABI used to generate the binding from. Deprecated: Use ContractMetaData.ABI instead.

View Source
var ContractMetaData = &bind.MetaData{
	ABI: "[{\"inputs\":[{\"internalType\":\"contractIEntryPoint\",\"name\":\"_entryPoint\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"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\":\"POST_OP_GAS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"unstakeDelaySec\",\"type\":\"uint32\"}],\"name\":\"addStake\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"entryPoint\",\"outputs\":[{\"internalType\":\"contractIEntryPoint\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDeposit\",\"outputs\":[{\"internalType\":\"uint256\",\"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\":\"structUserOperation\",\"name\":\"userOp\",\"type\":\"tuple\"},{\"internalType\":\"uint48\",\"name\":\"validUntil\",\"type\":\"uint48\"},{\"internalType\":\"uint48\",\"name\":\"validAfter\",\"type\":\"uint48\"},{\"internalType\":\"address\",\"name\":\"erc20Token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"exchangeRate\",\"type\":\"uint256\"}],\"name\":\"getHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"paymasterAndData\",\"type\":\"bytes\"}],\"name\":\"parsePaymasterAndData\",\"outputs\":[{\"internalType\":\"uint48\",\"name\":\"validUntil\",\"type\":\"uint48\"},{\"internalType\":\"uint48\",\"name\":\"validAfter\",\"type\":\"uint48\"},{\"internalType\":\"address\",\"name\":\"erc20Token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"exchangeRate\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enumIPaymaster.PostOpMode\",\"name\":\"mode\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"context\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"actualGasCost\",\"type\":\"uint256\"}],\"name\":\"postOp\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_vault\",\"type\":\"address\"}],\"name\":\"setVault\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_verifier\",\"type\":\"address\"}],\"name\":\"setVerifier\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unlockStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":\"structUserOperation\",\"name\":\"userOp\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"userOpHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"maxCost\",\"type\":\"uint256\"}],\"name\":\"validatePaymasterUserOp\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"context\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"validationData\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"vault\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifier\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"addresspayable\",\"name\":\"withdrawAddress\",\"type\":\"address\"}],\"name\":\"withdrawStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"addresspayable\",\"name\":\"withdrawAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"withdrawTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]",
}

ContractMetaData contains all meta data concerning the Contract contract.

Functions

func EncodePaymasterAndData

func EncodePaymasterAndData(
	data *Data,
	signature []byte,
) ([]byte, error)

func GetHash

func GetHash(
	eth *ethclient.Client,
	op *userop.UserOperation,
	data *Data,
) ([32]byte, error)

func Sign

func Sign(message []byte, signer *signer.EOA) ([]byte, error)

Types

type Contract

type Contract struct {
	ContractCaller     // Read-only binding to the contract
	ContractTransactor // Write-only binding to the contract
	ContractFilterer   // Log filterer for contract events
}

Contract is an auto generated Go binding around an Ethereum contract.

func NewContract

func NewContract(address common.Address, backend bind.ContractBackend) (*Contract, error)

NewContract creates a new instance of Contract, bound to a specific deployed contract.

type ContractCaller

type ContractCaller struct {
	// contains filtered or unexported fields
}

ContractCaller is an auto generated read-only Go binding around an Ethereum contract.

func NewContractCaller

func NewContractCaller(address common.Address, caller bind.ContractCaller) (*ContractCaller, error)

NewContractCaller creates a new read-only instance of Contract, bound to a specific deployed contract.

func (*ContractCaller) EntryPoint

func (_Contract *ContractCaller) EntryPoint(opts *bind.CallOpts) (common.Address, error)

EntryPoint is a free data retrieval call binding the contract method 0xb0d691fe.

Solidity: function entryPoint() view returns(address)

func (*ContractCaller) GetDeposit

func (_Contract *ContractCaller) GetDeposit(opts *bind.CallOpts) (*big.Int, error)

GetDeposit is a free data retrieval call binding the contract method 0xc399ec88.

Solidity: function getDeposit() view returns(uint256)

func (*ContractCaller) GetHash

func (_Contract *ContractCaller) GetHash(opts *bind.CallOpts, userOp UserOperation, validUntil *big.Int, validAfter *big.Int, erc20Token common.Address, exchangeRate *big.Int) ([32]byte, error)

GetHash is a free data retrieval call binding the contract method 0x290da2ad.

Solidity: function getHash((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes) userOp, uint48 validUntil, uint48 validAfter, address erc20Token, uint256 exchangeRate) view returns(bytes32)

func (*ContractCaller) Owner

func (_Contract *ContractCaller) Owner(opts *bind.CallOpts) (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() view returns(address)

func (*ContractCaller) POSTOPGAS

func (_Contract *ContractCaller) POSTOPGAS(opts *bind.CallOpts) (*big.Int, error)

POSTOPGAS is a free data retrieval call binding the contract method 0xb8202d8f.

Solidity: function POST_OP_GAS() view returns(uint256)

func (*ContractCaller) ParsePaymasterAndData

func (_Contract *ContractCaller) ParsePaymasterAndData(opts *bind.CallOpts, paymasterAndData []byte) (struct {
	ValidUntil   *big.Int
	ValidAfter   *big.Int
	Erc20Token   common.Address
	ExchangeRate *big.Int
	Signature    []byte
}, error)

ParsePaymasterAndData is a free data retrieval call binding the contract method 0x94d4ad60.

Solidity: function parsePaymasterAndData(bytes paymasterAndData) pure returns(uint48 validUntil, uint48 validAfter, address erc20Token, uint256 exchangeRate, bytes signature)

func (*ContractCaller) Vault

func (_Contract *ContractCaller) Vault(opts *bind.CallOpts) (common.Address, error)

Vault is a free data retrieval call binding the contract method 0xfbfa77cf.

Solidity: function vault() view returns(address)

func (*ContractCaller) Verifier

func (_Contract *ContractCaller) Verifier(opts *bind.CallOpts) (common.Address, error)

Verifier is a free data retrieval call binding the contract method 0x2b7ac3f3.

Solidity: function verifier() view returns(address)

type ContractCallerRaw

type ContractCallerRaw struct {
	Contract *ContractCaller // Generic read-only contract binding to access the raw methods on
}

ContractCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.

func (*ContractCallerRaw) Call

func (_Contract *ContractCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

type ContractCallerSession

type ContractCallerSession struct {
	Contract *ContractCaller // Generic contract caller binding to set the session for
	CallOpts bind.CallOpts   // Call options to use throughout this session
}

ContractCallerSession is an auto generated read-only Go binding around an Ethereum contract, with pre-set call options.

func (*ContractCallerSession) EntryPoint

func (_Contract *ContractCallerSession) EntryPoint() (common.Address, error)

EntryPoint is a free data retrieval call binding the contract method 0xb0d691fe.

Solidity: function entryPoint() view returns(address)

func (*ContractCallerSession) GetDeposit

func (_Contract *ContractCallerSession) GetDeposit() (*big.Int, error)

GetDeposit is a free data retrieval call binding the contract method 0xc399ec88.

Solidity: function getDeposit() view returns(uint256)

func (*ContractCallerSession) GetHash

func (_Contract *ContractCallerSession) GetHash(userOp UserOperation, validUntil *big.Int, validAfter *big.Int, erc20Token common.Address, exchangeRate *big.Int) ([32]byte, error)

GetHash is a free data retrieval call binding the contract method 0x290da2ad.

Solidity: function getHash((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes) userOp, uint48 validUntil, uint48 validAfter, address erc20Token, uint256 exchangeRate) view returns(bytes32)

func (*ContractCallerSession) Owner

func (_Contract *ContractCallerSession) Owner() (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() view returns(address)

func (*ContractCallerSession) POSTOPGAS

func (_Contract *ContractCallerSession) POSTOPGAS() (*big.Int, error)

POSTOPGAS is a free data retrieval call binding the contract method 0xb8202d8f.

Solidity: function POST_OP_GAS() view returns(uint256)

func (*ContractCallerSession) ParsePaymasterAndData

func (_Contract *ContractCallerSession) ParsePaymasterAndData(paymasterAndData []byte) (struct {
	ValidUntil   *big.Int
	ValidAfter   *big.Int
	Erc20Token   common.Address
	ExchangeRate *big.Int
	Signature    []byte
}, error)

ParsePaymasterAndData is a free data retrieval call binding the contract method 0x94d4ad60.

Solidity: function parsePaymasterAndData(bytes paymasterAndData) pure returns(uint48 validUntil, uint48 validAfter, address erc20Token, uint256 exchangeRate, bytes signature)

func (*ContractCallerSession) Vault

func (_Contract *ContractCallerSession) Vault() (common.Address, error)

Vault is a free data retrieval call binding the contract method 0xfbfa77cf.

Solidity: function vault() view returns(address)

func (*ContractCallerSession) Verifier

func (_Contract *ContractCallerSession) Verifier() (common.Address, error)

Verifier is a free data retrieval call binding the contract method 0x2b7ac3f3.

Solidity: function verifier() view returns(address)

type ContractFilterer

type ContractFilterer struct {
	// contains filtered or unexported fields
}

ContractFilterer is an auto generated log filtering Go binding around an Ethereum contract events.

func NewContractFilterer

func NewContractFilterer(address common.Address, filterer bind.ContractFilterer) (*ContractFilterer, error)

NewContractFilterer creates a new log filterer instance of Contract, bound to a specific deployed contract.

func (*ContractFilterer) FilterOwnershipTransferred

func (_Contract *ContractFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*ContractOwnershipTransferredIterator, error)

FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.

Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)

func (*ContractFilterer) ParseOwnershipTransferred

func (_Contract *ContractFilterer) ParseOwnershipTransferred(log types.Log) (*ContractOwnershipTransferred, error)

ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.

Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)

func (*ContractFilterer) WatchOwnershipTransferred

func (_Contract *ContractFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *ContractOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error)

WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.

Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)

type ContractOwnershipTransferred

type ContractOwnershipTransferred struct {
	PreviousOwner common.Address
	NewOwner      common.Address
	Raw           types.Log // Blockchain specific contextual infos
}

ContractOwnershipTransferred represents a OwnershipTransferred event raised by the Contract contract.

type ContractOwnershipTransferredIterator

type ContractOwnershipTransferredIterator struct {
	Event *ContractOwnershipTransferred // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

ContractOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the Contract contract.

func (*ContractOwnershipTransferredIterator) Close

Close terminates the iteration process, releasing any pending underlying resources.

func (*ContractOwnershipTransferredIterator) Error

Error returns any retrieval or parsing error occurred during filtering.

func (*ContractOwnershipTransferredIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type ContractRaw

type ContractRaw struct {
	Contract *Contract // Generic contract binding to access the raw methods on
}

ContractRaw is an auto generated low-level Go binding around an Ethereum contract.

func (*ContractRaw) Call

func (_Contract *ContractRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

func (*ContractRaw) Transact

func (_Contract *ContractRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*ContractRaw) Transfer

func (_Contract *ContractRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type ContractSession

type ContractSession struct {
	Contract     *Contract         // Generic contract binding to set the session for
	CallOpts     bind.CallOpts     // Call options to use throughout this session
	TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
}

ContractSession is an auto generated Go binding around an Ethereum contract, with pre-set call and transact options.

func (*ContractSession) AddStake

func (_Contract *ContractSession) AddStake(unstakeDelaySec uint32) (*types.Transaction, error)

AddStake is a paid mutator transaction binding the contract method 0x0396cb60.

Solidity: function addStake(uint32 unstakeDelaySec) payable returns()

func (*ContractSession) Deposit

func (_Contract *ContractSession) Deposit() (*types.Transaction, error)

Deposit is a paid mutator transaction binding the contract method 0xd0e30db0.

Solidity: function deposit() payable returns()

func (*ContractSession) EntryPoint

func (_Contract *ContractSession) EntryPoint() (common.Address, error)

EntryPoint is a free data retrieval call binding the contract method 0xb0d691fe.

Solidity: function entryPoint() view returns(address)

func (*ContractSession) GetDeposit

func (_Contract *ContractSession) GetDeposit() (*big.Int, error)

GetDeposit is a free data retrieval call binding the contract method 0xc399ec88.

Solidity: function getDeposit() view returns(uint256)

func (*ContractSession) GetHash

func (_Contract *ContractSession) GetHash(userOp UserOperation, validUntil *big.Int, validAfter *big.Int, erc20Token common.Address, exchangeRate *big.Int) ([32]byte, error)

GetHash is a free data retrieval call binding the contract method 0x290da2ad.

Solidity: function getHash((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes) userOp, uint48 validUntil, uint48 validAfter, address erc20Token, uint256 exchangeRate) view returns(bytes32)

func (*ContractSession) Owner

func (_Contract *ContractSession) Owner() (common.Address, error)

Owner is a free data retrieval call binding the contract method 0x8da5cb5b.

Solidity: function owner() view returns(address)

func (*ContractSession) POSTOPGAS

func (_Contract *ContractSession) POSTOPGAS() (*big.Int, error)

POSTOPGAS is a free data retrieval call binding the contract method 0xb8202d8f.

Solidity: function POST_OP_GAS() view returns(uint256)

func (*ContractSession) ParsePaymasterAndData

func (_Contract *ContractSession) ParsePaymasterAndData(paymasterAndData []byte) (struct {
	ValidUntil   *big.Int
	ValidAfter   *big.Int
	Erc20Token   common.Address
	ExchangeRate *big.Int
	Signature    []byte
}, error)

ParsePaymasterAndData is a free data retrieval call binding the contract method 0x94d4ad60.

Solidity: function parsePaymasterAndData(bytes paymasterAndData) pure returns(uint48 validUntil, uint48 validAfter, address erc20Token, uint256 exchangeRate, bytes signature)

func (*ContractSession) PostOp

func (_Contract *ContractSession) PostOp(mode uint8, context []byte, actualGasCost *big.Int) (*types.Transaction, error)

PostOp is a paid mutator transaction binding the contract method 0xa9a23409.

Solidity: function postOp(uint8 mode, bytes context, uint256 actualGasCost) returns()

func (*ContractSession) RenounceOwnership

func (_Contract *ContractSession) RenounceOwnership() (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*ContractSession) SetVault

func (_Contract *ContractSession) SetVault(_vault common.Address) (*types.Transaction, error)

SetVault is a paid mutator transaction binding the contract method 0x6817031b.

Solidity: function setVault(address _vault) returns()

func (*ContractSession) SetVerifier

func (_Contract *ContractSession) SetVerifier(_verifier common.Address) (*types.Transaction, error)

SetVerifier is a paid mutator transaction binding the contract method 0x5437988d.

Solidity: function setVerifier(address _verifier) returns()

func (*ContractSession) TransferOwnership

func (_Contract *ContractSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(address newOwner) returns()

func (*ContractSession) UnlockStake

func (_Contract *ContractSession) UnlockStake() (*types.Transaction, error)

UnlockStake is a paid mutator transaction binding the contract method 0xbb9fe6bf.

Solidity: function unlockStake() returns()

func (*ContractSession) ValidatePaymasterUserOp

func (_Contract *ContractSession) ValidatePaymasterUserOp(userOp UserOperation, userOpHash [32]byte, maxCost *big.Int) (*types.Transaction, error)

ValidatePaymasterUserOp is a paid mutator transaction binding the contract method 0xf465c77e.

Solidity: function validatePaymasterUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes) userOp, bytes32 userOpHash, uint256 maxCost) returns(bytes context, uint256 validationData)

func (*ContractSession) Vault

func (_Contract *ContractSession) Vault() (common.Address, error)

Vault is a free data retrieval call binding the contract method 0xfbfa77cf.

Solidity: function vault() view returns(address)

func (*ContractSession) Verifier

func (_Contract *ContractSession) Verifier() (common.Address, error)

Verifier is a free data retrieval call binding the contract method 0x2b7ac3f3.

Solidity: function verifier() view returns(address)

func (*ContractSession) WithdrawStake

func (_Contract *ContractSession) WithdrawStake(withdrawAddress common.Address) (*types.Transaction, error)

WithdrawStake is a paid mutator transaction binding the contract method 0xc23a5cea.

Solidity: function withdrawStake(address withdrawAddress) returns()

func (*ContractSession) WithdrawTo

func (_Contract *ContractSession) WithdrawTo(withdrawAddress common.Address, amount *big.Int) (*types.Transaction, error)

WithdrawTo is a paid mutator transaction binding the contract method 0x205c2878.

Solidity: function withdrawTo(address withdrawAddress, uint256 amount) returns()

type ContractTransactor

type ContractTransactor struct {
	// contains filtered or unexported fields
}

ContractTransactor is an auto generated write-only Go binding around an Ethereum contract.

func NewContractTransactor

func NewContractTransactor(address common.Address, transactor bind.ContractTransactor) (*ContractTransactor, error)

NewContractTransactor creates a new write-only instance of Contract, bound to a specific deployed contract.

func (*ContractTransactor) AddStake

func (_Contract *ContractTransactor) AddStake(opts *bind.TransactOpts, unstakeDelaySec uint32) (*types.Transaction, error)

AddStake is a paid mutator transaction binding the contract method 0x0396cb60.

Solidity: function addStake(uint32 unstakeDelaySec) payable returns()

func (*ContractTransactor) Deposit

func (_Contract *ContractTransactor) Deposit(opts *bind.TransactOpts) (*types.Transaction, error)

Deposit is a paid mutator transaction binding the contract method 0xd0e30db0.

Solidity: function deposit() payable returns()

func (*ContractTransactor) PostOp

func (_Contract *ContractTransactor) PostOp(opts *bind.TransactOpts, mode uint8, context []byte, actualGasCost *big.Int) (*types.Transaction, error)

PostOp is a paid mutator transaction binding the contract method 0xa9a23409.

Solidity: function postOp(uint8 mode, bytes context, uint256 actualGasCost) returns()

func (*ContractTransactor) RenounceOwnership

func (_Contract *ContractTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*ContractTransactor) SetVault

func (_Contract *ContractTransactor) SetVault(opts *bind.TransactOpts, _vault common.Address) (*types.Transaction, error)

SetVault is a paid mutator transaction binding the contract method 0x6817031b.

Solidity: function setVault(address _vault) returns()

func (*ContractTransactor) SetVerifier

func (_Contract *ContractTransactor) SetVerifier(opts *bind.TransactOpts, _verifier common.Address) (*types.Transaction, error)

SetVerifier is a paid mutator transaction binding the contract method 0x5437988d.

Solidity: function setVerifier(address _verifier) returns()

func (*ContractTransactor) TransferOwnership

func (_Contract *ContractTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(address newOwner) returns()

func (*ContractTransactor) UnlockStake

func (_Contract *ContractTransactor) UnlockStake(opts *bind.TransactOpts) (*types.Transaction, error)

UnlockStake is a paid mutator transaction binding the contract method 0xbb9fe6bf.

Solidity: function unlockStake() returns()

func (*ContractTransactor) ValidatePaymasterUserOp

func (_Contract *ContractTransactor) ValidatePaymasterUserOp(opts *bind.TransactOpts, userOp UserOperation, userOpHash [32]byte, maxCost *big.Int) (*types.Transaction, error)

ValidatePaymasterUserOp is a paid mutator transaction binding the contract method 0xf465c77e.

Solidity: function validatePaymasterUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes) userOp, bytes32 userOpHash, uint256 maxCost) returns(bytes context, uint256 validationData)

func (*ContractTransactor) WithdrawStake

func (_Contract *ContractTransactor) WithdrawStake(opts *bind.TransactOpts, withdrawAddress common.Address) (*types.Transaction, error)

WithdrawStake is a paid mutator transaction binding the contract method 0xc23a5cea.

Solidity: function withdrawStake(address withdrawAddress) returns()

func (*ContractTransactor) WithdrawTo

func (_Contract *ContractTransactor) WithdrawTo(opts *bind.TransactOpts, withdrawAddress common.Address, amount *big.Int) (*types.Transaction, error)

WithdrawTo is a paid mutator transaction binding the contract method 0x205c2878.

Solidity: function withdrawTo(address withdrawAddress, uint256 amount) returns()

type ContractTransactorRaw

type ContractTransactorRaw struct {
	Contract *ContractTransactor // Generic write-only contract binding to access the raw methods on
}

ContractTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.

func (*ContractTransactorRaw) Transact

func (_Contract *ContractTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*ContractTransactorRaw) Transfer

func (_Contract *ContractTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type ContractTransactorSession

type ContractTransactorSession struct {
	Contract     *ContractTransactor // Generic contract transactor binding to set the session for
	TransactOpts bind.TransactOpts   // Transaction auth options to use throughout this session
}

ContractTransactorSession is an auto generated write-only Go binding around an Ethereum contract, with pre-set transact options.

func (*ContractTransactorSession) AddStake

func (_Contract *ContractTransactorSession) AddStake(unstakeDelaySec uint32) (*types.Transaction, error)

AddStake is a paid mutator transaction binding the contract method 0x0396cb60.

Solidity: function addStake(uint32 unstakeDelaySec) payable returns()

func (*ContractTransactorSession) Deposit

func (_Contract *ContractTransactorSession) Deposit() (*types.Transaction, error)

Deposit is a paid mutator transaction binding the contract method 0xd0e30db0.

Solidity: function deposit() payable returns()

func (*ContractTransactorSession) PostOp

func (_Contract *ContractTransactorSession) PostOp(mode uint8, context []byte, actualGasCost *big.Int) (*types.Transaction, error)

PostOp is a paid mutator transaction binding the contract method 0xa9a23409.

Solidity: function postOp(uint8 mode, bytes context, uint256 actualGasCost) returns()

func (*ContractTransactorSession) RenounceOwnership

func (_Contract *ContractTransactorSession) RenounceOwnership() (*types.Transaction, error)

RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.

Solidity: function renounceOwnership() returns()

func (*ContractTransactorSession) SetVault

func (_Contract *ContractTransactorSession) SetVault(_vault common.Address) (*types.Transaction, error)

SetVault is a paid mutator transaction binding the contract method 0x6817031b.

Solidity: function setVault(address _vault) returns()

func (*ContractTransactorSession) SetVerifier

func (_Contract *ContractTransactorSession) SetVerifier(_verifier common.Address) (*types.Transaction, error)

SetVerifier is a paid mutator transaction binding the contract method 0x5437988d.

Solidity: function setVerifier(address _verifier) returns()

func (*ContractTransactorSession) TransferOwnership

func (_Contract *ContractTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error)

TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.

Solidity: function transferOwnership(address newOwner) returns()

func (*ContractTransactorSession) UnlockStake

func (_Contract *ContractTransactorSession) UnlockStake() (*types.Transaction, error)

UnlockStake is a paid mutator transaction binding the contract method 0xbb9fe6bf.

Solidity: function unlockStake() returns()

func (*ContractTransactorSession) ValidatePaymasterUserOp

func (_Contract *ContractTransactorSession) ValidatePaymasterUserOp(userOp UserOperation, userOpHash [32]byte, maxCost *big.Int) (*types.Transaction, error)

ValidatePaymasterUserOp is a paid mutator transaction binding the contract method 0xf465c77e.

Solidity: function validatePaymasterUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes) userOp, bytes32 userOpHash, uint256 maxCost) returns(bytes context, uint256 validationData)

func (*ContractTransactorSession) WithdrawStake

func (_Contract *ContractTransactorSession) WithdrawStake(withdrawAddress common.Address) (*types.Transaction, error)

WithdrawStake is a paid mutator transaction binding the contract method 0xc23a5cea.

Solidity: function withdrawStake(address withdrawAddress) returns()

func (*ContractTransactorSession) WithdrawTo

func (_Contract *ContractTransactorSession) WithdrawTo(withdrawAddress common.Address, amount *big.Int) (*types.Transaction, error)

WithdrawTo is a paid mutator transaction binding the contract method 0x205c2878.

Solidity: function withdrawTo(address withdrawAddress, uint256 amount) returns()

type Data

type Data struct {
	Paymaster    common.Address
	ValidUntil   *big.Int
	ValidAfter   *big.Int
	ERC20Token   common.Address
	ExchangeRate *big.Int
}

func NewData

func NewData(pm common.Address, token common.Address, exchangeRate *big.Int) *Data

type UserOperation

type UserOperation struct {
	Sender               common.Address
	Nonce                *big.Int
	InitCode             []byte
	CallData             []byte
	CallGasLimit         *big.Int
	VerificationGasLimit *big.Int
	PreVerificationGas   *big.Int
	MaxFeePerGas         *big.Int
	MaxPriorityFeePerGas *big.Int
	PaymasterAndData     []byte
	Signature            []byte
}

UserOperation is an auto generated low-level Go binding around an user-defined struct.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL