Я думаю, вам не следует раскрывать классы A, B и C, так как это нарушает основную точку Facade - скрытие этих классов за API и создание кода, использующего фасад, независимый от них.
По той же причине, я не думаю, что барботирование событий из A, B и C было бы хорошим выбором, хотя я бы подумал, если бы эти события находились на правильном уровне абстракции и не были слишком тесно связаны с классами A , B и C.
Если бы события были тесно связаны с классами, скрытыми за Фасадом, или слишком низкоуровневыми по сравнению с API-интерфейсом фасада, я думаю, что я бы свернул свои собственные события, возможно, оборачивая оригинальные.