Which Types does TStateTreePropertyRef accept?

I fail to instantiate TStateTreePropertyRef<> with any type other than base ones (int16, float, bool) and structs (FVector or any other). I came across this issue when trying to pass a pointer to my enemy in my instance data struct, I tried both using just AEnemy* en TObjPtr. The way I went around it is by making a wrapper struct which just holds an AEnemy pointer.

USTRUCT(BlueprintType)
struct FEnemyWrapper
{
	GENERATED_BODY()

	TObjectPtr<AEnemy> Enemy;
};

But if it’s possible I would like to avoid this wrapper struct since it means that I have to use this wrapper type for the parameter in my state tree which I would like to just be a pointer. So my question is am I correct in saying you can only use base types and structs for TStateTreePropertyRef<> or can you use pointers or TObjPtr<>?