using System; using System.Collections.Generic; using System.ComponentModel; using Artemis.Storage.Entities.Profile.Nodes; namespace Artemis.Core { public interface INode : INotifyPropertyChanged { string Name { get; } string Description { get; } bool IsExitNode { get; } public double X { get; set; } public double Y { get; set; } public object? Storage { get; set; } public IReadOnlyCollection Pins { get; } public IReadOnlyCollection PinCollections { get; } event EventHandler Resetting; void Initialize(INodeScript script); void Evaluate(); void Reset(); } }