11// SPDX-License-Identifier: GPL-3.0
22pragma solidity ^ 0.8.12 ;
33
4- interface IAccountFactory {
5- /*///////////////////////////////////////////////////////////////
6- Events
7- //////////////////////////////////////////////////////////////*/
8-
9- /// @notice Emitted when a new Account is created.
10- event AccountCreated (address indexed account , address indexed accountAdmin );
11-
12- /// @notice Emitted when a new signer is added to an Account.
13- event SignerAdded (address indexed account , address indexed signer );
14-
15- /// @notice Emitted when a new signer is added to an Account.
16- event SignerRemoved (address indexed account , address indexed signer );
4+ import "./IAccountFactoryCore.sol " ;
175
6+ interface IAccountFactory is IAccountFactoryCore {
187 /*///////////////////////////////////////////////////////////////
19- Extension Functions
8+ Callback Functions
209 //////////////////////////////////////////////////////////////*/
2110
22- /// @notice Deploys a new Account for admin.
23- function createAccount (address admin , bytes calldata _data ) external returns (address account );
24-
2511 /// @notice Callback function for an Account to register its signers.
2612 function onSignerAdded (
2713 address signer ,
@@ -35,20 +21,4 @@ interface IAccountFactory {
3521 address creatorAdmin ,
3622 bytes memory data
3723 ) external ;
38-
39- /*///////////////////////////////////////////////////////////////
40- View Functions
41- //////////////////////////////////////////////////////////////*/
42-
43- /// @notice Returns the address of the Account implementation.
44- function accountImplementation () external view returns (address );
45-
46- /// @notice Returns all accounts created on the factory.
47- function getAllAccounts () external view returns (address [] memory );
48-
49- /// @notice Returns the address of an Account that would be deployed with the given admin signer.
50- function getAddress (address adminSigner , bytes calldata data ) external view returns (address );
51-
52- /// @notice Returns all accounts on which a signer has (active or inactive) permissions.
53- function getAccountsOfSigner (address signer ) external view returns (address [] memory accounts );
5424}
0 commit comments