Лучше всего написать sealed class с твоими стейтами данных и прочего. И 1 LiveData для этого класса. А в активити уже можно будет понять какой подтип sealed класса и выполнить соответствующие детали.
Как вы называете модели в разных слоях ? Например есть модель в data и есть модель в domain. Скажем UserDataModel и UserDomainModel ?? Как-то слишком длинное получается, можно ли как-то типа, UserModel(data) - User(domain) ??