using System; using System.Collections.Generic; namespace Cryville.Crtr.Browsing { public interface IResourceManager { int ItemCount { get; } ResourceItemMeta GetItemMeta(int id); T GetItemDetail(int id); string GetItemPath(int id); bool ImportItemFrom(string path); string[] GetSupportedFormats(); IReadOnlyDictionary GetPresetPaths(); event Action ItemChanged; } public interface IPathedResourceManager : IResourceManager { string[] CurrentDirectory { get; } void ChangeDirectory(string[] dir); void OpenDirectory(int id); void ReturnToDirectory(int id); } }