Skip to content

useEventBus

useEventBus(): object

Defined in: useEventBus.ts:131

Hook to create an event bus for plugin communication.

This provides a simple pub/sub mechanism that allows the application to communicate with plugins without tight coupling.

emit: <K>(event, payload) => void

Emit an event to all subscribers

K extends keyof SeizenTableEventMap<unknown> | string & object

K

K extends keyof SeizenTableEventMap<unknown> ? SeizenTableEventMap<unknown>[K<K>] : unknown

void

subscribe: <K>(event, callback) => () => void

Subscribe to an event

K extends keyof SeizenTableEventMap<unknown> | string & object

K

(payload) => void

Unsubscribe function

(): void

void

// In useSeizenTable:
const eventBus = useEventBus();
// Application emits events:
eventBus.emit("row-click", row);
// Plugins subscribe via usePluginContext:
const { useEvent } = usePluginContext();
useEvent("row-click", (row) => {
console.log("Row clicked:", row);
});