1// Signature format: 4.0
2package androidx.room {
3
4  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class CoroutinesRoom {
5    method @Deprecated public static <R> kotlinx.coroutines.flow.Flow<R> createFlow(androidx.room.RoomDatabase db, boolean inTransaction, String[] tableNames, java.util.concurrent.Callable<R> callable);
6    method @Deprecated public static suspend <R> Object? execute(androidx.room.RoomDatabase db, boolean inTransaction, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Callable<R> callable, kotlin.coroutines.Continuation<? super R>);
7    method @Deprecated public static suspend <R> Object? execute(androidx.room.RoomDatabase db, boolean inTransaction, java.util.concurrent.Callable<R> callable, kotlin.coroutines.Continuation<? super R>);
8    field public static final androidx.room.CoroutinesRoom.Companion Companion;
9  }
10
11  public static final class CoroutinesRoom.Companion {
12    method @Deprecated public <R> kotlinx.coroutines.flow.Flow<R> createFlow(androidx.room.RoomDatabase db, boolean inTransaction, String[] tableNames, java.util.concurrent.Callable<R> callable);
13    method @Deprecated public suspend <R> Object? execute(androidx.room.RoomDatabase db, boolean inTransaction, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Callable<R> callable, kotlin.coroutines.Continuation<? super R>);
14    method @Deprecated public suspend <R> Object? execute(androidx.room.RoomDatabase db, boolean inTransaction, java.util.concurrent.Callable<R> callable, kotlin.coroutines.Continuation<? super R>);
15  }
16
17  public class DatabaseConfiguration {
18    ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, boolean requireMigration, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom);
19    ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, android.content.Intent? multiInstanceInvalidationServiceIntent, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback, java.util.List<?> typeConverters, java.util.List<? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs);
20    ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, android.content.Intent? multiInstanceInvalidationServiceIntent, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback, java.util.List<?> typeConverters, java.util.List<? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs, boolean allowDestructiveMigrationForAllTables);
21    ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory? sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, android.content.Intent? multiInstanceInvalidationServiceIntent, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback, java.util.List<?> typeConverters, java.util.List<? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs, boolean allowDestructiveMigrationForAllTables, androidx.sqlite.SQLiteDriver? sqliteDriver, kotlin.coroutines.CoroutineContext? queryCoroutineContext);
22    ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom);
23    ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile);
24    ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream);
25    ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback);
26    ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback, java.util.List<?> typeConverters);
27    ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public DatabaseConfiguration(android.content.Context context, String? name, androidx.sqlite.db.SupportSQLiteOpenHelper.Factory sqliteOpenHelperFactory, androidx.room.RoomDatabase.MigrationContainer migrationContainer, java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks, boolean allowMainThreadQueries, androidx.room.RoomDatabase.JournalMode journalMode, java.util.concurrent.Executor queryExecutor, java.util.concurrent.Executor transactionExecutor, boolean multiInstanceInvalidation, boolean requireMigration, boolean allowDestructiveMigrationOnDowngrade, java.util.Set<java.lang.Integer>? migrationNotRequiredFrom, String? copyFromAssetPath, java.io.File? copyFromFile, java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream, androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback, java.util.List<?> typeConverters, java.util.List<? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs);
28    method public boolean isMigrationRequired(int fromVersion, int toVersion);
29    method @Deprecated public boolean isMigrationRequiredFrom(int version);
30    property public final boolean allowDestructiveMigrationForAllTables;
31    property public final boolean allowDestructiveMigrationOnDowngrade;
32    property public final boolean allowMainThreadQueries;
33    property public final java.util.List<? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs;
34    property public final java.util.List<? extends androidx.room.RoomDatabase.Callback>? callbacks;
35    property public final android.content.Context context;
36    property public final String? copyFromAssetPath;
37    property public final java.io.File? copyFromFile;
38    property public final java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream;
39    property public final androidx.room.RoomDatabase.JournalMode journalMode;
40    property public final androidx.room.RoomDatabase.MigrationContainer migrationContainer;
41    property public final boolean multiInstanceInvalidation;
42    property public final android.content.Intent? multiInstanceInvalidationServiceIntent;
43    property public final String? name;
44    property public final androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback;
45    property public final kotlin.coroutines.CoroutineContext? queryCoroutineContext;
46    property public final java.util.concurrent.Executor queryExecutor;
47    property public final boolean requireMigration;
48    property public final androidx.sqlite.SQLiteDriver? sqliteDriver;
49    property public final androidx.sqlite.db.SupportSQLiteOpenHelper.Factory? sqliteOpenHelperFactory;
50    property public final java.util.concurrent.Executor transactionExecutor;
51    property public final java.util.List<?> typeConverters;
52    field public final boolean allowDestructiveMigrationForAllTables;
53    field public final boolean allowDestructiveMigrationOnDowngrade;
54    field public final boolean allowMainThreadQueries;
55    field public final java.util.List<androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs;
56    field public final java.util.List<androidx.room.RoomDatabase.Callback>? callbacks;
57    field public final android.content.Context context;
58    field public final String? copyFromAssetPath;
59    field public final java.io.File? copyFromFile;
60    field public final java.util.concurrent.Callable<java.io.InputStream>? copyFromInputStream;
61    field public final androidx.room.RoomDatabase.JournalMode journalMode;
62    field public final androidx.room.RoomDatabase.MigrationContainer migrationContainer;
63    field public final boolean multiInstanceInvalidation;
64    field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final android.content.Intent? multiInstanceInvalidationServiceIntent;
65    field public final String? name;
66    field public final androidx.room.RoomDatabase.PrepackagedDatabaseCallback? prepackagedDatabaseCallback;
67    field public final kotlin.coroutines.CoroutineContext? queryCoroutineContext;
68    field public final java.util.concurrent.Executor queryExecutor;
69    field public final boolean requireMigration;
70    field public final androidx.sqlite.SQLiteDriver? sqliteDriver;
71    field public final androidx.sqlite.db.SupportSQLiteOpenHelper.Factory? sqliteOpenHelperFactory;
72    field public final java.util.concurrent.Executor transactionExecutor;
73    field public final java.util.List<java.lang.Object> typeConverters;
74  }
75
76  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class EntityDeleteOrUpdateAdapter<T> {
77    ctor public EntityDeleteOrUpdateAdapter();
78    method protected abstract void bind(androidx.sqlite.SQLiteStatement statement, T entity);
79    method protected abstract String createQuery();
80    method public final int handle(androidx.sqlite.SQLiteConnection connection, T? entity);
81    method public final int handleMultiple(androidx.sqlite.SQLiteConnection connection, Iterable<? extends T?>? entities);
82    method public final int handleMultiple(androidx.sqlite.SQLiteConnection connection, T?[]? entities);
83  }
84
85  @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class EntityDeletionOrUpdateAdapter<T> extends androidx.room.SharedSQLiteStatement {
86    ctor @Deprecated public EntityDeletionOrUpdateAdapter(androidx.room.RoomDatabase database);
87    method @Deprecated protected abstract void bind(androidx.sqlite.db.SupportSQLiteStatement statement, T entity);
88    method @Deprecated public final int handle(T entity);
89    method @Deprecated public final int handleMultiple(Iterable<? extends T> entities);
90    method @Deprecated public final int handleMultiple(T[] entities);
91  }
92
93  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class EntityInsertAdapter<T> {
94    ctor public EntityInsertAdapter();
95    method protected abstract void bind(androidx.sqlite.SQLiteStatement statement, T entity);
96    method protected abstract String createQuery();
97    method public final void insert(androidx.sqlite.SQLiteConnection connection, Iterable<? extends T?>? entities);
98    method public final void insert(androidx.sqlite.SQLiteConnection connection, T? entity);
99    method public final void insert(androidx.sqlite.SQLiteConnection connection, T?[]? entities);
100    method public final long insertAndReturnId(androidx.sqlite.SQLiteConnection connection, T? entity);
101    method public final long[] insertAndReturnIdsArray(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities);
102    method public final long[] insertAndReturnIdsArray(androidx.sqlite.SQLiteConnection connection, T?[]? entities);
103    method public final Long[] insertAndReturnIdsArrayBox(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities);
104    method public final Long[] insertAndReturnIdsArrayBox(androidx.sqlite.SQLiteConnection connection, T?[]? entities);
105    method public final java.util.List<java.lang.Long> insertAndReturnIdsList(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities);
106    method public final java.util.List<java.lang.Long> insertAndReturnIdsList(androidx.sqlite.SQLiteConnection connection, T?[]? entities);
107  }
108
109  @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class EntityInsertionAdapter<T> extends androidx.room.SharedSQLiteStatement {
110    ctor @Deprecated public EntityInsertionAdapter(androidx.room.RoomDatabase database);
111    method @Deprecated protected abstract void bind(androidx.sqlite.db.SupportSQLiteStatement statement, T entity);
112    method @Deprecated public final void insert(Iterable<? extends T> entities);
113    method @Deprecated public final void insert(T entity);
114    method @Deprecated public final void insert(T[] entities);
115    method @Deprecated public final long insertAndReturnId(T entity);
116    method @Deprecated public final long[] insertAndReturnIdsArray(java.util.Collection<? extends T> entities);
117    method @Deprecated public final long[] insertAndReturnIdsArray(T[] entities);
118    method @Deprecated public final Long[] insertAndReturnIdsArrayBox(java.util.Collection<? extends T> entities);
119    method @Deprecated public final Long[] insertAndReturnIdsArrayBox(T[] entities);
120    method @Deprecated public final java.util.List<java.lang.Long> insertAndReturnIdsList(java.util.Collection<? extends T> entities);
121    method @Deprecated public final java.util.List<java.lang.Long> insertAndReturnIdsList(T[] entities);
122  }
123
124  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class EntityUpsertAdapter<T> {
125    ctor public EntityUpsertAdapter(androidx.room.EntityInsertAdapter<T> entityInsertAdapter, androidx.room.EntityDeleteOrUpdateAdapter<T> updateAdapter);
126    method public void upsert(androidx.sqlite.SQLiteConnection connection, Iterable<? extends T?>? entities);
127    method public void upsert(androidx.sqlite.SQLiteConnection connection, T? entity);
128    method public void upsert(androidx.sqlite.SQLiteConnection connection, T?[]? entities);
129    method public long upsertAndReturnId(androidx.sqlite.SQLiteConnection connection, T? entity);
130    method public long[] upsertAndReturnIdsArray(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities);
131    method public long[] upsertAndReturnIdsArray(androidx.sqlite.SQLiteConnection connection, T?[]? entities);
132    method public Long[] upsertAndReturnIdsArrayBox(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities);
133    method public Long[] upsertAndReturnIdsArrayBox(androidx.sqlite.SQLiteConnection connection, T?[]? entities);
134    method public java.util.List<java.lang.Long> upsertAndReturnIdsList(androidx.sqlite.SQLiteConnection connection, java.util.Collection<? extends T?>? entities);
135    method public java.util.List<java.lang.Long> upsertAndReturnIdsList(androidx.sqlite.SQLiteConnection connection, T?[]? entities);
136    field public static final androidx.room.EntityUpsertAdapter.Companion Companion;
137  }
138
139  public static final class EntityUpsertAdapter.Companion {
140  }
141
142  @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class EntityUpsertionAdapter<T> {
143    ctor @Deprecated public EntityUpsertionAdapter(androidx.room.EntityInsertionAdapter<T> insertionAdapter, androidx.room.EntityDeletionOrUpdateAdapter<T> updateAdapter);
144    method @Deprecated public void upsert(Iterable<? extends T> entities);
145    method @Deprecated public void upsert(T entity);
146    method @Deprecated public void upsert(T[] entities);
147    method @Deprecated public long upsertAndReturnId(T entity);
148    method @Deprecated public long[] upsertAndReturnIdsArray(java.util.Collection<? extends T> entities);
149    method @Deprecated public long[] upsertAndReturnIdsArray(T[] entities);
150    method @Deprecated public Long[] upsertAndReturnIdsArrayBox(java.util.Collection<? extends T> entities);
151    method @Deprecated public Long[] upsertAndReturnIdsArrayBox(T[] entities);
152    method @Deprecated public java.util.List<java.lang.Long> upsertAndReturnIdsList(java.util.Collection<? extends T> entities);
153    method @Deprecated public java.util.List<java.lang.Long> upsertAndReturnIdsList(T[] entities);
154  }
155
156  @SuppressCompatibility @kotlin.RequiresOptIn @kotlin.annotation.Retention(kotlin.annotation.AnnotationRetention.BINARY) @kotlin.annotation.Target(allowedTargets={kotlin.annotation.AnnotationTarget.CLASS, kotlin.annotation.AnnotationTarget.FUNCTION}) public @interface ExperimentalRoomApi {
157  }
158
159  public class InvalidationTracker {
160    ctor @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public InvalidationTracker(androidx.room.RoomDatabase database, java.lang.String... tableNames);
161    ctor @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public InvalidationTracker(androidx.room.RoomDatabase database, java.util.Map<java.lang.String,java.lang.String> shadowTablesMap, java.util.Map<java.lang.String,java.util.Set<java.lang.String>> viewTables, java.lang.String... tableNames);
162    method @WorkerThread public void addObserver(androidx.room.InvalidationTracker.Observer observer);
163    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @WorkerThread public void addWeakObserver(androidx.room.InvalidationTracker.Observer observer);
164    method public final kotlinx.coroutines.flow.Flow<java.util.Set<java.lang.String>> createFlow(String[] tables);
165    method public final kotlinx.coroutines.flow.Flow<java.util.Set<java.lang.String>> createFlow(String[] tables, optional boolean emitInitialState);
166    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public <T> androidx.lifecycle.LiveData<T> createLiveData(String[] tableNames, boolean inTransaction, java.util.concurrent.Callable<T?> computeFunction);
167    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final <T> androidx.lifecycle.LiveData<T> createLiveData(String[] tableNames, boolean inTransaction, kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteConnection,? extends T?> computeFunction);
168    method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public <T> androidx.lifecycle.LiveData<T> createLiveData(String[] tableNames, java.util.concurrent.Callable<T?> computeFunction);
169    method public final void refreshAsync();
170    method public void refreshVersionsAsync();
171    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @WorkerThread public void refreshVersionsSync();
172    method @WorkerThread public void removeObserver(androidx.room.InvalidationTracker.Observer observer);
173    field public static final androidx.room.InvalidationTracker.Companion Companion;
174  }
175
176  public static final class InvalidationTracker.Companion {
177  }
178
179  public abstract static class InvalidationTracker.Observer {
180    ctor protected InvalidationTracker.Observer(String firstTable, java.lang.String... rest);
181    ctor public InvalidationTracker.Observer(String[] tables);
182    method public abstract void onInvalidated(java.util.Set<java.lang.String> tables);
183  }
184
185  @SuppressCompatibility @androidx.room.ExperimentalRoomApi public final class MultiInstanceInvalidationService extends android.app.Service {
186    ctor public MultiInstanceInvalidationService();
187    method public android.os.IBinder onBind(android.content.Intent intent);
188  }
189
190  public interface PooledConnection {
191    method public suspend <R> Object? usePrepared(String sql, kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteStatement,? extends R> block, kotlin.coroutines.Continuation<? super R>);
192  }
193
194  public final class Room {
195    method public static <T extends androidx.room.RoomDatabase> androidx.room.RoomDatabase.Builder<T> databaseBuilder(android.content.Context context, Class<T> klass, String? name);
196    method public inline <reified T extends androidx.room.RoomDatabase> androidx.room.RoomDatabase.Builder<T> databaseBuilder(android.content.Context context, String name, optional kotlin.jvm.functions.Function0<? extends T> factory);
197    method public static <T extends androidx.room.RoomDatabase> androidx.room.RoomDatabase.Builder<T> inMemoryDatabaseBuilder(android.content.Context context, Class<T> klass);
198    method public inline <reified T extends androidx.room.RoomDatabase> androidx.room.RoomDatabase.Builder<T> inMemoryDatabaseBuilder(android.content.Context context, optional kotlin.jvm.functions.Function0<? extends T> factory);
199    property public static String MASTER_TABLE_NAME;
200    field public static final androidx.room.Room INSTANCE;
201    field public static final String MASTER_TABLE_NAME = "room_master_table";
202  }
203
204  public abstract class RoomDatabase {
205    ctor public RoomDatabase();
206    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public void assertNotMainThread();
207    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public void assertNotSuspendingTransaction();
208    method @Deprecated public void beginTransaction();
209    method @WorkerThread public abstract void clearAllTables();
210    method public void close();
211    method public androidx.sqlite.db.SupportSQLiteStatement compileStatement(String sql);
212    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public java.util.List<androidx.room.migration.Migration> createAutoMigrations(java.util.Map<kotlin.reflect.KClass<? extends androidx.room.migration.AutoMigrationSpec>,? extends androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs);
213    method protected abstract androidx.room.InvalidationTracker createInvalidationTracker();
214    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected androidx.room.RoomOpenDelegateMarker createOpenDelegate();
215    method @Deprecated protected androidx.sqlite.db.SupportSQLiteOpenHelper createOpenHelper(androidx.room.DatabaseConfiguration config);
216    method @Deprecated public void endTransaction();
217    method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @kotlin.jvm.JvmSuppressWildcards public java.util.List<androidx.room.migration.Migration> getAutoMigrations(java.util.Map<java.lang.Class<? extends androidx.room.migration.AutoMigrationSpec>,androidx.room.migration.AutoMigrationSpec> autoMigrationSpecs);
218    method public androidx.room.InvalidationTracker getInvalidationTracker();
219    method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected final java.util.List<androidx.room.RoomDatabase.Callback>? getMCallbacks();
220    method @Deprecated @kotlin.jvm.Volatile protected final androidx.sqlite.db.SupportSQLiteDatabase? getMDatabase();
221    method public androidx.sqlite.db.SupportSQLiteOpenHelper getOpenHelper();
222    method public java.util.concurrent.Executor getQueryExecutor();
223    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public java.util.Set<kotlin.reflect.KClass<? extends androidx.room.migration.AutoMigrationSpec>> getRequiredAutoMigrationSpecClasses();
224    method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public java.util.Set<java.lang.Class<? extends androidx.room.migration.AutoMigrationSpec>> getRequiredAutoMigrationSpecs();
225    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected java.util.Map<kotlin.reflect.KClass<? extends java.lang.Object?>,java.util.List<kotlin.reflect.KClass<? extends java.lang.Object?>>> getRequiredTypeConverterClasses();
226    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected java.util.Map<java.lang.Class<? extends java.lang.Object?>,java.util.List<java.lang.Class<? extends java.lang.Object?>>> getRequiredTypeConverters();
227    method public java.util.concurrent.Executor getTransactionExecutor();
228    method @Deprecated public <T> T? getTypeConverter(Class<T> klass);
229    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final <T> T getTypeConverter(kotlin.reflect.KClass<T> klass);
230    method public boolean inTransaction();
231    method @CallSuper public void init(androidx.room.DatabaseConfiguration configuration);
232    method @Deprecated protected void internalInitInvalidationTracker(androidx.sqlite.db.SupportSQLiteDatabase db);
233    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected final void internalInitInvalidationTracker(androidx.sqlite.SQLiteConnection connection);
234    method public boolean isOpen();
235    method public android.database.Cursor query(androidx.sqlite.db.SupportSQLiteQuery query);
236    method public android.database.Cursor query(androidx.sqlite.db.SupportSQLiteQuery query, optional android.os.CancellationSignal? signal);
237    method public android.database.Cursor query(String query, Object?[]? args);
238    method public void runInTransaction(Runnable body);
239    method public <V> V runInTransaction(java.util.concurrent.Callable<V> body);
240    method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected final void setMCallbacks(java.util.List<androidx.room.RoomDatabase.Callback>?);
241    method @Deprecated @kotlin.jvm.Volatile protected final void setMDatabase(androidx.sqlite.db.SupportSQLiteDatabase?);
242    method @Deprecated public void setTransactionSuccessful();
243    property public androidx.room.InvalidationTracker invalidationTracker;
244    property public boolean isOpen;
245    property @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected final java.util.List<androidx.room.RoomDatabase.Callback>? mCallbacks;
246    property @Deprecated @kotlin.jvm.Volatile protected final androidx.sqlite.db.SupportSQLiteDatabase? mDatabase;
247    property public androidx.sqlite.db.SupportSQLiteOpenHelper openHelper;
248    property public java.util.concurrent.Executor queryExecutor;
249    property public java.util.concurrent.Executor transactionExecutor;
250    field public static final androidx.room.RoomDatabase.Companion Companion;
251    field @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final int MAX_BIND_PARAMETER_CNT = 999; // 0x3e7
252    field @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) protected java.util.List<? extends androidx.room.RoomDatabase.Callback>? mCallbacks;
253    field @Deprecated @kotlin.jvm.Volatile protected volatile androidx.sqlite.db.SupportSQLiteDatabase? mDatabase;
254  }
255
256  public static class RoomDatabase.Builder<T extends androidx.room.RoomDatabase> {
257    ctor @kotlin.PublishedApi internal RoomDatabase.Builder(kotlin.reflect.KClass<T> klass, String? name, kotlin.jvm.functions.Function0<? extends T>? factory, android.content.Context context);
258    method public androidx.room.RoomDatabase.Builder<T> addAutoMigrationSpec(androidx.room.migration.AutoMigrationSpec autoMigrationSpec);
259    method public androidx.room.RoomDatabase.Builder<T> addCallback(androidx.room.RoomDatabase.Callback callback);
260    method public androidx.room.RoomDatabase.Builder<T> addMigrations(androidx.room.migration.Migration... migrations);
261    method public androidx.room.RoomDatabase.Builder<T> addTypeConverter(Object typeConverter);
262    method public androidx.room.RoomDatabase.Builder<T> allowMainThreadQueries();
263    method public T build();
264    method public androidx.room.RoomDatabase.Builder<T> createFromAsset(String databaseFilePath);
265    method public androidx.room.RoomDatabase.Builder<T> createFromAsset(String databaseFilePath, androidx.room.RoomDatabase.PrepackagedDatabaseCallback callback);
266    method public androidx.room.RoomDatabase.Builder<T> createFromFile(java.io.File databaseFile);
267    method public androidx.room.RoomDatabase.Builder<T> createFromFile(java.io.File databaseFile, androidx.room.RoomDatabase.PrepackagedDatabaseCallback callback);
268    method public androidx.room.RoomDatabase.Builder<T> createFromInputStream(java.util.concurrent.Callable<java.io.InputStream> inputStreamCallable);
269    method public androidx.room.RoomDatabase.Builder<T> createFromInputStream(java.util.concurrent.Callable<java.io.InputStream> inputStreamCallable, androidx.room.RoomDatabase.PrepackagedDatabaseCallback callback);
270    method public androidx.room.RoomDatabase.Builder<T> enableMultiInstanceInvalidation();
271    method @Deprecated public androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigration();
272    method public final androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigration(boolean dropAllTables);
273    method public androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigrationFrom(boolean dropAllTables, int... startVersions);
274    method @Deprecated public androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigrationFrom(int... startVersions);
275    method @Deprecated public androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigrationOnDowngrade();
276    method public final androidx.room.RoomDatabase.Builder<T> fallbackToDestructiveMigrationOnDowngrade(boolean dropAllTables);
277    method public androidx.room.RoomDatabase.Builder<T> openHelperFactory(androidx.sqlite.db.SupportSQLiteOpenHelper.Factory? factory);
278    method @SuppressCompatibility @androidx.room.ExperimentalRoomApi public androidx.room.RoomDatabase.Builder<T> setAutoCloseTimeout(@IntRange(from=0L) long autoCloseTimeout, java.util.concurrent.TimeUnit autoCloseTimeUnit);
279    method public final androidx.room.RoomDatabase.Builder<T> setDriver(androidx.sqlite.SQLiteDriver driver);
280    method @SuppressCompatibility @androidx.room.ExperimentalRoomApi public final androidx.room.RoomDatabase.Builder<T> setInMemoryTrackingMode(boolean inMemory);
281    method public androidx.room.RoomDatabase.Builder<T> setJournalMode(androidx.room.RoomDatabase.JournalMode journalMode);
282    method @SuppressCompatibility @androidx.room.ExperimentalRoomApi public androidx.room.RoomDatabase.Builder<T> setMultiInstanceInvalidationServiceIntent(android.content.Intent invalidationServiceIntent);
283    method public androidx.room.RoomDatabase.Builder<T> setQueryCallback(androidx.room.RoomDatabase.QueryCallback queryCallback, java.util.concurrent.Executor executor);
284    method public final androidx.room.RoomDatabase.Builder<T> setQueryCallback(kotlin.coroutines.CoroutineContext context, androidx.room.RoomDatabase.QueryCallback queryCallback);
285    method public final androidx.room.RoomDatabase.Builder<T> setQueryCoroutineContext(kotlin.coroutines.CoroutineContext context);
286    method public androidx.room.RoomDatabase.Builder<T> setQueryExecutor(java.util.concurrent.Executor executor);
287    method public androidx.room.RoomDatabase.Builder<T> setTransactionExecutor(java.util.concurrent.Executor executor);
288  }
289
290  public abstract static class RoomDatabase.Callback {
291    ctor public RoomDatabase.Callback();
292    method public void onCreate(androidx.sqlite.db.SupportSQLiteDatabase db);
293    method public void onCreate(androidx.sqlite.SQLiteConnection connection);
294    method public void onDestructiveMigration(androidx.sqlite.db.SupportSQLiteDatabase db);
295    method public void onDestructiveMigration(androidx.sqlite.SQLiteConnection connection);
296    method public void onOpen(androidx.sqlite.db.SupportSQLiteDatabase db);
297    method public void onOpen(androidx.sqlite.SQLiteConnection connection);
298  }
299
300  public static final class RoomDatabase.Companion {
301    property @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static int MAX_BIND_PARAMETER_CNT;
302  }
303
304  public enum RoomDatabase.JournalMode {
305    enum_constant public static final androidx.room.RoomDatabase.JournalMode AUTOMATIC;
306    enum_constant public static final androidx.room.RoomDatabase.JournalMode TRUNCATE;
307    enum_constant public static final androidx.room.RoomDatabase.JournalMode WRITE_AHEAD_LOGGING;
308  }
309
310  public static class RoomDatabase.MigrationContainer {
311    ctor public RoomDatabase.MigrationContainer();
312    method public void addMigrations(androidx.room.migration.Migration... migrations);
313    method public void addMigrations(java.util.List<? extends androidx.room.migration.Migration> migrations);
314    method public final boolean contains(int startVersion, int endVersion);
315    method public java.util.List<androidx.room.migration.Migration>? findMigrationPath(int start, int end);
316    method public java.util.Map<java.lang.Integer,java.util.Map<java.lang.Integer,androidx.room.migration.Migration>> getMigrations();
317  }
318
319  public abstract static class RoomDatabase.PrepackagedDatabaseCallback {
320    ctor public RoomDatabase.PrepackagedDatabaseCallback();
321    method public void onOpenPrepackagedDatabase(androidx.sqlite.db.SupportSQLiteDatabase db);
322  }
323
324  public static fun interface RoomDatabase.QueryCallback {
325    method public void onQuery(String sqlQuery, java.util.List<? extends java.lang.Object?> bindArgs);
326  }
327
328  public interface RoomDatabaseConstructor<T extends androidx.room.RoomDatabase> {
329    method public T initialize();
330  }
331
332  public final class RoomDatabaseKt {
333    method @Deprecated public static kotlinx.coroutines.flow.Flow<java.util.Set<java.lang.String>> invalidationTrackerFlow(androidx.room.RoomDatabase, String[] tables, optional boolean emitInitialState);
334    method public static suspend <R> Object? useReaderConnection(androidx.room.RoomDatabase, kotlin.jvm.functions.Function2<? super androidx.room.Transactor,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>);
335    method public static suspend <R> Object? useWriterConnection(androidx.room.RoomDatabase, kotlin.jvm.functions.Function2<? super androidx.room.Transactor,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>);
336    method public static suspend <R> Object? withTransaction(androidx.room.RoomDatabase, kotlin.jvm.functions.Function1<? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>);
337  }
338
339  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class RoomOpenDelegate implements androidx.room.RoomOpenDelegateMarker {
340    ctor public RoomOpenDelegate(int version, String identityHash, String legacyIdentityHash);
341    method public abstract void createAllTables(androidx.sqlite.SQLiteConnection connection);
342    method public abstract void dropAllTables(androidx.sqlite.SQLiteConnection connection);
343    method public final String getIdentityHash();
344    method public final String getLegacyIdentityHash();
345    method public final int getVersion();
346    method public abstract void onCreate(androidx.sqlite.SQLiteConnection connection);
347    method public abstract void onOpen(androidx.sqlite.SQLiteConnection connection);
348    method public abstract void onPostMigrate(androidx.sqlite.SQLiteConnection connection);
349    method public abstract void onPreMigrate(androidx.sqlite.SQLiteConnection connection);
350    method public abstract androidx.room.RoomOpenDelegate.ValidationResult onValidateSchema(androidx.sqlite.SQLiteConnection connection);
351    property public final String identityHash;
352    property public final String legacyIdentityHash;
353    property public final int version;
354  }
355
356  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final class RoomOpenDelegate.ValidationResult {
357    ctor public RoomOpenDelegate.ValidationResult(boolean isValid, String? expectedFoundMsg);
358    property public String? expectedFoundMsg;
359    property public boolean isValid;
360    field public final String? expectedFoundMsg;
361    field public final boolean isValid;
362  }
363
364  public interface RoomOpenDelegateMarker {
365  }
366
367  @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public class RoomOpenHelper extends androidx.sqlite.db.SupportSQLiteOpenHelper.Callback {
368    ctor @Deprecated public RoomOpenHelper(androidx.room.DatabaseConfiguration configuration, androidx.room.RoomOpenHelper.Delegate delegate, String legacyHash);
369    ctor @Deprecated public RoomOpenHelper(androidx.room.DatabaseConfiguration configuration, androidx.room.RoomOpenHelper.Delegate delegate, String identityHash, String legacyHash);
370    method @Deprecated public void onCreate(androidx.sqlite.db.SupportSQLiteDatabase db);
371    method @Deprecated public void onUpgrade(androidx.sqlite.db.SupportSQLiteDatabase db, int oldVersion, int newVersion);
372    field @Deprecated public static final androidx.room.RoomOpenHelper.Companion Companion;
373  }
374
375  @Deprecated public static final class RoomOpenHelper.Companion {
376  }
377
378  @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract static class RoomOpenHelper.Delegate {
379    ctor @Deprecated public RoomOpenHelper.Delegate(int version);
380    method @Deprecated public abstract void createAllTables(androidx.sqlite.db.SupportSQLiteDatabase db);
381    method @Deprecated public abstract void dropAllTables(androidx.sqlite.db.SupportSQLiteDatabase db);
382    method @Deprecated public abstract void onCreate(androidx.sqlite.db.SupportSQLiteDatabase db);
383    method @Deprecated public abstract void onOpen(androidx.sqlite.db.SupportSQLiteDatabase db);
384    method @Deprecated public void onPostMigrate(androidx.sqlite.db.SupportSQLiteDatabase db);
385    method @Deprecated public void onPreMigrate(androidx.sqlite.db.SupportSQLiteDatabase db);
386    method @Deprecated public androidx.room.RoomOpenHelper.ValidationResult onValidateSchema(androidx.sqlite.db.SupportSQLiteDatabase db);
387    method @Deprecated protected void validateMigration(androidx.sqlite.db.SupportSQLiteDatabase db);
388    property @Deprecated public final int version;
389    field @Deprecated public final int version;
390  }
391
392  @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static class RoomOpenHelper.ValidationResult {
393    ctor @Deprecated public RoomOpenHelper.ValidationResult(boolean isValid, String? expectedFoundMsg);
394    property @Deprecated public final String? expectedFoundMsg;
395    property @Deprecated public final boolean isValid;
396    field @Deprecated public final String? expectedFoundMsg;
397    field @Deprecated public final boolean isValid;
398  }
399
400  public final class RoomRawQuery {
401    ctor public RoomRawQuery(String sql);
402    ctor public RoomRawQuery(String sql, optional kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteStatement,kotlin.Unit> onBindStatement);
403    method public kotlin.jvm.functions.Function1<androidx.sqlite.SQLiteStatement,kotlin.Unit> getBindingFunction();
404    method public String getSql();
405    property public String sql;
406  }
407
408  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class RoomSQLiteQuery implements androidx.sqlite.db.SupportSQLiteProgram androidx.sqlite.db.SupportSQLiteQuery {
409    method public static androidx.room.RoomSQLiteQuery acquire(String query, int argumentCount);
410    method public void bindBlob(int index, byte[] value);
411    method public void bindDouble(int index, double value);
412    method public void bindLong(int index, long value);
413    method public void bindNull(int index);
414    method public void bindString(int index, String value);
415    method public void bindText(int index, String value);
416    method public void bindTo(androidx.sqlite.db.SupportSQLiteProgram statement);
417    method public void bindTo(androidx.sqlite.SQLiteStatement statement);
418    method public void clearBindings();
419    method public void close();
420    method public void copyArgumentsFrom(androidx.room.RoomSQLiteQuery other);
421    method public static androidx.room.RoomSQLiteQuery copyFrom(androidx.sqlite.db.SupportSQLiteQuery supportSQLiteQuery);
422    method public int getArgCount();
423    method public int getCapacity();
424    method public String getSql();
425    method public void init(String query, int initArgCount);
426    method public void release();
427    method public androidx.room.RoomRawQuery toRoomRawQuery();
428    property public int argCount;
429    property @VisibleForTesting public byte[]?[] blobBindings;
430    property public int capacity;
431    property @VisibleForTesting public double[] doubleBindings;
432    property @VisibleForTesting public long[] longBindings;
433    property public String sql;
434    property @VisibleForTesting public String?[] stringBindings;
435    field public static final androidx.room.RoomSQLiteQuery.Companion Companion;
436    field @VisibleForTesting public static final int DESIRED_POOL_SIZE = 10; // 0xa
437    field @VisibleForTesting public static final int POOL_LIMIT = 15; // 0xf
438    field @VisibleForTesting public final byte[]?[] blobBindings;
439    field @VisibleForTesting public final double[] doubleBindings;
440    field @VisibleForTesting public final long[] longBindings;
441    field @VisibleForTesting public static final java.util.TreeMap<java.lang.Integer,androidx.room.RoomSQLiteQuery> queryPool;
442    field @VisibleForTesting public final String?[] stringBindings;
443  }
444
445  public static final class RoomSQLiteQuery.Companion {
446    method public androidx.room.RoomSQLiteQuery acquire(String query, int argumentCount);
447    method public androidx.room.RoomSQLiteQuery copyFrom(androidx.sqlite.db.SupportSQLiteQuery supportSQLiteQuery);
448    property @VisibleForTesting public static int DESIRED_POOL_SIZE;
449    property @VisibleForTesting public static int POOL_LIMIT;
450    property @VisibleForTesting public java.util.TreeMap<java.lang.Integer,androidx.room.RoomSQLiteQuery> queryPool;
451  }
452
453  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class SharedSQLiteStatement {
454    ctor public SharedSQLiteStatement(androidx.room.RoomDatabase database);
455    method public androidx.sqlite.db.SupportSQLiteStatement acquire();
456    method protected void assertNotMainThread();
457    method protected abstract String createQuery();
458    method public void release(androidx.sqlite.db.SupportSQLiteStatement statement);
459  }
460
461  public interface TransactionScope<T> extends androidx.room.PooledConnection {
462    method public suspend Object? rollback(T result, kotlin.coroutines.Continuation<? extends java.lang.Object?>);
463    method public suspend <R> Object? withNestedTransaction(kotlin.jvm.functions.Function2<? super androidx.room.TransactionScope<R>,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>);
464  }
465
466  public interface Transactor extends androidx.room.PooledConnection {
467    method public suspend Object? inTransaction(kotlin.coroutines.Continuation<? super java.lang.Boolean>);
468    method public suspend <R> Object? withTransaction(androidx.room.Transactor.SQLiteTransactionType type, kotlin.jvm.functions.Function2<? super androidx.room.TransactionScope<R>,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>);
469  }
470
471  public enum Transactor.SQLiteTransactionType {
472    enum_constant public static final androidx.room.Transactor.SQLiteTransactionType DEFERRED;
473    enum_constant public static final androidx.room.Transactor.SQLiteTransactionType EXCLUSIVE;
474    enum_constant public static final androidx.room.Transactor.SQLiteTransactionType IMMEDIATE;
475  }
476
477  public final class TransactorKt {
478    method public static suspend <R> Object? deferredTransaction(androidx.room.Transactor, kotlin.jvm.functions.Function2<? super androidx.room.TransactionScope<R>,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>);
479    method public static suspend <R> Object? exclusiveTransaction(androidx.room.Transactor, kotlin.jvm.functions.Function2<? super androidx.room.TransactionScope<R>,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>);
480    method public static suspend Object? execSQL(androidx.room.PooledConnection, String sql, kotlin.coroutines.Continuation<? super kotlin.Unit>);
481    method public static suspend <R> Object? immediateTransaction(androidx.room.Transactor, kotlin.jvm.functions.Function2<? super androidx.room.TransactionScope<R>,? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>);
482  }
483
484}
485
486package androidx.room.coroutines {
487
488  public final class FlowUtil {
489    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <R> kotlinx.coroutines.flow.Flow<R> createFlow(androidx.room.RoomDatabase db, boolean inTransaction, String[] tableNames, kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteConnection,? extends R> block);
490  }
491
492}
493
494package androidx.room.migration {
495
496  public interface AutoMigrationSpec {
497    method public default void onPostMigrate(androidx.sqlite.db.SupportSQLiteDatabase db);
498    method public default void onPostMigrate(androidx.sqlite.SQLiteConnection connection);
499  }
500
501  public abstract class Migration {
502    ctor public Migration(int startVersion, int endVersion);
503    method public void migrate(androidx.sqlite.db.SupportSQLiteDatabase db);
504    method public void migrate(androidx.sqlite.SQLiteConnection connection);
505    property public final int endVersion;
506    property public final int startVersion;
507    field public final int endVersion;
508    field public final int startVersion;
509  }
510
511  public final class MigrationKt {
512    method public static androidx.room.migration.Migration Migration(int startVersion, int endVersion, kotlin.jvm.functions.Function1<? super androidx.sqlite.db.SupportSQLiteDatabase,kotlin.Unit> migrate);
513  }
514
515}
516
517package androidx.room.paging {
518
519  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public abstract class LimitOffsetDataSource<T> extends androidx.paging.PositionalDataSource<T!> {
520    ctor protected LimitOffsetDataSource(androidx.room.RoomDatabase, androidx.room.RoomSQLiteQuery, boolean, boolean, java.lang.String!...);
521    ctor protected LimitOffsetDataSource(androidx.room.RoomDatabase, androidx.room.RoomSQLiteQuery, boolean, java.lang.String!...);
522    ctor protected LimitOffsetDataSource(androidx.room.RoomDatabase, androidx.sqlite.db.SupportSQLiteQuery, boolean, boolean, java.lang.String!...);
523    ctor protected LimitOffsetDataSource(androidx.room.RoomDatabase, androidx.sqlite.db.SupportSQLiteQuery, boolean, java.lang.String!...);
524    method protected java.util.List<T!> convertRows(android.database.Cursor);
525    method protected java.util.List<T!> convertRows(androidx.sqlite.SQLiteStatement);
526    method public void loadInitial(androidx.paging.PositionalDataSource.LoadInitialParams, androidx.paging.PositionalDataSource.LoadInitialCallback<T!>);
527    method public void loadRange(androidx.paging.PositionalDataSource.LoadRangeParams, androidx.paging.PositionalDataSource.LoadRangeCallback<T!>);
528  }
529
530}
531
532package androidx.room.util {
533
534  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class ByteArrayWrapper {
535    ctor public ByteArrayWrapper(byte[] array);
536    property public byte[] array;
537    field public final byte[] array;
538  }
539
540  @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public final class CursorUtil {
541    method public static android.database.Cursor copyAndClose(android.database.Cursor c);
542    method @VisibleForTesting public static int findColumnIndexBySuffix(String[] columnNames, String name);
543    method public static int getColumnIndex(android.database.Cursor c, String name);
544    method public static int getColumnIndexOrThrow(android.database.Cursor c, String name);
545    method public static inline <R> R useCursor(android.database.Cursor, kotlin.jvm.functions.Function1<? super android.database.Cursor,? extends R> block);
546    method public static android.database.Cursor wrapMappedColumns(android.database.Cursor cursor, String[] columnNames, int[] mapping);
547  }
548
549  public final class DBUtil {
550    method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static android.os.CancellationSignal createCancellationSignal();
551    method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static void dropFtsSyncTriggers(androidx.sqlite.db.SupportSQLiteDatabase db);
552    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static void dropFtsSyncTriggers(androidx.sqlite.SQLiteConnection connection);
553    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static void foreignKeyCheck(androidx.sqlite.db.SupportSQLiteDatabase db, String tableName);
554    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static void foreignKeyCheck(androidx.sqlite.SQLiteConnection db, String tableName);
555    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <R> R performBlocking(androidx.room.RoomDatabase db, boolean isReadOnly, boolean inTransaction, kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteConnection,? extends R> block);
556    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static suspend <R> Object? performInTransactionSuspending(androidx.room.RoomDatabase db, kotlin.jvm.functions.Function1<? super kotlin.coroutines.Continuation<? super R>,? extends java.lang.Object?> block, kotlin.coroutines.Continuation<? super R>);
557    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static suspend <R> Object? performSuspending(androidx.room.RoomDatabase db, boolean isReadOnly, boolean inTransaction, kotlin.jvm.functions.Function1<? super androidx.sqlite.SQLiteConnection,? extends R> block, kotlin.coroutines.Continuation<? super R>);
558    method @Deprecated @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static android.database.Cursor query(androidx.room.RoomDatabase db, androidx.sqlite.db.SupportSQLiteQuery sqLiteQuery, boolean maybeCopy);
559    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static android.database.Cursor query(androidx.room.RoomDatabase db, androidx.sqlite.db.SupportSQLiteQuery sqLiteQuery, boolean maybeCopy, android.os.CancellationSignal? signal);
560    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) @kotlin.jvm.Throws(exceptionClasses=IOException::class) public static int readVersion(java.io.File databaseFile) throws java.io.IOException;
561    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static androidx.sqlite.SQLiteConnection toSQLiteConnection(androidx.sqlite.db.SupportSQLiteDatabase db);
562  }
563
564  @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public final class FileUtil {
565    method @kotlin.jvm.Throws(exceptionClasses=IOException::class) public static void copy(java.nio.channels.ReadableByteChannel input, java.nio.channels.FileChannel output) throws java.io.IOException;
566  }
567
568  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class FtsTableInfo {
569    ctor public FtsTableInfo(String name, java.util.Set<java.lang.String> columns, String createSql);
570    ctor public FtsTableInfo(String name, java.util.Set<java.lang.String> columns, java.util.Set<java.lang.String> options);
571    method public static androidx.room.util.FtsTableInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String tableName);
572    method public static androidx.room.util.FtsTableInfo read(androidx.sqlite.SQLiteConnection connection, String tableName);
573    property public java.util.Set<? extends java.lang.String> columns;
574    property public String name;
575    property public java.util.Set<? extends java.lang.String> options;
576    field public static final androidx.room.util.FtsTableInfo.Companion Companion;
577    field public final java.util.Set<java.lang.String> columns;
578    field public final String name;
579    field public final java.util.Set<java.lang.String> options;
580  }
581
582  public static final class FtsTableInfo.Companion {
583    method public androidx.room.util.FtsTableInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String tableName);
584    method public androidx.room.util.FtsTableInfo read(androidx.sqlite.SQLiteConnection connection, String tableName);
585  }
586
587  @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public final class KClassUtil {
588    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <T, C> T findAndInstantiateDatabaseImpl(Class<C> klass, optional String suffix);
589  }
590
591  public final class RelationUtil {
592    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <K, V> void recursiveFetchArrayMap(androidx.collection.ArrayMap<K,V> map, boolean isRelationCollection, kotlin.jvm.functions.Function1<? super androidx.collection.ArrayMap<K,V>,kotlin.Unit> fetchBlock);
593    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <K, V> void recursiveFetchHashMap(java.util.HashMap<K,V> map, boolean isRelationCollection, kotlin.jvm.functions.Function1<? super java.util.HashMap<K,V>,kotlin.Unit> fetchBlock);
594    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <V> void recursiveFetchLongSparseArray(androidx.collection.LongSparseArray<V> map, boolean isRelationCollection, kotlin.jvm.functions.Function1<? super androidx.collection.LongSparseArray<V>,kotlin.Unit> fetchBlock);
595    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static <K, V> void recursiveFetchMap(java.util.Map<K,V> map, boolean isRelationCollection, kotlin.jvm.functions.Function1<? super java.util.Map<K,V>,kotlin.Unit> fetchBlock);
596  }
597
598  public final class SQLiteConnectionUtil {
599    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static long getLastInsertedRowId(androidx.sqlite.SQLiteConnection connection);
600    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static int getTotalChangedRows(androidx.sqlite.SQLiteConnection connection);
601  }
602
603  public final class SQLiteStatementUtil {
604    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static int getColumnIndex(androidx.sqlite.SQLiteStatement stmt, String name);
605    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static int getColumnIndexOrThrow(androidx.sqlite.SQLiteStatement stmt, String name);
606    method @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static androidx.sqlite.SQLiteStatement wrapMappedColumns(androidx.sqlite.SQLiteStatement statement, String[] columnNames, int[] mapping);
607  }
608
609  @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public final class StringUtil {
610    method public static void appendPlaceholders(StringBuilder builder, int count);
611    method @Deprecated public static String?[] getEMPTY_STRING_ARRAY();
612    method public static String? joinIntoString(java.util.List<java.lang.Integer>? input);
613    method @Deprecated public static StringBuilder newStringBuilder();
614    method public static java.util.List<java.lang.Integer>? splitToIntList(String? input);
615    property @Deprecated public static String?[] EMPTY_STRING_ARRAY;
616    field @Deprecated public static final String?[] EMPTY_STRING_ARRAY;
617  }
618
619  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class TableInfo {
620    ctor @Deprecated public TableInfo(String name, java.util.Map<java.lang.String,androidx.room.util.TableInfo.Column> columns, java.util.Set<androidx.room.util.TableInfo.ForeignKey> foreignKeys);
621    ctor public TableInfo(String name, java.util.Map<java.lang.String,androidx.room.util.TableInfo.Column> columns, java.util.Set<androidx.room.util.TableInfo.ForeignKey> foreignKeys, optional java.util.Set<androidx.room.util.TableInfo.Index>? indices);
622    method @Deprecated public static androidx.room.util.TableInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String tableName);
623    method public static androidx.room.util.TableInfo read(androidx.sqlite.SQLiteConnection connection, String tableName);
624    property public java.util.Map<java.lang.String,? extends androidx.room.util.TableInfo.Column> columns;
625    property public java.util.Set<? extends androidx.room.util.TableInfo.ForeignKey> foreignKeys;
626    property public java.util.Set<? extends androidx.room.util.TableInfo.Index>? indices;
627    property public String name;
628    field public static final int CREATED_FROM_DATABASE = 2; // 0x2
629    field public static final int CREATED_FROM_ENTITY = 1; // 0x1
630    field public static final int CREATED_FROM_UNKNOWN = 0; // 0x0
631    field public static final androidx.room.util.TableInfo.Companion Companion;
632    field public final java.util.Map<java.lang.String,androidx.room.util.TableInfo.Column> columns;
633    field public final java.util.Set<androidx.room.util.TableInfo.ForeignKey> foreignKeys;
634    field public final java.util.Set<androidx.room.util.TableInfo.Index>? indices;
635    field public final String name;
636  }
637
638  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final class TableInfo.Column {
639    ctor @Deprecated public TableInfo.Column(String name, String type, boolean notNull, int primaryKeyPosition);
640    ctor public TableInfo.Column(String name, String type, boolean notNull, int primaryKeyPosition, String? defaultValue, int createdFrom);
641    method public static boolean defaultValueEquals(String current, String? other);
642    method public boolean isPrimaryKey();
643    property @androidx.room.ColumnInfo.SQLiteTypeAffinity public int affinity;
644    property public int createdFrom;
645    property public String? defaultValue;
646    property public boolean isPrimaryKey;
647    property public String name;
648    property public boolean notNull;
649    property public int primaryKeyPosition;
650    property public String type;
651    field public static final androidx.room.util.TableInfo.Column.Companion Companion;
652    field @androidx.room.ColumnInfo.SQLiteTypeAffinity public final int affinity;
653    field public final int createdFrom;
654    field public final String? defaultValue;
655    field public final String name;
656    field public final boolean notNull;
657    field public final int primaryKeyPosition;
658    field public final String type;
659  }
660
661  public static final class TableInfo.Column.Companion {
662    method public boolean defaultValueEquals(String current, String? other);
663  }
664
665  public static final class TableInfo.Companion {
666    method @Deprecated public androidx.room.util.TableInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String tableName);
667    method public androidx.room.util.TableInfo read(androidx.sqlite.SQLiteConnection connection, String tableName);
668    property public static int CREATED_FROM_DATABASE;
669    property public static int CREATED_FROM_ENTITY;
670    property public static int CREATED_FROM_UNKNOWN;
671  }
672
673  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final class TableInfo.ForeignKey {
674    ctor public TableInfo.ForeignKey(String referenceTable, String onDelete, String onUpdate, java.util.List<java.lang.String> columnNames, java.util.List<java.lang.String> referenceColumnNames);
675    property public java.util.List<? extends java.lang.String> columnNames;
676    property public String onDelete;
677    property public String onUpdate;
678    property public java.util.List<? extends java.lang.String> referenceColumnNames;
679    property public String referenceTable;
680    field public final java.util.List<java.lang.String> columnNames;
681    field public final String onDelete;
682    field public final String onUpdate;
683    field public final java.util.List<java.lang.String> referenceColumnNames;
684    field public final String referenceTable;
685  }
686
687  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public static final class TableInfo.Index {
688    ctor @Deprecated public TableInfo.Index(String name, boolean unique, java.util.List<java.lang.String> columns);
689    ctor public TableInfo.Index(String name, boolean unique, java.util.List<java.lang.String> columns, java.util.List<java.lang.String> orders);
690    property public java.util.List<? extends java.lang.String> columns;
691    property public String name;
692    property public java.util.List<? extends java.lang.String> orders;
693    property public boolean unique;
694    field public static final androidx.room.util.TableInfo.Index.Companion Companion;
695    field public static final String DEFAULT_PREFIX = "index_";
696    field public final java.util.List<java.lang.String> columns;
697    field public final String name;
698    field public java.util.List<java.lang.String> orders;
699    field public final boolean unique;
700  }
701
702  public static final class TableInfo.Index.Companion {
703    property public static String DEFAULT_PREFIX;
704  }
705
706  @RestrictTo({androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public final class UUIDUtil {
707    method public static java.util.UUID convertByteToUUID(byte[] bytes);
708    method public static byte[] convertUUIDToByte(java.util.UUID uuid);
709  }
710
711  @RestrictTo(androidx.annotation.RestrictTo.Scope.LIBRARY_GROUP_PREFIX) public final class ViewInfo {
712    ctor public ViewInfo(String name, String? sql);
713    method @Deprecated public static androidx.room.util.ViewInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String viewName);
714    method public static androidx.room.util.ViewInfo read(androidx.sqlite.SQLiteConnection connection, String viewName);
715    property public String name;
716    property public String? sql;
717    field public static final androidx.room.util.ViewInfo.Companion Companion;
718    field public final String name;
719    field public final String? sql;
720  }
721
722  public static final class ViewInfo.Companion {
723    method @Deprecated public androidx.room.util.ViewInfo read(androidx.sqlite.db.SupportSQLiteDatabase database, String viewName);
724    method public androidx.room.util.ViewInfo read(androidx.sqlite.SQLiteConnection connection, String viewName);
725  }
726
727}
728
729