To be clear this would override existing behavior, only the last BindableEvent registered is ever fired.
Having both the event and Callback implementations seems a bit complicated, does the Callback version override the event or would the event always fire?
We also can’t use a function because currently the variant type doesn’t support functions, maybe a BindableFunction but I don’t like the fact that a developer could cause the CoreScript thread that called it to infinitely yield (not sure if we really need to worry about this though).