class FirebaseRemoteConfig {

  @NonNull
  public Task<Void> reset() {
    // Use a Task to avoid throwing potential file I/O errors to the caller and because
    // frcMetadata's clear call is blocking.
    return Tasks.call(
        executor,
        () -> {
          activatedConfigsCache.clear();
          fetchedConfigsCache.clear();
          defaultConfigsCache.clear();
          frcMetadata.clear();
          return null;
        });
  }

    FirebaseRemoteConfig(
      Context context,
      FirebaseApp firebaseApp,
      FirebaseInstallationsApi firebaseInstallations,
      @Nullable FirebaseABTesting firebaseAbt,
      Executor executor,
      ConfigCacheClient fetchedConfigsCache,
      ConfigCacheClient activatedConfigsCache,
      ConfigCacheClient defaultConfigsCache,
      ConfigFetchHandler fetchHandler,
      ConfigGetParameterHandler getHandler,
      ConfigMetadataClient frcMetadata);

}