class Selenium::WebDriver::BiDi::Struct

def camel_to_snake(camel_str)

def camel_to_snake(camel_str)
  camel_str.gsub(/([A-Z])/, '_\1').downcase
end

def new(*args, &block)

def new(*args, &block)
  super(*args) do
    define_method(:initialize) do |**kwargs|
      converted_kwargs = kwargs.transform_keys { |key| self.class.camel_to_snake(key.to_s).to_sym }
      super(*converted_kwargs.values_at(*self.class.members))
    end
    class_eval(&block) if block
  end
end