#pragma once

#include "CoreMinimal.h"
#include "StoreCollectionsCustomizationsViewInterface.h"
#include "CoreBaseUserWidget.h"
#include "CoreStoreCollectionsCustomizationsWidget.generated.h"

class UDBDTextBlock;
class UCoreStoreCharactersCustomizationsWidget;
class UStoreCollectionViewData;

UCLASS(Blueprintable, EditInlineNew)
class DBDUIVIEWSCORE_API UCoreStoreCollectionsCustomizationsWidget : public UCoreBaseUserWidget, public IStoreCollectionsCustomizationsViewInterface
{
	GENERATED_BODY()

protected:
	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta=(BindWidgetOptional))
	UDBDTextBlock* CollectionNameTB;

	UPROPERTY(EditAnywhere, BlueprintReadWrite, meta=(BindWidgetOptional))
	UDBDTextBlock* CharacterNameTB;

private:
	UPROPERTY(EditAnywhere, BlueprintReadWrite, Export, meta=(AllowPrivateAccess=true))
	UCoreStoreCharactersCustomizationsWidget* CharactersCustomizations;

protected:
	UFUNCTION(BlueprintCallable, BlueprintImplementableEvent)
	void SetCollectionVisuals(const UStoreCollectionViewData* collectionViewData);

public:
	UFUNCTION(BlueprintPure)
	UCoreStoreCharactersCustomizationsWidget* GetCharactersCustomizations() const;

public:
	UCoreStoreCollectionsCustomizationsWidget();
};

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