When the API was designed, it was pirmarily designed to work with (web) workers, so methods like wait() were created static. However, when used in NodeJS, the instance of the synchronization object is available to both sides: The signaling side and the waiting side. There's no need for a static methods in cases like this one.