#pragma once

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

// Package: SDSOnline

#include "Basic.hpp"


namespace SDK
{

// Enum SDSOnline.ESDSOnlinePrivilege
// NumValues: 0x0006
enum class ESDSOnlinePrivilege : uint8
{
	CanPlay                                  = 0,
	CanPlayOnline                            = 1,
	CanCommunicateOnline                     = 2,
	CanUseUserGeneratedContent               = 3,
	CanUserCrossPlay                         = 4,
	ESDSOnlinePrivilege_MAX                  = 5,
};

// Enum SDSOnline.ESDSPresenceStatus
// NumValues: 0x0007
enum class ESDSPresenceStatus : uint8
{
	Online                                   = 0,
	Offline                                  = 1,
	Away                                     = 2,
	ExtendedAway                             = 3,
	DoNotDisturb                             = 4,
	Invisible                                = 5,
	ESDSPresenceStatus_MAX                   = 6,
};

// Enum SDSOnline.ESDSAchievementSource
// NumValues: 0x0003
enum class ESDSAchievementSource : uint8
{
	PLATFORM                                 = 0,
	ACCELBYTE                                = 1,
	ESDSAchievementSource_MAX                = 2,
};

// Enum SDSOnline.ESDSAchievementUpdateType
// NumValues: 0x0003
enum class ESDSAchievementUpdateType : uint8
{
	SET                                      = 0,
	INCREMENT                                = 1,
	ESDSAchievementUpdateType_MAX            = 2,
};

// Enum SDSOnline.ESDSActivityOutcome
// NumValues: 0x0004
enum class ESDSActivityOutcome : uint8
{
	Completed                                = 0,
	Failed                                   = 1,
	Cancelled                                = 2,
	ESDSActivityOutcome_MAX                  = 3,
};

// Enum SDSOnline.ESDSEntitlementSource
// NumValues: 0x000A
enum class ESDSEntitlementSource : uint8
{
	None                                     = 0,
	Purchase                                 = 1,
	InAppPurchase                            = 2,
	Promotion                                = 3,
	Achievement                              = 4,
	Referral                                 = 5,
	RedemptionCode                           = 6,
	Reward                                   = 7,
	Gift                                     = 8,
	ESDSEntitlementSource_MAX                = 9,
};

// Enum SDSOnline.ESDSEntitlementStatus
// NumValues: 0x0006
enum class ESDSEntitlementStatus : uint8
{
	None                                     = 0,
	Active                                   = 1,
	Inactive                                 = 2,
	Consumed                                 = 3,
	Revoked                                  = 4,
	ESDSEntitlementStatus_MAX                = 5,
};

// Enum SDSOnline.ESDSLocalPlayerNum
// NumValues: 0x0009
enum class ESDSLocalPlayerNum : uint8
{
	Player1                                  = 0,
	Player2                                  = 1,
	Player3                                  = 2,
	Player4                                  = 3,
	Player5                                  = 4,
	Player6                                  = 5,
	Player7                                  = 6,
	Player8                                  = 7,
	ESDSLocalPlayerNum_MAX                   = 8,
};

// Enum SDSOnline.ESDSStatSource
// NumValues: 0x0003
enum class ESDSStatSource : uint8
{
	Platform                                 = 0,
	AccelByte                                = 1,
	ESDSStatSource_MAX                       = 2,
};

// Enum SDSOnline.ESDSStatUpdateMethod
// NumValues: 0x0003
enum class ESDSStatUpdateMethod : uint8
{
	Set                                      = 0,
	Increment                                = 1,
	ESDSStatUpdateMethod_MAX                 = 2,
};

// Enum SDSOnline.ESDSUserCloudType
// NumValues: 0x0003
enum class ESDSUserCloudType : uint8
{
	Platform                                 = 0,
	AccelByte                                = 1,
	ESDSUserCloudType_MAX                    = 2,
};

// ScriptStruct SDSOnline.SDSCommercePlayStationLocalEntitlementServiceLabelMapEntry
// 0x0020 (0x0020 - 0x0000)
struct FSDSCommercePlayStationLocalEntitlementServiceLabelMapEntry final
{
public:
	class FString                                 ContentId;                                         // 0x0000(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	TArray<int32>                                 ServiceLabels;                                     // 0x0010(0x0010)(Edit, ZeroConstructor, NativeAccessSpecifierPublic)
};
static_assert(alignof(FSDSCommercePlayStationLocalEntitlementServiceLabelMapEntry) == 0x000008, "Wrong alignment on FSDSCommercePlayStationLocalEntitlementServiceLabelMapEntry");
static_assert(sizeof(FSDSCommercePlayStationLocalEntitlementServiceLabelMapEntry) == 0x000020, "Wrong size on FSDSCommercePlayStationLocalEntitlementServiceLabelMapEntry");
static_assert(offsetof(FSDSCommercePlayStationLocalEntitlementServiceLabelMapEntry, ContentId) == 0x000000, "Member 'FSDSCommercePlayStationLocalEntitlementServiceLabelMapEntry::ContentId' has a wrong offset!");
static_assert(offsetof(FSDSCommercePlayStationLocalEntitlementServiceLabelMapEntry, ServiceLabels) == 0x000010, "Member 'FSDSCommercePlayStationLocalEntitlementServiceLabelMapEntry::ServiceLabels' has a wrong offset!");

// ScriptStruct SDSOnline.SDSLeaderboardRow
// 0x0030 (0x0030 - 0x0000)
struct FSDSLeaderboardRow final
{
public:
	class FString                                 UserId;                                            // 0x0000(0x0010)(BlueprintVisible, BlueprintReadOnly, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	class FString                                 DisplayName;                                       // 0x0010(0x0010)(BlueprintVisible, BlueprintReadOnly, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	double                                        Value;                                             // 0x0020(0x0008)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	int32                                         rank;                                              // 0x0028(0x0004)(BlueprintVisible, BlueprintReadOnly, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_2C[0x4];                                       // 0x002C(0x0004)(Fixing Struct Size After Last Property [ Dumper-7 ])
};
static_assert(alignof(FSDSLeaderboardRow) == 0x000008, "Wrong alignment on FSDSLeaderboardRow");
static_assert(sizeof(FSDSLeaderboardRow) == 0x000030, "Wrong size on FSDSLeaderboardRow");
static_assert(offsetof(FSDSLeaderboardRow, UserId) == 0x000000, "Member 'FSDSLeaderboardRow::UserId' has a wrong offset!");
static_assert(offsetof(FSDSLeaderboardRow, DisplayName) == 0x000010, "Member 'FSDSLeaderboardRow::DisplayName' has a wrong offset!");
static_assert(offsetof(FSDSLeaderboardRow, Value) == 0x000020, "Member 'FSDSLeaderboardRow::Value' has a wrong offset!");
static_assert(offsetof(FSDSLeaderboardRow, rank) == 0x000028, "Member 'FSDSLeaderboardRow::rank' has a wrong offset!");

// ScriptStruct SDSOnline.SDSCommerceEpicItemIdToItemIds
// 0x0020 (0x0020 - 0x0000)
struct FSDSCommerceEpicItemIdToItemIds final
{
public:
	class FString                                 EpicItemId;                                        // 0x0000(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	TArray<class FString>                         GppItemIds;                                        // 0x0010(0x0010)(Edit, ZeroConstructor, NativeAccessSpecifierPublic)
};
static_assert(alignof(FSDSCommerceEpicItemIdToItemIds) == 0x000008, "Wrong alignment on FSDSCommerceEpicItemIdToItemIds");
static_assert(sizeof(FSDSCommerceEpicItemIdToItemIds) == 0x000020, "Wrong size on FSDSCommerceEpicItemIdToItemIds");
static_assert(offsetof(FSDSCommerceEpicItemIdToItemIds, EpicItemId) == 0x000000, "Member 'FSDSCommerceEpicItemIdToItemIds::EpicItemId' has a wrong offset!");
static_assert(offsetof(FSDSCommerceEpicItemIdToItemIds, GppItemIds) == 0x000010, "Member 'FSDSCommerceEpicItemIdToItemIds::GppItemIds' has a wrong offset!");

// ScriptStruct SDSOnline.SDSCommerceXboxStoreIdToItemIds
// 0x0020 (0x0020 - 0x0000)
struct FSDSCommerceXboxStoreIdToItemIds final
{
public:
	class FString                                 StoreId;                                           // 0x0000(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	TArray<class FString>                         ItemIds;                                           // 0x0010(0x0010)(Edit, ZeroConstructor, NativeAccessSpecifierPublic)
};
static_assert(alignof(FSDSCommerceXboxStoreIdToItemIds) == 0x000008, "Wrong alignment on FSDSCommerceXboxStoreIdToItemIds");
static_assert(sizeof(FSDSCommerceXboxStoreIdToItemIds) == 0x000020, "Wrong size on FSDSCommerceXboxStoreIdToItemIds");
static_assert(offsetof(FSDSCommerceXboxStoreIdToItemIds, StoreId) == 0x000000, "Member 'FSDSCommerceXboxStoreIdToItemIds::StoreId' has a wrong offset!");
static_assert(offsetof(FSDSCommerceXboxStoreIdToItemIds, ItemIds) == 0x000010, "Member 'FSDSCommerceXboxStoreIdToItemIds::ItemIds' has a wrong offset!");

// ScriptStruct SDSOnline.SDSCommerceSteamAppIdToItemIds
// 0x0018 (0x0018 - 0x0000)
struct FSDSCommerceSteamAppIdToItemIds final
{
public:
	uint32                                        AppId;                                             // 0x0000(0x0004)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_4[0x4];                                        // 0x0004(0x0004)(Fixing Size After Last Property [ Dumper-7 ])
	TArray<class FString>                         ItemIds;                                           // 0x0008(0x0010)(Edit, ZeroConstructor, NativeAccessSpecifierPublic)
};
static_assert(alignof(FSDSCommerceSteamAppIdToItemIds) == 0x000008, "Wrong alignment on FSDSCommerceSteamAppIdToItemIds");
static_assert(sizeof(FSDSCommerceSteamAppIdToItemIds) == 0x000018, "Wrong size on FSDSCommerceSteamAppIdToItemIds");
static_assert(offsetof(FSDSCommerceSteamAppIdToItemIds, AppId) == 0x000000, "Member 'FSDSCommerceSteamAppIdToItemIds::AppId' has a wrong offset!");
static_assert(offsetof(FSDSCommerceSteamAppIdToItemIds, ItemIds) == 0x000008, "Member 'FSDSCommerceSteamAppIdToItemIds::ItemIds' has a wrong offset!");

// ScriptStruct SDSOnline.SDSCommercePlayStationLocalEntitlementToItemIds
// 0x0020 (0x0020 - 0x0000)
struct FSDSCommercePlayStationLocalEntitlementToItemIds final
{
public:
	class FString                                 LocalEntitlementId;                                // 0x0000(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	TArray<class FString>                         ItemIds;                                           // 0x0010(0x0010)(Edit, ZeroConstructor, NativeAccessSpecifierPublic)
};
static_assert(alignof(FSDSCommercePlayStationLocalEntitlementToItemIds) == 0x000008, "Wrong alignment on FSDSCommercePlayStationLocalEntitlementToItemIds");
static_assert(sizeof(FSDSCommercePlayStationLocalEntitlementToItemIds) == 0x000020, "Wrong size on FSDSCommercePlayStationLocalEntitlementToItemIds");
static_assert(offsetof(FSDSCommercePlayStationLocalEntitlementToItemIds, LocalEntitlementId) == 0x000000, "Member 'FSDSCommercePlayStationLocalEntitlementToItemIds::LocalEntitlementId' has a wrong offset!");
static_assert(offsetof(FSDSCommercePlayStationLocalEntitlementToItemIds, ItemIds) == 0x000010, "Member 'FSDSCommercePlayStationLocalEntitlementToItemIds::ItemIds' has a wrong offset!");

// ScriptStruct SDSOnline.SDSCommercePlayStationServiceLabelMapEntry
// 0x0020 (0x0020 - 0x0000)
struct FSDSCommercePlayStationServiceLabelMapEntry final
{
public:
	class FString                                 ContentId;                                         // 0x0000(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	TArray<int32>                                 ServiceLabels;                                     // 0x0010(0x0010)(Edit, ZeroConstructor, NativeAccessSpecifierPublic)
};
static_assert(alignof(FSDSCommercePlayStationServiceLabelMapEntry) == 0x000008, "Wrong alignment on FSDSCommercePlayStationServiceLabelMapEntry");
static_assert(sizeof(FSDSCommercePlayStationServiceLabelMapEntry) == 0x000020, "Wrong size on FSDSCommercePlayStationServiceLabelMapEntry");
static_assert(offsetof(FSDSCommercePlayStationServiceLabelMapEntry, ContentId) == 0x000000, "Member 'FSDSCommercePlayStationServiceLabelMapEntry::ContentId' has a wrong offset!");
static_assert(offsetof(FSDSCommercePlayStationServiceLabelMapEntry, ServiceLabels) == 0x000010, "Member 'FSDSCommercePlayStationServiceLabelMapEntry::ServiceLabels' has a wrong offset!");

// ScriptStruct SDSOnline.SDSEntitlementChange
// 0x0018 (0x0018 - 0x0000)
struct FSDSEntitlementChange final
{
public:
	class FString                                 ItemId;                                            // 0x0000(0x0010)(ZeroConstructor, Transient, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	int32                                         RemainingUsesChange;                               // 0x0010(0x0004)(ZeroConstructor, Transient, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	int32                                         NumConsumedChange;                                 // 0x0014(0x0004)(ZeroConstructor, Transient, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
static_assert(alignof(FSDSEntitlementChange) == 0x000008, "Wrong alignment on FSDSEntitlementChange");
static_assert(sizeof(FSDSEntitlementChange) == 0x000018, "Wrong size on FSDSEntitlementChange");
static_assert(offsetof(FSDSEntitlementChange, ItemId) == 0x000000, "Member 'FSDSEntitlementChange::ItemId' has a wrong offset!");
static_assert(offsetof(FSDSEntitlementChange, RemainingUsesChange) == 0x000010, "Member 'FSDSEntitlementChange::RemainingUsesChange' has a wrong offset!");
static_assert(offsetof(FSDSEntitlementChange, NumConsumedChange) == 0x000014, "Member 'FSDSEntitlementChange::NumConsumedChange' has a wrong offset!");

// ScriptStruct SDSOnline.SDSLoginInfo
// 0x0028 (0x0028 - 0x0000)
struct FSDSLoginInfo final
{
public:
	class FString                                 Username;                                          // 0x0000(0x0010)(ZeroConstructor, Transient, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	class FString                                 Password;                                          // 0x0010(0x0010)(ZeroConstructor, Transient, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_20[0x8];                                       // 0x0020(0x0008)(Fixing Struct Size After Last Property [ Dumper-7 ])
};
static_assert(alignof(FSDSLoginInfo) == 0x000008, "Wrong alignment on FSDSLoginInfo");
static_assert(sizeof(FSDSLoginInfo) == 0x000028, "Wrong size on FSDSLoginInfo");
static_assert(offsetof(FSDSLoginInfo, Username) == 0x000000, "Member 'FSDSLoginInfo::Username' has a wrong offset!");
static_assert(offsetof(FSDSLoginInfo, Password) == 0x000010, "Member 'FSDSLoginInfo::Password' has a wrong offset!");

// ScriptStruct SDSOnline.GPPSettingsOverrideEnvironment
// 0x0030 (0x0030 - 0x0000)
struct FGPPSettingsOverrideEnvironment final
{
public:
	class FString                                 ClientId;                                          // 0x0000(0x0010)(Edit, ZeroConstructor, Config, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	class FString                                 ClientSecret;                                      // 0x0010(0x0010)(Edit, ZeroConstructor, Config, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	class FString                                 RedirectURI;                                       // 0x0020(0x0010)(Edit, ZeroConstructor, Config, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
static_assert(alignof(FGPPSettingsOverrideEnvironment) == 0x000008, "Wrong alignment on FGPPSettingsOverrideEnvironment");
static_assert(sizeof(FGPPSettingsOverrideEnvironment) == 0x000030, "Wrong size on FGPPSettingsOverrideEnvironment");
static_assert(offsetof(FGPPSettingsOverrideEnvironment, ClientId) == 0x000000, "Member 'FGPPSettingsOverrideEnvironment::ClientId' has a wrong offset!");
static_assert(offsetof(FGPPSettingsOverrideEnvironment, ClientSecret) == 0x000010, "Member 'FGPPSettingsOverrideEnvironment::ClientSecret' has a wrong offset!");
static_assert(offsetof(FGPPSettingsOverrideEnvironment, RedirectURI) == 0x000020, "Member 'FGPPSettingsOverrideEnvironment::RedirectURI' has a wrong offset!");

// ScriptStruct SDSOnline.GPPSettingsOverride
// 0x0090 (0x0090 - 0x0000)
struct FGPPSettingsOverride final
{
public:
	struct FGPPSettingsOverrideEnvironment        Dev;                                               // 0x0000(0x0030)(Edit, Config, NativeAccessSpecifierPublic)
	struct FGPPSettingsOverrideEnvironment        Cert;                                              // 0x0030(0x0030)(Edit, Config, NativeAccessSpecifierPublic)
	struct FGPPSettingsOverrideEnvironment        LIVE;                                              // 0x0060(0x0030)(Edit, Config, NativeAccessSpecifierPublic)
};
static_assert(alignof(FGPPSettingsOverride) == 0x000008, "Wrong alignment on FGPPSettingsOverride");
static_assert(sizeof(FGPPSettingsOverride) == 0x000090, "Wrong size on FGPPSettingsOverride");
static_assert(offsetof(FGPPSettingsOverride, Dev) == 0x000000, "Member 'FGPPSettingsOverride::Dev' has a wrong offset!");
static_assert(offsetof(FGPPSettingsOverride, Cert) == 0x000030, "Member 'FGPPSettingsOverride::Cert' has a wrong offset!");
static_assert(offsetof(FGPPSettingsOverride, LIVE) == 0x000060, "Member 'FGPPSettingsOverride::LIVE' has a wrong offset!");

// ScriptStruct SDSOnline.SDSStat
// 0x0020 (0x0020 - 0x0000)
struct FSDSStat final
{
public:
	ESDSStatSource                                Source;                                            // 0x0000(0x0001)(ZeroConstructor, Transient, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_1[0x7];                                        // 0x0001(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	class FString                                 Name;                                              // 0x0008(0x0010)(ZeroConstructor, Transient, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	double                                        Value;                                             // 0x0018(0x0008)(ZeroConstructor, Transient, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
static_assert(alignof(FSDSStat) == 0x000008, "Wrong alignment on FSDSStat");
static_assert(sizeof(FSDSStat) == 0x000020, "Wrong size on FSDSStat");
static_assert(offsetof(FSDSStat, Source) == 0x000000, "Member 'FSDSStat::Source' has a wrong offset!");
static_assert(offsetof(FSDSStat, Name) == 0x000008, "Member 'FSDSStat::Name' has a wrong offset!");
static_assert(offsetof(FSDSStat, Value) == 0x000018, "Member 'FSDSStat::Value' has a wrong offset!");

// ScriptStruct SDSOnline.SDSStatUpdate
// 0x0028 (0x0028 - 0x0000)
struct FSDSStatUpdate final
{
public:
	ESDSStatSource                                Source;                                            // 0x0000(0x0001)(ZeroConstructor, Transient, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_1[0x7];                                        // 0x0001(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	class FString                                 Name;                                              // 0x0008(0x0010)(ZeroConstructor, Transient, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	double                                        ValueChange;                                       // 0x0018(0x0008)(ZeroConstructor, Transient, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	ESDSStatUpdateMethod                          UpdateMethod;                                      // 0x0020(0x0001)(ZeroConstructor, Transient, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_21[0x7];                                       // 0x0021(0x0007)(Fixing Struct Size After Last Property [ Dumper-7 ])
};
static_assert(alignof(FSDSStatUpdate) == 0x000008, "Wrong alignment on FSDSStatUpdate");
static_assert(sizeof(FSDSStatUpdate) == 0x000028, "Wrong size on FSDSStatUpdate");
static_assert(offsetof(FSDSStatUpdate, Source) == 0x000000, "Member 'FSDSStatUpdate::Source' has a wrong offset!");
static_assert(offsetof(FSDSStatUpdate, Name) == 0x000008, "Member 'FSDSStatUpdate::Name' has a wrong offset!");
static_assert(offsetof(FSDSStatUpdate, ValueChange) == 0x000018, "Member 'FSDSStatUpdate::ValueChange' has a wrong offset!");
static_assert(offsetof(FSDSStatUpdate, UpdateMethod) == 0x000020, "Member 'FSDSStatUpdate::UpdateMethod' has a wrong offset!");

// ScriptStruct SDSOnline.SDSStoreProduct_PlayStationEntry
// 0x0020 (0x0020 - 0x0000)
struct FSDSStoreProduct_PlayStationEntry final
{
public:
	class FString                                 AppId;                                             // 0x0000(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	class FString                                 ProductLabel;                                      // 0x0010(0x0010)(Edit, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
static_assert(alignof(FSDSStoreProduct_PlayStationEntry) == 0x000008, "Wrong alignment on FSDSStoreProduct_PlayStationEntry");
static_assert(sizeof(FSDSStoreProduct_PlayStationEntry) == 0x000020, "Wrong size on FSDSStoreProduct_PlayStationEntry");
static_assert(offsetof(FSDSStoreProduct_PlayStationEntry, AppId) == 0x000000, "Member 'FSDSStoreProduct_PlayStationEntry::AppId' has a wrong offset!");
static_assert(offsetof(FSDSStoreProduct_PlayStationEntry, ProductLabel) == 0x000010, "Member 'FSDSStoreProduct_PlayStationEntry::ProductLabel' has a wrong offset!");

}

