/**
 * Allows easy position of lights, or any object around another one.
 *
 * @remarks
 * This node transforms its children with latitude and longitude controls, instead of typical translate and rotate. It makes it more intuitive to position objects such as lights.
 *
 * Note that there is an equivalent node at the OBJ level
 *
 */
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { TransformTargetType } from '../../../core/Transform';
import { SopType } from '../../poly/registers/nodes/types/Sop';
declare class PolarTransformSopParamConfig extends NodeParamsConfig {
    /** @param sets if this node should transform objects or geometries */
    applyOn: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    /** @param center of the transform */
    center: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.VECTOR3>;
    /** @param moves the objects along the longitude, which is equivalent to a rotation on the y axis */
    longitude: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param moves the objects along the latitude, which is equivalent to a rotation on the z or x axis */
    latitude: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param moves the point aways from the center */
    depth: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
}
export declare class PolarTransformSopNode extends TypedSopNode<PolarTransformSopParamConfig> {
    paramsConfig: PolarTransformSopParamConfig;
    static type(): SopType;
    initializeNode(): void;
    private _operation;
    cook(input_contents: CoreGroup[]): void;
    setApplyOn(mode: TransformTargetType): void;
}
export {};
