-
Notifications
You must be signed in to change notification settings - Fork 34
Expand file tree
/
Copy pathICxToken.sol
More file actions
33 lines (23 loc) · 1.05 KB
/
ICxToken.sol
File metadata and controls
33 lines (23 loc) · 1.05 KB
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
30
31
32
33
// Neptune Mutual Protocol (https://neptunemutual.com)
// SPDX-License-Identifier: BUSL-1.1
import "openzeppelin-solidity/contracts/token/ERC20/IERC20.sol";
pragma solidity ^0.8.0;
interface ICxToken is IERC20 {
event CoverageStartSet(uint256 policyId, bytes32 coverKey, bytes32 productKey, address account, uint256 effectiveFrom, uint256 amount);
function mint(
uint256 policyId,
bytes32 coverKey,
bytes32 productKey,
address to,
uint256 amount
) external;
function burn(uint256 amount) external;
function createdOn() external view returns (uint256);
function expiresOn() external view returns (uint256);
// slither-disable-next-line naming-convention
function COVER_KEY() external view returns (bytes32); // solhint-disable
// slither-disable-next-line naming-convention
function PRODUCT_KEY() external view returns (bytes32); // solhint-disable
function getCoverageStartsFrom(address account, uint256 date) external view returns (uint256);
function getClaimablePolicyOf(address account) external view returns (uint256);
}