-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
2e4011f
commit b8970b5
Showing
8 changed files
with
352 additions
and
390 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
// SPDX-License-Identifier: MIT | ||
pragma solidity 0.8.25; | ||
import {IERC20BasePool} from "./IERC20BasePool.sol"; | ||
|
||
interface IERC20LockUpPoolExtension is IERC20BasePool { | ||
struct LockUpPool { | ||
BasePoolInfo baseInfo; | ||
uint256 unstakeLockupTime; // Lockup period for unstaking | ||
uint256 claimLockupTime; // Lockup period for claiming rewards | ||
} | ||
|
||
/** | ||
* ERROR MESSAGES | ||
*/ | ||
|
||
/// @dev Error to indicate that tokens are still in lockup and cannot be accessed | ||
/// @param currentTime The current timestamp | ||
/// @param unlockTime The timestamp when the tokens will be unlocked | ||
error TokensInLockup(uint256 currentTime, uint256 unlockTime); | ||
|
||
/// @dev Error to indicate an invalid lockup time for unstaking or claiming rewards | ||
error InvalidLockupTime(); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
// SPDX-License-Identifier: MIT | ||
pragma solidity 0.8.25; | ||
import {IERC20BasePool} from "./IERC20BasePool.sol"; | ||
|
||
interface IERC20PenaltyPoolExtension is IERC20BasePool { | ||
struct PenaltyPool { | ||
BasePoolInfo baseParams; | ||
uint256 penaltyPeriod; | ||
uint256 totalPenalties; | ||
} | ||
|
||
struct PenaltyUser { | ||
BaseUserInfo baseInfo; | ||
uint256 penaltyEndTime; | ||
bool penalized; | ||
} | ||
|
||
/** | ||
* ERROR MESSAGES | ||
*/ | ||
/// @dev Error to indicate that tokens are still in lockup and cannot be accessed | ||
/// @param currentTime The current timestamp | ||
/// @param unlockTime The timestamp when the tokens will be unlocked | ||
error TokensInLockup(uint256 currentTime, uint256 unlockTime); | ||
/// @dev Error to indicate an invalid penalty duration for unstaking | ||
error InvalidPenaltyPeriod(); | ||
} |
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.