title: where to put interfaces and type aliases
body: <p>I use custom interfaces and type aliases in my <code>angular2</code> project. For example, I'm implementing a component that shows a products list, so I need to define  <code>Product</code> interface:</p>
  
  <pre><code>export interface Product {
      id: number;
      name: string;
      price: number;
  }
  </code></pre>
  
  <p>Now I need a place to put interfaces into. I'm thinking it should be within a components folder. I've also peeked inside the sources, and angular seems to put all interfaces into <code>facade</code> folder. So I ended up with the following structure:</p>
  
  <pre><code>components
  |
  |--- product-list
       |
       |--- facade
       |    |
       |    |--- product.ts
       |
       |--- product-list.component.ts
       |--- product-list.component.html
       |--- product-list.component.css
  </code></pre>
  
  <p>The interface is used like this:</p>
  
  <pre><code>export class RowComponent implements OnInit {
      @Input() product: Product;
      @Output() productRemoved: EventEmitter&lt;ProductRemoved&gt; = new EventEmitter();
  
      constructor() {
      }
  </code></pre>
  
  <p>Is this a viable approach? Are there any styles guides specific to the matter in question?</p>