-
Notifications
You must be signed in to change notification settings - Fork 8
/
ILensProfiles.sol
32 lines (27 loc) · 1.29 KB
/
ILensProfiles.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
30
31
32
// SPDX-License-Identifier: MIT
pragma solidity >=0.6.0;
import {ILensERC721} from 'contracts/interfaces/ILensERC721.sol';
interface ILensProfiles is ILensERC721 {
/**
* @notice DANGER: Triggers disabling the profile protection mechanism for the msg.sender, which will allow
* transfers or approvals over profiles held by it.
* Disabling the mechanism will have a 7-day timelock before it becomes effective, allowing the owner to re-enable
* the protection back in case of being under attack.
* The protection layer only applies to EOA wallets.
*/
function DANGER__disableTokenGuardian() external;
/**
* @notice Enables back the profile protection mechanism for the msg.sender, preventing profile transfers or
* approvals (except when revoking them).
* The protection layer only applies to EOA wallets.
*/
function enableTokenGuardian() external;
/**
* @notice Returns the timestamp at which the Token Guardian will become effectively disabled.
*
* @param wallet The address to check the timestamp for.
*
* @return uint256 The timestamp at which the Token Guardian will become effectively disabled. Zero if enabled.
*/
function getTokenGuardianDisablingTimestamp(address wallet) external view returns (uint256);
}