close (err, cb) {
        let expected = 0
        for (const transport of targetStreams) {
          expected++
          transport.stream.on('close', closeCb)
          transport.stream.end()
        }

        function closeCb () {
          if (--expected === 0) {
            cb(err)
          }
        }
      }
Creates a pipeline using the provided streams and return an instance of `PassThrough` stream
as a source for the pipeline.

@param {(TransformStream|WritableStream)[]} streams An array of streams.
  All intermediate streams in the array *MUST* be `Transform` streams and only the last one `Writable`.
@returns A `PassThrough` stream instance representing the source stream of the pipeline