@rbxts/rodux
Version:
Rodux for Roblox TypeScript
27 lines (25 loc) • 710 B
TypeScript
import Rodux from "./index";
type ReducerMap<S, A extends Rodux.Action> = {
[K in keyof S]: Rodux.Reducer<S[K], any>;
};
/**
* A helper function that can be used to combine multiple reducers into a new reducer.
*
* `combineReducers` is functionally equivalent to writing:
* ```ts
* function reducer(state: S, action: A) {
* return {
* Key1: reducer1(state.Key1, action),
* Key2: reducer2(state.Key2, action)
* }
* }
* ```
*
* @param reducers The reducers to combine
*
* https://roblox.github.io/rodux/api-reference/#roduxcombinereducers
*/
declare function combineReducers<S, A extends Rodux.Action>(
reducers: ReducerMap<S, A>
): Rodux.Reducer<S, A>;
export = combineReducers;