using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using UnityEngine;

// Token: 0x020001F6 RID: 502
[Token(Token = "0x20001F6")]
[Serializable]
public abstract class UnitySerializedDictionary<TKey, TValue> : Dictionary<TKey, TValue>, ISerializationCallbackReceiver
{
	// Token: 0x0600140A RID: 5130 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600140A")]
	[Address(RVA = "0x7C32C0", Offset = "0x7C20C0", VA = "0x1807C32C0", Slot = "36")]
	void ISerializationCallbackReceiver.OnAfterDeserialize()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600140B RID: 5131 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600140B")]
	[Address(RVA = "0x7C3500", Offset = "0x7C2300", VA = "0x1807C3500", Slot = "35")]
	void ISerializationCallbackReceiver.OnBeforeSerialize()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600140C RID: 5132 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600140C")]
	[Address(RVA = "0x7C3940", Offset = "0x7C2740", VA = "0x1807C3940")]
	protected UnitySerializedDictionary()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x04001F27 RID: 7975
	[FieldOffset(Offset = "0x0")]
	[Token(Token = "0x4001F27")]
	[SerializeField]
	private List<TKey> keyData;

	// Token: 0x04001F28 RID: 7976
	[FieldOffset(Offset = "0x0")]
	[Token(Token = "0x4001F28")]
	[SerializeField]
	private List<TValue> valueData;
}
