#pragma once

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

// Package: RedpointEOSAuth

#include "Basic.hpp"

#include "RedpointEOSAuth_classes.hpp"
#include "RedpointEOSAuth_parameters.hpp"


SDK_NAMESPACE_START

// Function RedpointEOSAuth.EOSUserInterface_EnterDevicePinCode.SetupUserInterface
// (Native, Event, Public, BlueprintCallable, BlueprintEvent)
// Parameters:
// class UEOSUserInterface_EnterDevicePinCode_Context*Context                                                (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// const class FString&                    VerificationUrl                                        (Parm, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// const class FString&                    PinCode                                                (Parm, ZeroConstructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void IEOSUserInterface_EnterDevicePinCode::SetupUserInterface(class UEOSUserInterface_EnterDevicePinCode_Context* Context, const class FString& VerificationUrl, const class FString& PinCode)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = AsUObject()->Class->GetFunction("EOSUserInterface_EnterDevicePinCode", "SetupUserInterface");

	Params::EOSUserInterface_EnterDevicePinCode_SetupUserInterface Parms{};

	Parms.Context = Context;
	Parms.VerificationUrl = std::move(VerificationUrl);
	Parms.PinCode = std::move(PinCode);

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	AsUObject()->ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function RedpointEOSAuth.EOSUserInterface_EnterDevicePinCode_Context.CancelLogin
// (Native, Public, BlueprintCallable)

void UEOSUserInterface_EnterDevicePinCode_Context::CancelLogin()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("EOSUserInterface_EnterDevicePinCode_Context", "CancelLogin");

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, nullptr);

	Func->FunctionFlags = Flgs;
}


// Function RedpointEOSAuth.EOSUserInterface_SignInOrCreateAccount.SetupUserInterface
// (Native, Event, Public, BlueprintCallable, BlueprintEvent)
// Parameters:
// class UEOSUserInterface_SignInOrCreateAccount_Context*Context                                                (Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void IEOSUserInterface_SignInOrCreateAccount::SetupUserInterface(class UEOSUserInterface_SignInOrCreateAccount_Context* Context)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = AsUObject()->Class->GetFunction("EOSUserInterface_SignInOrCreateAccount", "SetupUserInterface");

	Params::EOSUserInterface_SignInOrCreateAccount_SetupUserInterface Parms{};

	Parms.Context = Context;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	AsUObject()->ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function RedpointEOSAuth.EOSUserInterface_SignInOrCreateAccount_Context.SelectChoice
// (Native, Public, BlueprintCallable)
// Parameters:
// EEOSUserInterface_SignInOrCreateAccount_ChoiceSelectedChoice                                         (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void UEOSUserInterface_SignInOrCreateAccount_Context::SelectChoice(EEOSUserInterface_SignInOrCreateAccount_Choice SelectedChoice)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("EOSUserInterface_SignInOrCreateAccount_Context", "SelectChoice");

	Params::EOSUserInterface_SignInOrCreateAccount_Context_SelectChoice Parms{};

	Parms.SelectedChoice = SelectedChoice;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	UObject::ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function RedpointEOSAuth.RedpointEOSAuthWidgetFactory.ConstructAuthWidget
// (Native, Event, Public, BlueprintEvent)
// Parameters:
// TSubclassOf<class UUserWidget>          WidgetClass                                            (Parm, ZeroConstructor, NoDestructor, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// int32                                   LocalUserNum                                           (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// class UUserWidget*                      ReturnValue                                            (ExportObject, Parm, OutParm, ZeroConstructor, ReturnParm, InstancedReference, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

class UUserWidget* IRedpointEOSAuthWidgetFactory::ConstructAuthWidget(TSubclassOf<class UUserWidget> WidgetClass, int32 LocalUserNum)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = AsUObject()->Class->GetFunction("RedpointEOSAuthWidgetFactory", "ConstructAuthWidget");

	Params::RedpointEOSAuthWidgetFactory_ConstructAuthWidget Parms{};

	Parms.WidgetClass = WidgetClass;
	Parms.LocalUserNum = LocalUserNum;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	AsUObject()->ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;

	return Parms.ReturnValue;
}


// Function RedpointEOSAuth.RedpointEOSAuthWidgetFactory.DestructAuthWidget
// (Native, Event, Public, BlueprintEvent)
// Parameters:
// class UUserWidget*                      AuthWidget                                             (Parm, ZeroConstructor, InstancedReference, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void IRedpointEOSAuthWidgetFactory::DestructAuthWidget(class UUserWidget* AuthWidget)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = AsUObject()->Class->GetFunction("RedpointEOSAuthWidgetFactory", "DestructAuthWidget");

	Params::RedpointEOSAuthWidgetFactory_DestructAuthWidget Parms{};

	Parms.AuthWidget = AuthWidget;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	AsUObject()->ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


// Function RedpointEOSAuth.RedpointEOSAuthWidgetFactory.PresentAuthWidget
// (Native, Event, Public, BlueprintEvent)
// Parameters:
// class UUserWidget*                      AuthWidget                                             (Parm, ZeroConstructor, InstancedReference, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
// int32                                   LocalUserNum                                           (Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)

void IRedpointEOSAuthWidgetFactory::PresentAuthWidget(class UUserWidget* AuthWidget, int32 LocalUserNum)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = AsUObject()->Class->GetFunction("RedpointEOSAuthWidgetFactory", "PresentAuthWidget");

	Params::RedpointEOSAuthWidgetFactory_PresentAuthWidget Parms{};

	Parms.AuthWidget = AuthWidget;
	Parms.LocalUserNum = LocalUserNum;

	auto Flgs = Func->FunctionFlags;
	Func->FunctionFlags |= 0x400;

	AsUObject()->ProcessEvent(Func, &Parms);

	Func->FunctionFlags = Flgs;
}


SDK_NAMESPACE_END
