28 lines
983 B
Solidity
28 lines
983 B
Solidity
|
pragma solidity >=0.6.12;
|
||
|
|
||
|
// Author: Louis Holbrook <dev@holbrook.no> 0826EDA1702D1E87C6E2875121D2E7BB88C2A746
|
||
|
// SPDX-License-Identifier: AGPL-3.0-or-later
|
||
|
// File-version: 1
|
||
|
|
||
|
// Extends the AccountsIndex contract to enable account removal and deactivation.
|
||
|
|
||
|
interface IAccountsIndexMutable {
|
||
|
// Active status of address changed, and by whom changed.
|
||
|
event AddressActive(address indexed _account, bool _active);
|
||
|
|
||
|
// Address removed from store, and by whom removed.
|
||
|
event AddressRemoved(address _account);
|
||
|
|
||
|
// Remove an entry from the index. Reduces the entry count.
|
||
|
function remove(address) external returns (bool);
|
||
|
|
||
|
// Deactivate account but keep in index. Does not affect entry count.
|
||
|
function deactivate(address) external returns (bool);
|
||
|
|
||
|
// Activate previously deactivated account. Does not affect entry count.
|
||
|
function activate(address) external returns (bool);
|
||
|
|
||
|
// Check if account exists and is active;
|
||
|
function isActive(address) external view returns (bool);
|
||
|
}
|