init commit,
This commit is contained in:
12
03_source/mobile_baseline.bak/src/util/types.ts
Normal file
12
03_source/mobile_baseline.bak/src/util/types.ts
Normal file
@@ -0,0 +1,12 @@
|
||||
export interface DispatchObject {
|
||||
[key: string]: any;
|
||||
type: string;
|
||||
}
|
||||
|
||||
type PromiseResolveValue<T> = T extends Promise<infer R> ? R : T;
|
||||
type EffectType<T extends (...args: any) => any> = ReturnType<ReturnType<T>>;
|
||||
type EffectReturnValue<T extends (...args: any) => any> = PromiseResolveValue<
|
||||
EffectType<T>
|
||||
>;
|
||||
export type ActionType<T extends (...args: any) => any> =
|
||||
ReturnType<T> extends DispatchObject ? ReturnType<T> : EffectReturnValue<T>;
|
Reference in New Issue
Block a user