Is it impossible to replicate a TQueue?

I currenlty have a TQueue which holds a struct that I have defined, in one of my classes. This class lives on the server, but I need information of a variable in the top of the queue. So essentially, I will need to peek to get the 1st entry in the queue, and access a particular variable in the struct.

I tried replicating the TQueue but it seems to be complaining that TQueue must be a uclass / ustruct / uenum
Is there a way around this? I need the behavior of FIFO, so using a queue would be beneficial for me. Was wondering if you guys might have some alternatives that I am currently missing out on. I think you can replicate an TArray, so I could use an Array as a Queue, where I would RemoveAt(0), but this wouldnt be efficient since I am using the TQueue frequently.