1// Signature format: 4.0
2package androidx.datastore.rxjava2 {
3
4  public interface RxDataMigration<T> {
5    method public io.reactivex.Completable cleanUp();
6    method public io.reactivex.Single<T!> migrate(T?);
7    method public io.reactivex.Single<java.lang.Boolean!> shouldMigrate(T?);
8  }
9
10  public final class RxDataStore<T> implements io.reactivex.disposables.Disposable {
11    method public void dispose();
12    method public boolean isDisposed();
13    method public io.reactivex.Completable shutdownComplete();
14  }
15
16  public final class RxDataStoreBuilder<T> {
17    ctor public RxDataStoreBuilder(android.content.Context context, String fileName, androidx.datastore.core.Serializer<T> serializer);
18    ctor public RxDataStoreBuilder(java.util.concurrent.Callable<java.io.File> produceFile, androidx.datastore.core.Serializer<T> serializer);
19    method public androidx.datastore.rxjava2.RxDataStoreBuilder<T> addDataMigration(androidx.datastore.core.DataMigration<T> dataMigration);
20    method public androidx.datastore.rxjava2.RxDataStoreBuilder<T> addRxDataMigration(androidx.datastore.rxjava2.RxDataMigration<T> rxDataMigration);
21    method public androidx.datastore.rxjava2.RxDataStore<T> build();
22    method public androidx.datastore.rxjava2.RxDataStoreBuilder<T> setCorruptionHandler(androidx.datastore.core.handlers.ReplaceFileCorruptionHandler<T> corruptionHandler);
23    method public androidx.datastore.rxjava2.RxDataStoreBuilder<T> setIoScheduler(io.reactivex.Scheduler ioScheduler);
24  }
25
26  public final class RxDataStoreDelegateKt {
27    method public static <T> kotlin.properties.ReadOnlyProperty<android.content.Context,androidx.datastore.rxjava2.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.Scheduler scheduler);
28  }
29
30  public interface RxSharedPreferencesMigration<T> {
31    method public io.reactivex.Single<T> migrate(androidx.datastore.migrations.SharedPreferencesView sharedPreferencesView, T? currentData);
32    method public default io.reactivex.Single<java.lang.Boolean> shouldMigrate(T? currentData);
33  }
34
35  public final class RxSharedPreferencesMigrationBuilder<T> {
36    ctor public RxSharedPreferencesMigrationBuilder(android.content.Context context, String sharedPreferencesName, androidx.datastore.rxjava2.RxSharedPreferencesMigration<T> rxSharedPreferencesMigration);
37    method public androidx.datastore.core.DataMigration<T> build();
38    method public androidx.datastore.rxjava2.RxSharedPreferencesMigrationBuilder<T> setKeysToMigrate(java.lang.String... keys);
39  }
40
41}
42
43