#pragma once

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

// Package: DLCManager

#include "Basic.hpp"

#include "Commons_structs.hpp"


namespace SDK
{

// Enum DLCManager.EDLCState
// NumValues: 0x0005
enum class EDLCState : uint8
{
	Undefined                                = 0,
	NotOwned                                 = 1,
	Owned                                    = 2,
	Unknown                                  = 3,
	EDLCState_MAX                            = 4,
};

// Enum DLCManager.EDLCSupportedPlatforms
// NumValues: 0x0008
enum class EDLCSupportedPlatforms : uint8
{
	Ps5                                      = 0,
	XOne                                     = 1,
	Steam                                    = 2,
	Eos                                      = 3,
	Gog                                      = 4,
	MacOS                                    = 5,
	Linux                                    = 6,
	EDLCSupportedPlatforms_MAX               = 7,
};

// ScriptStruct DLCManager.DLCItem
// 0x0050 (0x0050 - 0x0000)
struct FDLCItem final
{
public:
	class FName                                   Name;                                              // 0x0000(0x0008)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint32                                        SupportedPlatforms;                                // 0x0008(0x0004)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint32                                        OwnedOnPlatforms;                                  // 0x000C(0x0004)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	class FString                                 SonySKUIdName;                                     // 0x0010(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	class FString                                 MicrosoftStoreID;                                  // 0x0020(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint32                                        SteamAppId;                                        // 0x0030(0x0004)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_34[0x4];                                       // 0x0034(0x0004)(Fixing Size After Last Property [ Dumper-7 ])
	class FString                                 EpicProductId;                                     // 0x0038(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint64                                        GogProductId;                                      // 0x0048(0x0008)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FDLCItem;

// ScriptStruct DLCManager.DLCHandle
// 0x0000 (0x0008 - 0x0008)
struct FDLCHandle final : public FNamedHandle
{
};
DUMPER7_ASSERTS_FDLCHandle;

// ScriptStruct DLCManager.DLCBundle
// 0x0028 (0x0028 - 0x0000)
struct FDLCBundle final
{
public:
	TArray<struct FDLCHandle>                     Items;                                             // 0x0000(0x0010)(Edit, ZeroConstructor, NativeAccessSpecifierPublic)
	uint32                                        SteamAppId;                                        // 0x0010(0x0004)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_14[0x4];                                       // 0x0014(0x0004)(Fixing Size After Last Property [ Dumper-7 ])
	class FString                                 EpicProductId;                                     // 0x0018(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FDLCBundle;

}

