dispatchEvent
Applies tileEvent to this tile's own TileHolder synchronously, by emitting a UIEvent.TileEventHolderUIEvent addressed to tileId.
This is the local half of a stateful tile's interaction — the TileHolder that owns this tile's id receives tileEvent through its own TileEventScope.onTileEvent override and mutates its schema copy directly, with no trigger matching and no coroutine involved. Every built-in stateful input tile (Checkbox, RadioButton, Switch, chips with a selected state, Tabs) calls this alongside triggerEvent on the same interaction, so the visual state updates immediately while the server-declared event chain runs independently.
Parameters
the tile-specific local mutation to apply — an instance of the TileEvent sealed type that tile's own TileHolder implementation understands.