aave-protocol-v2/types/MockOneSplitFactory.ts
2020-06-03 12:23:21 +02:00

386 lines
14 KiB
TypeScript

/* Generated by ts-generator ver. 0.0.8 */
/* tslint:disable */
import { Contract, ContractFactory, Signer } from "ethers";
import { Provider } from "ethers/providers";
import { UnsignedTransaction } from "ethers/utils/transaction";
import { TransactionOverrides } from ".";
import { MockOneSplit } from "./MockOneSplit";
export class MockOneSplitFactory extends ContractFactory {
constructor(signer?: Signer) {
super(_abi, _bytecode, signer);
}
deploy(
_tokenToBurn: string,
overrides?: TransactionOverrides
): Promise<MockOneSplit> {
return super.deploy(_tokenToBurn, overrides) as Promise<MockOneSplit>;
}
getDeployTransaction(
_tokenToBurn: string,
overrides?: TransactionOverrides
): UnsignedTransaction {
return super.getDeployTransaction(_tokenToBurn, overrides);
}
attach(address: string): MockOneSplit {
return super.attach(address) as MockOneSplit;
}
connect(signer: Signer): MockOneSplitFactory {
return super.connect(signer) as MockOneSplitFactory;
}
static connect(
address: string,
signerOrProvider: Signer | Provider
): MockOneSplit {
return new Contract(address, _abi, signerOrProvider) as MockOneSplit;
}
}
const _abi = [
{
inputs: [
{
internalType: "contract MintableERC20",
name: "_tokenToBurn",
type: "address"
}
],
stateMutability: "nonpayable",
type: "constructor"
},
{
inputs: [],
name: "FLAG_AAVE",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_BANCOR",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_BDAI",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_CHAI",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_COMPOUND",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_FULCRUM",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_IEARN",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_KYBER",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_KYBER_BANCOR_RESERVE",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_KYBER_OASIS_RESERVE",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_KYBER_UNISWAP_RESERVE",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_MULTI_PATH_ETH",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_OASIS",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_SMART_TOKEN",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FLAG_UNISWAP",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [
{
internalType: "contract IERC20",
name: "fromToken",
type: "address"
},
{
internalType: "contract IERC20",
name: "toToken",
type: "address"
},
{
internalType: "uint256",
name: "amount",
type: "uint256"
},
{
internalType: "uint256",
name: "parts",
type: "uint256"
},
{
internalType: "uint256",
name: "disableFlags",
type: "uint256"
}
],
name: "getExpectedReturn",
outputs: [
{
internalType: "uint256",
name: "returnAmount",
type: "uint256"
},
{
internalType: "uint256[]",
name: "distribution",
type: "uint256[]"
}
],
stateMutability: "view",
type: "function"
},
{
inputs: [
{
internalType: "contract IERC20",
name: "fromToken",
type: "address"
},
{
internalType: "contract IERC20",
name: "toToken",
type: "address"
},
{
internalType: "uint256",
name: "amount",
type: "uint256"
},
{
internalType: "uint256",
name: "minReturn",
type: "uint256"
},
{
internalType: "uint256",
name: "parts",
type: "uint256"
},
{
internalType: "uint256",
name: "disableFlags",
type: "uint256"
}
],
name: "goodSwap",
outputs: [],
stateMutability: "payable",
type: "function"
},
{
inputs: [
{
internalType: "contract IERC20",
name: "fromToken",
type: "address"
},
{
internalType: "contract IERC20",
name: "toToken",
type: "address"
},
{
internalType: "uint256",
name: "amount",
type: "uint256"
},
{
internalType: "uint256",
name: "minReturn",
type: "uint256"
},
{
internalType: "uint256[]",
name: "distribution",
type: "uint256[]"
},
{
internalType: "uint256",
name: "disableFlags",
type: "uint256"
}
],
name: "swap",
outputs: [],
stateMutability: "payable",
type: "function"
},
{
inputs: [],
name: "tokenToBurn",
outputs: [
{
internalType: "contract MintableERC20",
name: "",
type: "address"
}
],
stateMutability: "view",
type: "function"
}
];
const _bytecode =
"0x608060405234801561001057600080fd5b50604051610ea4380380610ea48339818101604052602081101561003357600080fd5b8101908080519060200190929190505050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610e10806100946000396000f3fe6080604052600436106101145760003560e01c806373eb69d4116100a0578063ceb5411511610064578063ceb54115146104c0578063df911663146104eb578063e2a7515e14610516578063eb16df2a1461062c578063f64a9a491461065757610114565b806373eb69d4146103e9578063833665771461041457806383a0118f1461043f5780638c6c11f21461046a578063a9d3589f1461049557610114565b80634f1b86eb116100e75780634f1b86eb1461028557806358886253146102dc5780635cfcee28146103075780636b9589aa14610332578063702bf8fa146103be57610114565b8063085e2c5b1461011957806311c0c0f7146102045780633c1a62dc1461022f5780634c914a4e1461025a575b600080fd5b34801561012557600080fd5b506101a6600480360360a081101561013c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019092919080359060200190929190505050610682565b6040518083815260200180602001828103825283818151815260200191508051906020019060200280838360005b838110156101ef5780820151818401526020810190506101d4565b50505050905001935050505060405180910390f35b34801561021057600080fd5b506102196106e0565b6040518082815260200191505060405180910390f35b34801561023b57600080fd5b506102446106e6565b6040518082815260200191505060405180910390f35b34801561026657600080fd5b5061026f6106eb565b6040518082815260200191505060405180910390f35b34801561029157600080fd5b5061029a6106f0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102e857600080fd5b506102f1610715565b6040518082815260200191505060405180910390f35b34801561031357600080fd5b5061031c61071b565b6040518082815260200191505060405180910390f35b6103bc600480360360c081101561034857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291908035906020019092919080359060200190929190505050610720565b005b3480156103ca57600080fd5b506103d3610911565b6040518082815260200191505060405180910390f35b3480156103f557600080fd5b506103fe61091a565b6040518082815260200191505060405180910390f35b34801561042057600080fd5b50610429610920565b6040518082815260200191505060405180910390f35b34801561044b57600080fd5b50610454610925565b6040518082815260200191505060405180910390f35b34801561047657600080fd5b5061047f61092b565b6040518082815260200191505060405180910390f35b3480156104a157600080fd5b506104aa610930565b6040518082815260200191505060405180910390f35b3480156104cc57600080fd5b506104d5610939565b6040518082815260200191505060405180910390f35b3480156104f757600080fd5b5061050061093e565b6040518082815260200191505060405180910390f35b61062a600480360360c081101561052c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291908035906020019064010000000081111561059d57600080fd5b8201836020820111156105af57600080fd5b803590602001918460208302840111640100000000831117156105d157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f82011690508083019250505050505050919291929080359060200190929190505050610947565b005b34801561063857600080fd5b5061064161094f565b6040518082815260200191505060405180910390f35b34801561066357600080fd5b5061066c610954565b6040518082815260200191505060405180910390f35b6000606060008067ffffffffffffffff8111801561069f57600080fd5b506040519080825280602002602001820160405280156106ce5781602001602082028036833780820191505090505b50819150915091509550959350505050565b61010081565b602081565b604081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61020081565b601081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a0712d6869021e19e0c9bab24000006040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b15801561079e57600080fd5b505af11580156107b2573d6000803e3d6000fd5b505050506040513d60208110156107c857600080fd5b810190808051906020019092919050505061084b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f54524144455f574954485f48494e542e205265766572746564206d696e74282981525060200191505060405180910390fd5b610853610959565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16146108b3576108b23330868973ffffffffffffffffffffffffffffffffffffffff16610975909392919063ffffffff16565b5b6109093369021e19e0c9bab24000006000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a629092919063ffffffff16565b505050505050565b64010000000081565b61080081565b608081565b61040081565b600881565b64040000000081565b600281565b64020000000081565b505050505050565b600181565b600481565b600073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee905090565b610a5c846323b872dd60e01b858585604051602401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050610b1a565b50505050565b610b158363a9059cbb60e01b8484604051602401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050610b1a565b505050565b610b398273ffffffffffffffffffffffffffffffffffffffff16610d65565b610bab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e74726163740081525060200191505060405180910390fd5b600060608373ffffffffffffffffffffffffffffffffffffffff16836040518082805190602001908083835b60208310610bfa5780518252602082019150602081019050602083039250610bd7565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610c5c576040519150601f19603f3d011682016040523d82523d6000602084013e610c61565b606091505b509150915081610cd9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656481525060200191505060405180910390fd5b600081511115610d5f57808060200190516020811015610cf857600080fd5b8101908080519060200190929190505050610d5e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180610db1602a913960400191505060405180910390fd5b5b50505050565b60008060007fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47060001b9050833f9150808214158015610da757506000801b8214155b9250505091905056fe5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a264697066735822122071e3b3c26cfa34623b3eb8d3120f9e0c1c97b03c3342a9c8d4e08df39e28532b64736f6c63430006080033";