UNPKG

@visualjs/grid

Version:
15 lines (14 loc) 796 B
export declare type Listener<P, S> = (payload?: P, newState?: S, oldState?: S) => void; export declare class Store<S, A> { protected _listeners: Record<keyof A, Listener<unknown, S>[]>; protected _state: S; protected _actions: Record<keyof A, (state: S, payload: A[keyof A]) => S | undefined>; protected _anyListeners: Listener<unknown, S>[]; constructor(_listeners: Record<keyof A, Listener<unknown, S>[]>, initialState?: S); getState(): S; subscribeAny(listener: Listener<unknown, S>): (() => void); subscribe<K extends keyof A>(action: K, listener: Listener<A[K], S>): (() => void); protected handle<K extends keyof A>(action: K, handler: (s: S, p: A[K]) => S): this; dispatch<K extends keyof A>(action: K, payload: A[K]): void; } export default Store;