// SPDX-License-Identifier: agpl-3.0
pragma solidity 0.6.12;

interface ILiquidationsGraceSentinel {
  /**
   * @dev Emitted when a new grace period is set
   * @param asset Address of the underlying asset listed on Aave
   * @param until Timestamp until the grace period will be activated
   **/
  event GracePeriodSet(address indexed asset, uint40 until);

  /**
   * @dev Returns until when a grace period is enabled
   * @param asset Address of the underlying asset listed on Aave
   **/
  function gracePeriodUntil(address asset) external view returns (uint40);

  /// @notice Function to set grace period to one or multiple Aave underlyings
  /// @dev To enable a grace period, a timestamp in the future should be set,
  ///      To disable a grace period, any timestamp in the past works, like 0
  /// @param assets Address of the underlying asset listed on Aave
  /// @param until Timestamp when the liquidations' grace period will end
  function setGracePeriods(address[] calldata assets, uint40[] calldata until) external;
}
[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint40","name":"until","type":"uint40"}],"name":"GracePeriodSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"gracePeriodUntil","outputs":[{"internalType":"uint40","name":"","type":"uint40"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"assets","type":"address[]"},{"internalType":"uint40[]","name":"until","type":"uint40[]"}],"name":"setGracePeriods","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]