react-application-core
Version:
A react-based application core for the business applications.
38 lines (37 loc) • 1.43 kB
TypeScript
import { AnyAction, Reducer, ReducersMapObject } from 'redux';
import { IEffectsAction } from 'redux-effects-promise';
export declare type FilterT = (action: IEffectsAction) => boolean;
/**
* @stable - 10.04.2018
* @param {string} customSection
* @returns {FilterT}
*/
export declare function reducerSectionFilter(customSection: string): FilterT;
/**
* @stable - 10.04.2018
* @param {Reducer<S>} reducer
* @param {FilterT} filterObject
* @returns {Reducer<S>}
*/
export declare const filter: <S>(reducer: Reducer<S>, filterObject: FilterT) => Reducer<S>;
/**
* @stable - 10.04.2018
* @param {Reducer<S>} reducer
* @param {string} customSection
* @returns {Reducer<S>}
*/
export declare const filterBySection: <S>(reducer: Reducer<S>, customSection: string) => Reducer<S>;
/**
* @stable - 15.04.2018
* @param {TReducersMap} reducersMap
* @returns {Reducer<ReducersMapObject>}
*/
export declare const composeReducers: <TReducersMap extends {}>(reducersMap: TReducersMap) => Reducer<ReducersMapObject>;
/**
* @deprecated Use makeEntityReducer
* @param {string} updateActionType
* @param {string} destroyActionType
* @param {TPayload} initialState
* @returns {(state: TPayload, action: AnyAction) => TPayload}
*/
export declare const entityReducerFactory: (updateActionType: string, destroyActionType: string, initialState?: any) => (state: {}, action: AnyAction) => {};