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

// Token: 0x02000140 RID: 320
public class LanguageLabelAttribute : Attribute
{
	// Token: 0x17001814 RID: 6164
	// (get) Token: 0x060040AD RID: 16557 RVA: 0x000FE2D8 File Offset: 0x000FC4D8
	public unsafe string Text
	{
		[CallerCount(9)]
		[CachedScanResults(RefRangeStart = 7244, RefRangeEnd = 7253, XrefRangeStart = 7244, XrefRangeEnd = 7253, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		get
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(LanguageLabelAttribute.NativeMethodInfoPtr_get_Text_Public_get_String_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			return IL2CPP.Il2CppStringToManaged(intPtr);
		}
	}

	// Token: 0x060040AE RID: 16558 RVA: 0x000FE324 File Offset: 0x000FC524
	[CallerCount(20)]
	[CachedScanResults(RefRangeStart = 16647, RefRangeEnd = 16667, XrefRangeStart = 16647, XrefRangeEnd = 16667, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe LanguageLabelAttribute(string text)
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<LanguageLabelAttribute>.NativeClassPtr))
	{
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.ManagedStringToIl2Cpp(text);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(LanguageLabelAttribute.NativeMethodInfoPtr__ctor_Public_Void_String_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x060040AF RID: 16559 RVA: 0x000FE388 File Offset: 0x000FC588
	// Note: this type is marked as 'beforefieldinit'.
	static LanguageLabelAttribute()
	{
		Il2CppClassPointerStore<LanguageLabelAttribute>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "LanguageLabelAttribute");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<LanguageLabelAttribute>.NativeClassPtr);
		LanguageLabelAttribute.NativeFieldInfoPtr__Text_k__BackingField = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<LanguageLabelAttribute>.NativeClassPtr, "<Text>k__BackingField");
		LanguageLabelAttribute.NativeMethodInfoPtr_get_Text_Public_get_String_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<LanguageLabelAttribute>.NativeClassPtr, 100667212);
		LanguageLabelAttribute.NativeMethodInfoPtr__ctor_Public_Void_String_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<LanguageLabelAttribute>.NativeClassPtr, 100667213);
	}

	// Token: 0x060040B0 RID: 16560 RVA: 0x000FE3F4 File Offset: 0x000FC5F4
	public LanguageLabelAttribute(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17001813 RID: 6163
	// (get) Token: 0x060040B1 RID: 16561 RVA: 0x000FE400 File Offset: 0x000FC600
	// (set) Token: 0x060040B2 RID: 16562 RVA: 0x000FE429 File Offset: 0x000FC629
	public unsafe string _Text_k__BackingField
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(LanguageLabelAttribute.NativeFieldInfoPtr__Text_k__BackingField);
			return IL2CPP.Il2CppStringToManaged(*intPtr);
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(LanguageLabelAttribute.NativeFieldInfoPtr__Text_k__BackingField), IL2CPP.ManagedStringToIl2Cpp(value));
		}
	}

	// Token: 0x04002A11 RID: 10769
	private static readonly IntPtr NativeFieldInfoPtr__Text_k__BackingField;

	// Token: 0x04002A12 RID: 10770
	private static readonly IntPtr NativeMethodInfoPtr_get_Text_Public_get_String_0;

	// Token: 0x04002A13 RID: 10771
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_String_0;
}
