How to keep data of a custom editor that deal with scriptable object when saved as prefabs

Hi guys,
I just completed Unity’s adventure tutorial: Adventure Game Phase 6: Game State - Unity Learn

I was wondering if it’s possible to save the data in the interactable and reaction collection script as prefabs. That would really help my workflow. If not, is there an alternative?

Here’s an image to clarify. I’m trying to keep the text and audio reaction inside a prefab.

Unfortunately, it doesn’t like that and the data disappears when you try to add reactions inside the prefab.

I tried using: if (GUI.changed) { EditorUtility.SetDirty(interactable); } and Undo.RecordObject(interactable, this.serializedObject.ToString()); inside OnInspectorGUI() but to no avail.
Another solution would be to write a script to remap this data at run time, but that’s not ideal.

Looks like I spoke too fast so I tried the other alternative. Using presets to load the saved data at runtime, but it doesn’t apply to the object.

 item = Instantiate(itemToAdd.itemPrefab);
                    if(itemToAdd.preset.CanBeAppliedTo(item))
                    {
                        itemToAdd.preset.ApplyTo(item);
                        Debug.Log("Preset applied!");
                    }
                    else
                    {
                        Debug.Log("Preset not applied...");
                    }

Does anyone got some suggestions, some pointers?

Another alternative instead of instantiating prefabs is to configure all the objects you plan on using in advance. Turn them on or off depending on your need. I was wondering maybe the fact that I’m dealing with scriptable objects makes it that it cannot be saved as prefabs?