Ответ
Методы интерфейса DAO (Data Access Object) возвращают данные в зависимости от их назначения:
@Insert- возвращаетlong(id вставленной записи) илиLong[]для массовой вставки@Update/@Delete- возвращаютint(количество затронутых строк)@Queryс SELECT - возвращают:T- для одного объектаList<T>- для коллекцииLiveData<T>- для observable данныхFlow<T>- для Kotlin Flow
Пример:
@Dao
interface UserDao {
@Insert
fun insert(user: User): Long
@Query("SELECT * FROM users")
fun getAll(): List<User>
@Query("SELECT * FROM users WHERE id = :id")
fun getById(id: Long): LiveData<User>
}