title: When is it appropriate to use a semicolon?
body: <p>I know that JavaScript (and thus TypeScript) support the omission of semicolons in many cases. Nevertheless I want to add semicolons to be unambiguous as suggested in <a href="https://basarat.gitbooks.io/typescript/content/docs/styleguide/styleguide.html#semicolons" rel="noreferrer">TypeScript Deep Dive</a></p>
  
  <p>However I cannot find a guide that lists where to use semicolon. For example look at the following code</p>
  
  <pre><code>class Person {
    private name: string; // A
  
    constructor(name: string) {
      this.name = name;
    }; // B
  
    public add = () =&gt; {
      return "C";
    }; // C
  }; // D
  </code></pre>
  
  <p>I'm fairly sure to use a semicolon at <em>A</em>. But what about <em>B</em>, <em>C</em>, <em>D</em> and all the other cases not covered by my example?</p>
  
  <p>I'm not asking where to omit semicolon but where to add them. An answer like <em>always</em> does not fulfill my needs since I cannot add a <code>;</code> after <code>public</code>. I want to know where exactly to put semicolon.</p>