{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "GroupShape",
  "type": "object",
  "properties": {
    "mn": {
      "title": "Match Name",
      "description": "After Effect's Match Name. Used for expressions.",
      "type": "string"
    },
    "nm": {
      "title": "Name",
      "description": "After Effect's Name. Used for expressions.",
      "type": "string"
    },
    "ty": {
      "title": "Type",
      "description": "Shape content type.",
      "type": "string",
      "enum": [ "gr"]
    },
    "np": {
      "title": "Number of Properties",
      "description": "Group number of properties. Used for expressions.",
      "type": "number"
    },
    "it": {
      "title": "Items",
      "description": "Group list of items",
      "items": {
        "oneOf": [
          {
            "$ref": "../shapes/shape.json"
          },
          {
            "$ref": "../shapes/rect.json"
          },
          {
            "$ref": "../shapes/ellipse.json"
          },
          {
            "$ref": "../shapes/star.json"
          },
          {
            "$ref": "../shapes/fill.json"
          },
          {
            "$ref": "../shapes/gFill.json"
          },
          {
            "$ref": "../shapes/gStroke.json"
          },
          {
            "$ref": "../shapes/stroke.json"
          },
          {
            "$ref": "../shapes/merge.json"
          },
          {
            "$ref": "../shapes/trim.json"
          },
          {
            "$ref": "../shapes/group.json"
          },
          {
            "$ref": "../shapes/round.json"
          },
          {
            "$ref": "../shapes/transform.json"
          }
        ],
        "type": "object"
      },
      "type": "array"
    }
  }
}
