// ReSharper disable UnusedMember.Global namespace TeamCity.Docker { using System.Collections.Generic; using System.IO; using IoC; internal interface IFileSystem { [NotNull] string UniqueName { get; } bool IsDirectoryExist([NotNull] string path); bool IsFileExist([NotNull] string path); [NotNull] IEnumerable EnumerateFileSystemEntries([NotNull] string path, [NotNull] string searchPattern = "*.*"); [NotNull] IEnumerable ReadLines([NotNull] string path); [NotNull] string ReadFile([NotNull] string path); void WriteFile([NotNull] string path, [NotNull] string content); void WriteLines([NotNull] string path, [NotNull] IEnumerable lines); [NotNull] Stream OpenRead([NotNull] string path); [NotNull] Stream OpenWrite([NotNull] string path); } }