Create and implement events and callbacks

You have a private method in your class and you want to make invocation of the method possible by certain callers. What do you do?

Make the method public.
Declare the private method as a lambda.
Use a method that returns a delegate to authorized callers.
Use an event so outside users can be notified when the method is executed.