Boilerplate which avoids having to use generics. Instead of Property<Theme>, use ThemeProperty.
Property<Theme>
ThemeProperty
Returns a read-only view of this mutable ThemeProperty. Typical usage :