aave-protocol-v2/contracts/tokenization/interfaces/IVariableDebtToken.sol

37 lines
846 B
Solidity
Raw Normal View History

// SPDX-License-Identifier: agpl-3.0
pragma solidity ^0.6.8;
2020-06-30 12:09:28 +00:00
2020-09-21 15:41:38 +00:00
import {IScaledBalanceToken} from './IScaledBalanceToken.sol';
/**
2020-07-13 08:54:08 +00:00
* @title interface IVariableDebtToken
* @author Aave
* @notice defines the basic interface for a variable debt token.
**/
2020-09-21 15:41:38 +00:00
interface IVariableDebtToken is IScaledBalanceToken {
/**
* @dev emitted when variable debt is burnt
* @param user the user which debt has been burned
* @param amount the amount of debt being burned
* @param index the index of the user
**/
2020-09-21 15:41:38 +00:00
event Burn(
address indexed user,
uint256 amount,
uint256 index
);
2020-09-21 15:41:38 +00:00
/**
2020-07-13 08:54:08 +00:00
* @dev burns user variable debt
* @param user the user which debt is burnt
* @param index the variable debt index of the reserve
2020-07-13 08:54:08 +00:00
**/
2020-09-21 15:41:38 +00:00
function burn(
address user,
uint256 amount,
uint256 index
) external;
2020-06-30 12:09:28 +00:00
}