using System;

namespace Darkmatter.Core.Contracts.Features.History
{
    public interface IUndoStack
    {
        event Action OnStackChanged;
        bool CanUndo { get; }
        bool CanRedo { get; }
        void Push(ICommand cmd); // executes + appends
        void Undo();
        void Redo();
        void Clear();
    }
}