#pragma once

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

// Package: CommonInput

#include "Basic.hpp"

#include "InputCore_structs.hpp"
#include "SlateCore_structs.hpp"


namespace SDK
{

// Enum CommonInput.ECommonInputType
// NumValues: 0x0005
enum class ECommonInputType : uint8
{
	MouseAndKeyboard                         = 0,
	Gamepad                                  = 1,
	Touch                                    = 2,
	Count                                    = 3,
	ECommonInputType_MAX                     = 4,
};

// Enum CommonInput.ECommonInputMode
// NumValues: 0x0004
enum class ECommonInputMode : uint8
{
	Menu                                     = 0,
	Game                                     = 1,
	All                                      = 2,
	MAX                                      = 3,
};

// Enum CommonInput.ECommonInputEventFlowBehavior
// NumValues: 0x0004
enum class ECommonInputEventFlowBehavior : uint32
{
	BlockIfActive                            = 0,
	BlockIfHandled                           = 1,
	NeverBlock                               = 2,
	ECommonInputEventFlowBehavior_MAX        = 3,
};

// ScriptStruct CommonInput.CommonInputKeyBrushConfiguration
// 0x00D0 (0x00D0 - 0x0000)
struct FCommonInputKeyBrushConfiguration final
{
public:
	struct FKey                                   Key;                                               // 0x0000(0x0018)(Edit, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_18[0x8];                                       // 0x0018(0x0008)(Fixing Size After Last Property [ Dumper-7 ])
	struct FSlateBrush                            KeyBrush;                                          // 0x0020(0x00B0)(Edit, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FCommonInputKeyBrushConfiguration;

// ScriptStruct CommonInput.CommonInputKeySetBrushConfiguration
// 0x00C0 (0x00C0 - 0x0000)
struct FCommonInputKeySetBrushConfiguration final
{
public:
	TArray<struct FKey>                           Keys;                                              // 0x0000(0x0010)(Edit, ZeroConstructor, NativeAccessSpecifierPublic)
	struct FSlateBrush                            KeyBrush;                                          // 0x0010(0x00B0)(Edit, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FCommonInputKeySetBrushConfiguration;

// ScriptStruct CommonInput.InputDeviceIdentifierPair
// 0x0018 (0x0018 - 0x0000)
struct FInputDeviceIdentifierPair final
{
public:
	class FName                                   InputDeviceName;                                   // 0x0000(0x0008)(Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	class FString                                 HardwareDeviceIdentifier;                          // 0x0008(0x0010)(Edit, ZeroConstructor, DisableEditOnInstance, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FInputDeviceIdentifierPair;

// ScriptStruct CommonInput.InputHoldData
// 0x0008 (0x0008 - 0x0000)
struct FInputHoldData final
{
public:
	float                                         HoldTime;                                          // 0x0000(0x0004)(Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	float                                         HoldRollbackTime;                                  // 0x0004(0x0004)(Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FInputHoldData;

// ScriptStruct CommonInput.CommonInputPlatformBaseData
// 0x0038 (0x0038 - 0x0000)
struct FCommonInputPlatformBaseData final
{
public:
	uint8                                         Pad_0[0x8];                                        // 0x0000(0x0008)(Fixing Size After Last Property [ Dumper-7 ])
	ECommonInputType                              DefaultInputType;                                  // 0x0008(0x0001)(Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	bool                                          bSupportsMouseAndKeyboard;                         // 0x0009(0x0001)(Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	bool                                          bSupportsGamepad;                                  // 0x000A(0x0001)(Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	uint8                                         Pad_B[0x1];                                        // 0x000B(0x0001)(Fixing Size After Last Property [ Dumper-7 ])
	class FName                                   DefaultGamepadName;                                // 0x000C(0x0008)(Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	bool                                          bCanChangeGamepadType;                             // 0x0014(0x0001)(Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	bool                                          bSupportsTouch;                                    // 0x0015(0x0001)(Edit, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected)
	uint8                                         Pad_16[0x2];                                       // 0x0016(0x0002)(Fixing Size After Last Property [ Dumper-7 ])
	TArray<TSoftClassPtr<class UClass>>           ControllerData;                                    // 0x0018(0x0010)(Edit, ZeroConstructor, DisableEditOnInstance, Protected, UObjectWrapper, NativeAccessSpecifierProtected)
	TArray<TSubclassOf<class UCommonInputBaseControllerData>> ControllerDataClasses;                 // 0x0028(0x0010)(ZeroConstructor, Transient, Protected, UObjectWrapper, NativeAccessSpecifierProtected)
};
DUMPER7_ASSERTS_FCommonInputPlatformBaseData;

}

