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

// Token: 0x02000181 RID: 385
public class IItemController : Il2CppObjectBase
{
	// Token: 0x06004766 RID: 18278 RVA: 0x0011CBAC File Offset: 0x0011ADAC
	[CallerCount(0)]
	public unsafe virtual void SelectItemLeftward()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IItemController.NativeMethodInfoPtr_SelectItemLeftward_Public_Abstract_Virtual_New_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004767 RID: 18279 RVA: 0x0011CBFC File Offset: 0x0011ADFC
	[CallerCount(0)]
	public unsafe virtual void SelectItemRightward()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IItemController.NativeMethodInfoPtr_SelectItemRightward_Public_Abstract_Virtual_New_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004768 RID: 18280 RVA: 0x0011CC4C File Offset: 0x0011AE4C
	[CallerCount(0)]
	public unsafe virtual void SelectItem(int index)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref index;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IItemController.NativeMethodInfoPtr_SelectItem_Public_Abstract_Virtual_New_Void_Int32_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06004769 RID: 18281 RVA: 0x0011CCAC File Offset: 0x0011AEAC
	[CallerCount(0)]
	public unsafe virtual void UseItem()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IItemController.NativeMethodInfoPtr_UseItem_Public_Abstract_Virtual_New_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x0600476A RID: 18282 RVA: 0x0011CCFC File Offset: 0x0011AEFC
	[CallerCount(0)]
	public unsafe virtual void DropItem()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), IItemController.NativeMethodInfoPtr_DropItem_Public_Abstract_Virtual_New_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x0600476B RID: 18283 RVA: 0x0011CD4C File Offset: 0x0011AF4C
	// Note: this type is marked as 'beforefieldinit'.
	static IItemController()
	{
		Il2CppClassPointerStore<IItemController>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "IItemController");
		IItemController.NativeMethodInfoPtr_SelectItemLeftward_Public_Abstract_Virtual_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IItemController>.NativeClassPtr, 100668031);
		IItemController.NativeMethodInfoPtr_SelectItemRightward_Public_Abstract_Virtual_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IItemController>.NativeClassPtr, 100668032);
		IItemController.NativeMethodInfoPtr_SelectItem_Public_Abstract_Virtual_New_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IItemController>.NativeClassPtr, 100668033);
		IItemController.NativeMethodInfoPtr_UseItem_Public_Abstract_Virtual_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IItemController>.NativeClassPtr, 100668034);
		IItemController.NativeMethodInfoPtr_DropItem_Public_Abstract_Virtual_New_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<IItemController>.NativeClassPtr, 100668035);
	}

	// Token: 0x0600476C RID: 18284 RVA: 0x000FB296 File Offset: 0x000F9496
	public IItemController(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x04002F33 RID: 12083
	private static readonly IntPtr NativeMethodInfoPtr_SelectItemLeftward_Public_Abstract_Virtual_New_Void_0;

	// Token: 0x04002F34 RID: 12084
	private static readonly IntPtr NativeMethodInfoPtr_SelectItemRightward_Public_Abstract_Virtual_New_Void_0;

	// Token: 0x04002F35 RID: 12085
	private static readonly IntPtr NativeMethodInfoPtr_SelectItem_Public_Abstract_Virtual_New_Void_Int32_0;

	// Token: 0x04002F36 RID: 12086
	private static readonly IntPtr NativeMethodInfoPtr_UseItem_Public_Abstract_Virtual_New_Void_0;

	// Token: 0x04002F37 RID: 12087
	private static readonly IntPtr NativeMethodInfoPtr_DropItem_Public_Abstract_Virtual_New_Void_0;
}
