-
Notifications
You must be signed in to change notification settings - Fork 35
/
IPolicyAdmin.sol
29 lines (24 loc) · 1009 Bytes
/
IPolicyAdmin.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Neptune Mutual Protocol (https://neptunemutual.com)
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.0;
import "./IMember.sol";
interface IPolicyAdmin is IMember {
event CoverPolicyRateSet(bytes32 indexed coverKey, uint256 floor, uint256 ceiling);
event CoverageLagSet(bytes32 indexed coverKey, uint256 window);
/**
* @dev Sets policy rates for the given cover key. This feature is only accessible by owner or protocol owner.
* @param floor The lowest cover fee rate for this cover
* @param ceiling The highest cover fee rate for this cover
*/
function setPolicyRatesByKey(
bytes32 coverKey,
uint256 floor,
uint256 ceiling
) external;
/**
* @dev Gets the cover policy rates for the given cover key
*/
function getPolicyRates(bytes32 coverKey) external view returns (uint256 floor, uint256 ceiling);
function setCoverageLag(bytes32 coverKey, uint256 window) external;
function getCoverageLag(bytes32 coverKey) external view returns (uint256);
}