code: func (r *RawConfig) Config() map[string]interface{} {
  	r.lock.Lock()
  	defer r.lock.Unlock()
  	return r.config
  }
docs: // Config returns the entire configuration with the variables
  // interpolated from any call to Interpolate.
  //
  // If any interpolated variables are unknown (value set to
  // UnknownVariableValue), the first non-container (map, slice, etc.) element
  // will be removed from the config. The keys of unknown variables
  // can be found using the UnknownKeys function.
  //
  // By pruning out unknown keys from the configuration, the raw
  // structure will always successfully decode into its ultimate
  // structure using something like mapstructure.