module.exports = {
    "metadata": { "section": "Shape" },
    "definitions": {
      "ShapeNode": {
        "metadata": {
          "tsRicosNode": true,
          "examples": ["shape-id"],
          "features": ["SHAPE"],
          "description": "Standalone shapes in a page."
        },
        "properties": {
          "type": {
            "enum": ["SHAPE"],
            "metadata": {
              "description": "Node type. \n Must be `SHAPE`."
            }
          },
          "id": {
            "type": "string",
            "metadata": {
              "format": "NODE_ID",
              "description": "[Node ID](#node-ids)."
            }
          },
          "shapeData": {
            "ref": "ShapeData",
            "metadata": {
              "description": "Shape options."
            }
          }
        },
      "optionalProperties": {
        "nodes": {
          "metadata": { "internal": true, "tsRicosNodesChildren": true },
          "elements": { "ref": "Never" }
        }
      }
      },
      "ShapeData": {
        "properties": {
          "shape": {
            "ref": "Media",
            "metadata": { "description": "Shape file details." }
          }
        },
        "optionalProperties": {
          "containerData": {
            "ref": "PluginContainerData",
            "metadata": {
              "description": "Shape container styling."
            }
          },
          "styles": {
            "ref": "ShapeData_Styles",
            "metadata": {
              "description": "Styling for the shape."
            }
          }
        }
      },
      "ShapeData_Styles": {
        "optionalProperties": {
          "colors": {
            "values": {
              "type": "string",
              "metadata": { "format": "COLOR_VALUE" }
            },
            "metadata": {
              "description": "Map of original color keys to their new color values."
            }
          }
        }
      }
    }
}