// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

/**
 * @title ISequencerOracle
 * @author Aave
 * @notice Defines the basic interface for a Sequencer oracle.
 */
interface ISequencerOracle {
  /**
   * @notice Returns the health status of the sequencer.
   * @return roundId The round ID from the aggregator for which the data was retrieved combined with a phase to ensure
   * that round IDs get larger as time moves forward.
   * @return answer The answer for the latest round: 0 if the sequencer is up, 1 if it is down.
   * @return startedAt The timestamp when the round was started.
   * @return updatedAt The timestamp of the block in which the answer was updated on L1.
   * @return answeredInRound The round ID of the round in which the answer was computed.
   */
  function latestRoundData()
    external
    view
    returns (
      uint80 roundId,
      int256 answer,
      uint256 startedAt,
      uint256 updatedAt,
      uint80 answeredInRound
    );
}
