@@ -13,8 +13,12 @@ export type PayloadlessMutationHandler<TModuleState> =
13
13
14
14
export type ActionHandler < TModuleState , TRootState , TPayload > =
15
15
( injectee : ActionContext < TModuleState , TRootState > , payload : TPayload ) => void | Promise < any > ;
16
+ export type PromiseActionHandler < TModuleState , TRootState , TPayload , TPromise > =
17
+ ( injectee : ActionContext < TModuleState , TRootState > , payload : TPayload ) => Promise < TPromise > ;
16
18
export type PayloadlessActionHandler < TModuleState , TRootState > =
17
19
( injectee : ActionContext < TModuleState , TRootState > ) => void | Promise < any > ;
20
+ export type PromisePayloadlessActionHandler < TModuleState , TRootState , TPromise > =
21
+ ( injectee : ActionContext < TModuleState , TRootState > ) => Promise < TPromise > ;
18
22
19
23
export type GetterHandler < TModuleState , TRootState , TResult > =
20
24
( state : TModuleState , rootState : TRootState ) => TResult ;
@@ -27,6 +31,11 @@ export type DispatchAccessor<TModuleState, TRootState, TPayload> =
27
31
payload : TPayload ) => Promise < any [ ] > ;
28
32
export type PayloadlessDispatchAccessor < TModuleState , TRootState > =
29
33
( store : Store < TRootState > | ActionContext < TModuleState , TRootState > ) => Promise < any [ ] > ;
34
+ export type PromiseDispatchAccessor < TModuleState , TRootState , TPayload , TPromise > =
35
+ ( store : Store < TRootState > | ActionContext < TModuleState , TRootState > ,
36
+ payload : TPayload ) => Promise < TPromise > ;
37
+ export type PromisePayloadlessDispatchAccessor < TModuleState , TRootState , TPromise > =
38
+ ( store : Store < TRootState > | ActionContext < TModuleState , TRootState > ) => Promise < TPromise > ;
30
39
31
40
export type CommitAccessor < TModuleState , TRootState , TPayload > =
32
41
( store : Store < TRootState > | ActionContext < TModuleState , TRootState > ,
@@ -42,12 +51,18 @@ export interface StoreAccessors<TModuleState, TRootState> {
42
51
handler : PayloadlessMutationHandler < TModuleState > ) :
43
52
PayloadlessCommitAccessor < TModuleState , TRootState > ;
44
53
54
+ dispatch < TPayload , TPromise > (
55
+ handler : PromiseActionHandler < TModuleState , TRootState , TPayload , TPromise > ) :
56
+ PromiseDispatchAccessor < TModuleState , TRootState , TPayload , TPromise > ;
45
57
dispatch < TPayload > (
46
58
handler : ActionHandler < TModuleState , TRootState , TPayload > ) :
47
59
DispatchAccessor < TModuleState , TRootState , TPayload > ;
48
60
dispatchNoPayload (
49
61
handler : PayloadlessActionHandler < TModuleState , TRootState > ) :
50
62
PayloadlessDispatchAccessor < TModuleState , TRootState > ;
63
+ dispatchNoPayload < TPromise > (
64
+ handler : PromisePayloadlessActionHandler < TModuleState , TRootState , TPromise > ) :
65
+ PromisePayloadlessDispatchAccessor < TModuleState , TRootState , TPromise > ;
51
66
52
67
read < TResult > (
53
68
handler : GetterHandler < TModuleState , TRootState , TResult > ) :
0 commit comments