@morpho-dev/v2-deployment
Version:
Morpho v2 chain configurations for viem
1,127 lines • 34 kB
JavaScript
// Generated ABI for Terms
// This file is auto-generated. Do not edit manually.
export const termsAbi = [
{
type: 'function',
name: 'DOMAIN_TYPEHASH',
inputs: [],
outputs: [
{
name: '',
type: 'bytes32',
internalType: 'bytes32',
},
],
stateMutability: 'view',
},
{
type: 'function',
name: 'LIQUIDATION_INCENTIVE_FACTOR',
inputs: [],
outputs: [
{
name: '',
type: 'uint256',
internalType: 'uint256',
},
],
stateMutability: 'view',
},
{
type: 'function',
name: 'OFFER_TYPEHASH',
inputs: [],
outputs: [
{
name: '',
type: 'bytes32',
internalType: 'bytes32',
},
],
stateMutability: 'view',
},
{
type: 'function',
name: 'ORACLE_PRICE_SCALE',
inputs: [],
outputs: [
{
name: '',
type: 'uint256',
internalType: 'uint256',
},
],
stateMutability: 'view',
},
{
type: 'function',
name: 'bondSharesOf',
inputs: [
{
name: '',
type: 'address',
internalType: 'address',
},
{
name: '',
type: 'bytes32',
internalType: 'bytes32',
},
],
outputs: [
{
name: '',
type: 'uint256',
internalType: 'uint256',
},
],
stateMutability: 'view',
},
{
type: 'function',
name: 'collateralOf',
inputs: [
{
name: '',
type: 'address',
internalType: 'address',
},
{
name: '',
type: 'bytes32',
internalType: 'bytes32',
},
{
name: '',
type: 'address',
internalType: 'address',
},
],
outputs: [
{
name: '',
type: 'uint256',
internalType: 'uint256',
},
],
stateMutability: 'view',
},
{
type: 'function',
name: 'consumed',
inputs: [
{
name: 'user',
type: 'address',
internalType: 'address',
},
{
name: 'nonce',
type: 'uint256',
internalType: 'uint256',
},
],
outputs: [
{
name: '',
type: 'uint256',
internalType: 'uint256',
},
],
stateMutability: 'view',
},
{
type: 'function',
name: 'debtOf',
inputs: [
{
name: '',
type: 'address',
internalType: 'address',
},
{
name: '',
type: 'bytes32',
internalType: 'bytes32',
},
],
outputs: [
{
name: '',
type: 'uint256',
internalType: 'uint256',
},
],
stateMutability: 'view',
},
{
type: 'function',
name: 'liquidate',
inputs: [
{
name: 'term',
type: 'tuple',
internalType: 'struct Term',
components: [
{
name: 'loanToken',
type: 'address',
internalType: 'address',
},
{
name: 'collaterals',
type: 'tuple[]',
internalType: 'struct Collateral[]',
components: [
{
name: 'token',
type: 'address',
internalType: 'address',
},
{
name: 'lltv',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'oracle',
type: 'address',
internalType: 'address',
},
],
},
{
name: 'maturity',
type: 'uint256',
internalType: 'uint256',
},
],
},
{
name: 'seizures',
type: 'tuple[]',
internalType: 'struct Seizure[]',
components: [
{
name: 'repaidBonds',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'seizedAssets',
type: 'uint256',
internalType: 'uint256',
},
],
},
{
name: 'borrower',
type: 'address',
internalType: 'address',
},
{
name: 'data',
type: 'bytes',
internalType: 'bytes',
},
],
outputs: [
{
name: '',
type: 'tuple[]',
internalType: 'struct Seizure[]',
components: [
{
name: 'repaidBonds',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'seizedAssets',
type: 'uint256',
internalType: 'uint256',
},
],
},
],
stateMutability: 'nonpayable',
},
{
type: 'function',
name: 'repayDebt',
inputs: [
{
name: 'term',
type: 'tuple',
internalType: 'struct Term',
components: [
{
name: 'loanToken',
type: 'address',
internalType: 'address',
},
{
name: 'collaterals',
type: 'tuple[]',
internalType: 'struct Collateral[]',
components: [
{
name: 'token',
type: 'address',
internalType: 'address',
},
{
name: 'lltv',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'oracle',
type: 'address',
internalType: 'address',
},
],
},
{
name: 'maturity',
type: 'uint256',
internalType: 'uint256',
},
],
},
{
name: 'bonds',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'onBehalf',
type: 'address',
internalType: 'address',
},
],
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
name: 'supplyCollateral',
inputs: [
{
name: 'term',
type: 'tuple',
internalType: 'struct Term',
components: [
{
name: 'loanToken',
type: 'address',
internalType: 'address',
},
{
name: 'collaterals',
type: 'tuple[]',
internalType: 'struct Collateral[]',
components: [
{
name: 'token',
type: 'address',
internalType: 'address',
},
{
name: 'lltv',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'oracle',
type: 'address',
internalType: 'address',
},
],
},
{
name: 'maturity',
type: 'uint256',
internalType: 'uint256',
},
],
},
{
name: 'collateral',
type: 'address',
internalType: 'address',
},
{
name: 'assets',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'onBehalf',
type: 'address',
internalType: 'address',
},
],
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
name: 'take',
inputs: [
{
name: 'term',
type: 'tuple',
internalType: 'struct Term',
components: [
{
name: 'loanToken',
type: 'address',
internalType: 'address',
},
{
name: 'collaterals',
type: 'tuple[]',
internalType: 'struct Collateral[]',
components: [
{
name: 'token',
type: 'address',
internalType: 'address',
},
{
name: 'lltv',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'oracle',
type: 'address',
internalType: 'address',
},
],
},
{
name: 'maturity',
type: 'uint256',
internalType: 'uint256',
},
],
},
{
name: 'assets',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'onBehalf',
type: 'address',
internalType: 'address',
},
{
name: 'offer',
type: 'tuple',
internalType: 'struct Offer',
components: [
{
name: 'buy',
type: 'bool',
internalType: 'bool',
},
{
name: 'offering',
type: 'address',
internalType: 'address',
},
{
name: 'assets',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'loanToken',
type: 'address',
internalType: 'address',
},
{
name: 'collaterals',
type: 'tuple[]',
internalType: 'struct Collateral[]',
components: [
{
name: 'token',
type: 'address',
internalType: 'address',
},
{
name: 'lltv',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'oracle',
type: 'address',
internalType: 'address',
},
],
},
{
name: 'maturity',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'offerStart',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'offerExpiry',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'rate',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'nonce',
type: 'uint256',
internalType: 'uint256',
},
],
},
{
name: 'sig',
type: 'tuple',
internalType: 'struct Signature',
components: [
{
name: 'v',
type: 'uint8',
internalType: 'uint8',
},
{
name: 'r',
type: 'bytes32',
internalType: 'bytes32',
},
{
name: 's',
type: 'bytes32',
internalType: 'bytes32',
},
],
},
],
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
name: 'totalBonds',
inputs: [
{
name: '',
type: 'bytes32',
internalType: 'bytes32',
},
],
outputs: [
{
name: '',
type: 'uint256',
internalType: 'uint256',
},
],
stateMutability: 'view',
},
{
type: 'function',
name: 'totalShares',
inputs: [
{
name: '',
type: 'bytes32',
internalType: 'bytes32',
},
],
outputs: [
{
name: '',
type: 'uint256',
internalType: 'uint256',
},
],
stateMutability: 'view',
},
{
type: 'function',
name: 'withdrawBond',
inputs: [
{
name: 'term',
type: 'tuple',
internalType: 'struct Term',
components: [
{
name: 'loanToken',
type: 'address',
internalType: 'address',
},
{
name: 'collaterals',
type: 'tuple[]',
internalType: 'struct Collateral[]',
components: [
{
name: 'token',
type: 'address',
internalType: 'address',
},
{
name: 'lltv',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'oracle',
type: 'address',
internalType: 'address',
},
],
},
{
name: 'maturity',
type: 'uint256',
internalType: 'uint256',
},
],
},
{
name: 'bonds',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'shares',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'onBehalf',
type: 'address',
internalType: 'address',
},
],
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
name: 'withdrawCollateral',
inputs: [
{
name: 'term',
type: 'tuple',
internalType: 'struct Term',
components: [
{
name: 'loanToken',
type: 'address',
internalType: 'address',
},
{
name: 'collaterals',
type: 'tuple[]',
internalType: 'struct Collateral[]',
components: [
{
name: 'token',
type: 'address',
internalType: 'address',
},
{
name: 'lltv',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'oracle',
type: 'address',
internalType: 'address',
},
],
},
{
name: 'maturity',
type: 'uint256',
internalType: 'uint256',
},
],
},
{
name: 'collateral',
type: 'address',
internalType: 'address',
},
{
name: 'assets',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'onBehalf',
type: 'address',
internalType: 'address',
},
],
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
name: 'withdrawable',
inputs: [
{
name: '',
type: 'bytes32',
internalType: 'bytes32',
},
],
outputs: [
{
name: '',
type: 'uint256',
internalType: 'uint256',
},
],
stateMutability: 'view',
},
{
type: 'event',
name: 'Consumed',
inputs: [
{
name: 'user',
type: 'address',
indexed: true,
internalType: 'address',
},
{
name: 'nonce',
type: 'uint256',
indexed: true,
internalType: 'uint256',
},
{
name: 'amount',
type: 'uint256',
indexed: false,
internalType: 'uint256',
},
],
anonymous: false,
},
{
type: 'event',
name: 'Liquidate',
inputs: [
{
name: 'id',
type: 'bytes32',
indexed: true,
internalType: 'bytes32',
},
{
name: 'borrower',
type: 'address',
indexed: true,
internalType: 'address',
},
{
name: 'liquidator',
type: 'address',
indexed: true,
internalType: 'address',
},
{
name: 'amount',
type: 'uint256',
indexed: false,
internalType: 'uint256',
},
{
name: 'seizures',
type: 'tuple[]',
indexed: false,
internalType: 'struct Seizure[]',
components: [
{
name: 'repaidBonds',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'seizedAssets',
type: 'uint256',
internalType: 'uint256',
},
],
},
{
name: 'term',
type: 'tuple',
indexed: false,
internalType: 'struct Term',
components: [
{
name: 'loanToken',
type: 'address',
internalType: 'address',
},
{
name: 'collaterals',
type: 'tuple[]',
internalType: 'struct Collateral[]',
components: [
{
name: 'token',
type: 'address',
internalType: 'address',
},
{
name: 'lltv',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'oracle',
type: 'address',
internalType: 'address',
},
],
},
{
name: 'maturity',
type: 'uint256',
internalType: 'uint256',
},
],
},
],
anonymous: false,
},
{
type: 'event',
name: 'RepayDebt',
inputs: [
{
name: 'id',
type: 'bytes32',
indexed: true,
internalType: 'bytes32',
},
{
name: 'onbehalf',
type: 'address',
indexed: true,
internalType: 'address',
},
{
name: 'bonds',
type: 'uint256',
indexed: false,
internalType: 'uint256',
},
],
anonymous: false,
},
{
type: 'event',
name: 'SupplyCollateral',
inputs: [
{
name: 'id',
type: 'bytes32',
indexed: true,
internalType: 'bytes32',
},
{
name: 'collateral',
type: 'address',
indexed: true,
internalType: 'address',
},
{
name: 'onbehalf',
type: 'address',
indexed: true,
internalType: 'address',
},
{
name: 'amount',
type: 'uint256',
indexed: false,
internalType: 'uint256',
},
{
name: 'term',
type: 'tuple',
indexed: false,
internalType: 'struct Term',
components: [
{
name: 'loanToken',
type: 'address',
internalType: 'address',
},
{
name: 'collaterals',
type: 'tuple[]',
internalType: 'struct Collateral[]',
components: [
{
name: 'token',
type: 'address',
internalType: 'address',
},
{
name: 'lltv',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'oracle',
type: 'address',
internalType: 'address',
},
],
},
{
name: 'maturity',
type: 'uint256',
internalType: 'uint256',
},
],
},
],
anonymous: false,
},
{
type: 'event',
name: 'Take',
inputs: [
{
name: 'id',
type: 'bytes32',
indexed: true,
internalType: 'bytes32',
},
{
name: 'onbehalf',
type: 'address',
indexed: true,
internalType: 'address',
},
{
name: 'offerHash',
type: 'bytes32',
indexed: true,
internalType: 'bytes32',
},
{
name: 'amount',
type: 'uint256',
indexed: false,
internalType: 'uint256',
},
{
name: 'bonds',
type: 'uint256',
indexed: false,
internalType: 'uint256',
},
{
name: 'offer',
type: 'tuple',
indexed: false,
internalType: 'struct Offer',
components: [
{
name: 'buy',
type: 'bool',
internalType: 'bool',
},
{
name: 'offering',
type: 'address',
internalType: 'address',
},
{
name: 'assets',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'loanToken',
type: 'address',
internalType: 'address',
},
{
name: 'collaterals',
type: 'tuple[]',
internalType: 'struct Collateral[]',
components: [
{
name: 'token',
type: 'address',
internalType: 'address',
},
{
name: 'lltv',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'oracle',
type: 'address',
internalType: 'address',
},
],
},
{
name: 'maturity',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'offerStart',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'offerExpiry',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'rate',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'nonce',
type: 'uint256',
internalType: 'uint256',
},
],
},
{
name: 'term',
type: 'tuple',
indexed: false,
internalType: 'struct Term',
components: [
{
name: 'loanToken',
type: 'address',
internalType: 'address',
},
{
name: 'collaterals',
type: 'tuple[]',
internalType: 'struct Collateral[]',
components: [
{
name: 'token',
type: 'address',
internalType: 'address',
},
{
name: 'lltv',
type: 'uint256',
internalType: 'uint256',
},
{
name: 'oracle',
type: 'address',
internalType: 'address',
},
],
},
{
name: 'maturity',
type: 'uint256',
internalType: 'uint256',
},
],
},
],
anonymous: false,
},
{
type: 'event',
name: 'WithdrawBond',
inputs: [
{
name: 'id',
type: 'bytes32',
indexed: true,
internalType: 'bytes32',
},
{
name: 'onbehalf',
type: 'address',
indexed: true,
internalType: 'address',
},
{
name: 'shares',
type: 'uint256',
indexed: false,
internalType: 'uint256',
},
{
name: 'bonds',
type: 'uint256',
indexed: false,
internalType: 'uint256',
},
],
anonymous: false,
},
{
type: 'event',
name: 'WithdrawCollateral',
inputs: [
{
name: 'id',
type: 'bytes32',
indexed: true,
internalType: 'bytes32',
},
{
name: 'collateral',
type: 'address',
indexed: true,
internalType: 'address',
},
{
name: 'onbehalf',
type: 'address',
indexed: true,
internalType: 'address',
},
{
name: 'amount',
type: 'uint256',
indexed: false,
internalType: 'uint256',
},
],
anonymous: false,
},
];
//# sourceMappingURL=terms.js.map