UNPKG

state-pool

Version:

Transform your React app with our state management library! Declare global and local states like variables, powered by the magic of React hooks 🪄✨

23 lines (22 loc) • 837 B
import State from './State'; import { Patcher, Reducer, Selector, StateInitializer } from './types'; export default function useReducer<T, A>(reducer: Reducer<T, A>, state: State<T> | StateInitializer<T> | T, config?: {}): [ state: T, dispatch: (action: A) => void, stateObject: State<T> ]; export default function useReducer<ST, A, T = unknown>(reducer: Reducer<ST, A>, state: State<T | never> | StateInitializer<T> | T, config: { selector: Selector<ST>; }): [ state: ST, dispatch: (action: A) => void, stateObject: State<T> ]; export default function useReducer<ST, A, T = unknown>(reducer: Reducer<ST, A>, state: State<T | never> | StateInitializer<T> | T, config: { selector: Selector<ST>; patcher: Patcher<ST>; }): [ state: ST, dispatch: (action: A) => void, stateObject: State<T> ];