ISubject<T>
Represents an object that is both an observable sequence as well as an observer.
            
                using System.Runtime.CompilerServices;
namespace System.Reactive.Subjects
{
    [System.Runtime.CompilerServices.NullableContext(2)]
    public interface ISubject<T> : ISubject<T, T>, IObserver<T>, IObservable<T>
    {
    }
}