#pragma once

/*
* SDK generated by Dumper-7
*
* https://github.com/Encryqed/Dumper-7
*/

// Package: EpicCMSUIFramework

#include "Basic.hpp"

#include "SlateCore_structs.hpp"
#include "CommonUI_classes.hpp"
#include "EpicCMSUIFramework_structs.hpp"
#include "UMG_classes.hpp"
#include "CoreUObject_classes.hpp"


namespace SDK
{

// Class EpicCMSUIFramework.EpicCMSImage
// 0x00B0 (0x0388 - 0x02D8)
class UEpicCMSImage final : public UCommonLazyImage
{
public:
	UMulticastDelegateProperty_                   OnImageLoadingComplete;                            // 0x02D8(0x0010)(ZeroConstructor, InstancedReference, BlueprintAssignable, NativeAccessSpecifierPublic)
	struct FSlateBrush                            LoadingFailFallback;                               // 0x02E8(0x0088)(Edit, NativeAccessSpecifierPrivate)
	class UTexture2D*                             ExternalMedia;                                     // 0x0370(0x0008)(ZeroConstructor, Transient, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPrivate)
	bool                                          bDownloadingExternalMedia;                         // 0x0378(0x0001)(ZeroConstructor, Transient, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPrivate)
	uint8                                         Pad_379[0xF];                                      // 0x0379(0x000F)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	void SetMediaURL(const class FString& MediaUrl);

public:
	static class UClass* StaticClass()
	{
		return StaticClassImpl<"EpicCMSImage">();
	}
	static class UEpicCMSImage* GetDefaultObj()
	{
		return GetDefaultObjImpl<UEpicCMSImage>();
	}
};
static_assert(alignof(UEpicCMSImage) == 0x000008, "Wrong alignment on UEpicCMSImage");
static_assert(sizeof(UEpicCMSImage) == 0x000388, "Wrong size on UEpicCMSImage");
static_assert(offsetof(UEpicCMSImage, OnImageLoadingComplete) == 0x0002D8, "Member 'UEpicCMSImage::OnImageLoadingComplete' has a wrong offset!");
static_assert(offsetof(UEpicCMSImage, LoadingFailFallback) == 0x0002E8, "Member 'UEpicCMSImage::LoadingFailFallback' has a wrong offset!");
static_assert(offsetof(UEpicCMSImage, ExternalMedia) == 0x000370, "Member 'UEpicCMSImage::ExternalMedia' has a wrong offset!");
static_assert(offsetof(UEpicCMSImage, bDownloadingExternalMedia) == 0x000378, "Member 'UEpicCMSImage::bDownloadingExternalMedia' has a wrong offset!");

// Class EpicCMSUIFramework.EpicCMSLayoutBase
// 0x0068 (0x0298 - 0x0230)
class UEpicCMSLayoutBase final : public UUserWidget
{
public:
	TArray<struct FSlotDescription>               CarouselSlotDescriptions;                          // 0x0230(0x0010)(Edit, ZeroConstructor, NativeAccessSpecifierPublic)
	TSubclassOf<class UEpicCMSTileCarousel>       CarouselClass;                                     // 0x0240(0x0008)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	uint8                                         Pad_248[0x50];                                     // 0x0248(0x0050)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	static class UClass* StaticClass()
	{
		return StaticClassImpl<"EpicCMSLayoutBase">();
	}
	static class UEpicCMSLayoutBase* GetDefaultObj()
	{
		return GetDefaultObjImpl<UEpicCMSLayoutBase>();
	}
};
static_assert(alignof(UEpicCMSLayoutBase) == 0x000008, "Wrong alignment on UEpicCMSLayoutBase");
static_assert(sizeof(UEpicCMSLayoutBase) == 0x000298, "Wrong size on UEpicCMSLayoutBase");
static_assert(offsetof(UEpicCMSLayoutBase, CarouselSlotDescriptions) == 0x000230, "Member 'UEpicCMSLayoutBase::CarouselSlotDescriptions' has a wrong offset!");
static_assert(offsetof(UEpicCMSLayoutBase, CarouselClass) == 0x000240, "Member 'UEpicCMSLayoutBase::CarouselClass' has a wrong offset!");

// Class EpicCMSUIFramework.EpicCMSManager
// 0x0088 (0x00B0 - 0x0028)
class UEpicCMSManager final : public UObject
{
public:
	uint8                                         Pad_28[0x18];                                      // 0x0028(0x0018)(Fixing Size After Last Property [ Dumper-7 ])
	class FString                                 CmsEndpointOverride;                               // 0x0040(0x0010)(ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPrivate)
	bool                                          bRefreshing;                                       // 0x0050(0x0001)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPrivate)
	uint8                                         Pad_51[0x5F];                                      // 0x0051(0x005F)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	static class UClass* StaticClass()
	{
		return StaticClassImpl<"EpicCMSManager">();
	}
	static class UEpicCMSManager* GetDefaultObj()
	{
		return GetDefaultObjImpl<UEpicCMSManager>();
	}
};
static_assert(alignof(UEpicCMSManager) == 0x000008, "Wrong alignment on UEpicCMSManager");
static_assert(sizeof(UEpicCMSManager) == 0x0000B0, "Wrong size on UEpicCMSManager");
static_assert(offsetof(UEpicCMSManager, CmsEndpointOverride) == 0x000040, "Member 'UEpicCMSManager::CmsEndpointOverride' has a wrong offset!");
static_assert(offsetof(UEpicCMSManager, bRefreshing) == 0x000050, "Member 'UEpicCMSManager::bRefreshing' has a wrong offset!");

// Class EpicCMSUIFramework.EpicCMSScreenBase
// 0x0090 (0x03B0 - 0x0320)
class UEpicCMSScreenBase : public UCommonActivatablePanel
{
public:
	class FString                                 TileSetFieldName;                                  // 0x0320(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	TSoftObjectPtr<class UDataTable>              TileTypeToTileClassDataTable;                      // 0x0330(0x0028)(Edit, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	TSoftClassPtr<class UClass>                   LayoutErrorClass;                                  // 0x0358(0x0028)(Edit, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	TSoftObjectPtr<class UDataTable>              LayoutTypeToLayoutClassDataTable;                  // 0x0380(0x0028)(Edit, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	uint8                                         Pad_3A8[0x8];                                      // 0x03A8(0x0008)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	static class UClass* StaticClass()
	{
		return StaticClassImpl<"EpicCMSScreenBase">();
	}
	static class UEpicCMSScreenBase* GetDefaultObj()
	{
		return GetDefaultObjImpl<UEpicCMSScreenBase>();
	}
};
static_assert(alignof(UEpicCMSScreenBase) == 0x000008, "Wrong alignment on UEpicCMSScreenBase");
static_assert(sizeof(UEpicCMSScreenBase) == 0x0003B0, "Wrong size on UEpicCMSScreenBase");
static_assert(offsetof(UEpicCMSScreenBase, TileSetFieldName) == 0x000320, "Member 'UEpicCMSScreenBase::TileSetFieldName' has a wrong offset!");
static_assert(offsetof(UEpicCMSScreenBase, TileTypeToTileClassDataTable) == 0x000330, "Member 'UEpicCMSScreenBase::TileTypeToTileClassDataTable' has a wrong offset!");
static_assert(offsetof(UEpicCMSScreenBase, LayoutErrorClass) == 0x000358, "Member 'UEpicCMSScreenBase::LayoutErrorClass' has a wrong offset!");
static_assert(offsetof(UEpicCMSScreenBase, LayoutTypeToLayoutClassDataTable) == 0x000380, "Member 'UEpicCMSScreenBase::LayoutTypeToLayoutClassDataTable' has a wrong offset!");

// Class EpicCMSUIFramework.EpicCMSSimpleMessage
// 0x0018 (0x0250 - 0x0238)
class UEpicCMSSimpleMessage : public UCommonUserWidget
{
public:
	class UCommonTextBlock*                       TitleText;                                         // 0x0238(0x0008)(BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, InstancedReference, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	class UCommonTextBlock*                       BodyText;                                          // 0x0240(0x0008)(BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, InstancedReference, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	class UEpicCMSImage*                          PrimaryImage;                                      // 0x0248(0x0008)(BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, InstancedReference, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)

public:
	static class UClass* StaticClass()
	{
		return StaticClassImpl<"EpicCMSSimpleMessage">();
	}
	static class UEpicCMSSimpleMessage* GetDefaultObj()
	{
		return GetDefaultObjImpl<UEpicCMSSimpleMessage>();
	}
};
static_assert(alignof(UEpicCMSSimpleMessage) == 0x000008, "Wrong alignment on UEpicCMSSimpleMessage");
static_assert(sizeof(UEpicCMSSimpleMessage) == 0x000250, "Wrong size on UEpicCMSSimpleMessage");
static_assert(offsetof(UEpicCMSSimpleMessage, TitleText) == 0x000238, "Member 'UEpicCMSSimpleMessage::TitleText' has a wrong offset!");
static_assert(offsetof(UEpicCMSSimpleMessage, BodyText) == 0x000240, "Member 'UEpicCMSSimpleMessage::BodyText' has a wrong offset!");
static_assert(offsetof(UEpicCMSSimpleMessage, PrimaryImage) == 0x000248, "Member 'UEpicCMSSimpleMessage::PrimaryImage' has a wrong offset!");

// Class EpicCMSUIFramework.EpicCMSTileBase
// 0x0110 (0x0C40 - 0x0B30)
class UEpicCMSTileBase final : public UCommonButton
{
public:
	uint8                                         Pad_B30[0x8];                                      // 0x0B30(0x0008)(Fixing Size After Last Property [ Dumper-7 ])
	TSubclassOf<class UCommonTextStyle>           DefaultTitleTextStyle;                             // 0x0B38(0x0008)(Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	TSubclassOf<class UCommonTextStyle>           FeaturedTitleTextStyle;                            // 0x0B40(0x0008)(Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, Protected, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	class FText                                   Title;                                             // 0x0B48(0x0018)(BlueprintVisible, BlueprintReadOnly, Protected, NativeAccessSpecifierProtected)
	class FString                                 Link;                                              // 0x0B60(0x0010)(BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	bool                                          bDownloadingExternalMedia;                         // 0x0B70(0x0001)(ZeroConstructor, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	bool                                          bRefreshingMcpCatalog;                             // 0x0B71(0x0001)(ZeroConstructor, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	uint8                                         Pad_B72[0x6];                                      // 0x0B72(0x0006)(Fixing Size After Last Property [ Dumper-7 ])
	class UTexture2D*                             ExternalMedia;                                     // 0x0B78(0x0008)(ZeroConstructor, Transient, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	uint8                                         Pad_B80[0xA0];                                     // 0x0B80(0x00A0)(Fixing Size After Last Property [ Dumper-7 ])
	class UCommonLazyImage*                       LazyImage_Icon;                                    // 0x0C20(0x0008)(ExportObject, ZeroConstructor, InstancedReference, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPrivate)
	class UCommonTextBlock*                       TitleTextBlock;                                    // 0x0C28(0x0008)(ExportObject, ZeroConstructor, InstancedReference, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPrivate)
	class UCommonTextBlock*                       SubtitleTextBlock;                                 // 0x0C30(0x0008)(ExportObject, ZeroConstructor, InstancedReference, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPrivate)
	class UCommonTextBlock*                       EyebrowTextBlock;                                  // 0x0C38(0x0008)(ExportObject, ZeroConstructor, InstancedReference, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPrivate)

public:
	void Launch();

public:
	static class UClass* StaticClass()
	{
		return StaticClassImpl<"EpicCMSTileBase">();
	}
	static class UEpicCMSTileBase* GetDefaultObj()
	{
		return GetDefaultObjImpl<UEpicCMSTileBase>();
	}
};
static_assert(alignof(UEpicCMSTileBase) == 0x000008, "Wrong alignment on UEpicCMSTileBase");
static_assert(sizeof(UEpicCMSTileBase) == 0x000C40, "Wrong size on UEpicCMSTileBase");
static_assert(offsetof(UEpicCMSTileBase, DefaultTitleTextStyle) == 0x000B38, "Member 'UEpicCMSTileBase::DefaultTitleTextStyle' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileBase, FeaturedTitleTextStyle) == 0x000B40, "Member 'UEpicCMSTileBase::FeaturedTitleTextStyle' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileBase, Title) == 0x000B48, "Member 'UEpicCMSTileBase::Title' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileBase, Link) == 0x000B60, "Member 'UEpicCMSTileBase::Link' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileBase, bDownloadingExternalMedia) == 0x000B70, "Member 'UEpicCMSTileBase::bDownloadingExternalMedia' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileBase, bRefreshingMcpCatalog) == 0x000B71, "Member 'UEpicCMSTileBase::bRefreshingMcpCatalog' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileBase, ExternalMedia) == 0x000B78, "Member 'UEpicCMSTileBase::ExternalMedia' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileBase, LazyImage_Icon) == 0x000C20, "Member 'UEpicCMSTileBase::LazyImage_Icon' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileBase, TitleTextBlock) == 0x000C28, "Member 'UEpicCMSTileBase::TitleTextBlock' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileBase, SubtitleTextBlock) == 0x000C30, "Member 'UEpicCMSTileBase::SubtitleTextBlock' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileBase, EyebrowTextBlock) == 0x000C38, "Member 'UEpicCMSTileBase::EyebrowTextBlock' has a wrong offset!");

// Class EpicCMSUIFramework.EpicCMSTileCarousel
// 0x0050 (0x0280 - 0x0230)
class UEpicCMSTileCarousel final : public UUserWidget
{
public:
	struct FSlateSound                            PreviousButtonSound;                               // 0x0230(0x0018)(Edit, BlueprintVisible, BlueprintReadOnly, DisableEditOnInstance, NoDestructor, Protected, NativeAccessSpecifierProtected)
	struct FSlateSound                            NextButtonSound;                                   // 0x0248(0x0018)(Edit, BlueprintVisible, BlueprintReadOnly, DisableEditOnInstance, NoDestructor, Protected, NativeAccessSpecifierProtected)
	class UCommonWidgetCarousel*                  Carousel;                                          // 0x0260(0x0008)(BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, InstancedReference, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	class UWidget*                                NextPageButton;                                    // 0x0268(0x0008)(BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, InstancedReference, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	class UWidget*                                PreviousPageButton;                                // 0x0270(0x0008)(BlueprintVisible, ExportObject, BlueprintReadOnly, ZeroConstructor, InstancedReference, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	bool                                          bShouldShowNavigationOnlyOnHover;                  // 0x0278(0x0001)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	bool                                          bInputActionsForPaging;                            // 0x0279(0x0001)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	bool                                          bIsShowingNavigation;                              // 0x027A(0x0001)(ZeroConstructor, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	uint8                                         Pad_27B[0x5];                                      // 0x027B(0x0005)(Fixing Struct Size After Last Property [ Dumper-7 ])

public:
	void AddTilePage(class UWidget* TilePageWidget);
	void BeginAutoScrolling();
	void HandleTilePageAdded(class UWidget* TileWidget);
	void NavigationVisibilityChanged(bool bShowNavigation);
	void NextPage();
	void PreviousPage();
	void SetCurrentPageByIndex(const int32 PageIndex);

	int32 GetCurrentPageIndex() const;

public:
	static class UClass* StaticClass()
	{
		return StaticClassImpl<"EpicCMSTileCarousel">();
	}
	static class UEpicCMSTileCarousel* GetDefaultObj()
	{
		return GetDefaultObjImpl<UEpicCMSTileCarousel>();
	}
};
static_assert(alignof(UEpicCMSTileCarousel) == 0x000008, "Wrong alignment on UEpicCMSTileCarousel");
static_assert(sizeof(UEpicCMSTileCarousel) == 0x000280, "Wrong size on UEpicCMSTileCarousel");
static_assert(offsetof(UEpicCMSTileCarousel, PreviousButtonSound) == 0x000230, "Member 'UEpicCMSTileCarousel::PreviousButtonSound' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileCarousel, NextButtonSound) == 0x000248, "Member 'UEpicCMSTileCarousel::NextButtonSound' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileCarousel, Carousel) == 0x000260, "Member 'UEpicCMSTileCarousel::Carousel' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileCarousel, NextPageButton) == 0x000268, "Member 'UEpicCMSTileCarousel::NextPageButton' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileCarousel, PreviousPageButton) == 0x000270, "Member 'UEpicCMSTileCarousel::PreviousPageButton' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileCarousel, bShouldShowNavigationOnlyOnHover) == 0x000278, "Member 'UEpicCMSTileCarousel::bShouldShowNavigationOnlyOnHover' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileCarousel, bInputActionsForPaging) == 0x000279, "Member 'UEpicCMSTileCarousel::bInputActionsForPaging' has a wrong offset!");
static_assert(offsetof(UEpicCMSTileCarousel, bIsShowingNavigation) == 0x00027A, "Member 'UEpicCMSTileCarousel::bIsShowingNavigation' has a wrong offset!");

}

