import { Operation, MotionResult, EndResult } from "./Operation";
import { ProcessFurtherOperation } from "./ProcessFurtherOperation";
/** Class for adapting transformations to a grid. Processes a TranslateInPlaneOperation or similar */
export declare class GridTranslationOperation extends ProcessFurtherOperation {
    /** The length of the grid. Applied equally in x and z direction  */
    private gridLength;
    constructor(preceedingOperation: Operation, gridLength: number);
    protected processMotionResult(resultParam: MotionResult): MotionResult;
    protected processEndResult(resultParam: EndResult): MotionResult;
    /**
     * Adaption only applies to x and z component. Rotation is not considered here, see GridRotationOperation for this behaviour
     * @param transformation
     * @returns {Core.Transformation}
     */
    private adaptToGrid;
    /**
     * Returns the closest point on the grid for the given scalar x
     * @param x
     * @returns {number}
     */
    private closestOnGrid;
}
