/**
 * Create a physics world
 *
 *
 */
import { Object3D } from 'three';
import { TypedActorSopNode } from './_BaseActor';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { SopType } from '../../poly/registers/nodes/types/Sop';
import { PolyScene } from '../../scene/PolyScene';
declare class PhysicsWorldSopParamsConfig extends NodeParamsConfig {
    /** @param gravity */
    gravity: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.VECTOR3>;
}
export declare class PhysicsWorldSopNode extends TypedActorSopNode<PhysicsWorldSopParamsConfig> {
    readonly paramsConfig: PhysicsWorldSopParamsConfig;
    static type(): SopType.PHYSICS_WORLD;
    protected initializeNode(): void;
    cook(inputCoreGroups: CoreGroup[]): Promise<void>;
    updateObjectOnAdd(object: Object3D): void;
    private _findActorNode;
}
export declare function getPhysicsWorldNodeFromWorldObject(worldObject: Object3D, scene: PolyScene): PhysicsWorldSopNode | undefined;
export {};
