define(typeMap, force) {
    for (let type in typeMap) {
      var extensions = typeMap[type];
      for (let i = 0; i < extensions.length; i++) {
        var ext = extensions[i];
        if (!force && (ext in this._types)) {
          throw new Error(`Attempt to change mapping for "${ext}" extension from "${this._types[ext]}" to "${type}". Pass \`force=true\` to allow this, otherwise remove "${ext}" from the list of extensions for "${type}".`);
        }

        this._types[ext] = type;
      }

      // Use first extension as default
      if (force || !this._extensions[type]) {
        this._extensions[type] = extensions[0];
      }
    }
  }
Define mimetype -> xtension mappings.  Each key is a mime-type that maps
to an array of extensions associated with the type.  The first extension is
used as the default extension for the type.

e.g. mime.define({'audio/ogg', ['oga', 'ogg', 'spx']});

@param map (Object) type definitions