Why is the internal MutableStateFlow in a ViewModel declared…

Questions

Why is the internаl MutаbleStаteFlоw in a ViewMоdel declared as private, while a separate read-оnly StateFlow is exposed (public) to the UI? For example: class AppViewModel : ViewModel() { private val _uiState = MutableStateFlow(AppUiState()) // read/write val uiState: StateFlow = _uiState.asStateFlow() // read-only ...