@turbox3d/reactivity
Version:
Large-scale reactive state management library
15 lines (14 loc) • 853 B
TypeScript
import { BabelDescriptor } from '../interfaces';
import { MutationConfig } from './mutation';
interface ActionConfig {
displayName: string;
/** 是否自动包裹一个顶层 mutation */
isWrapMutation: boolean;
/** 自动包裹的 mutation 的配置 */
mutationConfig?: MutationConfig;
}
type ActionCallback = (...payload: any[]) => void | Promise<void>;
export declare function action(target: object, name: string | symbol | number, descriptor?: BabelDescriptor<any>): any;
export declare function action(displayName?: string, isWrapMutation?: boolean, mutationConfig?: MutationConfig): (target: object, name: string | symbol | number, descriptor?: BabelDescriptor<any>) => any;
export declare function action(name: string | symbol | number, original: ActionCallback, config?: ActionConfig): (...payload: any[]) => any;
export {};