@daisugi/nekobasu
Version:
Nekobasu is a lightweight, easy to use, asynchronous and efficient EventBus implementation.
30 lines • 764 B
TypeScript
export type NekobasuEventHandler = (event: NekobasuEvent) => Promise<unknown>;
export interface NekobasuSub {
subId: number;
topicRe: RegExp;
topicWildcard: string;
eventHandler: NekobasuEventHandler;
}
export interface NekobasuEvent {
topicName: string;
payload: unknown;
mut: Record<string, unknown>;
}
/**
* Multicast
*
* Glossary:
* subscription sub
*/
export declare class Nekobasu {
#private;
subscribe(topicWildcard: string, eventHandler: NekobasuEventHandler): number;
dispatch(topicName: string, eventArgs: unknown): Promise<{
topicName: string;
payload: unknown;
mut: {};
}>;
unsubscribe(subId: number): void;
list(): NekobasuSub[];
}
//# sourceMappingURL=nekobasu.d.ts.map