Skip to main content

mind-elixir.createbus

Home > mind-elixir > createBus

createBus() function

Signature:

export declare function createBus<T extends Record<string, (...args: any[]) => void> = EventMap>(): {
handlers: Record<keyof T, ((...arg: any[]) => void)[]>;
addListener: <K extends keyof T>(type: K, handler: T[K]) => void;
fire: <K extends keyof T>(type: K, ...payload: Parameters<T[K]>) => void;
removeListener: <K extends keyof T>(type: K, handler: T[K]) => void;
};

Returns:

{ handlers: Record<keyof T, ((...arg: any[]) => void)[]>; addListener: <K extends keyof T>(type: K, handler: T[K]) => void; fire: <K extends keyof T>(type: K, ...payload: Parameters<T[K]>) => void; removeListener: <K extends keyof T>(type: K, handler: T[K]) => void; }