How can I resolve an Unresolved Externals error when referencing classes in another module?

I believe your issue is that the class needs to be flagged for export so that other modules can link to your symbols.

Depending on your needs you can do this by adding MinimalAPI to the UCLASS macro. This just exports some key auto-generated functions (such as GetPrivateStaticClass) and any functions/members that you explicitly tag using the [MODULENAME]_API tag (so if your module is called Elemental it is probably ELEMENTAL_API).

Alternatively you can mark the entire class for export such that all public (and protected if you are inheriting from it) members and functions are available. You do this by again using the _API tag on the class, so your class definition ends up looking something like class ELEMENTAL_API UElementalGestureListener : public UObject (or what have you).