import { CoreObjectType, ObjectContent } from '../geometry/ObjectContent';
import { Vector3 } from 'three';
export declare enum SoftBodyIdAttribute {
    SOLVER_NODE = "SoftBodyIdAttribute_node",
    EMBED_HIGH_RES_NODE = "SoftBodyIdAttribute_embedHighResNode",
    EPHEMERAL_ID = "SoftBodyIdAttribute_ephemeralId"
}
export declare enum SoftBodyCommonAttribute {
    HIGH_RES_SKINNING_LOOKUP_SPACING = "SoftBodyAttribute_highResSkinningLookupSpacing",
    HIGH_RES_SKINNING_LOOKUP_PADDING = "SoftBodyAttribute_highResSkinningLookupPadding"
}
type SoftBodyAttribute = SoftBodyCommonAttribute | SoftBodyIdAttribute;
export declare class CoreSoftBodyBaseAttribute {
    protected static _setVector3(object: ObjectContent<CoreObjectType>, attribName: SoftBodyAttribute, value: Vector3): void;
    protected static _getVector3(object: ObjectContent<CoreObjectType>, attribName: SoftBodyAttribute, target: Vector3): void;
    protected static _setNumber(object: ObjectContent<CoreObjectType>, attribName: SoftBodyAttribute, value: number): void;
    protected static _getNumber(object: ObjectContent<CoreObjectType>, attribName: SoftBodyAttribute, defaultValue: number): number;
}
export declare class CoreSoftBodyAttribute extends CoreSoftBodyBaseAttribute {
    static setTetEmbedHighResNodeId(object: ObjectContent<CoreObjectType>, value: number): void;
    static getTetEmbedHighResNodeId(object: ObjectContent<CoreObjectType>): number;
    static setHighResSkinningLookupSpacing(object: ObjectContent<CoreObjectType>, value: number): void;
    static getHighResSkinningLookupSpacing(object: ObjectContent<CoreObjectType>): number;
    static setHighResSkinningLookupPadding(object: ObjectContent<CoreObjectType>, value: number): void;
    static getHighResSkinningLookupPadding(object: ObjectContent<CoreObjectType>): number;
}
export {};
