typescript-event-emitter
Version:
Versatile and feature-rich TypeScript library for event management, providing a solid foundation for building event-driven applications in TypeScript.
30 lines (29 loc) • 631 B
TypeScript
import { EventFilter, Listener } from './Types';
export interface GlobalOption {
separator: string;
}
export interface EventInfo {
separator: string;
event: string;
}
export interface Option {
filter?: EventFilter;
throttle?: number;
debounce?: number;
priority?: number;
separator?: string;
concurrency?: number;
}
export interface EventListener {
listener: Listener;
priority: number;
eventInfo: EventInfo;
concurrency: number;
id: string;
}
export interface EventNamespace {
[event: string]: {
listeners: EventListener[];
throttled?: boolean;
};
}