docstr: For each valid metric parameter, returns its default value and if this parameter is mandatory.
  Implemented in child classes.
  
  Returns
  ----------
  valid_params: dict: param_name -> {'default_value': default value or None, 'is_mandatory': bool}
docstr_tok: ["For","each","valid","metric","parameter",",","returns","its","default","value","and","if","this","parameter","is","mandatory",".","Implemented","in","child","classes",".","Returns","--","--","--","--","--","valid_params",":","dict",":","param_name","-",">","{","'default_value","'",":","default","value","or","None",",","'is_mandatory","'",":","bool","}"]
code: def params_with_defaults():
      """
      For each valid metric parameter, returns its default value and if this parameter is mandatory.
      Implemented in child classes.
  
      Returns
      ----------
      valid_params: dict: param_name -> {'default_value': default value or None, 'is_mandatory': bool}
      """
      raise NotImplementedError(
          "Should be overridden by the child class."
      )
  
imports: from functools import partial
  import numpy
  from .None import _catboost
label_desc: Use image node_id 1 for calling the BuiltinMetric obj's underlying member method code with example usage: obj.params_with_defaults() without return types