/**
 * Cuts a geometry with a plane.
 *
 * @remarks
 * The input geometry must have used a BVH SOP node before.
 *
 */
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
declare class ClipSopParamsConfig extends NodeParamsConfig {
    /** @param origin */
    origin: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.VECTOR3>;
    /** @param distance */
    distance: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param direction */
    direction: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.VECTOR3>;
    /** @param intersectionEdges */
    intersectionEdges: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param keepBelowPlane */
    keepBelowPlane: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param keepAbovePlane */
    keepAbovePlane: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
}
export declare class ClipSopNode extends TypedSopNode<ClipSopParamsConfig> {
    paramsConfig: ClipSopParamsConfig;
    static type(): string;
    initializeNode(): void;
    private _operation;
    cook(inputCoreGroups: CoreGroup[]): void;
}
export {};
