Package-level declarations
Types
App-wide, in-memory data store — survives navigation between screens but is lost when the app process dies (no persistence). Backs the server DSL's applicationPlainData() (flat key-value) and applicationSegmentedData(segmentId) (namespaced key-value) data sources, read/written by GetData/UpdateData/RemoveData and evaluated by EvaluateData.
Default, purely in-memory ApplicationDataHolder implementation — two mutable maps, one flat and one keyed by segment id, with no persistence and no locking beyond Kotlin's own MutableMap semantics. This is the implementation MosaicModules.applicationModule binds by default; there is no built-in alternative.
Default, purely in-memory ScreenDataHolder implementation — one instance per screen, built by MosaicModules.stateHolder's viewModel factory and handed navigationData at construction time (the arguments the screen was navigated to with, if any). Like DefaultApplicationDataHolder, it's two plain mutable maps with no persistence.
Screen-scoped, in-memory data store — same flat/segmented shape as ApplicationDataHolder, but one fresh instance per screen, discarded when the screen leaves the back stack. Backs the server DSL's screenPlainData()/screenSegmentedData(segmentId) data sources, plus the read-only screenNavigationData() for arguments the screen was navigated to with. Reached in event execution directly as EventRunningScope.screenDataHolder — there's no get<ScreenDataHolder>() Koin lookup, since a new instance is created per screen rather than being a single app-wide binding.