import React from 'react'; export type IEventCallback = (...args: any[]) => void; export interface IEventBusStore { on(eventName: string, callback: IEventCallback): void; once(eventName: string, callback: IEventCallback): void; exactly(number: number, eventName: string, callback: IEventCallback): void; die(eventName: string): void; off(eventName: string): void; detach(eventName: string, callback?: IEventCallback): boolean; detachAll(): void; emit(eventName: string, context?: C, ...args: any[]): void; } export declare const EventBusStoreContext: React.Context; export declare const useEventBusStore: () => IEventBusStore;