Attaching method to scriptableobject

Hey I’m writing equipment system with each item being a scriptableObject and having a callback method attached to call it when item is used (returning bool). What solution should be used in such case? I thought about something like eventSystem but I want to reference scripts not gameobjects.

// In your ScriptableObject script

public event System.Action OnUsed;

public void Use()
{
    // Do something

    if( OnUsed != null ) OnUsed() ;
}

// In your other scripts which need to know when your item is used
private void Start()
{
    // Supposing you have a reference to the ScriptableObject called item
    item.OnUsed += OnItemUsed ;
}

private void OnItemUsed()
{
    Debug.Log( "The item has been used" ) ;
}