4-26 Where are custom skeleton `AnimNotify` delegates declared and cached in C++?

So I was trying to create a custom AnimNotify and when a custom AnimNotify is created, an event is created for it in the AnimationBlueprint (For example, if I create a custom SkeletonNotify in an animation, there’ll be an event called Event_NotifyName.). Now, I want to know where these multicast delegates are declared and cached. As there are differences between SkeletonNotifies and AnimNotifies, I want to know how these work in general. (I’ve come up with the idea of using a multicast delegate in another class and get the AnimationBlueprint to access that class’ delegate but I don’t want to manually do that cause I’ll have to bind the delegate to an event manually that’ll make the AnimationBlueprint messy. I want it to be automatic just like the engine ones.)