using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using Il2CppInterop.Runtime.InteropTypes.Arrays;
using Il2CppSystem;
using MarsSDK;
using UnityEngine.UI;

// Token: 0x02000296 RID: 662
public class UIToggleHandler : UIHandlerBase
{
	// Token: 0x060059F4 RID: 23028 RVA: 0x0016AB38 File Offset: 0x00168D38
	[CallerCount(0)]
	public unsafe bool GetToggle()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIToggleHandler.NativeMethodInfoPtr_GetToggle_Public_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		return *IL2CPP.il2cpp_object_unbox(intPtr);
	}

	// Token: 0x060059F5 RID: 23029 RVA: 0x0016AB88 File Offset: 0x00168D88
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 565441, XrefRangeEnd = 565448, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Init(bool isToggle, Action<bool> valueChangedHandler)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref isToggle;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(valueChangedHandler);
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIToggleHandler.NativeMethodInfoPtr_Init_Public_Void_Boolean_Action_1_Boolean_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060059F6 RID: 23030 RVA: 0x0016ABF4 File Offset: 0x00168DF4
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 0, XrefRangeEnd = 0, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void SetToggleTextArray(Il2CppStringArray array = null)
	{
		if (array == null)
		{
			array = new Il2CppStringArray(0L);
		}
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(array);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIToggleHandler.NativeMethodInfoPtr_SetToggleTextArray_Public_Void_Il2CppStringArray_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x060059F7 RID: 23031 RVA: 0x0016AC64 File Offset: 0x00168E64
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 565448, XrefRangeEnd = 565462, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void OnSelect()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), UIToggleHandler.NativeMethodInfoPtr_OnSelect_Public_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060059F8 RID: 23032 RVA: 0x0016ACB4 File Offset: 0x00168EB4
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 565462, XrefRangeEnd = 565476, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void OnDeselect()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), UIToggleHandler.NativeMethodInfoPtr_OnDeselect_Public_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060059F9 RID: 23033 RVA: 0x0016AD04 File Offset: 0x00168F04
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 565476, XrefRangeEnd = 565480, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Submit()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIToggleHandler.NativeMethodInfoPtr_Submit_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060059FA RID: 23034 RVA: 0x0016AD48 File Offset: 0x00168F48
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 0, XrefRangeEnd = 0, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void SetLabel(string value)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.ManagedStringToIl2Cpp(value);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIToggleHandler.NativeMethodInfoPtr_SetLabel_Public_Void_String_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x060059FB RID: 23035 RVA: 0x0016ADA4 File Offset: 0x00168FA4
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 565480, XrefRangeEnd = 565504, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe UIToggleHandler()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIToggleHandler.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060059FC RID: 23036 RVA: 0x0016ADEF File Offset: 0x00168FEF
	public void SetToggleTextArray(params string[] array)
	{
		this.SetToggleTextArray(new Il2CppStringArray(array));
	}

	// Token: 0x060059FD RID: 23037 RVA: 0x0016AE00 File Offset: 0x00169000
	// Note: this type is marked as 'beforefieldinit'.
	static UIToggleHandler()
	{
		Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "UIToggleHandler");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr);
		UIToggleHandler.NativeFieldInfoPtr_label = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, "label");
		UIToggleHandler.NativeFieldInfoPtr_value = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, "value");
		UIToggleHandler.NativeFieldInfoPtr_isToggle = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, "isToggle");
		UIToggleHandler.NativeFieldInfoPtr_valueChangedHandler = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, "valueChangedHandler");
		UIToggleHandler.NativeFieldInfoPtr_toggleText = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, "toggleText");
		UIToggleHandler.NativeMethodInfoPtr_GetToggle_Public_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, 100669673);
		UIToggleHandler.NativeMethodInfoPtr_Init_Public_Void_Boolean_Action_1_Boolean_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, 100669674);
		UIToggleHandler.NativeMethodInfoPtr_SetToggleTextArray_Public_Void_Il2CppStringArray_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, 100669675);
		UIToggleHandler.NativeMethodInfoPtr_OnSelect_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, 100669676);
		UIToggleHandler.NativeMethodInfoPtr_OnDeselect_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, 100669677);
		UIToggleHandler.NativeMethodInfoPtr_Submit_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, 100669678);
		UIToggleHandler.NativeMethodInfoPtr_SetLabel_Public_Void_String_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, 100669679);
		UIToggleHandler.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIToggleHandler>.NativeClassPtr, 100669680);
	}

	// Token: 0x060059FE RID: 23038 RVA: 0x00146FEC File Offset: 0x001451EC
	public UIToggleHandler(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17001F5C RID: 8028
	// (get) Token: 0x060059FF RID: 23039 RVA: 0x0016AF34 File Offset: 0x00169134
	// (set) Token: 0x06005A00 RID: 23040 RVA: 0x0016AF68 File Offset: 0x00169168
	public unsafe Text label
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIToggleHandler.NativeFieldInfoPtr_label);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Text(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIToggleHandler.NativeFieldInfoPtr_label), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17001F5D RID: 8029
	// (get) Token: 0x06005A01 RID: 23041 RVA: 0x0016AF90 File Offset: 0x00169190
	// (set) Token: 0x06005A02 RID: 23042 RVA: 0x0016AFC4 File Offset: 0x001691C4
	public unsafe Text value
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIToggleHandler.NativeFieldInfoPtr_value);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Text(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIToggleHandler.NativeFieldInfoPtr_value), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17001F5E RID: 8030
	// (get) Token: 0x06005A03 RID: 23043 RVA: 0x0016AFEC File Offset: 0x001691EC
	// (set) Token: 0x06005A04 RID: 23044 RVA: 0x0016B014 File Offset: 0x00169214
	public unsafe bool isToggle
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIToggleHandler.NativeFieldInfoPtr_isToggle);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIToggleHandler.NativeFieldInfoPtr_isToggle)) = value;
		}
	}

	// Token: 0x17001F5F RID: 8031
	// (get) Token: 0x06005A05 RID: 23045 RVA: 0x0016B038 File Offset: 0x00169238
	// (set) Token: 0x06005A06 RID: 23046 RVA: 0x0016B06C File Offset: 0x0016926C
	public unsafe Action<bool> valueChangedHandler
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIToggleHandler.NativeFieldInfoPtr_valueChangedHandler);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Action<bool>(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIToggleHandler.NativeFieldInfoPtr_valueChangedHandler), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17001F60 RID: 8032
	// (get) Token: 0x06005A07 RID: 23047 RVA: 0x0016B094 File Offset: 0x00169294
	// (set) Token: 0x06005A08 RID: 23048 RVA: 0x0016B0C8 File Offset: 0x001692C8
	public unsafe Il2CppStringArray toggleText
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIToggleHandler.NativeFieldInfoPtr_toggleText);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Il2CppStringArray(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIToggleHandler.NativeFieldInfoPtr_toggleText), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x04003BAD RID: 15277
	private static readonly IntPtr NativeFieldInfoPtr_label;

	// Token: 0x04003BAE RID: 15278
	private static readonly IntPtr NativeFieldInfoPtr_value;

	// Token: 0x04003BAF RID: 15279
	private static readonly IntPtr NativeFieldInfoPtr_isToggle;

	// Token: 0x04003BB0 RID: 15280
	private static readonly IntPtr NativeFieldInfoPtr_valueChangedHandler;

	// Token: 0x04003BB1 RID: 15281
	private static readonly IntPtr NativeFieldInfoPtr_toggleText;

	// Token: 0x04003BB2 RID: 15282
	private static readonly IntPtr NativeMethodInfoPtr_GetToggle_Public_Boolean_0;

	// Token: 0x04003BB3 RID: 15283
	private static readonly IntPtr NativeMethodInfoPtr_Init_Public_Void_Boolean_Action_1_Boolean_0;

	// Token: 0x04003BB4 RID: 15284
	private static readonly IntPtr NativeMethodInfoPtr_SetToggleTextArray_Public_Void_Il2CppStringArray_0;

	// Token: 0x04003BB5 RID: 15285
	private static readonly IntPtr NativeMethodInfoPtr_OnSelect_Public_Virtual_Void_0;

	// Token: 0x04003BB6 RID: 15286
	private static readonly IntPtr NativeMethodInfoPtr_OnDeselect_Public_Virtual_Void_0;

	// Token: 0x04003BB7 RID: 15287
	private static readonly IntPtr NativeMethodInfoPtr_Submit_Public_Void_0;

	// Token: 0x04003BB8 RID: 15288
	private static readonly IntPtr NativeMethodInfoPtr_SetLabel_Public_Void_String_0;

	// Token: 0x04003BB9 RID: 15289
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
}
