CssKind
A base interface for all CssStyle types.
There are three families of CSS kinds:
GeneralKind: Represents a general style, defined without any specific constraints. This is the most common type of style, declared with
CssStyle { ... }.ComponentKind: Represents a style that is tied to a specific component. This is especially useful for library authors who want to expose widgets to users that internally use a style but potentially expose a few public tweaks to that style which users can apply.
RestrictedKind: Represents a style that is restricted to a fixed set of parameters. This is applied for users that subclass CssStyle, as in:
class SomeRestrictedStyle(...) : CssStyle.Restricted(...) { ... }. A common use-case for this is creating an enumeration of fixed styles, likeWidgetSize.SM,WidgetSize.MD, etc.