function parseHttpDate$1 (date) {
  var timestamp = date && Date.parse(date);

  // istanbul ignore next: guard against date.js Date.parse patching
  return typeof timestamp === 'number'
    ? timestamp
    : NaN
}
Check if the given `type(s)` is acceptable, returning
the best match when true, otherwise `undefined`, in which
case you should respond with 406 "Not Acceptable".

The `type` value may be a single mime type string
such as "application/json", the extension name
such as "json" or an array `["json", "html", "text/plain"]`. When a list
or array is given the _best_ match, if any is returned.

Examples:

    // Accept: text/html
    this.types('html');
    // => "html"

    // Accept: text/*, application/json
    this.types('html');
    // => "html"
    this.types('text/html');
    // => "text/html"
    this.types('json', 'text');
    // => "json"
    this.types('application/json');
    // => "application/json"

    // Accept: text/*, application/json
    this.types('image/png');
    this.types('png');
    // => undefined

    // Accept: text/*;q=.5, application/json
    this.types(['html', 'json']);
    this.types('html', 'json');
    // => "json"

@param {String|Array} types...
@return {String|Array|Boolean}
@public