docs: function serializeValueType(t, valueType, acc) {
    if (t.isBooleanLiteral(valueType)) {
      acc.properties.unshift(
        t.objectProperty(t.identifier('type'), t.identifier('Boolean'))
      );
    } else if (t.isNumericLiteral(valueType)) {
      acc.properties.unshift(
        t.objectProperty(t.identifier('type'), t.identifier('Number'))
      );
    } else if (t.isStringLiteral(valueType) || t.isTemplateLiteral(valueType)) {
      acc.properties.unshift(
        t.objectProperty(t.identifier('type'), t.identifier('String'))
      );
    } else if (t.isRegExpLiteral(valueType)) {
      acc.properties.unshift(
        t.objectProperty(t.identifier('type'), t.identifier('RegExp'))
      );
    } else {
      throw new Error('unknown value type');
    }
  
    return acc;
  }