Immutable — это объект, который невозможно изменить после создания, и его поля тоже нельзя изменить (не берем в расчет способы через рефлексию)
1⃣ Все свойства val (строго)
2️⃣ Все свойства — Immutable типы
Каждый property должен быть либо примитивом (Int, String и т.д.), либо другим Immutable типом.
3️⃣ Класс должен быть data class или обычным class без открытых для наследования членов
В идеале — final класс.
// Пример
@Immutable
data class User(val id: Int, val name: String)
Подробнее в документации
#compose