title: Why are some Typescript module names given as strings?
body: <p>Typically, Typescript modules are declared like</p>
  
  <pre><code>declare module MyModule {
       ....
  }
  </code></pre>
  
  <p>but sometimes I also see it like </p>
  
  <pre><code>declare module "MyModule" {
       ....
  }
  </code></pre>
  
  <p>I am wondering what is the purpose of giving the name as a string?</p>
  
  <p>I checked in the <a href="https://www.typescriptlang.org/docs/handbook/writing-declaration-files.html" rel="nofollow">Typescript docs and found</a> </p>
  
  <blockquote>
    <p>This is a common pattern for modules whose imported entities are callable functions</p>
  </blockquote>
  
  <p>I tried compiling both <code>MyModule</code> and <code>"MyModule"</code> and they compile to the same thing. Does this mean that with or without quotes are equivalent, and deciding to use them is just like using capital letters for class names, or starting interface names with <code>I</code> etc.?</p>