#if NETFX

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

namespace IWshRuntimeLibrary
{
	// Token: 0x02000028 RID: 40
	[ClassInterface(ClassInterfaceType.None)]
	[DefaultMember("Path")]
	[Guid("C7C3F5B3-88A3-11D0-ABCB-00A0C90FFFC0")]
	[ComImport]
	internal class FolderClass : IFolder, Folder
	{
		// // Token: 0x06000115 RID: 277
		// [MethodImpl(MethodImplOptions.InternalCall)]
		// internal extern FolderClass();

		// Token: 0x1700006A RID: 106
		// (get) Token: 0x06000116 RID: 278
		[DispId(0)]
		public virtual extern string Path { [DispId(0)] [MethodImpl(MethodImplOptions.InternalCall)] [return: MarshalAs(UnmanagedType.BStr)] get; }

		// Token: 0x1700006B RID: 107
		// (get) Token: 0x06000117 RID: 279
		// (set) Token: 0x06000118 RID: 280
		[DispId(1000)]
		public virtual extern string Name { [DispId(1000)] [MethodImpl(MethodImplOptions.InternalCall)] [return: MarshalAs(UnmanagedType.BStr)] get; [DispId(1000)] [MethodImpl(MethodImplOptions.InternalCall)] [param: MarshalAs(UnmanagedType.BStr)] set; }

		// Token: 0x1700006C RID: 108
		// (get) Token: 0x06000119 RID: 281
		[DispId(1002)]
		public virtual extern string ShortPath { [DispId(1002)] [MethodImpl(MethodImplOptions.InternalCall)] [return: MarshalAs(UnmanagedType.BStr)] get; }

		// Token: 0x1700006D RID: 109
		// (get) Token: 0x0600011A RID: 282
		[DispId(1001)]
		public virtual extern string ShortName { [DispId(1001)] [MethodImpl(MethodImplOptions.InternalCall)] [return: MarshalAs(UnmanagedType.BStr)] get; }

		// Token: 0x1700006E RID: 110
		// (get) Token: 0x0600011B RID: 283
		[DispId(1004)]
		public virtual extern Drive Drive { [DispId(1004)] [MethodImpl(MethodImplOptions.InternalCall)] [return: MarshalAs(UnmanagedType.Interface)] get; }

		// Token: 0x1700006F RID: 111
		// (get) Token: 0x0600011C RID: 284
		[DispId(1005)]
		public virtual extern Folder ParentFolder { [DispId(1005)] [MethodImpl(MethodImplOptions.InternalCall)] [return: MarshalAs(UnmanagedType.Interface)] get; }

		// Token: 0x17000070 RID: 112
		// (get) Token: 0x0600011D RID: 285
		// (set) Token: 0x0600011E RID: 286
		[DispId(1003)]
		[ComAliasName("IWshRuntimeLibrary.FileAttribute")]
		public virtual extern FileAttribute Attributes { [DispId(1003)] [MethodImpl(MethodImplOptions.InternalCall)] [return: ComAliasName("IWshRuntimeLibrary.FileAttribute")] get; [DispId(1003)] [MethodImpl(MethodImplOptions.InternalCall)] [param: ComAliasName("IWshRuntimeLibrary.FileAttribute")] set; }

		// Token: 0x17000071 RID: 113
		// (get) Token: 0x0600011F RID: 287
		[DispId(1006)]
		public virtual extern DateTime DateCreated { [DispId(1006)] [MethodImpl(MethodImplOptions.InternalCall)] get; }

		// Token: 0x17000072 RID: 114
		// (get) Token: 0x06000120 RID: 288
		[DispId(1007)]
		public virtual extern DateTime DateLastModified { [DispId(1007)] [MethodImpl(MethodImplOptions.InternalCall)] get; }

		// Token: 0x17000073 RID: 115
		// (get) Token: 0x06000121 RID: 289
		[DispId(1008)]
		public virtual extern DateTime DateLastAccessed { [DispId(1008)] [MethodImpl(MethodImplOptions.InternalCall)] get; }

		// Token: 0x17000074 RID: 116
		// (get) Token: 0x06000122 RID: 290
		[DispId(1010)]
		public virtual extern string Type { [DispId(1010)] [MethodImpl(MethodImplOptions.InternalCall)] [return: MarshalAs(UnmanagedType.BStr)] get; }

		// Token: 0x06000123 RID: 291
		[DispId(1201)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		public virtual extern void Delete([In] bool Force = false);

		// Token: 0x06000124 RID: 292
		[DispId(1203)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		public virtual extern void Copy([MarshalAs(UnmanagedType.BStr)] [In] string Destination, [In] bool OverWriteFiles = true);

		// Token: 0x06000125 RID: 293
		[DispId(1205)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		public virtual extern void Move([MarshalAs(UnmanagedType.BStr)] [In] string Destination);

		// Token: 0x17000075 RID: 117
		// (get) Token: 0x06000126 RID: 294
		[DispId(10000)]
		public virtual extern bool IsRootFolder { [DispId(10000)] [MethodImpl(MethodImplOptions.InternalCall)] get; }

		// Token: 0x17000076 RID: 118
		// (get) Token: 0x06000127 RID: 295
		[DispId(1009)]
		public virtual extern object Size { [DispId(1009)] [MethodImpl(MethodImplOptions.InternalCall)] [return: MarshalAs(UnmanagedType.Struct)] get; }

		// Token: 0x17000077 RID: 119
		// (get) Token: 0x06000128 RID: 296
		[DispId(10001)]
		public virtual extern Folders SubFolders { [DispId(10001)] [MethodImpl(MethodImplOptions.InternalCall)] [return: MarshalAs(UnmanagedType.Interface)] get; }

		// Token: 0x17000078 RID: 120
		// (get) Token: 0x06000129 RID: 297
		[DispId(10002)]
		public virtual extern Files Files { [DispId(10002)] [MethodImpl(MethodImplOptions.InternalCall)] [return: MarshalAs(UnmanagedType.Interface)] get; }

		// Token: 0x0600012A RID: 298
		[DispId(1101)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.Interface)]
		public virtual extern TextStream CreateTextFile([MarshalAs(UnmanagedType.BStr)] [In] string FileName, [In] bool Overwrite = true, [In] bool Unicode = false);
	}
}

#endif