using System; using System.Collections.Generic; namespace Cryville.Crtr.Browsing { public interface IResourceManager { int Count { get; } object this[int index] { get; } Uri GetItemUri(int index); event Action ItemChanged; bool IsReadOnly { get; } bool ImportFrom(Uri uri); void RemoveAt(int index); [Obsolete] string[] GetSupportedFormats(); [Obsolete] IReadOnlyDictionary GetPresetPaths(); void Activate(); void Deactivate(); } public interface IResourceManager : IResourceManager { new T this[int index] { get; } } public interface IPathedResourceManager : IResourceManager { event Action DirectoryChanged; IList CurrentDirectory { get; } void ChangeDirectory(IEnumerable dir); void OpenDirectory(int index); void ReturnToDirectory(int index); } }