async read(filepath, options = {}) {
    try {
      let buffer = await this._readFile(filepath, options)
      if (options.autocrlf === 'true') {
        try {
          buffer = new TextDecoder('utf8', { fatal: true }).decode(buffer)
          buffer = buffer.replace(/\r\n/g, '\n')
          buffer = new TextEncoder().encode(buffer)
        } catch (error) {
          // non utf8 file
        }
      }
      // Convert plain ArrayBuffers to Buffers
      if (typeof buffer !== 'string') {
        buffer = Buffer.from(buffer)
      }
      return buffer
    } catch (err) {
      return null
    }
  }
Return the contents of a file if it exists, otherwise returns null.

@param {string} filepath
@param {object} [options]

@returns {Promise<Buffer|string|null>}