using System; namespace Cryville.Crtr.Browsing.Actions { public interface IResourceAction { string Name { get; } int Priority { get; } bool CanInvoke(Uri uri, IResourceMeta resource); void Invoke(Uri uri, IResourceMeta resource); } public interface IResourceAction : IResourceAction where T : IResourceMeta { bool CanInvoke(Uri uri, T resource); void Invoke(Uri uri, T resource); } }