Currently the `Client.close()` method accepts as an argument a `manuallyClose: boolean`. Is it leaking an implementation detail?