@@ -10,49 +10,39 @@ import type { CaseReducer } from './createReducer'
1010import type {
1111 CreatorCaseReducers ,
1212 ReducerCreator ,
13- ReducerCreatorEntry ,
1413 ReducerDefinition ,
1514} from './createSlice'
1615import { ReducerType } from './createSlice'
1716import type { Id } from './tsHelpers'
1817
19- declare module './createSlice' {
20- export interface SliceReducerCreators <
21- State ,
22- CaseReducers extends CreatorCaseReducers < State > ,
23- Name extends string ,
24- ReducerPath extends string ,
25- > {
26- [ ReducerType . asyncThunk ] : ReducerCreatorEntry <
27- AsyncThunkCreator < State > ,
28- {
29- actions : {
30- [ ReducerName in keyof CaseReducers ] : CaseReducers [ ReducerName ] extends AsyncThunkSliceReducerDefinition <
31- State ,
32- infer ThunkArg ,
33- infer Returned ,
34- infer ThunkApiConfig
35- >
36- ? AsyncThunk < Returned , ThunkArg , ThunkApiConfig >
37- : never
38- }
39- caseReducers : {
40- [ ReducerName in keyof CaseReducers ] : CaseReducers [ ReducerName ] extends AsyncThunkSliceReducerDefinition <
41- State ,
42- any ,
43- any ,
44- any
45- >
46- ? Id <
47- Pick <
48- Required < CaseReducers [ ReducerName ] > ,
49- 'fulfilled' | 'rejected' | 'pending' | 'settled'
50- >
51- >
52- : never
53- }
54- }
18+ export type AsyncThunkCreatorExposes <
19+ State ,
20+ CaseReducers extends CreatorCaseReducers < State > ,
21+ > = {
22+ actions : {
23+ [ ReducerName in keyof CaseReducers ] : CaseReducers [ ReducerName ] extends AsyncThunkSliceReducerDefinition <
24+ State ,
25+ infer ThunkArg ,
26+ infer Returned ,
27+ infer ThunkApiConfig
5528 >
29+ ? AsyncThunk < Returned , ThunkArg , ThunkApiConfig >
30+ : never
31+ }
32+ caseReducers : {
33+ [ ReducerName in keyof CaseReducers ] : CaseReducers [ ReducerName ] extends AsyncThunkSliceReducerDefinition <
34+ State ,
35+ any ,
36+ any ,
37+ any
38+ >
39+ ? Id <
40+ Pick <
41+ Required < CaseReducers [ ReducerName ] > ,
42+ 'fulfilled' | 'rejected' | 'pending' | 'settled'
43+ >
44+ >
45+ : never
5646 }
5747}
5848
0 commit comments