Ответ
Да, можно. sealed и data — это независимые модификаторы, которые можно комбинировать.
sealed interface Result
data class Success(val data: String) : Result
data class Error(val message: String) : Result
Особенности:
sealedограничивает иерархию наследования (все наследники должны быть в том же файле/модуле).dataавтоматически генерируетequals(),hashCode(),toString()иcopy().- Комбинация полезна для моделирования закрытых типов с удобным API (например, результаты операций).
Ограничение: data class не может быть abstract, open, inner или sealed напрямую (но может наследовать от sealed типа).