function StateModule() {
	    var equalCheck = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : isEqualDefault;

	    classCallCheck(this, StateModule);

	    this.store = createStore(StateModule.actionGenerate(equalCheck));
	    this.configuration = {};
	    this.currentConfig = 'default';
	    this.prevConfig = 'default';
	  }
@class StateModule
@description `StateModule` is useful for apps, where you need state manipulation.
This can be: _transitions between screens, games, development moments_.
You can check [basic/state](https://whs-dev.surge.sh/examples/?basic/state) example.
@category modules/app
@param {Object} [params]
@memberof module:modules/app
@example <caption> Creating a state module</caption>
new App([
  // ...
  new StateModule().default({
    sphereColor: 0xff0000
  })
]);