where to put interfaces and type aliases
<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>