code: def save_configs(self, configs: Dict[str, any]):
      with self.lock:
          self.data["configs"] = configs
  
      self.app_tracker.has_data(self)
  
imports: import threading
  import time
  from typing import Dict, Optional, TYPE_CHECKING
  from .None import AppTracker, Packet, AppTrackDataSource, AppTrackResponseHandler
  from .dynamic import DynamicUpdateHandler
  from .url import AppUrlResponseHandler
  from ..configs.processor import ConfigsSaver
label_desc: Use image node_id 3 for calling the AppExperiment obj's underlying member method code with example usage: obj.save_configs(configs) without return types