import { Parameter } from '@zeainc/zea-engine'; import Change from '../Change'; /** * Represents a `Change` class for storing `Parameter` values. * * **Events** * * **updated:** Triggered when the `ParameterValueChange` value is updated. * * @extends Change */ declare class ParameterValueChange extends Change { param: Parameter; nextValue: any; prevValue: any; supressed: boolean; /** * Creates an instance of ParameterValueChange. * * @param param - The Parameter object that is modified by this change. * @param newValue - The newValue value. */ constructor(param?: Parameter, newValue?: any); /** * Rollbacks the value of the parameter to the previous one, passing it to the redo stack in case you wanna recover it later on. */ undo(): void; /** * Rollbacks the `undo` action by moving the change from the `redo` stack to the `undo` stack * and updating the parameter with the new value. */ redo(): void; /** * Updates the state of the current parameter change value. * * @param updateData - The updateData param. */ update(updateData: Record): void; /** * Serializes `Parameter` instance value as a JSON object, allowing persistence/replication. * * @param context - The context param. * @return {object} The return value. */ toJSON(context: Record): Record; /** * Restores `Parameter` instance's state with the specified JSON object. * * @param j - The j param. * @param context - The context param. */ fromJSON(j: Record, context: Record): Record; } export default ParameterValueChange; export { ParameterValueChange }; //# sourceMappingURL=ParameterValueChange.d.ts.map