// Signature format: 3.0
package androidx.room {

  public final class CoroutinesRoomKt {
    ctor public CoroutinesRoomKt();
  }

  public final class RoomDatabaseKt {
    ctor public RoomDatabaseKt();
    method public static suspend <R> Object! withTransaction(androidx.room.RoomDatabase, kotlin.jvm.functions.Function1<? super kotlin.coroutines.Continuation<? super R>,?> block, kotlin.coroutines.Continuation<? super R> p);
  }

}

