#if NETFX

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

namespace IWshRuntimeLibrary
{
	// Token: 0x02000004 RID: 4
	[Guid("F935DC27-1CF0-11D0-ADB9-00C04FD58A0B")]
	[DefaultMember("Item")]
	[TypeLibType(4160)]
	[ComImport]
	internal interface IWshCollection : IEnumerable
	{
		// Token: 0x06000017 RID: 23
		[DispId(0)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.Struct)]
		object Item([MarshalAs(UnmanagedType.Struct)] [In] ref object Index);

		// Token: 0x06000018 RID: 24
		[DispId(1)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		int Count();

		// Token: 0x17000007 RID: 7
		// (get) Token: 0x06000019 RID: 25
		[DispId(2)]
		int length { [DispId(2)] [MethodImpl(MethodImplOptions.InternalCall)] get; }

		// Token: 0x0600001A RID: 26
		[DispId(-4)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(EnumeratorToEnumVariantMarshaler))]
		IEnumerator GetEnumerator();
	}
}

#endif