@vladimir
Sealed-классы (Sealed classes) в Kotlin - это классы, которые могут иметь конкретное количество подклассов, которые они определяют заранее.
Эти подклассы могут быть объявлены только внутри sealed-класса и не могут быть объявлены в другом месте программы. Подклассы могут содержать свои собственные поля, методы и интерфейсы, но все они должны быть объявлены внутри sealed-класса.
Sealed-классы особенно полезны в тех случаях, когда нам нужно ограничить возможные варианты значений определенного типа, например, при работе с алгебраическими типами данных.
Они также позволяют удобно использовать функции when, чтобы сопоставить значения с определенными вариантами sealed-классов, без необходимости использовать else-ветвь или учитывать все возможные значения.