Yes, `close()` could return the same promise, that is `closedPromise`, as `.closed`. However, do we want this redundancy? Furthermore, the `closedPromise` is more general as it is resolved/rejected by also other reasons that the application calling close(). For example, it is rejected if the netowork connection is lost.