title: Typescript: Get properties of extending class from parent class
body: <p>How can I get properties of a child class in an abstract class's method?</p>
  
  <pre class="lang-js prettyprint-override"><code>abstract class Parent {
    id: string;
  
    logProps() {
      // HOW can I log all properties of a child class
      // and their values? For example, the name.
    }
  }
  
  class Child extends Parent {
    name: string;
  
    constructor(name) {
      super();
      this.name = name;
    }
  }
  
  const child = new Child("Daniel");
  child.logProps();
  </code></pre>