interface EventInterface { addHandler(handler: EventInterface.HandlerInterface, context?: T): EventInterface; removeHandler(handler: EventInterface.HandlerInterface, context?: T): EventInterface; } declare module EventInterface { interface HandlerInterface { (payload: EventPayload, context: T): void; } } export default EventInterface;