title: Inject all Services that implement some Interface
body: <p>Simple scenario:</p>
  
  <p>I have multiple Services that implement a common Interface. All those Services are registered within the <code>bootstrap</code> method.</p>
  
  <p>Now I'd like to have another Service, which injects all registered Services that implement the common Interface.</p>
  
  <p>i.e.</p>
  
  <pre><code>export interface MyInterface {
      foo(): void;
  }
  
  export class Service1 implements MyInterface {
      foo() { console.out("bar"); }
  }
  
  export class Service2 implements MyInterface {
      foo() { console.out("baz"); }
  }
  
  export class CollectorService {
      constructor(services:MyInterface[]) {
          services.forEach(s =&gt; s.foo());
      }
  }
  </code></pre>
  
  <p>Is that possible somehow?</p>