I get an error with building my first c++ gamemode

do you know how i would make a UProperty that could control the timer that uses a struct and not a float?
this is my timer code for both cpp and h:

cpp: void ABaseGameMode::BeginPlay() { Super::BeginPlay(); GetWorld()->GetTimerManager().SetTimer(MaxWaitingTimerHandle,this,&ABaseGameMode::StartMatch,MaxWaitingTime,false); }
h:

virtual void PostLogin(APlayerController* NewPlayer) override;
virtual void BeginPlay() override;
virtual bool ReadyToStartMatch_Implementation() override;



UPROPERTY()
TArray<APlayerController*> ControllersRef;


UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Battle Royal|Basic")
int32 MinNumOfPlayers = 2;

UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Battle Royal|Basic")
float MaxWaitingTime = 10.f;

FTimerHandle MaxWaitingTimerHandle;