export class keyframesContext {
    /**
     *
     * @param {AnimationCurve} curve
     * @param {function} removeKeyframe
     * @param {function} addKeyframe
     * @param {Map} keyframeViews
     * @param {ObservedValue} activeKeyframe
     * @param {List} selectedKeyframes
     * @param {function} handleCurveUpdate
     * @param {function} updateGraph
     */
    constructor({ curve, removeKeyframe, addKeyframe, keyframeViews, activeKeyframe, selectedKeyframes, handleCurveUpdate, updateGraph }: AnimationCurve);
    refCurve: any;
    fnRemoveKeyframe: any;
    fnAddKeyframe: any;
    refKeyframeViews: any;
    refActiveKeyframe: any;
    refSelectionKeyframes: any;
    fnHandleCurveUpdate: any;
    fnUpdateGraph: any;
}
export class RemoveKeyframeAction extends Action<any> {
    /**
     *
     * @param {List} passKeyframes
     * @param {Keyframe} passNullKeyframe
     * @param {keyframesContext} context
     */
    constructor(passKeyframes: List<any>, passNullKeyframe: Keyframe, context: keyframesContext);
    copyKfToDelete: any;
    refNullKeyframe: Keyframe;
    actionContext: keyframesContext;
    linkedActiveKeyframe: any;
    linkedSelectionKeyframes: List<any>;
    apply(context: any): Promise<void>;
    revert(context: any): Promise<void>;
}
export class AddKeyframeAction extends Action<any> {
    /**
     *
     * @param {Keyframe} passKeyframe
     * @param {keyframesContext} context
     */
    constructor(passKeyframe: Keyframe, context: keyframesContext);
    newKeyframeToAdd: Keyframe;
    actionContext: keyframesContext;
    apply(context: any): Promise<void>;
    revert(context: any): Promise<void>;
}
export class MoveKeyframeAction extends Action<any> {
    /**
     *
     * @param {AnimationCurve} passCurveValueStart
     * @param {AnimationCurve} passCurveRefStart
     * @param {AnimationCurve} passCurveValueEnd
     * @param {AnimationCurve} passCurveRefEnd
     * @param {keyframesContext} context
     */
    constructor(passCurveValueStart: AnimationCurve, passCurveRefStart: AnimationCurve, passCurveValueEnd: AnimationCurve, passCurveRefEnd: AnimationCurve, context: keyframesContext);
    curveRefStart: AnimationCurve;
    curveValueStart: AnimationCurve;
    curveRefEnd: AnimationCurve;
    curveValueEnd: AnimationCurve;
    actionContext: keyframesContext;
    apply(context: any): Promise<void>;
    revert(context: any): Promise<void>;
}
export class TangentChangeAction extends Action<any> {
    /**
     *
     * @param {Keyframe} passKeyframe
     * @param {Keyframe} passKeyframeValueStart
     * @param {Keyframe} passKeyframeValueEnd
     * @param {function} handleTangentUpdate
     * @param {keyframesContext} context
     */
    constructor(passKeyframe: Keyframe, passKeyframeValueStart: Keyframe, passKeyframeValueEnd: Keyframe, handleTangentUpdate: Function, context: keyframesContext);
    refKeyframe: Keyframe;
    keyframeValueStart: Keyframe;
    keyframeValueEnd: Keyframe;
    actionContext: keyframesContext;
    fnHandleTangentUpdate: Function;
    apply(context: any): Promise<void>;
    revert(context: any): Promise<void>;
}
export class SelectionAction extends Action<any> {
    /**
     *
     * @param {List} passSelectionKeyframe
     * @param {List} passSelectionList
     * @param {List} passPrevSelectionList
     * @param {keyframesContext} context
     */
    constructor(passSelectionKeyframe: List<any>, passSelectionList: List<any>, passPrevSelectionList: List<any>, context: keyframesContext);
    refSelectionKeyframe: List<any>;
    keyframeList: List<any>;
    prevKeyframeList: List<any>;
    actionContext: keyframesContext;
    apply(context: any): Promise<void>;
    revert(context: any): Promise<void>;
}
import { AnimationCurve } from "../AnimationCurve.js";
import { Action } from "../../../../core/process/undo/Action.js";
import { Keyframe } from "../Keyframe.js";
import List from "../../../../core/collection/list/List.js";
//# sourceMappingURL=curveActions.d.ts.map