/**
 * Expand the CSG input geometry
 *
 *
 */
import { CSGSopNode } from './_BaseCSG';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { CoreGroup } from '../../../core/geometry/Group';
import { SopType } from '../../poly/registers/nodes/types/Sop';
declare enum ExpandMode {
    _2D_ONLY = "2D Only",
    _2D_AND_3D_ONLY = "2D & 3D (Slow)"
}
declare class CSGExpandSopParamsConfig extends NodeParamsConfig {
    /** @param mode */
    mode: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    /** @param delta */
    delta: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param corners */
    corners: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    /** @param segments */
    segments: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    /** @param allow 3D expand (can be very slow) */
    allowExpand3D: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
}
export declare class CSGExpandSopNode extends CSGSopNode<CSGExpandSopParamsConfig> {
    paramsConfig: CSGExpandSopParamsConfig;
    static type(): SopType;
    protected initializeNode(): void;
    setMode(mode: ExpandMode): void;
    cook(inputCoreGroups: CoreGroup[]): void;
}
export {};
