DelegationWalletRegistry

The DelegationWalletRegistry contract keeps track of all the deployed Delegation Wallets and their associated components. It provides a way to retrieve information about a specific wallet, such as its address and the addresses of its components.

Key Functions:

function setFactory(address _delegationWalletFactory) external

Sets the address of the DelegationWalletFactory contract.

Parameters:

_delegationWalletFactory (address): The address of the DelegationWalletFactory contract.


function setWallet(
    address _wallet, 
    address _owner, 
    address _guard, 
    address _guardOwner, 
    address _delegationOwner, 
    address _protocolOwner
) external

Registers a new Delegation Wallet and its components in the registry.

Parameters:

_wallet (address): The address of the GnosisSafe contract.

_owner (address): The address of the wallet owner.

_guard (address): The address of the TransactionGuard contract.

_guardOwner (address): The address of the GuardOwner contract.

_delegationOwner (address): The address of the DelegationOwner contract.

_protocolOwner (address): The address of the ProtocolOwner contract.


function getWallet(address _wallet) 
external 
view 
returns (IDelegationWalletRegistry.Wallet memory)

Retrieves the information of a specific Delegation Wallet.

Parameters:

_wallet (address): The address of the GnosisSafe contract.

Returns:

The Wallet struct containing the addresses of the wallet components.


function getOwnerWalletAddresses(
    address _owner
) external view returns (address[] memory);

Returns the entire set of wallet addresses for a given owner.

Parameters:

_owner (address): The address of the wallet owner.

Returns:

An array of wallet addresses owned by the specified owner.


function getOwnerWalletAt(
    address _owner, 
    uint256 _index
) 
external 
view 
returns (IDelegationWalletRegistry.Wallet memory);

Returns the wallet information at a specific index for a given owner.

Parameters:

_owner (address): The address of the wallet owner.

_index (uint256): The index of the wallet in the owner's wallet set.

Returns:

The Wallet struct containing the addresses of the wallet components.


Interactions:

  • Receives wallet information from the DelegationWalletFactory during the deployment process.

  • Provides functions for retrieving wallet information and component addresses.

Last updated