Open
Description
Follow-up from #249469
The IChatRequestVariableEntry
type (and all its variants) has grown into a shape that needs cleanup. Today, it's open data and util-function. We should use OOP instead, give them some common shape and work on better encapsulation.
For instance,
- there should be toJSON and fromJSON logic so that IPC and persistence is covered
- concrete subtypes should narrow down the type of
value
- we should revisit all places that consume
value