#pragma once

#include "CoreMinimal.h"
#include "StoreCategoryViewData.h"
#include "ECustomizationCategory.h"
#include "StoreCharactersCustomizationsViewData.generated.h"

class UStoreCustomizationItemViewData;

USTRUCT(BlueprintType)
struct FStoreCharactersCustomizationsViewData
{
	GENERATED_BODY()

public:
	UPROPERTY(BlueprintReadWrite, Transient)
	TArray<UStoreCustomizationItemViewData*> Customizations;

	UPROPERTY(BlueprintReadWrite, Transient)
	TArray<UStoreCustomizationItemViewData*> SelectedCustomizations;

	UPROPERTY(BlueprintReadWrite, Transient)
	int32 SelectedSlotIndex;

	UPROPERTY(BlueprintReadWrite, Transient)
	TArray<FStoreCategoryViewData> Categories;

	UPROPERTY(BlueprintReadWrite, Transient)
	ECustomizationCategory SelectedCategory;

	UPROPERTY(BlueprintReadWrite, Transient)
	TArray<int32> PresetIds;

	UPROPERTY(BlueprintReadWrite, Transient)
	int32 SelectedPresetId;

public:
	DBDUIVIEWINTERFACES_API FStoreCharactersCustomizationsViewData();
};

FORCEINLINE uint32 GetTypeHash(const FStoreCharactersCustomizationsViewData) { return 0; }
