title: Circular Type References in TypeScript
body: <p>I am new to typescript and am trying to understand how I can setup a circular reference between two types.  The reference need not be a full code reference, simply the interfaces, but with interfaces defined in separate files.  For example, let's say I have two interfaces: Parent and Child.  They are doubly-linked such that the parent has a collection of children and each child has a reference to the parent (as seen below).  How do I setup the imports or dependencies so that these can be defined in separate files?</p>
  
  <pre><code>interface Parent {
    children: Child[]
  }
  
  interface Child {
    parent: Parent
  }
  </code></pre>