update action generation

This commit is contained in:
2019-02-26 18:09:38 +01:00
parent eae70135d5
commit a4d43456d7
3 changed files with 37 additions and 17 deletions

View File

@ -1,8 +1,13 @@
import * as plugins from './smartstate.plugins';
import { StatePart } from './smartstate.classes.statepart';
export interface IActionDef<TStateType, TActionPayloadType> {
(stateArg: StatePart<any, TStateType>, actionPayload: TActionPayloadType): Promise<TStateType>;
}
/**
* an actionmodifier for the state
*/
export class StateAction<StatePayload> {
constructor(public actionDef: (stateArg: StatePayload) => StatePayload) {}
export class StateAction<TStateType, TActionPayloadType> {
constructor(public actionDef: IActionDef<TStateType, TActionPayloadType>) {}
}