You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: schema.rb
    path of file: ./repos/reek/lib/reek/configuration
    
    the code of the file until where you have to start completion: # frozen_string_literal: true

require 'dry/schema'

module Reek
  module Configuration
    #
    # Configuration schema constants.
    #
    class Schema
      # Enable the :info extension so we can introspect
      # your keys and types
      Dry::Schema.load_extensions(:info)

      # rubocop:disable Met
    
      def self.schema(directories = [])
        Dry::Schema.Params do
          config.validate_keys = true

          optional(:detectors).filled(ALL_DETECTORS_SCHEMA)
          optional(:directories).filled(:hash) do
            directories.each { |dir| optional(dir.to_sym).filled(ALL_DETECTORS_SCHEMA) }
          end
          optional(:exclude_paths).array(:string)
        end
      end