title: Return subject only for subscription
body: <p>my question is regarding returning a reference to a subject without allowing the receiver to do .next() on the subject.</p>
  
  <p>For instance, I have a service which contains a subject and can trigger new events on the subject</p>
  
  <pre><code>class ExampleService {
    private exampleSubject = new Subject&lt;boolean&gt;;
  
    // Ideally the only way to call next on the subject
    doNext() {
      this.exampleSubject.next(true);
    }
  
    getSubject() {
      // Ideally returning a reference to the subject but only with the 
      // ability to subscribe and listen for events, not to call .next()
      return this.exampleSubject;
    }
  }
  </code></pre>
  
  <p>Again, what I am looking for is a way to have other components call this service and get the subject but only be able to subscribe and listen for changes, they should not be able to make changes.</p>
  
  <pre><code>ExampleService.getSubject().subscribe(() =&gt; {
    //do something 
  }) // ok
  ExampleService.getSubject().next(true) // error/not allowed
  </code></pre>