1// Signature format: 4.0
2package androidx.datastore.rxjava3 {
3
4  public interface RxDataMigration<T> {
5    method public io.reactivex.rxjava3.core.Completable cleanUp();
6    method public io.reactivex.rxjava3.core.Single<T!> migrate(T?);
7    method public io.reactivex.rxjava3.core.Single<java.lang.Boolean!> shouldMigrate(T?);
8  }
9
10  public final class RxDataStore<T> implements io.reactivex.rxjava3.disposables.Disposable {
11    method @SuppressCompatibility @kotlinx.coroutines.ExperimentalCoroutinesApi public io.reactivex.rxjava3.core.Flowable<T> data();
12    method public void dispose();
13    method public boolean isDisposed();
14    method public io.reactivex.rxjava3.core.Completable shutdownComplete();
15    method @SuppressCompatibility @kotlinx.coroutines.ExperimentalCoroutinesApi public io.reactivex.rxjava3.core.Single<T> updateDataAsync(io.reactivex.rxjava3.functions.Function<T,io.reactivex.rxjava3.core.Single<T>> transform);
16    field public static final androidx.datastore.rxjava3.RxDataStore.Companion Companion;
17  }
18
19  public static final class RxDataStore.Companion {
20  }
21
22  public final class RxDataStoreBuilder<T> {
23    ctor public RxDataStoreBuilder(android.content.Context context, String fileName, androidx.datastore.core.Serializer<T> serializer);
24    ctor public RxDataStoreBuilder(java.util.concurrent.Callable<java.io.File> produceFile, androidx.datastore.core.Serializer<T> serializer);
25    method public androidx.datastore.rxjava3.RxDataStoreBuilder<T> addDataMigration(androidx.datastore.core.DataMigration<T> dataMigration);
26    method public androidx.datastore.rxjava3.RxDataStoreBuilder<T> addRxDataMigration(androidx.datastore.rxjava3.RxDataMigration<T> rxDataMigration);
27    method public androidx.datastore.rxjava3.RxDataStore<T> build();
28    method public androidx.datastore.rxjava3.RxDataStoreBuilder<T> setCorruptionHandler(androidx.datastore.core.handlers.ReplaceFileCorruptionHandler<T> corruptionHandler);
29    method public androidx.datastore.rxjava3.RxDataStoreBuilder<T> setIoScheduler(io.reactivex.rxjava3.core.Scheduler ioScheduler);
30  }
31
32  public final class RxDataStoreDelegateKt {
33    method public static <T> kotlin.properties.ReadOnlyProperty<android.content.Context,androidx.datastore.rxjava3.RxDataStore<T>> rxDataStore(String fileName, androidx.datastore.core.Serializer<T> serializer, optional androidx.datastore.core.handlers.ReplaceFileCorruptionHandler<T>? corruptionHandler, optional kotlin.jvm.functions.Function1<? super android.content.Context,? extends java.util.List<? extends androidx.datastore.core.DataMigration<T>>> produceMigrations, optional io.reactivex.rxjava3.core.Scheduler scheduler);
34  }
35
36  @kotlin.jvm.JvmDefaultWithCompatibility public interface RxSharedPreferencesMigration<T> {
37    method public io.reactivex.rxjava3.core.Single<T> migrate(androidx.datastore.migrations.SharedPreferencesView sharedPreferencesView, T currentData);
38    method public default io.reactivex.rxjava3.core.Single<java.lang.Boolean> shouldMigrate(T currentData);
39  }
40
41  public final class RxSharedPreferencesMigrationBuilder<T> {
42    ctor public RxSharedPreferencesMigrationBuilder(android.content.Context context, String sharedPreferencesName, androidx.datastore.rxjava3.RxSharedPreferencesMigration<T> rxSharedPreferencesMigration);
43    method public androidx.datastore.core.DataMigration<T> build();
44    method public androidx.datastore.rxjava3.RxSharedPreferencesMigrationBuilder<T> setKeysToMigrate(java.lang.String... keys);
45  }
46
47}
48
49