Completed clean root directory structure: - Root now contains only: .git, .env, docs/, orig/ - Moved all remaining files and directories to orig/: - Config files (.claude, .dockerignore, .drone.yml, etc.) - All .env variants (except active .env) - Git config (.gitconfig, .github, .gitignore, etc.) - Tool configs (.golangci.yml, .revive.toml, etc.) - Documentation (*.md files, @prompts) - Build files (Dockerfiles, Makefile, go.mod, go.sum) - Docker compose files - All source directories (scripts, tests, tools, etc.) - Runtime directories (logs, monitoring, reports) - Dependency files (node_modules, lib, cache) - Special files (--delete) - Removed empty runtime directories (bin/, data/) V2 structure is now clean: - docs/planning/ - V2 planning documents - orig/ - Complete V1 codebase preserved - .env - Active environment config (not in git) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
224 lines
11 KiB
Go
224 lines
11 KiB
Go
// Code generated - DO NOT EDIT.
|
|
// This file is a generated binding and any manual changes will be lost.
|
|
|
|
package balancer
|
|
|
|
import (
|
|
"errors"
|
|
"math/big"
|
|
"strings"
|
|
|
|
ethereum "github.com/ethereum/go-ethereum"
|
|
"github.com/ethereum/go-ethereum/accounts/abi"
|
|
"github.com/ethereum/go-ethereum/accounts/abi/bind"
|
|
"github.com/ethereum/go-ethereum/common"
|
|
"github.com/ethereum/go-ethereum/core/types"
|
|
"github.com/ethereum/go-ethereum/event"
|
|
)
|
|
|
|
// Reference imports to suppress errors if they are not otherwise used.
|
|
var (
|
|
_ = errors.New
|
|
_ = big.NewInt
|
|
_ = strings.NewReader
|
|
_ = ethereum.NotFound
|
|
_ = bind.Bind
|
|
_ = common.Big1
|
|
_ = types.BloomLookup
|
|
_ = event.NewSubscription
|
|
_ = abi.ConvertType
|
|
)
|
|
|
|
// VaultMetaData contains all meta data concerning the Vault contract.
|
|
var VaultMetaData = &bind.MetaData{
|
|
ABI: "[{\"inputs\":[{\"internalType\":\"contractIERC20[]\",\"name\":\"tokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"userData\",\"type\":\"bytes\"}],\"name\":\"flashLoan\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contractIERC20[]\",\"name\":\"tokens\",\"type\":\"address[]\"},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"feeAmounts\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"userData\",\"type\":\"bytes\"}],\"name\":\"receiveFlashLoan\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]",
|
|
}
|
|
|
|
// VaultABI is the input ABI used to generate the binding from.
|
|
// Deprecated: Use VaultMetaData.ABI instead.
|
|
var VaultABI = VaultMetaData.ABI
|
|
|
|
// Vault is an auto generated Go binding around an Ethereum contract.
|
|
type Vault struct {
|
|
VaultCaller // Read-only binding to the contract
|
|
VaultTransactor // Write-only binding to the contract
|
|
VaultFilterer // Log filterer for contract events
|
|
}
|
|
|
|
// VaultCaller is an auto generated read-only Go binding around an Ethereum contract.
|
|
type VaultCaller struct {
|
|
contract *bind.BoundContract // Generic contract wrapper for the low level calls
|
|
}
|
|
|
|
// VaultTransactor is an auto generated write-only Go binding around an Ethereum contract.
|
|
type VaultTransactor struct {
|
|
contract *bind.BoundContract // Generic contract wrapper for the low level calls
|
|
}
|
|
|
|
// VaultFilterer is an auto generated log filtering Go binding around an Ethereum contract events.
|
|
type VaultFilterer struct {
|
|
contract *bind.BoundContract // Generic contract wrapper for the low level calls
|
|
}
|
|
|
|
// VaultSession is an auto generated Go binding around an Ethereum contract,
|
|
// with pre-set call and transact options.
|
|
type VaultSession struct {
|
|
Contract *Vault // 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
|
|
}
|
|
|
|
// VaultCallerSession is an auto generated read-only Go binding around an Ethereum contract,
|
|
// with pre-set call options.
|
|
type VaultCallerSession struct {
|
|
Contract *VaultCaller // Generic contract caller binding to set the session for
|
|
CallOpts bind.CallOpts // Call options to use throughout this session
|
|
}
|
|
|
|
// VaultTransactorSession is an auto generated write-only Go binding around an Ethereum contract,
|
|
// with pre-set transact options.
|
|
type VaultTransactorSession struct {
|
|
Contract *VaultTransactor // Generic contract transactor binding to set the session for
|
|
TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
|
|
}
|
|
|
|
// VaultRaw is an auto generated low-level Go binding around an Ethereum contract.
|
|
type VaultRaw struct {
|
|
Contract *Vault // Generic contract binding to access the raw methods on
|
|
}
|
|
|
|
// VaultCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.
|
|
type VaultCallerRaw struct {
|
|
Contract *VaultCaller // Generic read-only contract binding to access the raw methods on
|
|
}
|
|
|
|
// VaultTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.
|
|
type VaultTransactorRaw struct {
|
|
Contract *VaultTransactor // Generic write-only contract binding to access the raw methods on
|
|
}
|
|
|
|
// NewVault creates a new instance of Vault, bound to a specific deployed contract.
|
|
func NewVault(address common.Address, backend bind.ContractBackend) (*Vault, error) {
|
|
contract, err := bindVault(address, backend, backend, backend)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return &Vault{VaultCaller: VaultCaller{contract: contract}, VaultTransactor: VaultTransactor{contract: contract}, VaultFilterer: VaultFilterer{contract: contract}}, nil
|
|
}
|
|
|
|
// NewVaultCaller creates a new read-only instance of Vault, bound to a specific deployed contract.
|
|
func NewVaultCaller(address common.Address, caller bind.ContractCaller) (*VaultCaller, error) {
|
|
contract, err := bindVault(address, caller, nil, nil)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return &VaultCaller{contract: contract}, nil
|
|
}
|
|
|
|
// NewVaultTransactor creates a new write-only instance of Vault, bound to a specific deployed contract.
|
|
func NewVaultTransactor(address common.Address, transactor bind.ContractTransactor) (*VaultTransactor, error) {
|
|
contract, err := bindVault(address, nil, transactor, nil)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return &VaultTransactor{contract: contract}, nil
|
|
}
|
|
|
|
// NewVaultFilterer creates a new log filterer instance of Vault, bound to a specific deployed contract.
|
|
func NewVaultFilterer(address common.Address, filterer bind.ContractFilterer) (*VaultFilterer, error) {
|
|
contract, err := bindVault(address, nil, nil, filterer)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return &VaultFilterer{contract: contract}, nil
|
|
}
|
|
|
|
// bindVault binds a generic wrapper to an already deployed contract.
|
|
func bindVault(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) {
|
|
parsed, err := VaultMetaData.GetAbi()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil
|
|
}
|
|
|
|
// 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 (_Vault *VaultRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error {
|
|
return _Vault.Contract.VaultCaller.contract.Call(opts, result, method, params...)
|
|
}
|
|
|
|
// Transfer initiates a plain transaction to move funds to the contract, calling
|
|
// its default method if one is available.
|
|
func (_Vault *VaultRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
|
|
return _Vault.Contract.VaultTransactor.contract.Transfer(opts)
|
|
}
|
|
|
|
// Transact invokes the (paid) contract method with params as input values.
|
|
func (_Vault *VaultRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
|
|
return _Vault.Contract.VaultTransactor.contract.Transact(opts, method, params...)
|
|
}
|
|
|
|
// 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 (_Vault *VaultCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error {
|
|
return _Vault.Contract.contract.Call(opts, result, method, params...)
|
|
}
|
|
|
|
// Transfer initiates a plain transaction to move funds to the contract, calling
|
|
// its default method if one is available.
|
|
func (_Vault *VaultTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
|
|
return _Vault.Contract.contract.Transfer(opts)
|
|
}
|
|
|
|
// Transact invokes the (paid) contract method with params as input values.
|
|
func (_Vault *VaultTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
|
|
return _Vault.Contract.contract.Transact(opts, method, params...)
|
|
}
|
|
|
|
// FlashLoan is a paid mutator transaction binding the contract method 0x4f80fe10.
|
|
//
|
|
// Solidity: function flashLoan(address[] tokens, uint256[] amounts, address recipient, bytes userData) returns()
|
|
func (_Vault *VaultTransactor) FlashLoan(opts *bind.TransactOpts, tokens []common.Address, amounts []*big.Int, recipient common.Address, userData []byte) (*types.Transaction, error) {
|
|
return _Vault.contract.Transact(opts, "flashLoan", tokens, amounts, recipient, userData)
|
|
}
|
|
|
|
// FlashLoan is a paid mutator transaction binding the contract method 0x4f80fe10.
|
|
//
|
|
// Solidity: function flashLoan(address[] tokens, uint256[] amounts, address recipient, bytes userData) returns()
|
|
func (_Vault *VaultSession) FlashLoan(tokens []common.Address, amounts []*big.Int, recipient common.Address, userData []byte) (*types.Transaction, error) {
|
|
return _Vault.Contract.FlashLoan(&_Vault.TransactOpts, tokens, amounts, recipient, userData)
|
|
}
|
|
|
|
// FlashLoan is a paid mutator transaction binding the contract method 0x4f80fe10.
|
|
//
|
|
// Solidity: function flashLoan(address[] tokens, uint256[] amounts, address recipient, bytes userData) returns()
|
|
func (_Vault *VaultTransactorSession) FlashLoan(tokens []common.Address, amounts []*big.Int, recipient common.Address, userData []byte) (*types.Transaction, error) {
|
|
return _Vault.Contract.FlashLoan(&_Vault.TransactOpts, tokens, amounts, recipient, userData)
|
|
}
|
|
|
|
// ReceiveFlashLoan is a paid mutator transaction binding the contract method 0xf04f2707.
|
|
//
|
|
// Solidity: function receiveFlashLoan(address[] tokens, uint256[] amounts, uint256[] feeAmounts, bytes userData) returns()
|
|
func (_Vault *VaultTransactor) ReceiveFlashLoan(opts *bind.TransactOpts, tokens []common.Address, amounts []*big.Int, feeAmounts []*big.Int, userData []byte) (*types.Transaction, error) {
|
|
return _Vault.contract.Transact(opts, "receiveFlashLoan", tokens, amounts, feeAmounts, userData)
|
|
}
|
|
|
|
// ReceiveFlashLoan is a paid mutator transaction binding the contract method 0xf04f2707.
|
|
//
|
|
// Solidity: function receiveFlashLoan(address[] tokens, uint256[] amounts, uint256[] feeAmounts, bytes userData) returns()
|
|
func (_Vault *VaultSession) ReceiveFlashLoan(tokens []common.Address, amounts []*big.Int, feeAmounts []*big.Int, userData []byte) (*types.Transaction, error) {
|
|
return _Vault.Contract.ReceiveFlashLoan(&_Vault.TransactOpts, tokens, amounts, feeAmounts, userData)
|
|
}
|
|
|
|
// ReceiveFlashLoan is a paid mutator transaction binding the contract method 0xf04f2707.
|
|
//
|
|
// Solidity: function receiveFlashLoan(address[] tokens, uint256[] amounts, uint256[] feeAmounts, bytes userData) returns()
|
|
func (_Vault *VaultTransactorSession) ReceiveFlashLoan(tokens []common.Address, amounts []*big.Int, feeAmounts []*big.Int, userData []byte) (*types.Transaction, error) {
|
|
return _Vault.Contract.ReceiveFlashLoan(&_Vault.TransactOpts, tokens, amounts, feeAmounts, userData)
|
|
}
|