If the checkbox only has value attribute inside hig-property-type='Array', only checked element will be send as value array.
<div name="Permissions" hig-property-type="Array">
<input ype="checkbox" value="Permission_0" />
<input ype="checkbox" value="Permission_1" />
<input ype="checkbox" value="Permission_2" />
</div>
will be
["Permission_0", "Permission_1", ..."Permission_4"]

If the checkbox has name attribute, it will be object array that has name, value, checked property.
ex) <input ype="checkbox" name="Permission_1" value="PermissionValue_1" />
will be
[{name: "Permission_1", value: "PermissionValue_1", checked: true },{name: "Permission_2", value: "PermissionValue_2", checked: false }, ...]

Use hig-property-type='Object' inside hig-property-type='Array', you can create object list.

Recursive object