diff --git a/contracts/INodes.sol b/contracts/INodes.sol index 680ef4a..6cee352 100644 --- a/contracts/INodes.sol +++ b/contracts/INodes.sol @@ -60,7 +60,12 @@ interface INodes { uint16 nonce; string domainName; } - + + // struct for storing additional fields for Node + struct NodeExtras { + uint lastChangeIpTime; + } + /** * @dev Emitted when a node is created. */ @@ -163,4 +168,5 @@ interface INodes { function isNodeExist(address from, uint nodeIndex) external view returns (bool); function isNodeActive(uint nodeIndex) external view returns (bool); function isNodeLeaving(uint nodeIndex) external view returns (bool); + function getLastChangeIpTime(uint nodeIndex) external view returns (uint); } diff --git a/contracts/ISkaleDKG.sol b/contracts/ISkaleDKG.sol index 494e9f5..dbc9f03 100644 --- a/contracts/ISkaleDKG.sol +++ b/contracts/ISkaleDKG.sol @@ -121,7 +121,8 @@ interface ISkaleDKG { bytes32 schainHash, uint nodeIndex, G2Point[] memory verificationVector, - KeyShare[] memory secretKeyContribution + KeyShare[] memory secretKeyContribution, + uint rotationCounter ) external; function complaintBadData(bytes32 schainHash, uint fromNodeIndex, uint toNodeIndex) external; diff --git a/package.json b/package.json index 58d4393..d334ddb 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@skalenetwork/skale-manager-interfaces", - "version": "2.1.0", + "version": "3.0.0", "description": "Definitions of interfaces needed to integrate with skale-manager smart contracts", "main": "index.js", "repository": "git@github.com:skalenetwork/skale-manager-interfaces.git",