/**
 * Create Force attributes to be used with the Ammo physics solver
 *
 * @remarks
 * TBD
 *
 *
 */
import { TypedSopNode } from '@polygonjs/polygonjs/dist/src/engine/nodes/sop/_Base';
import { NodeParamsConfig } from '@polygonjs/polygonjs/dist/src/engine/nodes/utils/params/ParamsConfig';
import { CoreGroup } from '@polygonjs/polygonjs/dist/src/core/geometry/Group';
declare class PhysicsForceAttributesSopParamsConfig extends NodeParamsConfig {
    type: import("@polygonjs/polygonjs/dist/src/engine/nodes/utils/params/ParamsConfig").ParamTemplate<import("@polygonjs/polygonjs/dist/src/engine/poly/ParamType").ParamType.INTEGER>;
    direction: import("@polygonjs/polygonjs/dist/src/engine/nodes/utils/params/ParamsConfig").ParamTemplate<import("@polygonjs/polygonjs/dist/src/engine/poly/ParamType").ParamType.VECTOR3>;
    amount: import("@polygonjs/polygonjs/dist/src/engine/nodes/utils/params/ParamsConfig").ParamTemplate<import("@polygonjs/polygonjs/dist/src/engine/poly/ParamType").ParamType.FLOAT>;
    max_distance: import("@polygonjs/polygonjs/dist/src/engine/nodes/utils/params/ParamsConfig").ParamTemplate<import("@polygonjs/polygonjs/dist/src/engine/poly/ParamType").ParamType.FLOAT>;
    max_speed: import("@polygonjs/polygonjs/dist/src/engine/nodes/utils/params/ParamsConfig").ParamTemplate<import("@polygonjs/polygonjs/dist/src/engine/poly/ParamType").ParamType.FLOAT>;
}
export declare class PhysicsForceAttributesSopNode extends TypedSopNode<PhysicsForceAttributesSopParamsConfig> {
    params_config: PhysicsForceAttributesSopParamsConfig;
    static type(): string;
    initializeNode(): void;
    cook(input_contents: CoreGroup[]): void;
    private _apply_force_attributes;
    private _apply_attributes_directional;
    private _apply_attributes_radial;
    private _create_attributes_if_required;
}
export {};
