/**
 * Creates rest attributes.
 *
 */
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
declare class RestAttributesSopParamsConfig extends NodeParamsConfig {
    /** @param toggle on to create a rest position */
    tposition: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>;
    /** @param name of the position attribute */
    position: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.STRING>;
    /** @param name of the rest position attribute, on which the position will be copied on */
    restP: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.STRING>;
    /** @param toggle on to create a rest normal */
    tnormal: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>;
    /** @param name of the normal attribute */
    normal: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.STRING>;
    /** @param name of the rest normal attribute, on which the normal will be copied on */
    restN: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.STRING>;
}
export declare class RestAttributesSopNode extends TypedSopNode<RestAttributesSopParamsConfig> {
    params_config: RestAttributesSopParamsConfig;
    static type(): string;
    initializeNode(): void;
    private _operation;
    cook(input_contents: CoreGroup[]): void;
}
export {};
