Parameter types in Satellite 6

Hi,

Using Satellite 6 as my ENC I can see that Smart Class Parameters can have
several different types. I have experimented with strings, booleans,
arrays and integers, everything seems to work okay, but I am wondering
about yaml and json. Has anyone else tried using them?

This may seem like a lazy question, but I'm interested to know how others
have fared managing a complicated data like this through the GUI - it just
doesn't seem possible to me. (My expectation is that if a parameter's
value requires yaml to express it then it will have a non-trivial value.)

Another related question, and possibly more important, is how to manage
puppet defines within Satellite? For example, I'm using an sssd module
from the forge that uses a define for each domain, but I cannot see how to
store that data in Satellite 6. Presently I'm using another puppet module
to define the sssd domain, but that means my data is not visible from the
ENC, which would be desirable.

The two questions are somewhat connected - I'm wondering if it is feasible
to use a yaml variable to define the sssd domain in a way that is
maintainable.

Thanks in advance for any assistance.

Regards,
David