callbackWrapper = (thumbId, opt_error) => {
      let thumbUrl = '';
      if (opt_error === undefined) {
        try {
          thumbUrl = ee.data.makeThumbUrl(thumbId);
        } catch (e) {
          opt_error = String(e.message);
        }
      }
      args['callback'](thumbUrl, opt_error);
    }
Get a thumbnail URL for this image.
@param {!Object} params Parameters identical to ee.data.getMapId, plus,
optionally:
  <table>
    <tr>
      <td><code> dimensions </code> (a number or pair of numbers in format
        WIDTHxHEIGHT) Maximum dimensions of the thumbnail to render, in
        pixels. If only one number is passed, it is used as the maximum,
        and the other dimension is computed by proportional scaling.</td>
    </tr>
    <tr>
      <td><code> region </code> Geospatial region of the image to render,
        it may be an ee.Geometry, GeoJSON, or an array of lat/lon
        points (E,S,W,N). If not set the default is the bounds image.</td>
    </tr>
    <tr>
      <td><code> format </code> (string) Either 'png' or 'jpg'.</td>
    </tr>
  </table>
@param {function(string, string=)=} opt_callback An optional
    callback. If not supplied, the call is made synchronously.
@return {string|undefined} A thumbnail URL, or undefined if a callback
    was specified.
@export