The documentation for [URLSearchParams.forEach][1] shows that the
callback function will be called with 3 parameters. This has been true
since Node 6. This commit adds a definition for the 3rd parameter to
the definition files for Node 6, 7, 8, 9 and 10.
[1]: https://nodejs.org/api/url.html#url_urlsearchparams_foreach_fn_thisarg
* [node]: Make stream destroy method signatures match
The "destroy" option when creating streams has the same signature as the
_destroy method on the stream: a function accepting an optional error and a
callback which also takes an optional error.
* Fix tests affected by the change in stream definitions
At the moment, this snippet:
```ts
const spawnArgs: ReadonlyArray<string> = ['foo', 'bar'];
spawn('foobar', spawnArgs);
```
fails with:
```
Argument of type 'ReadonlyArray<string>' is not assignable to parameter of type 'string[] | undefined'.
Type 'ReadonlyArray<string>' is not assignable to type 'string[]'.
```
Looking at https://github.com/nodejs/node/blob/master/lib/child_process.js#L514-L535 and https://github.com/nodejs/node/blob/master/lib/internal/child_process.js#L286, it _looks_ like there is no mutation of the array. I am no expert so I'd be happy to be proven wrong, I just couldn't find sufficient evidence that a `ReadonlyArray` wouldn't be fine.
This is not a breaking change because passing a `string[]` is still valid.
Writable's write function accepts chunks of type any to permit object-mode
usage. The implementations you can provide to Writable's constructor should
do the same.
* feat(node-v8): add `TextDecoder` and `TextEncoder` for `util` module
* fix(node-v8): change constructor's first param name
* style(node-v8): styling `TextDecoder`
* refact(node-v8): using class instead interface+var
* test(node-v8): add tests for util.TextDecoder and util.TextEncoder
* fix(node-v8): fix param type of TextDecoder.decode
* Update type of path.sep and path.delimiter
* Change `path.sep` to `'\\' | '/'`
* Change `path.delimiter` to `';' | ':'`
* Update index.d.ts
* Change types of path.sep and path.delimiter in types/node/{v8,v6}
* Change types of path.sep and path.delimiter in types/node/v7
* fix: fix return type of Cipher. setAAD() and Cipher. setAutoPadding()
* node@8: fix return types of Decipher.setAAD() and Decipher.setAutoPadding()
* fix: fix return types of Decipher.setAuthTag()