using System; namespace Avalonia.Data.Core.Plugins { /// /// Defines a plugin that handles the '^' stream binding operator. /// public interface IStreamPlugin { /// /// Checks whether this plugin handles the specified value. /// /// A weak reference to the value. /// True if the plugin can handle the value; otherwise false. bool Match(WeakReference reference); /// /// Starts producing output based on the specified value. /// /// A weak reference to the object. /// /// An observable that produces the output for the value. /// IObservable Start(WeakReference reference); } }