function processProps(instance) {
  const propsData = [];
  const propDefinitions = instance.type.props;

  for (let key in instance.props) {
    const propDefinition = propDefinitions ? propDefinitions[key] : null;
    key = (0, shared_utils_1.camelize)(key);
    propsData.push({
      type: 'props',
      key,
      value: (0, util_2.returnError)(() => instance.props[key]),
      meta: propDefinition ? {
        type: propDefinition.type ? getPropType(propDefinition.type) : 'any',
        required: !!propDefinition.required,
        ...(propDefinition.default != null ? {
          default: propDefinition.default.toString()
        } : {})
      } : {
        type: 'invalid'
      },
      editable: shared_utils_1.SharedData.editableProps
    });
  }

  return propsData;
}
Process the props of an instance.
Make sure return a plain object because window.postMessage()
will throw an Error if the passed object contains Functions.

@param {Vue} instance
@return {Array}