using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using Machinations.FromFlash.graph;
using Machinations.FromFlash.machinations.model;

namespace Machinations.Log
{
    /// <summary>
    /// Interface for log
    /// </summary>
    public interface ILog
    {
        ObservableCollection<ActionLog> Actions { get; }

        int Step { get; set; }

        void Log(GraphNode node, ActivationMode cause);

        void DeleteFrom(int step);
        void Reset();
    }
}