title: Need help defining correct types from react-leaflet for typescript
body: <p>I have a 'first' project trying to use react-scripts-ts and react-leaflet. </p>
  
  <p>I am trying to create the following class which seems like ti should be straight forward:</p>
  
  <pre><code>import {map, TileLayer, Popup, Marker } from 'react-leaflet';
  class LeafletMap extends React.Component {
    constructor () {
      super();
      this.state = {
        lat: 51.505,
        lng: -.09,
        zoom: 13
      };
    }
  
  render() {
      const position = [ this.state.lat, this.state.lng];
      return (
        &lt;Map center={position} zoom={this.state.zoom}&gt;
          &lt;TileLayer
            url="http://{s}.tile.osm.org/{z}/{x}/{y}.png"
            attribution="&amp;copy; &lt;a href='http://osm.org/copyright'&gt;OpenStreetMap&lt;/a&gt; contributors"
          /&gt;
          &lt;Marker position={position}&gt;
            &lt;Popup&gt;
              &lt;span&gt;A pretty CSS3 popup.&lt;br/&gt;Easily customizable.&lt;/span&gt;
            &lt;/Popup&gt;
          &lt;/Marker&gt;
        &lt;/Map&gt;
      );
    }
  }
  </code></pre>
  
  <p>The error I am getting amounts to </p>
  
  <blockquote>
    <p>Property 'lat' does not exist on type 'Readonly&lt;{}>'</p>
  </blockquote>
  
  <p>on assignment of lat and lng to position (TS2339) and similarly</p>
  
  <blockquote>
    <p>Type 'any[]' is not assignable to type '[number, number] | LatLng | LatLngLiteral | undefined'.</p>
  </blockquote>
  
  <p>On assigning position to center (TS2322).</p>
  
  <p>From what I can tell this is/was connected to the typescript version but I believe I have a new enough version this should not be the case.</p>
  
  <p>package.json:</p>
  
  <pre><code>{
    "name": "map-experiment",
    "version": "0.1.0",
    "private": true,
    "dependencies": {
      "@types/geojson": "^1.0.4",
      "@types/leaflet": "^1.2.0",
      "@types/react-leaflet": "^1.1.4",
      "leaflet": "^1.2.0",
      "prop-types": "^15.6.0",
      "react": "^16.0.0",
      "react-dom": "^16.0.0",
      "react-leaflet": "^1.7.0",
      "react-scripts-ts": "2.7.0"
    },
    "scripts": {
      "start": "react-scripts-ts start",
      "build": "react-scripts-ts build",
      "test": "react-scripts-ts test --env=jsdom",
      "eject": "react-scripts-ts eject"
    },
    "devDependencies": {
      "@types/jest": "^21.1.2",
      "@types/node": "^8.0.33",
      "@types/react": "^16.0.10",
      "@types/react-dom": "^16.0.1"
    }
  }
  </code></pre>
  
  <p>I nave tried defining position as <code>[Number, Number]</code>, should I be giving it a different type annotation?</p>
  
  <p>Proof of concept without typescript can be found <a href="https://jsfiddle.net/paul_lecam/q2v7t59h/" rel="nofollow noreferrer">here</a> </p>