updateOrCreate

abstract suspend fun updateOrCreate(bookshelf: Bookshelf, transaction: suspend (Bookshelf) -> Unit): Bookshelf?