using System;
using Cpp2IlInjected;

namespace MTAssets.UltimateLODSystem.MeshSimplifier.Internal
{
	// Token: 0x02000615 RID: 1557
	[Token(Token = "0x2000615")]
	internal class UVChannels<TVec>
	{
		// Token: 0x170003BE RID: 958
		// (get) Token: 0x0600310D RID: 12557 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x170003BE")]
		public TVec[][] Data
		{
			[Token(Token = "0x600310D")]
			[Address(RVA = "0x3F32C0", Offset = "0x3F20C0", VA = "0x1803F32C0")]
			get
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}
		}

		// Token: 0x170003BF RID: 959
		[Token(Token = "0x170003BF")]
		public ResizableArray<TVec> this[int index]
		{
			[Token(Token = "0x600310E")]
			[Address(RVA = "0x521C30", Offset = "0x520A30", VA = "0x180521C30")]
			get
			{
				return this.channels[index];
			}
			[Token(Token = "0x600310F")]
			[Address(RVA = "0x7BF570", Offset = "0x7BE370", VA = "0x1807BF570")]
			set
			{
				throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
			}
		}

		// Token: 0x06003110 RID: 12560 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6003110")]
		[Address(RVA = "0x7BF3E0", Offset = "0x7BE1E0", VA = "0x1807BF3E0")]
		public UVChannels()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06003111 RID: 12561 RVA: 0x00066DC8 File Offset: 0x00064FC8
		[Token(Token = "0x6003111")]
		[Address(RVA = "0x7BF010", Offset = "0x7BDE10", VA = "0x1807BF010")]
		public void Resize(int capacity, bool trimExess = false)
		{
			int num = 0;
			ResizableArray resizableArray = this.channels[num];
			if (resizableArray != 0)
			{
				int num2 = 0;
				resizableArray.Resize(capacity, trimExess, num2 != 0);
			}
			num++;
		}

		// Token: 0x06003112 RID: 12562 RVA: 0x000020D3 File Offset: 0x000002D3
		// Note: this type is marked as 'beforefieldinit'.
		[Token(Token = "0x6003112")]
		[Address(RVA = "0x7BF200", Offset = "0x7BE000", VA = "0x1807BF200")]
		static UVChannels()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x04003AE0 RID: 15072
		[Token(Token = "0x4003AE0")]
		private static readonly int UVChannelCount;

		// Token: 0x04003AE1 RID: 15073
		[FieldOffset(Offset = "0x0")]
		[Token(Token = "0x4003AE1")]
		private ResizableArray<TVec>[] channels;

		// Token: 0x04003AE2 RID: 15074
		[FieldOffset(Offset = "0x0")]
		[Token(Token = "0x4003AE2")]
		private TVec[][] channelsData;
	}
}
