#if NETFX

using System;
using System.Collections;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.InteropServices.CustomMarshalers;

namespace IWshRuntimeLibrary
{
	// Token: 0x02000046 RID: 70
	[ClassInterface(ClassInterfaceType.None)]
	[Guid("F935DC2A-1CF0-11D0-ADB9-00C04FD58A0B")]
	[TypeLibType(16)]
	[ComImport]
	internal class IWshEnvironment_ClassClass : IWshEnvironment, IWshEnvironment_Class, IEnumerable
	{
		// // Token: 0x060001CA RID: 458
		// [MethodImpl(MethodImplOptions.InternalCall)]
		// internal extern IWshEnvironment_ClassClass();

		// Token: 0x170000B5 RID: 181
		[DispId(0)]
		public virtual extern string this[[MarshalAs(UnmanagedType.BStr)] [In] string Name]
		{
			[DispId(0)]
			[MethodImpl(MethodImplOptions.InternalCall)]
			[return: MarshalAs(UnmanagedType.BStr)]
			get;
			[DispId(0)]
			[MethodImpl(MethodImplOptions.InternalCall)]
			[param: MarshalAs(UnmanagedType.BStr)]
			set;
		}

		// Token: 0x060001CD RID: 461
		[DispId(1)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		public virtual extern int Count();

		// Token: 0x170000B6 RID: 182
		// (get) Token: 0x060001CE RID: 462
		[DispId(2)]
		public virtual extern int length { [DispId(2)] [MethodImpl(MethodImplOptions.InternalCall)] get; }

		// Token: 0x060001CF RID: 463
		[DispId(-4)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(EnumeratorToEnumVariantMarshaler))]
		public virtual extern IEnumerator GetEnumerator();

		// Token: 0x060001D0 RID: 464
		[DispId(1001)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		public virtual extern void Remove([MarshalAs(UnmanagedType.BStr)] [In] string Name);
	}
}

#endif