How do I create a struct that can be used with blueprint?

To create a struct that can be visible as a type to a blueprint you need to add USTRUCT(BlueprintType) to it. Then in the class you need to add GENERATED_BODY() and for every variable that you want to be exposed (able to be changed) in blueprint/editor you need to add UPROPERTY() with blueprintReadWrite to it. To use your example:

USTRUCT(BlueprintType) 
struct ReflectionPoint
 {
GENERATED_BODY()
public:
     UPROPERTY(BlueprintReadWrite, Category="ReflectionPoint")
     FVector Position;
     UPROPERTY(BlueprintReadWrite, Category="ReflectionPoint")
     FRotator RRotation;
 };

You don’t need GENERATED_USTRUCT_BODY() anymore. Have a look at Unreal Engine UStruct Specifiers | Unreal Engine 5.2 Documentation
and Unreal Engine UProperties | Unreal Engine 5.2 Documentation for more info.