code: public function assertIntOrFalse($config, $key, $lowest = null, $highest = null)
      {
          try {
              $this->assertInteger($config, $key, $lowest, $highest);
          } catch (ConfigurationException $e) {
              if ($config[$key]!==false) {
                  throw new ConfigurationException(
                      "Key `{$key}` can be either false or a non-negative integer."
                  );
              }
          }
          return $this;
      }
docs: Assert the value is either integer within bounds or false
  
  Some configuration values can be either false (disabled)
  or have an integer value set if enabled
  
  @param array $config
  @param string|int $key Array being validated
  @param int $lowest The lowest accepted value
  @param int $highest The highest accepted value
  @return $this
  @throws ConfigurationException On a failed assertation