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

// Token: 0x0200034A RID: 842
public class UIStackingManager : Object
{
	// Token: 0x06006A26 RID: 27174 RVA: 0x001AE0A4 File Offset: 0x001AC2A4
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 602913, RefRangeEnd = 602914, XrefRangeStart = 602907, XrefRangeEnd = 602913, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void AppendCanvas(GameCanvasBase canvas)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(canvas);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr_AppendCanvas_Public_Void_GameCanvasBase_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06006A27 RID: 27175 RVA: 0x001AE100 File Offset: 0x001AC300
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 602921, RefRangeEnd = 602922, XrefRangeStart = 602914, XrefRangeEnd = 602921, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void RemoveCanvas(GameCanvasBase canvas)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(canvas);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr_RemoveCanvas_Public_Void_GameCanvasBase_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06006A28 RID: 27176 RVA: 0x001AE15C File Offset: 0x001AC35C
	[CallerCount(2)]
	[CachedScanResults(RefRangeStart = 602925, RefRangeEnd = 602927, XrefRangeStart = 602922, XrefRangeEnd = 602925, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Init(UIStackingManager.UIStackingCommand cmdType)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref cmdType;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr_Init_Public_Void_UIStackingCommand_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06006A29 RID: 27177 RVA: 0x001AE1B0 File Offset: 0x001AC3B0
	[CallerCount(9)]
	[CachedScanResults(RefRangeStart = 352163, RefRangeEnd = 352172, XrefRangeStart = 352163, XrefRangeEnd = 352172, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Record()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr_Record_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006A2A RID: 27178 RVA: 0x001AE1F4 File Offset: 0x001AC3F4
	[CallerCount(6)]
	[CachedScanResults(RefRangeStart = 602931, RefRangeEnd = 602937, XrefRangeStart = 602927, XrefRangeEnd = 602931, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Stop()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr_Stop_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006A2B RID: 27179 RVA: 0x001AE238 File Offset: 0x001AC438
	[CallerCount(0)]
	public unsafe UIStackingManager.UIStackingCommand GetDefaultCommand()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr_GetDefaultCommand_Public_UIStackingCommand_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		return *IL2CPP.il2cpp_object_unbox(intPtr);
	}

	// Token: 0x06006A2C RID: 27180 RVA: 0x001AE288 File Offset: 0x001AC488
	[CallerCount(0)]
	public unsafe void SetCommand(UIStackingManager.UIStackingCommand cmdType)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref cmdType;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr_SetCommand_Public_Void_UIStackingCommand_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06006A2D RID: 27181 RVA: 0x001AE2DC File Offset: 0x001AC4DC
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 602937, RefRangeEnd = 602938, XrefRangeStart = 602937, XrefRangeEnd = 602937, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void ResetDefaultCommand()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr_ResetDefaultCommand_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006A2E RID: 27182 RVA: 0x001AE320 File Offset: 0x001AC520
	[CallerCount(2)]
	[CachedScanResults(RefRangeStart = 602952, RefRangeEnd = 602954, XrefRangeStart = 602938, XrefRangeEnd = 602952, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void ExecuteCommand()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr_ExecuteCommand_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006A2F RID: 27183 RVA: 0x001AE364 File Offset: 0x001AC564
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 602954, XrefRangeEnd = 602958, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void ClosePeekCanvas()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr_ClosePeekCanvas_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006A30 RID: 27184 RVA: 0x001AE3A8 File Offset: 0x001AC5A8
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 602962, RefRangeEnd = 602963, XrefRangeStart = 602958, XrefRangeEnd = 602962, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void ForceCloseCanvases(int times)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref times;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr_ForceCloseCanvases_Private_Void_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06006A31 RID: 27185 RVA: 0x001AE3FC File Offset: 0x001AC5FC
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 602976, RefRangeEnd = 602977, XrefRangeStart = 602963, XrefRangeEnd = 602976, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe UIStackingManager()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(UIStackingManager.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006A32 RID: 27186 RVA: 0x001AE448 File Offset: 0x001AC648
	// Note: this type is marked as 'beforefieldinit'.
	static UIStackingManager()
	{
		Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "UIStackingManager");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr);
		UIStackingManager.NativeFieldInfoPtr_canvasStack = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, "canvasStack");
		UIStackingManager.NativeFieldInfoPtr_pendingStack = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, "pendingStack");
		UIStackingManager.NativeFieldInfoPtr_currentCmdType = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, "currentCmdType");
		UIStackingManager.NativeFieldInfoPtr_defaultCmdType = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, "defaultCmdType");
		UIStackingManager.NativeFieldInfoPtr_isRecording = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, "isRecording");
		UIStackingManager.NativeMethodInfoPtr_AppendCanvas_Public_Void_GameCanvasBase_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671074);
		UIStackingManager.NativeMethodInfoPtr_RemoveCanvas_Public_Void_GameCanvasBase_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671075);
		UIStackingManager.NativeMethodInfoPtr_Init_Public_Void_UIStackingCommand_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671076);
		UIStackingManager.NativeMethodInfoPtr_Record_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671077);
		UIStackingManager.NativeMethodInfoPtr_Stop_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671078);
		UIStackingManager.NativeMethodInfoPtr_GetDefaultCommand_Public_UIStackingCommand_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671079);
		UIStackingManager.NativeMethodInfoPtr_SetCommand_Public_Void_UIStackingCommand_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671080);
		UIStackingManager.NativeMethodInfoPtr_ResetDefaultCommand_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671081);
		UIStackingManager.NativeMethodInfoPtr_ExecuteCommand_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671082);
		UIStackingManager.NativeMethodInfoPtr_ClosePeekCanvas_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671083);
		UIStackingManager.NativeMethodInfoPtr_ForceCloseCanvases_Private_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671084);
		UIStackingManager.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<UIStackingManager>.NativeClassPtr, 100671085);
	}

	// Token: 0x06006A33 RID: 27187 RVA: 0x0000A74C File Offset: 0x0000894C
	public UIStackingManager(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x1700247C RID: 9340
	// (get) Token: 0x06006A34 RID: 27188 RVA: 0x001AE5CC File Offset: 0x001AC7CC
	// (set) Token: 0x06006A35 RID: 27189 RVA: 0x001AE600 File Offset: 0x001AC800
	public unsafe Stack<GameCanvasBase> canvasStack
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIStackingManager.NativeFieldInfoPtr_canvasStack);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Stack<GameCanvasBase>(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIStackingManager.NativeFieldInfoPtr_canvasStack), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x1700247D RID: 9341
	// (get) Token: 0x06006A36 RID: 27190 RVA: 0x001AE628 File Offset: 0x001AC828
	// (set) Token: 0x06006A37 RID: 27191 RVA: 0x001AE65C File Offset: 0x001AC85C
	public unsafe Stack<GameCanvasBase> pendingStack
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIStackingManager.NativeFieldInfoPtr_pendingStack);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Stack<GameCanvasBase>(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIStackingManager.NativeFieldInfoPtr_pendingStack), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x1700247E RID: 9342
	// (get) Token: 0x06006A38 RID: 27192 RVA: 0x001AE684 File Offset: 0x001AC884
	// (set) Token: 0x06006A39 RID: 27193 RVA: 0x001AE6AC File Offset: 0x001AC8AC
	public unsafe UIStackingManager.UIStackingCommand currentCmdType
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIStackingManager.NativeFieldInfoPtr_currentCmdType);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIStackingManager.NativeFieldInfoPtr_currentCmdType)) = value;
		}
	}

	// Token: 0x1700247F RID: 9343
	// (get) Token: 0x06006A3A RID: 27194 RVA: 0x001AE6D0 File Offset: 0x001AC8D0
	// (set) Token: 0x06006A3B RID: 27195 RVA: 0x001AE6F8 File Offset: 0x001AC8F8
	public unsafe UIStackingManager.UIStackingCommand defaultCmdType
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIStackingManager.NativeFieldInfoPtr_defaultCmdType);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIStackingManager.NativeFieldInfoPtr_defaultCmdType)) = value;
		}
	}

	// Token: 0x17002480 RID: 9344
	// (get) Token: 0x06006A3C RID: 27196 RVA: 0x001AE71C File Offset: 0x001AC91C
	// (set) Token: 0x06006A3D RID: 27197 RVA: 0x001AE744 File Offset: 0x001AC944
	public unsafe bool isRecording
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIStackingManager.NativeFieldInfoPtr_isRecording);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(UIStackingManager.NativeFieldInfoPtr_isRecording)) = value;
		}
	}

	// Token: 0x04004670 RID: 18032
	private static readonly IntPtr NativeFieldInfoPtr_canvasStack;

	// Token: 0x04004671 RID: 18033
	private static readonly IntPtr NativeFieldInfoPtr_pendingStack;

	// Token: 0x04004672 RID: 18034
	private static readonly IntPtr NativeFieldInfoPtr_currentCmdType;

	// Token: 0x04004673 RID: 18035
	private static readonly IntPtr NativeFieldInfoPtr_defaultCmdType;

	// Token: 0x04004674 RID: 18036
	private static readonly IntPtr NativeFieldInfoPtr_isRecording;

	// Token: 0x04004675 RID: 18037
	private static readonly IntPtr NativeMethodInfoPtr_AppendCanvas_Public_Void_GameCanvasBase_0;

	// Token: 0x04004676 RID: 18038
	private static readonly IntPtr NativeMethodInfoPtr_RemoveCanvas_Public_Void_GameCanvasBase_0;

	// Token: 0x04004677 RID: 18039
	private static readonly IntPtr NativeMethodInfoPtr_Init_Public_Void_UIStackingCommand_0;

	// Token: 0x04004678 RID: 18040
	private static readonly IntPtr NativeMethodInfoPtr_Record_Public_Void_0;

	// Token: 0x04004679 RID: 18041
	private static readonly IntPtr NativeMethodInfoPtr_Stop_Public_Void_0;

	// Token: 0x0400467A RID: 18042
	private static readonly IntPtr NativeMethodInfoPtr_GetDefaultCommand_Public_UIStackingCommand_0;

	// Token: 0x0400467B RID: 18043
	private static readonly IntPtr NativeMethodInfoPtr_SetCommand_Public_Void_UIStackingCommand_0;

	// Token: 0x0400467C RID: 18044
	private static readonly IntPtr NativeMethodInfoPtr_ResetDefaultCommand_Public_Void_0;

	// Token: 0x0400467D RID: 18045
	private static readonly IntPtr NativeMethodInfoPtr_ExecuteCommand_Public_Void_0;

	// Token: 0x0400467E RID: 18046
	private static readonly IntPtr NativeMethodInfoPtr_ClosePeekCanvas_Private_Void_0;

	// Token: 0x0400467F RID: 18047
	private static readonly IntPtr NativeMethodInfoPtr_ForceCloseCanvases_Private_Void_Int32_0;

	// Token: 0x04004680 RID: 18048
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

	// Token: 0x0200034B RID: 843
	public enum UIStackingCommand
	{
		// Token: 0x04004682 RID: 18050
		Default,
		// Token: 0x04004683 RID: 18051
		Close,
		// Token: 0x04004684 RID: 18052
		ForceClose,
		// Token: 0x04004685 RID: 18053
		ForceCloseAll
	}
}
