declare module '@tensei/common/events' { import { DataPayload, Config } from '@tensei/common/config' type EventListener = (data: { payload: Payload ctx: Config }) => void | Promise export interface EventConfigContract { name: string listeners: EventListener[] } export interface EventContract { config: EventConfigContract listen(listener: EventListener): this } export const event: ( name: string ) => EventContract }