---@meta

---@class FBreakAttributeKeyDataflowNode : FDataflowNode
---@field AttributeKeyIn FCollectionAttributeKey
---@field AttributeOut FString
---@field GroupOut FString
local FBreakAttributeKeyDataflowNode = {}



---@class FDataflowCollectionAddScalarVertexPropertyNode : FDataflowNode
---@field Collection FManagedArrayCollection
---@field Name FString
---@field AttributeKey FCollectionAttributeKey
---@field VertexWeights TArray<float>
---@field TargetGroup FScalarVertexPropertyGroup
---@field OverrideType EDataflowWeightMapOverrideType
local FDataflowCollectionAddScalarVertexPropertyNode = {}



---@class FDataflowCollectionEditSkinWeightsNode : FDataflowPrimitiveNode
---@field Collection FManagedArrayCollection
---@field BoneIndicesName FString
---@field BoneWeightsName FString
---@field VertexGroup FScalarVertexPropertyGroup
---@field BoneIndicesKey FCollectionAttributeKey
---@field BoneWeightsKey FCollectionAttributeKey
---@field ObjectSkeleton USkeleton
---@field bCompressSkinWeights boolean
---@field SkinWeights TArray<FDataflowSkinWeightData>
---@field SkeletalMeshes TArray<USkeletalMesh>
local FDataflowCollectionEditSkinWeightsNode = {}



---@class FDataflowFunctionProperty
local FDataflowFunctionProperty = {}


---@class FDataflowPrimitiveNode : FDataflowNode
local FDataflowPrimitiveNode = {}


---@class FDataflowSkinWeightData
---@field BoneWeights TArray<float>
---@field BoneIndices TArray<int32>
local FDataflowSkinWeightData = {}



---@class FFloatOverrideDataflowNode : FDataflowNode
---@field PropertyName FName
---@field KeyName FName
---@field ValueOut float
local FFloatOverrideDataflowNode = {}



---@class FGetPhysicsAssetFromSkeletalMeshDataflowNode : FDataflowNode
---@field SkeletalMesh USkeletalMesh
---@field PhysicsAsset UPhysicsAsset
local FGetPhysicsAssetFromSkeletalMeshDataflowNode = {}



---@class FGetSkeletalMeshDataflowNode : FDataflowNode
---@field SkeletalMesh USkeletalMesh
---@field PropertyName FName
local FGetSkeletalMeshDataflowNode = {}



---@class FGetSkeletonDataflowNode : FDataflowNode
---@field Skeleton USkeleton
---@field PropertyName FName
local FGetSkeletonDataflowNode = {}



---@class FGetStaticMeshDataflowNode : FDataflowNode
---@field StaticMesh UStaticMesh
---@field PropertyName FName
local FGetStaticMeshDataflowNode = {}



---@class FMakeAttributeKeyDataflowNode : FDataflowNode
---@field GroupIn FString
---@field AttributeIn FString
---@field AttributeKeyOut FCollectionAttributeKey
local FMakeAttributeKeyDataflowNode = {}



---@class FScalarVertexPropertyGroup
---@field Name FName
local FScalarVertexPropertyGroup = {}



---@class FSelectionSetDataflowNode : FDataflowNode
---@field Indices FString
---@field IndicesOut TArray<int32>
local FSelectionSetDataflowNode = {}



---@class FSkeletalMeshBoneDataflowNode : FDataflowNode
---@field BoneName FName
---@field SkeletalMesh USkeletalMesh
---@field BoneIndexOut int32
---@field PropertyName FName
local FSkeletalMeshBoneDataflowNode = {}



---@class FSkeletalMeshReferenceTransformDataflowNode : FDataflowNode
---@field SkeletalMeshIn USkeletalMesh
---@field BoneIndexIn int32
---@field TransformOut FTransform
local FSkeletalMeshReferenceTransformDataflowNode = {}



