module Hashie::Extensions::Structure::ClassMethods

def key(key, options = {})

def key(key, options = {})
  (@permitted_keys ||= []) << key
  if options[:default]
    (@default_values ||= {})[key] = options.delete(:default)
  end
  permitted_keys
end

def permitted_keys

def permitted_keys
  @permitted_keys
end