import { EVENTS } from '../constants'; import type { KeytipTreeNode } from '../hooks/useTree'; import type { KeytipWithId } from '../components/Keytip/internal/Keytip.types'; type EventType = (typeof EVENTS)[keyof typeof EVENTS]; type PayloadDefinition = { [EVENTS.ENTER_KEYTIP_MODE]: KeyboardEvent; [EVENTS.EXIT_KEYTIP_MODE]: KeyboardEvent; [EVENTS.KEYTIP_UPDATED]: KeytipWithId; [EVENTS.KEYTIP_ADDED]: KeytipWithId; [EVENTS.KEYTIP_REMOVED]: string; [EVENTS.KEYTIP_EXECUTED]: KeytipTreeNode; [EVENTS.SHORTCUT_EXECUTED]: KeytipTreeNode; }; export declare function useEventService(): { dispatch: (eventName: T, payload?: PayloadDefinition[T]) => void; subscribe: (event: T, handler: (payload: PayloadDefinition[T]) => void) => () => void; reset: () => void; abort: () => void; }; export {};