public void AddEvent <TEvent>(Action <TEvent> eventHandler)
        {
            if (eventHandler == null)
            {
                throw new ArgumentNullException(nameof(eventHandler));
            }

            _handlersDictionary.Add(typeof(TEvent).FullName ?? throw new InvalidOperationException(), param => eventHandler((TEvent)param));

            ManualEventManager.GetEvent <TEvent>().Subscribe(SubscribtionHandler);
        }
        public void RemoveEvent <TEvent>()
        {
            _handlersDictionary.Remove(typeof(TEvent).FullName ?? throw new InvalidOperationException());

            ManualEventManager.GetEvent <TEvent>().Unsubscribe(SubscribtionHandler);
        }