export type SharedStoreConfig = { initialState: S; events: E; onEventChange: (prevState: S, event: E[number], payload?: any) => S; }; export declare function createSharedStore(config: SharedStoreConfig): { getState: () => S; updateState: (event: E[number], payload?: any) => void; subscribe: (event: E[number], callback: () => void) => () => void; subscribeAll: (callback: () => void) => () => void; };