package com.tiedup.remake.v2.bondage;

/**
 * Interface for entities that hold V2 bondage equipment internally
 * (not via Forge capabilities).
 *
 * Implemented by EntityDamsel (Epic 4B) to allow V2EquipmentHelper
 * to dispatch equipment operations without a circular dependency
 * between v2.bondage and entities packages.
 *
 * Players use Forge capabilities instead — they do NOT implement this.
 */
public interface IV2EquipmentHolder {
    /**
     * Get the V2 equipment storage for this entity.
     * @return The equipment instance, never null.
     */
    IV2BondageEquipment getV2Equipment();

    /**
     * Sync the internal V2 equipment state to the entity's SynchedEntityData.
     * Called by V2EquipmentHelper after write operations (equip/unequip/clear).
     */
    void syncEquipmentToData();
}
