class_docstr: A single configuration definition
  
  This class implements the parts of the dictionary interface
  required to work as a drop-in replacement for the legacy
  data structure used for a configuration definition prior
  DataLad 0.16.
  
  Moreover, it implement lazy evaluation of default values,
  when a 'default_fn' property is given.
  
  .. note::
  
    This is an internal helper that may change at any time without
    prior notice.
class_docstr_tok: ["A","single","configuration","definition","This","class","implements","the","parts","of","the","dictionary","interface","required","to","work","as","a","drop-in","replacement","for","the","legacy","data","structure","used","for","a","configuration","definition","prior","DataLad","0.16",".","Moreover",",","it","implement","lazy","evaluation","of","default","values",",","when","a","'default_fn","'","property","is","given",".","..","note",":",":","This","is","an","internal","helper","that","may","change","at","any","time","without","prior","notice","."]
code: def __repr__(self):
      return self._props.__repr__()
  
imports: from collections.abc import Mapping
  import logging
  from os import environ
  from os.path import expanduser
  from os.path import join
  import time
  from platformdirs import AppDirs
  from datalad.support.constraints import EnsureBool, EnsureChoice, EnsureInt, EnsureFloat, EnsureListOf, EnsureNone, EnsureStr
  from datalad.utils import on_windows
label_desc: Use image node_id 7 for calling the _ConfigDefinition obj's underlying member method code with example usage: obj.__repr__() and returns: self