module WolfCore::HashUtils

def deep_to_h(value)

def deep_to_h(value)
  if value.instance_of?(Hash)
    value.transform_values { |v| deep_to_h(v) }
  elsif value.is_a?(Array)
    value.map { |v| deep_to_h(v) }
  elsif value.respond_to?(:to_h) && !value.is_nil?
    deep_to_h(value.to_h)
  else
    value
  end
end