@moonwell-fi/moonwell-sdk
Version:
TypeScript Interface for Moonwell
1,105 lines (1,104 loc) • 22.4 kB
text/typescript
export default [
{
inputs: [
{
internalType: "address",
name: "morpho",
type: "address",
},
{
internalType: "address",
name: "weth",
type: "address",
},
],
stateMutability: "nonpayable",
type: "constructor",
},
{
inputs: [],
name: "UnsafeCast",
type: "error",
},
{
inputs: [],
name: "MORPHO",
outputs: [
{
internalType: "contract IMorpho",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "WRAPPED_NATIVE",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
components: [
{
components: [
{
internalType: "address",
name: "token",
type: "address",
},
{
internalType: "uint160",
name: "amount",
type: "uint160",
},
{
internalType: "uint48",
name: "expiration",
type: "uint48",
},
{
internalType: "uint48",
name: "nonce",
type: "uint48",
},
],
internalType: "struct IAllowanceTransfer.PermitDetails",
name: "details",
type: "tuple",
},
{
internalType: "address",
name: "spender",
type: "address",
},
{
internalType: "uint256",
name: "sigDeadline",
type: "uint256",
},
],
internalType: "struct IAllowanceTransfer.PermitSingle",
name: "permitSingle",
type: "tuple",
},
{
internalType: "bytes",
name: "signature",
type: "bytes",
},
{
internalType: "bool",
name: "skipRevert",
type: "bool",
},
],
name: "approve2",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "asset",
type: "address",
},
{
internalType: "address",
name: "recipient",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "erc20Transfer",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "asset",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "erc20TransferFrom",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "wrapper",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "erc20WrapperDepositFor",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "wrapper",
type: "address",
},
{
internalType: "address",
name: "account",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "erc20WrapperWithdrawTo",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "vault",
type: "address",
},
{
internalType: "uint256",
name: "assets",
type: "uint256",
},
{
internalType: "uint256",
name: "minShares",
type: "uint256",
},
{
internalType: "address",
name: "receiver",
type: "address",
},
],
name: "erc4626Deposit",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "vault",
type: "address",
},
{
internalType: "uint256",
name: "shares",
type: "uint256",
},
{
internalType: "uint256",
name: "maxAssets",
type: "uint256",
},
{
internalType: "address",
name: "receiver",
type: "address",
},
],
name: "erc4626Mint",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "vault",
type: "address",
},
{
internalType: "uint256",
name: "shares",
type: "uint256",
},
{
internalType: "uint256",
name: "minAssets",
type: "uint256",
},
{
internalType: "address",
name: "receiver",
type: "address",
},
{
internalType: "address",
name: "owner",
type: "address",
},
],
name: "erc4626Redeem",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "vault",
type: "address",
},
{
internalType: "uint256",
name: "assets",
type: "uint256",
},
{
internalType: "uint256",
name: "maxShares",
type: "uint256",
},
{
internalType: "address",
name: "receiver",
type: "address",
},
{
internalType: "address",
name: "owner",
type: "address",
},
],
name: "erc4626Withdraw",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [],
name: "initiator",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
components: [
{
internalType: "address",
name: "loanToken",
type: "address",
},
{
internalType: "address",
name: "collateralToken",
type: "address",
},
{
internalType: "address",
name: "oracle",
type: "address",
},
{
internalType: "address",
name: "irm",
type: "address",
},
{
internalType: "uint256",
name: "lltv",
type: "uint256",
},
],
internalType: "struct MarketParams",
name: "marketParams",
type: "tuple",
},
{
internalType: "uint256",
name: "assets",
type: "uint256",
},
{
internalType: "uint256",
name: "shares",
type: "uint256",
},
{
internalType: "uint256",
name: "slippageAmount",
type: "uint256",
},
{
internalType: "address",
name: "receiver",
type: "address",
},
],
name: "morphoBorrow",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "token",
type: "address",
},
{
internalType: "uint256",
name: "assets",
type: "uint256",
},
{
internalType: "bytes",
name: "data",
type: "bytes",
},
],
name: "morphoFlashLoan",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
components: [
{
internalType: "address",
name: "loanToken",
type: "address",
},
{
internalType: "address",
name: "collateralToken",
type: "address",
},
{
internalType: "address",
name: "oracle",
type: "address",
},
{
internalType: "address",
name: "irm",
type: "address",
},
{
internalType: "uint256",
name: "lltv",
type: "uint256",
},
],
internalType: "struct MarketParams",
name: "marketParams",
type: "tuple",
},
{
internalType: "uint256",
name: "assets",
type: "uint256",
},
{
internalType: "uint256",
name: "shares",
type: "uint256",
},
{
internalType: "uint256",
name: "slippageAmount",
type: "uint256",
},
{
internalType: "address",
name: "onBehalf",
type: "address",
},
{
internalType: "bytes",
name: "data",
type: "bytes",
},
],
name: "morphoRepay",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
components: [
{
internalType: "address",
name: "authorizer",
type: "address",
},
{
internalType: "address",
name: "authorized",
type: "address",
},
{
internalType: "bool",
name: "isAuthorized",
type: "bool",
},
{
internalType: "uint256",
name: "nonce",
type: "uint256",
},
{
internalType: "uint256",
name: "deadline",
type: "uint256",
},
],
internalType: "struct Authorization",
name: "authorization",
type: "tuple",
},
{
components: [
{
internalType: "uint8",
name: "v",
type: "uint8",
},
{
internalType: "bytes32",
name: "r",
type: "bytes32",
},
{
internalType: "bytes32",
name: "s",
type: "bytes32",
},
],
internalType: "struct Signature",
name: "signature",
type: "tuple",
},
{
internalType: "bool",
name: "skipRevert",
type: "bool",
},
],
name: "morphoSetAuthorizationWithSig",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
components: [
{
internalType: "address",
name: "loanToken",
type: "address",
},
{
internalType: "address",
name: "collateralToken",
type: "address",
},
{
internalType: "address",
name: "oracle",
type: "address",
},
{
internalType: "address",
name: "irm",
type: "address",
},
{
internalType: "uint256",
name: "lltv",
type: "uint256",
},
],
internalType: "struct MarketParams",
name: "marketParams",
type: "tuple",
},
{
internalType: "uint256",
name: "assets",
type: "uint256",
},
{
internalType: "uint256",
name: "shares",
type: "uint256",
},
{
internalType: "uint256",
name: "slippageAmount",
type: "uint256",
},
{
internalType: "address",
name: "onBehalf",
type: "address",
},
{
internalType: "bytes",
name: "data",
type: "bytes",
},
],
name: "morphoSupply",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
components: [
{
internalType: "address",
name: "loanToken",
type: "address",
},
{
internalType: "address",
name: "collateralToken",
type: "address",
},
{
internalType: "address",
name: "oracle",
type: "address",
},
{
internalType: "address",
name: "irm",
type: "address",
},
{
internalType: "uint256",
name: "lltv",
type: "uint256",
},
],
internalType: "struct MarketParams",
name: "marketParams",
type: "tuple",
},
{
internalType: "uint256",
name: "assets",
type: "uint256",
},
{
internalType: "address",
name: "onBehalf",
type: "address",
},
{
internalType: "bytes",
name: "data",
type: "bytes",
},
],
name: "morphoSupplyCollateral",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
components: [
{
internalType: "address",
name: "loanToken",
type: "address",
},
{
internalType: "address",
name: "collateralToken",
type: "address",
},
{
internalType: "address",
name: "oracle",
type: "address",
},
{
internalType: "address",
name: "irm",
type: "address",
},
{
internalType: "uint256",
name: "lltv",
type: "uint256",
},
],
internalType: "struct MarketParams",
name: "marketParams",
type: "tuple",
},
{
internalType: "uint256",
name: "assets",
type: "uint256",
},
{
internalType: "uint256",
name: "shares",
type: "uint256",
},
{
internalType: "uint256",
name: "slippageAmount",
type: "uint256",
},
{
internalType: "address",
name: "receiver",
type: "address",
},
],
name: "morphoWithdraw",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
components: [
{
internalType: "address",
name: "loanToken",
type: "address",
},
{
internalType: "address",
name: "collateralToken",
type: "address",
},
{
internalType: "address",
name: "oracle",
type: "address",
},
{
internalType: "address",
name: "irm",
type: "address",
},
{
internalType: "uint256",
name: "lltv",
type: "uint256",
},
],
internalType: "struct MarketParams",
name: "marketParams",
type: "tuple",
},
{
internalType: "uint256",
name: "assets",
type: "uint256",
},
{
internalType: "address",
name: "receiver",
type: "address",
},
],
name: "morphoWithdrawCollateral",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "bytes[]",
name: "data",
type: "bytes[]",
},
],
name: "multicall",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "recipient",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "nativeTransfer",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "bytes",
name: "data",
type: "bytes",
},
],
name: "onMorphoFlashLoan",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "bytes",
name: "data",
type: "bytes",
},
],
name: "onMorphoRepay",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "bytes",
name: "data",
type: "bytes",
},
],
name: "onMorphoSupply",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
{
internalType: "bytes",
name: "data",
type: "bytes",
},
],
name: "onMorphoSupplyCollateral",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "asset",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
{
internalType: "uint256",
name: "deadline",
type: "uint256",
},
{
internalType: "uint8",
name: "v",
type: "uint8",
},
{
internalType: "bytes32",
name: "r",
type: "bytes32",
},
{
internalType: "bytes32",
name: "s",
type: "bytes32",
},
{
internalType: "bool",
name: "skipRevert",
type: "bool",
},
],
name: "permit",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "publicAllocator",
type: "address",
},
{
internalType: "address",
name: "vault",
type: "address",
},
{
internalType: "uint256",
name: "value",
type: "uint256",
},
{
components: [
{
components: [
{
internalType: "address",
name: "loanToken",
type: "address",
},
{
internalType: "address",
name: "collateralToken",
type: "address",
},
{
internalType: "address",
name: "oracle",
type: "address",
},
{
internalType: "address",
name: "irm",
type: "address",
},
{
internalType: "uint256",
name: "lltv",
type: "uint256",
},
],
internalType: "struct MarketParams",
name: "marketParams",
type: "tuple",
},
{
internalType: "uint128",
name: "amount",
type: "uint128",
},
],
internalType: "struct Withdrawal[]",
name: "withdrawals",
type: "tuple[]",
},
{
components: [
{
internalType: "address",
name: "loanToken",
type: "address",
},
{
internalType: "address",
name: "collateralToken",
type: "address",
},
{
internalType: "address",
name: "oracle",
type: "address",
},
{
internalType: "address",
name: "irm",
type: "address",
},
{
internalType: "uint256",
name: "lltv",
type: "uint256",
},
],
internalType: "struct MarketParams",
name: "supplyMarketParams",
type: "tuple",
},
],
name: "reallocateTo",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "asset",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "transferFrom2",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "unwrapNative",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "distributor",
type: "address",
},
{
internalType: "address",
name: "account",
type: "address",
},
{
internalType: "address",
name: "reward",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
{
internalType: "bytes32[]",
name: "proof",
type: "bytes32[]",
},
{
internalType: "bool",
name: "skipRevert",
type: "bool",
},
],
name: "urdClaim",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "wrapNative",
outputs: [],
stateMutability: "payable",
type: "function",
},
{
stateMutability: "payable",
type: "receive",
},
] as const;