easy-peasy-classes
Version:
easy-peasy enhanced with classes, full typescript type safety, nested store stuctures and model inheritance
19 lines (18 loc) • 765 B
TypeScript
import { TargetResolver } from "easy-peasy";
import { ToStoreType } from "./types";
export declare const Model: ClassDecorator;
export declare const Property: PropertyDecorator;
export declare const Child: PropertyDecorator;
export declare const Action: MethodDecorator;
export declare const Computed: MethodDecorator;
export declare const Thunk: MethodDecorator;
/**
* equiv thunkOn
*
* @example
* \@Listener<UserTableModel,StoreModel>((actions, storeActions)=> [storeActions.userPage.lstCities.setValue])
* shouldRefresh(target){
* this.resfresh();
* }
*/
export declare function Listener<Model extends object, StoreModel extends object = {}>(actionFn: TargetResolver<ToStoreType<Model>, ToStoreType<StoreModel>>): MethodDecorator;