#if NETFX

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

namespace IWshRuntimeLibrary
{
	// Token: 0x0200001F RID: 31
	[Guid("2A0B9D10-4B87-11D3-A97A-00104B365C9F")]
	[TypeLibType(4288)]
	[ComImport]
	internal interface IFileSystem3 : IFileSystem
	{
		// Token: 0x1700005A RID: 90
		// (get) Token: 0x060000CC RID: 204
		[DispId(10010)]
		Drives Drives { [DispId(10010)] [MethodImpl(MethodImplOptions.InternalCall)] [return: MarshalAs(UnmanagedType.Interface)] get; }

		// Token: 0x060000CD RID: 205
		[DispId(10000)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.BStr)]
		string BuildPath([MarshalAs(UnmanagedType.BStr)] [In] string Path, [MarshalAs(UnmanagedType.BStr)] [In] string Name);

		// Token: 0x060000CE RID: 206
		[DispId(10004)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.BStr)]
		string GetDriveName([MarshalAs(UnmanagedType.BStr)] [In] string Path);

		// Token: 0x060000CF RID: 207
		[DispId(10005)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.BStr)]
		string GetParentFolderName([MarshalAs(UnmanagedType.BStr)] [In] string Path);

		// Token: 0x060000D0 RID: 208
		[DispId(10006)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.BStr)]
		string GetFileName([MarshalAs(UnmanagedType.BStr)] [In] string Path);

		// Token: 0x060000D1 RID: 209
		[DispId(10007)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.BStr)]
		string GetBaseName([MarshalAs(UnmanagedType.BStr)] [In] string Path);

		// Token: 0x060000D2 RID: 210
		[DispId(10008)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.BStr)]
		string GetExtensionName([MarshalAs(UnmanagedType.BStr)] [In] string Path);

		// Token: 0x060000D3 RID: 211
		[DispId(10002)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.BStr)]
		string GetAbsolutePathName([MarshalAs(UnmanagedType.BStr)] [In] string Path);

		// Token: 0x060000D4 RID: 212
		[DispId(10003)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.BStr)]
		string GetTempName();

		// Token: 0x060000D5 RID: 213
		[DispId(10015)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		bool DriveExists([MarshalAs(UnmanagedType.BStr)] [In] string DriveSpec);

		// Token: 0x060000D6 RID: 214
		[DispId(10016)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		bool FileExists([MarshalAs(UnmanagedType.BStr)] [In] string FileSpec);

		// Token: 0x060000D7 RID: 215
		[DispId(10017)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		bool FolderExists([MarshalAs(UnmanagedType.BStr)] [In] string FolderSpec);

		// Token: 0x060000D8 RID: 216
		[DispId(10011)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.Interface)]
		Drive GetDrive([MarshalAs(UnmanagedType.BStr)] [In] string DriveSpec);

		// Token: 0x060000D9 RID: 217
		[DispId(10012)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.Interface)]
		File GetFile([MarshalAs(UnmanagedType.BStr)] [In] string FilePath);

		// Token: 0x060000DA RID: 218
		[DispId(10013)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.Interface)]
		Folder GetFolder([MarshalAs(UnmanagedType.BStr)] [In] string FolderPath);

		// Token: 0x060000DB RID: 219
		[DispId(10014)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.Interface)]
		Folder GetSpecialFolder([ComAliasName("IWshRuntimeLibrary.SpecialFolderConst")] [In] SpecialFolderConst SpecialFolder);

		// Token: 0x060000DC RID: 220
		[DispId(1200)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		void DeleteFile([MarshalAs(UnmanagedType.BStr)] [In] string FileSpec, [In] bool Force = false);

		// Token: 0x060000DD RID: 221
		[DispId(1201)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		void DeleteFolder([MarshalAs(UnmanagedType.BStr)] [In] string FolderSpec, [In] bool Force = false);

		// Token: 0x060000DE RID: 222
		[DispId(1204)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		void MoveFile([MarshalAs(UnmanagedType.BStr)] [In] string Source, [MarshalAs(UnmanagedType.BStr)] [In] string Destination);

		// Token: 0x060000DF RID: 223
		[DispId(1205)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		void MoveFolder([MarshalAs(UnmanagedType.BStr)] [In] string Source, [MarshalAs(UnmanagedType.BStr)] [In] string Destination);

		// Token: 0x060000E0 RID: 224
		[DispId(1202)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		void CopyFile([MarshalAs(UnmanagedType.BStr)] [In] string Source, [MarshalAs(UnmanagedType.BStr)] [In] string Destination, [In] bool OverWriteFiles = true);

		// Token: 0x060000E1 RID: 225
		[DispId(1203)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		void CopyFolder([MarshalAs(UnmanagedType.BStr)] [In] string Source, [MarshalAs(UnmanagedType.BStr)] [In] string Destination, [In] bool OverWriteFiles = true);

		// Token: 0x060000E2 RID: 226
		[DispId(1120)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.Interface)]
		Folder CreateFolder([MarshalAs(UnmanagedType.BStr)] [In] string Path);

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

		// Token: 0x060000E4 RID: 228
		[DispId(1100)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.Interface)]
		TextStream OpenTextFile([MarshalAs(UnmanagedType.BStr)] [In] string FileName, [In] IOMode IOMode = IOMode.ForReading, [In] bool Create = false, [In] Tristate Format = Tristate.TristateFalse);

		// Token: 0x060000E5 RID: 229
		[DispId(20000)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.Interface)]
		TextStream GetStandardStream([ComAliasName("IWshRuntimeLibrary.StandardStreamTypes")] [In] StandardStreamTypes StandardStreamType, [In] bool Unicode = false);

		// Token: 0x060000E6 RID: 230
		[DispId(20010)]
		[MethodImpl(MethodImplOptions.InternalCall)]
		[return: MarshalAs(UnmanagedType.BStr)]
		string GetFileVersion([MarshalAs(UnmanagedType.BStr)] [In] string FileName);
	}
}

#endif