When I try to do this and compile, I get tons of compile errors. The only why I’ve worked around this in the past was to create a dummy C++ class inherited from UObject, where the class is completely empty. Does this have something to do with needing a .generated.h file as well?
You don’t need the UCLASS(), there is a UDELEGATE() macro for this case specifically. Remember to add the #include "<FileName>.generated.h" to the includes above.