/**
 * Applies a shear (non-linear) transform to geometries
 *
 *
 *
 */
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { ShearMode } from '../../operations/sop/Shear';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { SopType } from '../../poly/registers/nodes/types/Sop';
declare class ShearSopParamConfig extends NodeParamsConfig {
    /** @param mode */
    mode: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    /** @param matrixMode XY */
    xy: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param matrixMode XZ */
    xz: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param matrixMode YX */
    yx: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param matrixMode YZ */
    yz: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param matrixMode ZX */
    zx: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param matrixMode ZY */
    zy: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param centerMode defines how the center of the shear in axis mode is computed */
    centerMode: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    /** @param centerOffset */
    centerOffset: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.VECTOR3>;
    /** @param center */
    center: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.VECTOR3>;
    /** @param PlaneAxis */
    planeAxis: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.VECTOR3>;
    /** @param axis */
    axis: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.VECTOR3>;
    /** @param axisAmount */
    axisAmount: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
}
export declare class ShearSopNode extends TypedSopNode<ShearSopParamConfig> {
    paramsConfig: ShearSopParamConfig;
    static type(): SopType;
    initializeNode(): void;
    setMode(mode: ShearMode): void;
    private _operation;
    cook(input_contents: CoreGroup[]): void;
}
export {};
