export interface Subscription { type: TType; listener: (event: TEvent) => void; }