dense-redux-actions
Version:
A simpler way to handle action types and actions creators for Redux.
26 lines (25 loc) • 746 B
TypeScript
export interface GenericAction {
type: string;
_payload: any;
_meta: any;
}
export declare class ActionCreator<PayloadType, MetaType = undefined> {
constructor(actionType: string);
private isString;
private isObject;
readonly type: string;
payload(action: GenericAction): PayloadType;
unpack(action: GenericAction): {
payload: PayloadType;
meta?: MetaType;
};
meta(action: GenericAction): MetaType;
destruct(): {
[actionType: string]: (_payload: PayloadType, _meta?: MetaType) => object;
};
create(_payload: PayloadType, _meta?: MetaType): {
type: string;
_payload: PayloadType;
_meta: MetaType | undefined;
};
}