using System.Collections.ObjectModel; using System.ComponentModel; using ChunkyImageLib; using PixiEditor.AvaloniaUI.Models.Structures; using PixiEditor.ChangeableDocument.Changeables.Graph.Interfaces; using PixiEditor.Numerics; namespace PixiEditor.AvaloniaUI.Models.Handlers; public interface INodeHandler : INotifyPropertyChanged { public Guid Id { get; } public string NodeName { get; set; } public string InternalName { get; } public ObservableRangeCollection Inputs { get; } public ObservableRangeCollection Outputs { get; } public Surface ResultPreview { get; set; } public VecD PositionBindable { get; set; } public bool IsSelected { get; set; } public void TraverseBackwards(Func func); public void TraverseBackwards(Func func); public void TraverseBackwards(Func func); public void TraverseForwards(Func func); public void TraverseForwards(Func func); public void TraverseForwards(Func func); }