Base interface implemented by both Bloc and Cubit.
Pure Kotlin / KMP-ready — no Android framework imports.
Hot SharedFlow of errors surfaced via addError().
addError()
true after close has been called. Further emissions become no-ops.
true
The current state snapshot.
Hot StateFlow that replays the latest state to new collectors.
Closes the emitter: cancels all coroutines and marks it as closed. Idempotent — safe to call multiple times.