import { Mutation, BabelDescriptor } from '../interfaces';
export interface MutationConfig {
    immediately: boolean;
    displayName?: string;
    forceSaveHistory?: boolean;
    isNeedRecord?: boolean;
}
export declare function mutation(target: object, name: string | symbol | number, descriptor?: BabelDescriptor<Mutation>): any;
export declare function mutation(displayName?: string, immediately?: boolean, forceSaveHistory?: boolean, isNeedRecord?: boolean): (target: object, name: string | symbol | number, descriptor?: BabelDescriptor<Mutation>) => any;
export declare function mutation(name: string | symbol | number, original: Mutation, config?: MutationConfig): (...payload: any[]) => any;
