using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using Il2CppSystem;

// Token: 0x020002EF RID: 751
public class MessageBoxHandlerData : Object
{
	// Token: 0x06006181 RID: 24961 RVA: 0x0018A534 File Offset: 0x00188734
	[CallerCount(30)]
	[CachedScanResults(RefRangeStart = 358912, RefRangeEnd = 358942, XrefRangeStart = 358912, XrefRangeEnd = 358942, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe MessageBoxHandlerData(string handlerText, Enum submissionSfx, Action handlerEvent)
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<MessageBoxHandlerData>.NativeClassPtr))
	{
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)3) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.ManagedStringToIl2Cpp(handlerText);
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.il2cpp_object_unbox(IL2CPP.Il2CppObjectBaseToPtrNotNull(submissionSfx));
		ptr[checked(unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(handlerEvent);
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(MessageBoxHandlerData.NativeMethodInfoPtr__ctor_Public_Void_String_Enum_Action_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006182 RID: 24962 RVA: 0x0018A5CC File Offset: 0x001887CC
	// Note: this type is marked as 'beforefieldinit'.
	static MessageBoxHandlerData()
	{
		Il2CppClassPointerStore<MessageBoxHandlerData>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "MessageBoxHandlerData");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<MessageBoxHandlerData>.NativeClassPtr);
		MessageBoxHandlerData.NativeFieldInfoPtr_handlerText = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MessageBoxHandlerData>.NativeClassPtr, "handlerText");
		MessageBoxHandlerData.NativeFieldInfoPtr_submissionSfx = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MessageBoxHandlerData>.NativeClassPtr, "submissionSfx");
		MessageBoxHandlerData.NativeFieldInfoPtr_handlerEvent = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<MessageBoxHandlerData>.NativeClassPtr, "handlerEvent");
		MessageBoxHandlerData.NativeMethodInfoPtr__ctor_Public_Void_String_Enum_Action_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<MessageBoxHandlerData>.NativeClassPtr, 100670334);
	}

	// Token: 0x06006183 RID: 24963 RVA: 0x0000A74C File Offset: 0x0000894C
	public MessageBoxHandlerData(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x1700219A RID: 8602
	// (get) Token: 0x06006184 RID: 24964 RVA: 0x0018A64C File Offset: 0x0018884C
	// (set) Token: 0x06006185 RID: 24965 RVA: 0x0018A675 File Offset: 0x00188875
	public unsafe string handlerText
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MessageBoxHandlerData.NativeFieldInfoPtr_handlerText);
			return IL2CPP.Il2CppStringToManaged(*intPtr);
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(MessageBoxHandlerData.NativeFieldInfoPtr_handlerText), IL2CPP.ManagedStringToIl2Cpp(value));
		}
	}

	// Token: 0x1700219B RID: 8603
	// (get) Token: 0x06006186 RID: 24966 RVA: 0x0018A69C File Offset: 0x0018889C
	// (set) Token: 0x06006187 RID: 24967 RVA: 0x0018A6CE File Offset: 0x001888CE
	public Enum submissionSfx
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MessageBoxHandlerData.NativeFieldInfoPtr_submissionSfx);
			return new Enum(IL2CPP.il2cpp_value_box(Il2CppClassPointerStore<Enum>.NativeClassPtr, intPtr));
		}
		set
		{
			cpblk(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MessageBoxHandlerData.NativeFieldInfoPtr_submissionSfx), IL2CPP.il2cpp_object_unbox(IL2CPP.Il2CppObjectBaseToPtr(value)), IL2CPP.il2cpp_class_value_size(Il2CppClassPointerStore<Enum>.NativeClassPtr, (UIntPtr)0));
		}
	}

	// Token: 0x1700219C RID: 8604
	// (get) Token: 0x06006188 RID: 24968 RVA: 0x0018A704 File Offset: 0x00188904
	// (set) Token: 0x06006189 RID: 24969 RVA: 0x0018A738 File Offset: 0x00188938
	public unsafe Action handlerEvent
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(MessageBoxHandlerData.NativeFieldInfoPtr_handlerEvent);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Action(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(MessageBoxHandlerData.NativeFieldInfoPtr_handlerEvent), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x040040D2 RID: 16594
	private static readonly IntPtr NativeFieldInfoPtr_handlerText;

	// Token: 0x040040D3 RID: 16595
	private static readonly IntPtr NativeFieldInfoPtr_submissionSfx;

	// Token: 0x040040D4 RID: 16596
	private static readonly IntPtr NativeFieldInfoPtr_handlerEvent;

	// Token: 0x040040D5 RID: 16597
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_String_Enum_Action_0;
}
