/** * A function which takes a State S and performs a transformation into a new state. The state mutation must be pure. * @returns A new state of type S */ export declare type StateMutation = (state: S) => S; /** * A reducer takes a state S, a payload P, applies a transformation using the payload to the state and * returns a new State. Reducers must be pure. */ export declare type Reducer = (state: S, actionPayload: P) => S; /** * Type of a "cleanup" state object that will be set to the slice when the sliceStore gets destroyed * * The special string "undefined" means the slice prop should be set to undefined (but the props remains there) * Using "delete" will remove the whole prop key from the state object (use this to leave no traces) */ export declare type CleanupState = K | null | "undefined" | "delete"; export interface ActionDispatch

{ actionName: string; actionPayload: P; } export interface StateChangeNotification { actionName: string | undefined; actionPayload: any; newState: S; }