Refactor, Create event interfaces