import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { AttribClass } from './../../../core/geometry/Constant';
import { SopType } from '../../poly/registers/nodes/types/Sop';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
declare class AttribIdSopParamsConfig extends NodeParamsConfig {
    /** @param the attribute class (geometry or object) */
    class: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    /** @param sets to true to create the id attribute */
    id: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param name of id attribute */
    idName: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
    /** @param sets to true to create the id attribute */
    idn: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param name of the position attribute */
    /** @param name of idn attribute */
    idnName: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
}
export declare class AttribIdSopNode extends TypedSopNode<AttribIdSopParamsConfig> {
    paramsConfig: AttribIdSopParamsConfig;
    static type(): SopType;
    initializeNode(): void;
    private _operation;
    cook(inputCoreGroups: CoreGroup[]): void;
    setAttribClass(attribClass: AttribClass): void;
    attribClass(): AttribClass;
}
export {};
