I’m not sure what the actual issue is, but when you create a component in runtime, you have to register it. Maybe after you do, it will be available.
UHandInteraction* HandInteraction = NewObject<UHandInteraction>();
HandInteraction->RegisterComponent();