/**
 * filters tetrahedrons based on their quality
 *
 *
 */
import { TetSopNode } from './_BaseTet';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { CoreGroup } from '../../../core/geometry/Group';
import { SopType } from '../../poly/registers/nodes/types/Sop';
import { TetObject } from '../../../core/geometry/modules/tet/TetObject';
declare class TetDeleteSopParamsConfig extends NodeParamsConfig {
    byQuality: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    minQuality: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    byIds: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    ids: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
    byIndex: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    index: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    byIndexRange: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    indexRangeStart: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    indexRangeEnd: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    byDelaunay: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    byBoundingObject: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    invert: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
}
export declare class TetDeleteSopNode extends TetSopNode<TetDeleteSopParamsConfig> {
    readonly paramsConfig: TetDeleteSopParamsConfig;
    static type(): SopType;
    protected initializeNode(): void;
    cook(inputCoreGroups: CoreGroup[]): Promise<void>;
    _deleteTets(tetObject: TetObject, inputCoreGroups: CoreGroup[]): void;
    private _findTetsByQuality;
    private _findTetsById;
    private _findTetsByIndex;
    private _findTetsByIndexRange;
    private _findTetsByDelaunay;
    private _findTetsByBoundingObject;
}
export {};
