docs: function(event, name, callback) {
              if (this.__hasEventListener(event, name)) {
                  throw new Error('Event listener for event "' + event + '" with name "' + name + '" already exist!');
              }
  
              if (!(event in this.__events)) {
                  this.__events[event] = {};
              }
  
              this.__events[event][name] = callback;
  
              return this;
          }