Type must be a UCLASS, USTRUCT or UENUM

I made a character class and a behavior tree and when I complie it gives me type must be a UCLASS, USTRUCT or UENUM

.h

#pragma once

#include "CoreMinimal.h"
#include "GameFramework/Character.h"
#include "aiCharacter.generated.h"

UCLASS()
class HORDE_API AaiCharacter : public ACharacter
{
	GENERATED_BODY()

		
public:
	// Sets default values for this character's properties
	AaiCharacter();


public:
	UPROPERTY(editanywhere, category = "AI")
     class uBehaviorTree * BehaviorTree;


protected:
	// Called when the game starts or when spawned
	virtual void BeginPlay() override;




	// Called to bind functionality to input
	virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override;

	
	
};

Everything in C++ is case-sensitive, so make sure you have proper capitalization on everything. Also, you have a class keyword in front of a property. The correct version should look something like this:


UPROPERTY(EditAnywhere, Category = "AI")
UBehaviorTree * BehaviorTree;

when I do that it tells me uBehaviorTree is undefined

It’s UBehaviorTree, with a capital U.
Also, make sure you have the correct .h file included: “BehaviorTree/BehaviorTree.h”