// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;

/// @title IVaultfireIdentity — Interface for the Vaultfire Identity Registry
/// @notice Minimal interface used by VKP to verify ERC-8004 agent registration.
///         Uses getAgent() to check registration — returns agentURI + metadata.
///         An agent is registered if getAgent() returns a non-empty agentURI.
interface IVaultfireIdentity {
    /// @notice Get an agent's on-chain identity data
    /// @dev Returns empty agentURI if the agent is not registered.
    /// @param agentAddress The agent address to look up
    /// @return agentURI The agent's URI (JSON metadata string)
    /// @return active Whether the agent is active
    /// @return agentType The agent type string
    /// @return registeredAt Block number when registered
    function getAgent(address agentAddress)
        external
        view
        returns (
            string memory agentURI,
            bool active,
            string memory agentType,
            uint256 registeredAt
        );
}
