@gongt/ts-stl-client
Version:
26 lines (25 loc) • 966 B
TypeScript
import { Action, MiddlewareAPI } from "redux";
import { IReduxActionConstructor, ReduxAction } from "../action";
import { IPlugin, ReduxStore } from "../store";
import { VirtualStore } from "../virtual-store";
export interface IPromiseState {
result: any;
success: boolean;
resolved: boolean;
}
export interface IPromiseState {
PromiseQueue: IPromiseState[];
}
export declare class PromiseQueue extends VirtualStore<IPromiseState> {
}
export interface IPromiseActionData<IData> {
promise: Promise<IData>;
success: IReduxActionConstructor<IData, any>;
failed: IReduxActionConstructor<any, any>;
}
export declare class PromiseAction extends ReduxAction<IPromiseActionData<any>, IPromiseState> {
}
export declare function promiseMiddleware(store: MiddlewareAPI<any>): (next: any) => (action: Action) => any;
export declare class PromisePlugin implements IPlugin<IPromiseState> {
__redux_plugin(redux: ReduxStore<IPromiseState>): void;
}