docs: function SizeManager(node) {
  
          /**
           * ### SizeManager.node
           *
           * Reference to a nodegame-client instance
           */
          this.node = node;
  
          /**
           * ### SizeManager.checkSize
           *
           * Checks if the current number of players is right
           *
           * This function is recreated each step based on the values
           * of properties `min|max|exactPlayers` found in the Stager.
           *
           * It is used by `Game.shouldStep` to determine if we go to the
           * next step.
           *
           * Unlike `SizeManager.changeHandler` this method does not
           * accept parameters nor execute callbacks, just returns TRUE/FALSE.
           *
           * @return {boolean} TRUE if all checks are passed
           *
           * @see Game.shouldStep
           * @see Game.shouldEmitPlaying
           * @see SizeManager.init
           * @see SizeManager.changeHandler
           */
          this.checkSize = function() { return true; };
  
          /**
           * ### SizeManager.changeHandler
           *
           * Handles changes in the number of players
           *
           * This function is recreated each step based on the values
           * of properties `min|max|exactPlayers` found in the Stager.
           *
           * Unlike `SizeManager.checkSize` this method requires input
           * parameters and executes the appropriate callback functions
           * in case a threshold is hit.
           *
           * @param {string} op The name of the operation:
           *   'pdisconnect', 'pconnect', 'pupdate', 'replace'
           * @param {Player|PlayerList} obj The object causing the update
           *
           * @return {boolean} TRUE, if no player threshold is passed
           *
           * @see SizeManager.min|max|exactPlayers
           * @see SizeManager.min|max|exactCbCalled
           * @see SizeManager.init
           * @see SizeManager.checkSize
           */
          this.changeHandler = function(op, obj) { return true; };
  
          /**
           * ### SizeManager.minThresold
           *
           * The min-players threshold currently set
           */
          this.minThresold = null;
  
          /**
           * ### SizeManager.minCb
           *
           * The callback to execute once the min threshold is hit
           */
          this.minCb = null;
  
          /**
           * ### SizeManager.minCb
           *
           * The callback to execute once the min threshold is restored
           */
          this.minRecoveryCb = null;
  
          /**
           * ### SizeManager.maxThreshold
           *
           * The max-players threshold currently set
           */
          this.maxThreshold = null;
  
          /**
           * ### SizeManager.minCbCalled
           *
           * TRUE, if the minimum-player callback has already been called
           *
           * This is reset when the max-condition is satisfied again.
           *
           * @see SizeManager.changeHandler
           */
          this.minCbCalled = false;
  
          /**
           * ### SizeManager.maxCb
           *
           * The callback to execute once the max threshold is hit
           */
          this.maxCb = null;
  
          /**
           * ### SizeManager.maxCb
           *
           * The callback to execute once the max threshold is restored
           */
          this.maxRecoveryCb = null;
  
          /**
           * ### SizeManager.maxCbCalled
           *
           * TRUE, if the maximum-player callback has already been called
           *
           * This is reset when the max-condition is satisfied again.
           *
           * @see SizeManager.changeHandler
           */
          this.maxCbCalled = false;
  
          /**
           * ### SizeManager.exactThreshold
           *
           * The exact-players threshold currently set
           */
          this.exactThreshold = null;
  
          /**
           * ### SizeManager.exactCb
           *
           * The callback to execute once the exact threshold is hit
           */
          this.exactCb = null;
  
          /**
           * ### SizeManager.exactCb
           *
           * The callback to execute once the exact threshold is restored
           */
          this.exactRecoveryCb = null;
  
          /**
           * ### SizeManager.exactCbCalled
           *
           * TRUE, if the exact-player callback has already been called
           *
           * This is reset when the exact-condition is satisfied again.
           *
           * @see SizeManager.changeHandler
           */
          this.exactCbCalled = false;
      }