code: def get_hyperparameter_search_space(
      feat_type: Optional[FEAT_TYPE_TYPE] = None,
      dataset_properties=None,
  ):
      cs = ConfigurationSpace()
  
      n_neighbors = UniformIntegerHyperparameter(
          name="n_neighbors",
          lower=1,
          upper=100,
          log=True,
          default_value=1,
      )
      weights = CategoricalHyperparameter(
          name="weights",
          choices=["uniform", "distance"],
          default_value="uniform",
      )
      p = CategoricalHyperparameter(
          name="p", choices=[1, 2], default_value=2
      )
  
      cs.add_hyperparameters([n_neighbors, weights, p])
  
      return cs
  
file_path: auto-sklearn/autosklearn/pipeline/components/regression/k_nearest_neighbors.py
imports: from typing import Optional
  from ConfigSpace.configuration_space import ConfigurationSpace
  from ConfigSpace.hyperparameters import CategoricalHyperparameter, UniformIntegerHyperparameter
  from autosklearn.askl_typing import FEAT_TYPE_TYPE
  from autosklearn.pipeline.components.base import AutoSklearnRegressionAlgorithm
  from autosklearn.pipeline.constants import DENSE, PREDICTIONS, SPARSE, UNSIGNED_DATA
label_desc: Use image node_id 5 for calling the KNearestNeighborsRegressor obj's underlying member method code with example usage: obj.get_hyperparameter_search_space(feat_type, dataset_properties) and returns: cs