/**
 * Creates a circle from 3 points.
 *
 *
 */
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
declare class Circle3PointsSopParamsConfig extends NodeParamsConfig {
    /** @param toggle on to create the arc */
    arc: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>;
    /** @param sets the mode how the points count is computed */
    pointsCountMode: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.INTEGER>;
    /** @param length of each segment */
    segmentsLength: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.FLOAT>;
    /** @param count of the number of segments */
    segmentsCount: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.INTEGER>;
    /** @param toggle on to create a full circle */
    full: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>;
    /** @param TBD */
    joinMode: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.INTEGER>;
    /** @param add an id attribute for the generated points */
    addIdAttribute: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>;
    /** @param add an idn attribute (same as id attribute, but normalized between 0 and 1) */
    addIdnAttribute: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>;
    /** @param toggle on to create a point in the center */
    center: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.BOOLEAN>;
}
export declare class Circle3PointsSopNode extends TypedSopNode<Circle3PointsSopParamsConfig> {
    params_config: Circle3PointsSopParamsConfig;
    static type(): string;
    initializeNode(): void;
    cook(input_contents: CoreGroup[]): void;
    private a;
    private b;
    private c;
    private _create_circle;
}
export {};
