using System;
using InABox.Core;

namespace InABox.Mobile
{
    public interface IShell
    {
        Guid ID { get; }
        ICoreRepository Parent { get; }

        bool IsChanged();
        void Save(string auditmessage);
        void Cancel();
    }

    public interface IShell<out TEntity>
        where TEntity : Entity, IRemotable, IPersistent 
    {
        TEntity Entity { get; }
    }
}