enhancedocs
For agentsOpen Enhance
Reference / canvas.apply

Enhance documentation

canvas.apply

Atomically apply bounded canvas edits and report their exact affected state.

Markdown

canvas.apply

mutation write

Use when the requested change exactly matches canvas.apply; read the current state first when a version or identifier may have changed.

Before calling

  • Authenticate as the accountable Enhance person.
  • Use only resource identifiers returned by an earlier capability result or supplied by the person.
  • Reuse clientToken only when retrying this exact mutation input.

Input

Show complete JSON Schema
{
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "type": "object",
 "properties": {
  "canvasId": {
   "type": "string",
   "format": "uuid",
   "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
  },
  "baseVersion": {
   "type": "integer",
   "exclusiveMinimum": 0,
   "maximum": 9007199254740991
  },
  "operations": {
   "minItems": 1,
   "maxItems": 1000,
   "type": "array",
   "items": {
    "oneOf": [
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "insertConvertedSubtree"
       },
       "destination": {
        "oneOf": [
         {
          "type": "object",
          "properties": {
           "kind": {
            "type": "string",
            "const": "adjacent"
           }
          },
          "required": [
           "kind"
          ],
          "additionalProperties": false
         },
         {
          "type": "object",
          "properties": {
           "kind": {
            "type": "string",
            "const": "insert-children"
           },
           "targetNodeId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
           }
          },
          "required": [
           "kind",
           "targetNodeId"
          ],
          "additionalProperties": false
         },
         {
          "type": "object",
          "properties": {
           "kind": {
            "type": "string",
            "const": "replace"
           },
           "targetNodeId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
           }
          },
          "required": [
           "kind",
           "targetNodeId"
          ],
          "additionalProperties": false
         }
        ]
       },
       "sourceNodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "rootNodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "nodes": {
        "type": "object",
        "propertyNames": {
         "type": "string",
         "minLength": 1,
         "maxLength": 200
        },
        "additionalProperties": {
         "type": "object",
         "properties": {
          "id": {
           "type": "string",
           "minLength": 1,
           "maxLength": 200
          },
          "label": {
           "type": "string",
           "maxLength": 500
          },
          "component": {
           "type": "string",
           "minLength": 1,
           "maxLength": 100
          },
          "labelOrigin": {
           "type": "string",
           "enum": [
            "source",
            "generated",
            "user"
           ]
          },
          "visible": {
           "type": "boolean"
          },
          "locked": {
           "type": "boolean"
          },
          "constraints": {
           "type": "object",
           "properties": {
            "x": {
             "type": "string",
             "enum": [
              "start",
              "center",
              "end",
              "stretch",
              "scale"
             ]
            },
            "y": {
             "type": "string",
             "enum": [
              "start",
              "center",
              "end",
              "stretch",
              "scale"
             ]
            }
           },
           "required": [
            "x",
            "y"
           ],
           "additionalProperties": false
          },
          "styles": {
           "type": "object",
           "propertyNames": {
            "type": "string"
           },
           "additionalProperties": {
            "anyOf": [
             {
              "type": "string"
             },
             {
              "type": "number"
             }
            ]
           }
          },
          "layout": {
           "type": "object",
           "properties": {
            "rotation": {
             "type": "number",
             "minimum": -100000,
             "maximum": 100000
            },
            "flipHorizontal": {
             "type": "boolean"
            },
            "flipVertical": {
             "type": "boolean"
            },
            "aspectRatioLocked": {
             "type": "boolean"
            },
            "aspectRatio": {
             "type": "number",
             "exclusiveMinimum": 0,
             "maximum": 100000
            },
            "horizontal": {
             "oneOf": [
              {
               "type": "object",
               "properties": {
                "mode": {
                 "type": "string",
                 "const": "fixed"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "mode",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "min": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "max": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "minParent": {
                 "type": "object",
                 "properties": {
                  "ratio": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 100000
                  },
                  "offset": {
                   "type": "number",
                   "minimum": -100000,
                   "maximum": 100000
                  }
                 },
                 "required": [
                  "ratio"
                 ],
                 "additionalProperties": false
                },
                "maxParent": {
                 "type": "object",
                 "properties": {
                  "ratio": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 100000
                  },
                  "offset": {
                   "type": "number",
                   "minimum": -100000,
                   "maximum": 100000
                  }
                 },
                 "required": [
                  "ratio"
                 ],
                 "additionalProperties": false
                },
                "mode": {
                 "type": "string",
                 "const": "hug"
                }
               },
               "required": [
                "mode"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "min": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "max": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "minParent": {
                 "type": "object",
                 "properties": {
                  "ratio": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 100000
                  },
                  "offset": {
                   "type": "number",
                   "minimum": -100000,
                   "maximum": 100000
                  }
                 },
                 "required": [
                  "ratio"
                 ],
                 "additionalProperties": false
                },
                "maxParent": {
                 "type": "object",
                 "properties": {
                  "ratio": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 100000
                  },
                  "offset": {
                   "type": "number",
                   "minimum": -100000,
                   "maximum": 100000
                  }
                 },
                 "required": [
                  "ratio"
                 ],
                 "additionalProperties": false
                },
                "mode": {
                 "type": "string",
                 "const": "fill"
                },
                "offset": {
                 "type": "number",
                 "minimum": -100000,
                 "maximum": 100000
                }
               },
               "required": [
                "mode"
               ],
               "additionalProperties": false
              }
             ]
            },
            "vertical": {
             "oneOf": [
              {
               "type": "object",
               "properties": {
                "mode": {
                 "type": "string",
                 "const": "fixed"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "mode",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "min": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "max": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "minParent": {
                 "type": "object",
                 "properties": {
                  "ratio": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 100000
                  },
                  "offset": {
                   "type": "number",
                   "minimum": -100000,
                   "maximum": 100000
                  }
                 },
                 "required": [
                  "ratio"
                 ],
                 "additionalProperties": false
                },
                "maxParent": {
                 "type": "object",
                 "properties": {
                  "ratio": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 100000
                  },
                  "offset": {
                   "type": "number",
                   "minimum": -100000,
                   "maximum": 100000
                  }
                 },
                 "required": [
                  "ratio"
                 ],
                 "additionalProperties": false
                },
                "mode": {
                 "type": "string",
                 "const": "hug"
                }
               },
               "required": [
                "mode"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "min": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "max": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "minParent": {
                 "type": "object",
                 "properties": {
                  "ratio": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 100000
                  },
                  "offset": {
                   "type": "number",
                   "minimum": -100000,
                   "maximum": 100000
                  }
                 },
                 "required": [
                  "ratio"
                 ],
                 "additionalProperties": false
                },
                "maxParent": {
                 "type": "object",
                 "properties": {
                  "ratio": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 100000
                  },
                  "offset": {
                   "type": "number",
                   "minimum": -100000,
                   "maximum": 100000
                  }
                 },
                 "required": [
                  "ratio"
                 ],
                 "additionalProperties": false
                },
                "mode": {
                 "type": "string",
                 "const": "fill"
                },
                "offset": {
                 "type": "number",
                 "minimum": -100000,
                 "maximum": 100000
                }
               },
               "required": [
                "mode"
               ],
               "additionalProperties": false
              }
             ]
            },
            "position": {
             "type": "string",
             "enum": [
              "flow",
              "absolute"
             ]
            },
            "alignSelf": {
             "type": "string",
             "enum": [
              "auto",
              "start",
              "center",
              "end",
              "stretch"
             ]
            },
            "flexGrow": {
             "type": "number",
             "minimum": 0,
             "maximum": 100000
            },
            "flexShrink": {
             "type": "number",
             "minimum": 0,
             "maximum": 100000
            },
            "flexBasis": {
             "anyOf": [
              {
               "type": "string",
               "const": "auto"
              },
              {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              },
              {
               "type": "object",
               "properties": {
                "ratio": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "offset": {
                 "type": "number",
                 "minimum": -100000,
                 "maximum": 100000
                }
               },
               "required": [
                "ratio"
               ],
               "additionalProperties": false
              }
             ]
            },
            "flowOffset": {
             "type": "object",
             "properties": {
              "x": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              },
              "y": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              }
             },
             "required": [
              "x",
              "y"
             ],
             "additionalProperties": false
            },
            "order": {
             "type": "integer",
             "minimum": -9007199254740991,
             "maximum": 9007199254740991
            },
            "margin": {
             "type": "object",
             "properties": {
              "top": {
               "anyOf": [
                {
                 "type": "string",
                 "const": "auto"
                },
                {
                 "type": "number",
                 "minimum": -100000,
                 "maximum": 100000
                }
               ]
              },
              "right": {
               "anyOf": [
                {
                 "type": "string",
                 "const": "auto"
                },
                {
                 "type": "number",
                 "minimum": -100000,
                 "maximum": 100000
                }
               ]
              },
              "bottom": {
               "anyOf": [
                {
                 "type": "string",
                 "const": "auto"
                },
                {
                 "type": "number",
                 "minimum": -100000,
                 "maximum": 100000
                }
               ]
              },
              "left": {
               "anyOf": [
                {
                 "type": "string",
                 "const": "auto"
                },
                {
                 "type": "number",
                 "minimum": -100000,
                 "maximum": 100000
                }
               ]
              }
             },
             "additionalProperties": false
            },
            "clipContent": {
             "type": "boolean"
            },
            "container": {
             "type": "object",
             "properties": {
              "direction": {
               "type": "string",
               "enum": [
                "row",
                "column"
               ]
              },
              "alignItems": {
               "type": "string",
               "enum": [
                "start",
                "center",
                "end",
                "stretch"
               ]
              },
              "alignContent": {
               "type": "string",
               "enum": [
                "start",
                "center",
                "end",
                "stretch",
                "space-between",
                "space-around",
                "space-evenly"
               ]
              },
              "justifyContent": {
               "type": "string",
               "enum": [
                "start",
                "center",
                "end",
                "space-between",
                "space-around",
                "space-evenly"
               ]
              },
              "gap": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              },
              "rowGap": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              },
              "columnGap": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              },
              "wrap": {
               "type": "string",
               "enum": [
                "nowrap",
                "wrap"
               ]
              },
              "gridColumns": {
               "type": "integer",
               "exclusiveMinimum": 0,
               "maximum": 100000
              },
              "gridAutoRepeat": {
               "type": "object",
               "properties": {
                "mode": {
                 "type": "string",
                 "enum": [
                  "auto-fill",
                  "auto-fit"
                 ]
                },
                "minimum": {
                 "type": "number",
                 "exclusiveMinimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "mode",
                "minimum"
               ],
               "additionalProperties": false
              },
              "padding": {
               "type": "object",
               "properties": {
                "top": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "right": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "bottom": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "left": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "additionalProperties": false
              }
             },
             "additionalProperties": false
            }
           },
           "additionalProperties": false
          },
          "responsive": {
           "not": {}
          },
          "appearance": {
           "type": "object",
           "properties": {
            "opacity": {
             "type": "number",
             "minimum": 0,
             "maximum": 1
            },
            "blendMode": {
             "type": "string",
             "enum": [
              "normal",
              "multiply",
              "screen",
              "overlay",
              "darken",
              "lighten",
              "plus-lighter",
              "color-dodge",
              "color-burn",
              "hard-light",
              "soft-light",
              "difference",
              "exclusion",
              "hue",
              "saturation",
              "color",
              "luminosity"
             ]
            },
            "fills": {
             "maxItems": 32,
             "type": "array",
             "items": {
              "oneOf": [
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "solid"
                 },
                 "color": {
                  "type": "object",
                  "properties": {
                   "space": {
                    "type": "string",
                    "enum": [
                     "srgb",
                     "display-p3"
                    ]
                   },
                   "red": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "green": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "blue": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "alpha": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "space",
                   "red",
                   "green",
                   "blue",
                   "alpha"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "color"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "linear-gradient"
                 },
                 "angle": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 },
                 "stops": {
                  "minItems": 2,
                  "maxItems": 32,
                  "type": "array",
                  "items": {
                   "type": "object",
                   "properties": {
                    "id": {
                     "type": "string",
                     "minLength": 1,
                     "maxLength": 200
                    },
                    "position": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "color": {
                     "type": "object",
                     "properties": {
                      "space": {
                       "type": "string",
                       "enum": [
                        "srgb",
                        "display-p3"
                       ]
                      },
                      "red": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "green": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "blue": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "alpha": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      }
                     },
                     "required": [
                      "space",
                      "red",
                      "green",
                      "blue",
                      "alpha"
                     ],
                     "additionalProperties": false
                    }
                   },
                   "required": [
                    "id",
                    "position",
                    "color"
                   ],
                   "additionalProperties": false
                  }
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "angle",
                 "stops"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "radial-gradient"
                 },
                 "center": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y"
                  ],
                  "additionalProperties": false
                 },
                 "radius": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y"
                  ],
                  "additionalProperties": false
                 },
                 "stops": {
                  "minItems": 2,
                  "maxItems": 32,
                  "type": "array",
                  "items": {
                   "type": "object",
                   "properties": {
                    "id": {
                     "type": "string",
                     "minLength": 1,
                     "maxLength": 200
                    },
                    "position": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "color": {
                     "type": "object",
                     "properties": {
                      "space": {
                       "type": "string",
                       "enum": [
                        "srgb",
                        "display-p3"
                       ]
                      },
                      "red": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "green": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "blue": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "alpha": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      }
                     },
                     "required": [
                      "space",
                      "red",
                      "green",
                      "blue",
                      "alpha"
                     ],
                     "additionalProperties": false
                    }
                   },
                   "required": [
                    "id",
                    "position",
                    "color"
                   ],
                   "additionalProperties": false
                  }
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "center",
                 "radius",
                 "stops"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "image"
                 },
                 "assetId": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 500
                 },
                 "fit": {
                  "type": "string",
                  "enum": [
                   "fill",
                   "fit",
                   "crop",
                   "tile"
                  ]
                 },
                 "crop": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "width": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "height": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y",
                   "width",
                   "height"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "assetId",
                 "fit"
                ],
                "additionalProperties": false
               }
              ]
             }
            },
            "border": {
             "type": "object",
             "properties": {
              "visible": {
               "type": "boolean"
              },
              "width": {
               "type": "object",
               "properties": {
                "top": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "right": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "bottom": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                },
                "left": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "top",
                "right",
                "bottom",
                "left"
               ],
               "additionalProperties": false
              },
              "style": {
               "type": "string",
               "enum": [
                "solid",
                "dashed",
                "dotted"
               ]
              },
              "paint": {
               "oneOf": [
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "solid"
                  },
                  "color": {
                   "type": "object",
                   "properties": {
                    "space": {
                     "type": "string",
                     "enum": [
                      "srgb",
                      "display-p3"
                     ]
                    },
                    "red": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "green": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "blue": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "alpha": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "space",
                    "red",
                    "green",
                    "blue",
                    "alpha"
                   ],
                   "additionalProperties": false
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "color"
                 ],
                 "additionalProperties": false
                },
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "linear-gradient"
                  },
                  "angle": {
                   "type": "number",
                   "minimum": -100000,
                   "maximum": 100000
                  },
                  "stops": {
                   "minItems": 2,
                   "maxItems": 32,
                   "type": "array",
                   "items": {
                    "type": "object",
                    "properties": {
                     "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                     },
                     "position": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "color": {
                      "type": "object",
                      "properties": {
                       "space": {
                        "type": "string",
                        "enum": [
                         "srgb",
                         "display-p3"
                        ]
                       },
                       "red": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "green": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "blue": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "alpha": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       }
                      },
                      "required": [
                       "space",
                       "red",
                       "green",
                       "blue",
                       "alpha"
                      ],
                      "additionalProperties": false
                     }
                    },
                    "required": [
                     "id",
                     "position",
                     "color"
                    ],
                    "additionalProperties": false
                   }
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "angle",
                  "stops"
                 ],
                 "additionalProperties": false
                },
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "radial-gradient"
                  },
                  "center": {
                   "type": "object",
                   "properties": {
                    "x": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "y": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "x",
                    "y"
                   ],
                   "additionalProperties": false
                  },
                  "radius": {
                   "type": "object",
                   "properties": {
                    "x": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "y": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "x",
                    "y"
                   ],
                   "additionalProperties": false
                  },
                  "stops": {
                   "minItems": 2,
                   "maxItems": 32,
                   "type": "array",
                   "items": {
                    "type": "object",
                    "properties": {
                     "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                     },
                     "position": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "color": {
                      "type": "object",
                      "properties": {
                       "space": {
                        "type": "string",
                        "enum": [
                         "srgb",
                         "display-p3"
                        ]
                       },
                       "red": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "green": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "blue": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "alpha": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       }
                      },
                      "required": [
                       "space",
                       "red",
                       "green",
                       "blue",
                       "alpha"
                      ],
                      "additionalProperties": false
                     }
                    },
                    "required": [
                     "id",
                     "position",
                     "color"
                    ],
                    "additionalProperties": false
                   }
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "center",
                  "radius",
                  "stops"
                 ],
                 "additionalProperties": false
                },
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "image"
                  },
                  "assetId": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 500
                  },
                  "fit": {
                   "type": "string",
                   "enum": [
                    "fill",
                    "fit",
                    "crop",
                    "tile"
                   ]
                  },
                  "crop": {
                   "type": "object",
                   "properties": {
                    "x": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "y": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "width": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "height": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "x",
                    "y",
                    "width",
                    "height"
                   ],
                   "additionalProperties": false
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "assetId",
                  "fit"
                 ],
                 "additionalProperties": false
                }
               ]
              },
              "alignment": {
               "type": "string",
               "enum": [
                "inside",
                "center",
                "outside"
               ]
              }
             },
             "required": [
              "visible",
              "width",
              "style",
              "paint",
              "alignment"
             ],
             "additionalProperties": false
            },
            "outline": {
             "type": "object",
             "properties": {
              "visible": {
               "type": "boolean"
              },
              "width": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              },
              "offset": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              },
              "style": {
               "type": "string",
               "enum": [
                "solid",
                "dashed",
                "dotted"
               ]
              },
              "paint": {
               "oneOf": [
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "solid"
                  },
                  "color": {
                   "type": "object",
                   "properties": {
                    "space": {
                     "type": "string",
                     "enum": [
                      "srgb",
                      "display-p3"
                     ]
                    },
                    "red": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "green": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "blue": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "alpha": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "space",
                    "red",
                    "green",
                    "blue",
                    "alpha"
                   ],
                   "additionalProperties": false
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "color"
                 ],
                 "additionalProperties": false
                },
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "linear-gradient"
                  },
                  "angle": {
                   "type": "number",
                   "minimum": -100000,
                   "maximum": 100000
                  },
                  "stops": {
                   "minItems": 2,
                   "maxItems": 32,
                   "type": "array",
                   "items": {
                    "type": "object",
                    "properties": {
                     "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                     },
                     "position": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "color": {
                      "type": "object",
                      "properties": {
                       "space": {
                        "type": "string",
                        "enum": [
                         "srgb",
                         "display-p3"
                        ]
                       },
                       "red": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "green": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "blue": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "alpha": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       }
                      },
                      "required": [
                       "space",
                       "red",
                       "green",
                       "blue",
                       "alpha"
                      ],
                      "additionalProperties": false
                     }
                    },
                    "required": [
                     "id",
                     "position",
                     "color"
                    ],
                    "additionalProperties": false
                   }
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "angle",
                  "stops"
                 ],
                 "additionalProperties": false
                },
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "radial-gradient"
                  },
                  "center": {
                   "type": "object",
                   "properties": {
                    "x": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "y": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "x",
                    "y"
                   ],
                   "additionalProperties": false
                  },
                  "radius": {
                   "type": "object",
                   "properties": {
                    "x": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "y": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "x",
                    "y"
                   ],
                   "additionalProperties": false
                  },
                  "stops": {
                   "minItems": 2,
                   "maxItems": 32,
                   "type": "array",
                   "items": {
                    "type": "object",
                    "properties": {
                     "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                     },
                     "position": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "color": {
                      "type": "object",
                      "properties": {
                       "space": {
                        "type": "string",
                        "enum": [
                         "srgb",
                         "display-p3"
                        ]
                       },
                       "red": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "green": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "blue": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "alpha": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       }
                      },
                      "required": [
                       "space",
                       "red",
                       "green",
                       "blue",
                       "alpha"
                      ],
                      "additionalProperties": false
                     }
                    },
                    "required": [
                     "id",
                     "position",
                     "color"
                    ],
                    "additionalProperties": false
                   }
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "center",
                  "radius",
                  "stops"
                 ],
                 "additionalProperties": false
                },
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "image"
                  },
                  "assetId": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 500
                  },
                  "fit": {
                   "type": "string",
                   "enum": [
                    "fill",
                    "fit",
                    "crop",
                    "tile"
                   ]
                  },
                  "crop": {
                   "type": "object",
                   "properties": {
                    "x": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "y": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "width": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "height": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "x",
                    "y",
                    "width",
                    "height"
                   ],
                   "additionalProperties": false
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "assetId",
                  "fit"
                 ],
                 "additionalProperties": false
                }
               ]
              }
             },
             "required": [
              "visible",
              "width",
              "offset",
              "style",
              "paint"
             ],
             "additionalProperties": false
            },
            "radius": {
             "type": "object",
             "properties": {
              "topLeft": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              },
              "topRight": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              },
              "bottomRight": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              },
              "bottomLeft": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              },
              "smoothing": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              }
             },
             "required": [
              "topLeft",
              "topRight",
              "bottomRight",
              "bottomLeft"
             ],
             "additionalProperties": false
            },
            "shadows": {
             "maxItems": 32,
             "type": "array",
             "items": {
              "type": "object",
              "properties": {
               "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
               },
               "visible": {
                "type": "boolean"
               },
               "kind": {
                "type": "string",
                "enum": [
                 "outer",
                 "inner"
                ]
               },
               "color": {
                "type": "object",
                "properties": {
                 "space": {
                  "type": "string",
                  "enum": [
                   "srgb",
                   "display-p3"
                  ]
                 },
                 "red": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "green": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "blue": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "alpha": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "space",
                 "red",
                 "green",
                 "blue",
                 "alpha"
                ],
                "additionalProperties": false
               },
               "offsetX": {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               },
               "offsetY": {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               },
               "blur": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "spread": {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              },
              "required": [
               "id",
               "visible",
               "kind",
               "color",
               "offsetX",
               "offsetY",
               "blur",
               "spread"
              ],
              "additionalProperties": false
             }
            },
            "filters": {
             "maxItems": 32,
             "type": "array",
             "items": {
              "oneOf": [
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "blur"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "brightness"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "contrast"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "grayscale"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "hue-rotate"
                 },
                 "value": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "invert"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "saturate"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "sepia"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               }
              ]
             }
            },
            "backdropFilters": {
             "maxItems": 32,
             "type": "array",
             "items": {
              "oneOf": [
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "blur"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "brightness"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "contrast"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "grayscale"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "hue-rotate"
                 },
                 "value": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "invert"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "saturate"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "kind": {
                  "type": "string",
                  "const": "sepia"
                 },
                 "value": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "kind",
                 "value"
                ],
                "additionalProperties": false
               }
              ]
             }
            }
           },
           "additionalProperties": false
          },
          "typography": {
           "type": "object",
           "properties": {
            "family": {
             "type": "string",
             "minLength": 1,
             "maxLength": 500
            },
            "fallbackFamilies": {
             "maxItems": 20,
             "type": "array",
             "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 500
             }
            },
            "size": {
             "type": "number",
             "minimum": 0,
             "maximum": 100000
            },
            "weight": {
             "type": "integer",
             "minimum": 1,
             "maximum": 1000
            },
            "style": {
             "type": "string",
             "enum": [
              "normal",
              "italic",
              "oblique"
             ]
            },
            "lineHeight": {
             "oneOf": [
              {
               "type": "object",
               "properties": {
                "mode": {
                 "type": "string",
                 "const": "normal"
                }
               },
               "required": [
                "mode"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "mode": {
                 "type": "string",
                 "const": "fixed"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "mode",
                "value"
               ],
               "additionalProperties": false
              }
             ]
            },
            "letterSpacing": {
             "type": "number",
             "minimum": -100000,
             "maximum": 100000
            },
            "align": {
             "type": "string",
             "enum": [
              "left",
              "center",
              "right",
              "justify"
             ]
            },
            "verticalAlign": {
             "type": "string",
             "enum": [
              "top",
              "middle",
              "bottom"
             ]
            },
            "transform": {
             "type": "string",
             "enum": [
              "none",
              "uppercase",
              "lowercase",
              "capitalize"
             ]
            },
            "decoration": {
             "type": "object",
             "properties": {
              "line": {
               "type": "string",
               "enum": [
                "none",
                "underline",
                "line-through"
               ]
              },
              "style": {
               "type": "string",
               "enum": [
                "solid",
                "double",
                "dotted",
                "dashed",
                "wavy"
               ]
              },
              "color": {
               "type": "object",
               "properties": {
                "space": {
                 "type": "string",
                 "enum": [
                  "srgb",
                  "display-p3"
                 ]
                },
                "red": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "green": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "blue": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "alpha": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "space",
                "red",
                "green",
                "blue",
                "alpha"
               ],
               "additionalProperties": false
              },
              "thickness": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              }
             },
             "required": [
              "line",
              "style"
             ],
             "additionalProperties": false
            },
            "stroke": {
             "type": "object",
             "properties": {
              "width": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              },
              "paint": {
               "oneOf": [
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "solid"
                  },
                  "color": {
                   "type": "object",
                   "properties": {
                    "space": {
                     "type": "string",
                     "enum": [
                      "srgb",
                      "display-p3"
                     ]
                    },
                    "red": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "green": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "blue": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "alpha": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "space",
                    "red",
                    "green",
                    "blue",
                    "alpha"
                   ],
                   "additionalProperties": false
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "color"
                 ],
                 "additionalProperties": false
                },
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "linear-gradient"
                  },
                  "angle": {
                   "type": "number",
                   "minimum": -100000,
                   "maximum": 100000
                  },
                  "stops": {
                   "minItems": 2,
                   "maxItems": 32,
                   "type": "array",
                   "items": {
                    "type": "object",
                    "properties": {
                     "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                     },
                     "position": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "color": {
                      "type": "object",
                      "properties": {
                       "space": {
                        "type": "string",
                        "enum": [
                         "srgb",
                         "display-p3"
                        ]
                       },
                       "red": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "green": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "blue": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "alpha": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       }
                      },
                      "required": [
                       "space",
                       "red",
                       "green",
                       "blue",
                       "alpha"
                      ],
                      "additionalProperties": false
                     }
                    },
                    "required": [
                     "id",
                     "position",
                     "color"
                    ],
                    "additionalProperties": false
                   }
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "angle",
                  "stops"
                 ],
                 "additionalProperties": false
                },
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "radial-gradient"
                  },
                  "center": {
                   "type": "object",
                   "properties": {
                    "x": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "y": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "x",
                    "y"
                   ],
                   "additionalProperties": false
                  },
                  "radius": {
                   "type": "object",
                   "properties": {
                    "x": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "y": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "x",
                    "y"
                   ],
                   "additionalProperties": false
                  },
                  "stops": {
                   "minItems": 2,
                   "maxItems": 32,
                   "type": "array",
                   "items": {
                    "type": "object",
                    "properties": {
                     "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                     },
                     "position": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "color": {
                      "type": "object",
                      "properties": {
                       "space": {
                        "type": "string",
                        "enum": [
                         "srgb",
                         "display-p3"
                        ]
                       },
                       "red": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "green": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "blue": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       },
                       "alpha": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 1
                       }
                      },
                      "required": [
                       "space",
                       "red",
                       "green",
                       "blue",
                       "alpha"
                      ],
                      "additionalProperties": false
                     }
                    },
                    "required": [
                     "id",
                     "position",
                     "color"
                    ],
                    "additionalProperties": false
                   }
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "center",
                  "radius",
                  "stops"
                 ],
                 "additionalProperties": false
                },
                {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "visible": {
                   "type": "boolean"
                  },
                  "opacity": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "kind": {
                   "type": "string",
                   "const": "image"
                  },
                  "assetId": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 500
                  },
                  "fit": {
                   "type": "string",
                   "enum": [
                    "fill",
                    "fit",
                    "crop",
                    "tile"
                   ]
                  },
                  "crop": {
                   "type": "object",
                   "properties": {
                    "x": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "y": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "width": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "height": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "x",
                    "y",
                    "width",
                    "height"
                   ],
                   "additionalProperties": false
                  }
                 },
                 "required": [
                  "id",
                  "visible",
                  "opacity",
                  "kind",
                  "assetId",
                  "fit"
                 ],
                 "additionalProperties": false
                }
               ]
              }
             },
             "required": [
              "width",
              "paint"
             ],
             "additionalProperties": false
            },
            "wrapping": {
             "type": "string",
             "enum": [
              "wrap",
              "nowrap",
              "pre",
              "pre-line",
              "pre-wrap",
              "break-spaces"
             ]
            },
            "truncation": {
             "type": "object",
             "properties": {
              "mode": {
               "type": "string",
               "enum": [
                "none",
                "ellipsis"
               ]
              },
              "maxLines": {
               "anyOf": [
                {
                 "type": "integer",
                 "minimum": 1,
                 "maximum": 100000
                },
                {
                 "type": "null"
                }
               ]
              }
             },
             "required": [
              "mode",
              "maxLines"
             ],
             "additionalProperties": false
            },
            "insets": {
             "type": "object",
             "properties": {
              "top": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              },
              "right": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              },
              "bottom": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              },
              "left": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              }
             },
             "required": [
              "top",
              "right",
              "bottom",
              "left"
             ],
             "additionalProperties": false
            }
           },
           "required": [
            "family",
            "fallbackFamilies",
            "size",
            "weight",
            "style",
            "lineHeight",
            "letterSpacing",
            "align",
            "verticalAlign",
            "transform",
            "decoration",
            "wrapping"
           ],
           "additionalProperties": false
          },
          "additionalStyles": {
           "type": "object",
           "properties": {
            "declarations": {
             "maxItems": 128,
             "type": "array",
             "items": {
              "type": "object",
              "properties": {
               "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
               },
               "property": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200,
                "pattern": "^(?:--[\\w-]+|-(?:webkit|moz|ms|o)-[a-z][a-z\\d-]*|[a-z][a-z\\d-]*)$"
               },
               "value": {
                "type": "string",
                "maxLength": 10000
               },
               "enabled": {
                "type": "boolean"
               }
              },
              "required": [
               "id",
               "property",
               "value",
               "enabled"
              ],
              "additionalProperties": false
             }
            }
           },
           "required": [
            "declarations"
           ],
           "additionalProperties": false
          },
          "props": {
           "type": "object",
           "propertyNames": {
            "type": "string"
           },
           "additionalProperties": {}
          },
          "box": {
           "type": "object",
           "properties": {
            "x": {
             "type": "number"
            },
            "y": {
             "type": "number"
            },
            "width": {
             "type": "number",
             "minimum": 0
            },
            "height": {
             "type": "number",
             "minimum": 0
            }
           },
           "required": [
            "x",
            "y",
            "width",
            "height"
           ],
           "additionalProperties": false
          }
         },
         "required": [
          "id",
          "label",
          "component",
          "styles"
         ],
         "additionalProperties": {}
        }
       },
       "relationships": {
        "type": "object",
        "propertyNames": {
         "type": "string",
         "minLength": 1,
         "maxLength": 200
        },
        "additionalProperties": {
         "type": "object",
         "properties": {
          "parentId": {
           "type": "string",
           "minLength": 1,
           "maxLength": 200
          },
          "sortKey": {
           "type": "string",
           "minLength": 1,
           "maxLength": 500
          }
         },
         "required": [
          "parentId",
          "sortKey"
         ],
         "additionalProperties": false
        }
       }
      },
      "required": [
       "op",
       "destination",
       "rootNodeId",
       "nodes",
       "relationships"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "insertNode"
       },
       "node": {
        "type": "object",
        "properties": {
         "id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 200
         },
         "label": {
          "type": "string",
          "maxLength": 500
         },
         "component": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100
         },
         "labelOrigin": {
          "type": "string",
          "enum": [
           "source",
           "generated",
           "user"
          ]
         },
         "visible": {
          "type": "boolean"
         },
         "locked": {
          "type": "boolean"
         },
         "constraints": {
          "type": "object",
          "properties": {
           "x": {
            "type": "string",
            "enum": [
             "start",
             "center",
             "end",
             "stretch",
             "scale"
            ]
           },
           "y": {
            "type": "string",
            "enum": [
             "start",
             "center",
             "end",
             "stretch",
             "scale"
            ]
           }
          },
          "required": [
           "x",
           "y"
          ],
          "additionalProperties": false
         },
         "styles": {
          "type": "object",
          "propertyNames": {
           "type": "string"
          },
          "additionalProperties": {
           "anyOf": [
            {
             "type": "string"
            },
            {
             "type": "number"
            }
           ]
          }
         },
         "layout": {
          "type": "object",
          "properties": {
           "rotation": {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           },
           "flipHorizontal": {
            "type": "boolean"
           },
           "flipVertical": {
            "type": "boolean"
           },
           "aspectRatioLocked": {
            "type": "boolean"
           },
           "aspectRatio": {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 100000
           },
           "horizontal": {
            "oneOf": [
             {
              "type": "object",
              "properties": {
               "mode": {
                "type": "string",
                "const": "fixed"
               },
               "value": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               }
              },
              "required": [
               "mode",
               "value"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "min": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "max": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "minParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "maxParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "mode": {
                "type": "string",
                "const": "hug"
               }
              },
              "required": [
               "mode"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "min": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "max": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "minParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "maxParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "mode": {
                "type": "string",
                "const": "fill"
               },
               "offset": {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              },
              "required": [
               "mode"
              ],
              "additionalProperties": false
             }
            ]
           },
           "vertical": {
            "oneOf": [
             {
              "type": "object",
              "properties": {
               "mode": {
                "type": "string",
                "const": "fixed"
               },
               "value": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               }
              },
              "required": [
               "mode",
               "value"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "min": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "max": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "minParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "maxParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "mode": {
                "type": "string",
                "const": "hug"
               }
              },
              "required": [
               "mode"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "min": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "max": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "minParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "maxParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "mode": {
                "type": "string",
                "const": "fill"
               },
               "offset": {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              },
              "required": [
               "mode"
              ],
              "additionalProperties": false
             }
            ]
           },
           "position": {
            "type": "string",
            "enum": [
             "flow",
             "absolute"
            ]
           },
           "alignSelf": {
            "type": "string",
            "enum": [
             "auto",
             "start",
             "center",
             "end",
             "stretch"
            ]
           },
           "flexGrow": {
            "type": "number",
            "minimum": 0,
            "maximum": 100000
           },
           "flexShrink": {
            "type": "number",
            "minimum": 0,
            "maximum": 100000
           },
           "flexBasis": {
            "anyOf": [
             {
              "type": "string",
              "const": "auto"
             },
             {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             {
              "type": "object",
              "properties": {
               "ratio": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "offset": {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              },
              "required": [
               "ratio"
              ],
              "additionalProperties": false
             }
            ]
           },
           "flowOffset": {
            "type": "object",
            "properties": {
             "x": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             "y": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            },
            "required": [
             "x",
             "y"
            ],
            "additionalProperties": false
           },
           "order": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
           },
           "margin": {
            "type": "object",
            "properties": {
             "top": {
              "anyOf": [
               {
                "type": "string",
                "const": "auto"
               },
               {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              ]
             },
             "right": {
              "anyOf": [
               {
                "type": "string",
                "const": "auto"
               },
               {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              ]
             },
             "bottom": {
              "anyOf": [
               {
                "type": "string",
                "const": "auto"
               },
               {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              ]
             },
             "left": {
              "anyOf": [
               {
                "type": "string",
                "const": "auto"
               },
               {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              ]
             }
            },
            "additionalProperties": false
           },
           "clipContent": {
            "type": "boolean"
           },
           "container": {
            "type": "object",
            "properties": {
             "direction": {
              "type": "string",
              "enum": [
               "row",
               "column"
              ]
             },
             "alignItems": {
              "type": "string",
              "enum": [
               "start",
               "center",
               "end",
               "stretch"
              ]
             },
             "alignContent": {
              "type": "string",
              "enum": [
               "start",
               "center",
               "end",
               "stretch",
               "space-between",
               "space-around",
               "space-evenly"
              ]
             },
             "justifyContent": {
              "type": "string",
              "enum": [
               "start",
               "center",
               "end",
               "space-between",
               "space-around",
               "space-evenly"
              ]
             },
             "gap": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "rowGap": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "columnGap": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "wrap": {
              "type": "string",
              "enum": [
               "nowrap",
               "wrap"
              ]
             },
             "gridColumns": {
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 100000
             },
             "gridAutoRepeat": {
              "type": "object",
              "properties": {
               "mode": {
                "type": "string",
                "enum": [
                 "auto-fill",
                 "auto-fit"
                ]
               },
               "minimum": {
                "type": "number",
                "exclusiveMinimum": 0,
                "maximum": 100000
               }
              },
              "required": [
               "mode",
               "minimum"
              ],
              "additionalProperties": false
             },
             "padding": {
              "type": "object",
              "properties": {
               "top": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "right": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "bottom": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "left": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               }
              },
              "additionalProperties": false
             }
            },
            "additionalProperties": false
           }
          },
          "additionalProperties": false
         },
         "responsive": {
          "not": {}
         },
         "appearance": {
          "type": "object",
          "properties": {
           "opacity": {
            "type": "number",
            "minimum": 0,
            "maximum": 1
           },
           "blendMode": {
            "type": "string",
            "enum": [
             "normal",
             "multiply",
             "screen",
             "overlay",
             "darken",
             "lighten",
             "plus-lighter",
             "color-dodge",
             "color-burn",
             "hard-light",
             "soft-light",
             "difference",
             "exclusion",
             "hue",
             "saturation",
             "color",
             "luminosity"
            ]
           },
           "fills": {
            "maxItems": 32,
            "type": "array",
            "items": {
             "oneOf": [
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "opacity": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "kind": {
                 "type": "string",
                 "const": "solid"
                },
                "color": {
                 "type": "object",
                 "properties": {
                  "space": {
                   "type": "string",
                   "enum": [
                    "srgb",
                    "display-p3"
                   ]
                  },
                  "red": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "green": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "blue": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "alpha": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  }
                 },
                 "required": [
                  "space",
                  "red",
                  "green",
                  "blue",
                  "alpha"
                 ],
                 "additionalProperties": false
                }
               },
               "required": [
                "id",
                "visible",
                "opacity",
                "kind",
                "color"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "opacity": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "kind": {
                 "type": "string",
                 "const": "linear-gradient"
                },
                "angle": {
                 "type": "number",
                 "minimum": -100000,
                 "maximum": 100000
                },
                "stops": {
                 "minItems": 2,
                 "maxItems": 32,
                 "type": "array",
                 "items": {
                  "type": "object",
                  "properties": {
                   "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                   },
                   "position": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "color": {
                    "type": "object",
                    "properties": {
                     "space": {
                      "type": "string",
                      "enum": [
                       "srgb",
                       "display-p3"
                      ]
                     },
                     "red": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "green": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "blue": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "alpha": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     }
                    },
                    "required": [
                     "space",
                     "red",
                     "green",
                     "blue",
                     "alpha"
                    ],
                    "additionalProperties": false
                   }
                  },
                  "required": [
                   "id",
                   "position",
                   "color"
                  ],
                  "additionalProperties": false
                 }
                }
               },
               "required": [
                "id",
                "visible",
                "opacity",
                "kind",
                "angle",
                "stops"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "opacity": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "kind": {
                 "type": "string",
                 "const": "radial-gradient"
                },
                "center": {
                 "type": "object",
                 "properties": {
                  "x": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "y": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  }
                 },
                 "required": [
                  "x",
                  "y"
                 ],
                 "additionalProperties": false
                },
                "radius": {
                 "type": "object",
                 "properties": {
                  "x": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "y": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  }
                 },
                 "required": [
                  "x",
                  "y"
                 ],
                 "additionalProperties": false
                },
                "stops": {
                 "minItems": 2,
                 "maxItems": 32,
                 "type": "array",
                 "items": {
                  "type": "object",
                  "properties": {
                   "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                   },
                   "position": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "color": {
                    "type": "object",
                    "properties": {
                     "space": {
                      "type": "string",
                      "enum": [
                       "srgb",
                       "display-p3"
                      ]
                     },
                     "red": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "green": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "blue": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     },
                     "alpha": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                     }
                    },
                    "required": [
                     "space",
                     "red",
                     "green",
                     "blue",
                     "alpha"
                    ],
                    "additionalProperties": false
                   }
                  },
                  "required": [
                   "id",
                   "position",
                   "color"
                  ],
                  "additionalProperties": false
                 }
                }
               },
               "required": [
                "id",
                "visible",
                "opacity",
                "kind",
                "center",
                "radius",
                "stops"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "opacity": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "kind": {
                 "type": "string",
                 "const": "image"
                },
                "assetId": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 500
                },
                "fit": {
                 "type": "string",
                 "enum": [
                  "fill",
                  "fit",
                  "crop",
                  "tile"
                 ]
                },
                "crop": {
                 "type": "object",
                 "properties": {
                  "x": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "y": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "width": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "height": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  }
                 },
                 "required": [
                  "x",
                  "y",
                  "width",
                  "height"
                 ],
                 "additionalProperties": false
                }
               },
               "required": [
                "id",
                "visible",
                "opacity",
                "kind",
                "assetId",
                "fit"
               ],
               "additionalProperties": false
              }
             ]
            }
           },
           "border": {
            "type": "object",
            "properties": {
             "visible": {
              "type": "boolean"
             },
             "width": {
              "type": "object",
              "properties": {
               "top": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "right": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "bottom": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "left": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               }
              },
              "required": [
               "top",
               "right",
               "bottom",
               "left"
              ],
              "additionalProperties": false
             },
             "style": {
              "type": "string",
              "enum": [
               "solid",
               "dashed",
               "dotted"
              ]
             },
             "paint": {
              "oneOf": [
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "solid"
                 },
                 "color": {
                  "type": "object",
                  "properties": {
                   "space": {
                    "type": "string",
                    "enum": [
                     "srgb",
                     "display-p3"
                    ]
                   },
                   "red": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "green": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "blue": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "alpha": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "space",
                   "red",
                   "green",
                   "blue",
                   "alpha"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "color"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "linear-gradient"
                 },
                 "angle": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 },
                 "stops": {
                  "minItems": 2,
                  "maxItems": 32,
                  "type": "array",
                  "items": {
                   "type": "object",
                   "properties": {
                    "id": {
                     "type": "string",
                     "minLength": 1,
                     "maxLength": 200
                    },
                    "position": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "color": {
                     "type": "object",
                     "properties": {
                      "space": {
                       "type": "string",
                       "enum": [
                        "srgb",
                        "display-p3"
                       ]
                      },
                      "red": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "green": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "blue": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "alpha": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      }
                     },
                     "required": [
                      "space",
                      "red",
                      "green",
                      "blue",
                      "alpha"
                     ],
                     "additionalProperties": false
                    }
                   },
                   "required": [
                    "id",
                    "position",
                    "color"
                   ],
                   "additionalProperties": false
                  }
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "angle",
                 "stops"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "radial-gradient"
                 },
                 "center": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y"
                  ],
                  "additionalProperties": false
                 },
                 "radius": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y"
                  ],
                  "additionalProperties": false
                 },
                 "stops": {
                  "minItems": 2,
                  "maxItems": 32,
                  "type": "array",
                  "items": {
                   "type": "object",
                   "properties": {
                    "id": {
                     "type": "string",
                     "minLength": 1,
                     "maxLength": 200
                    },
                    "position": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "color": {
                     "type": "object",
                     "properties": {
                      "space": {
                       "type": "string",
                       "enum": [
                        "srgb",
                        "display-p3"
                       ]
                      },
                      "red": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "green": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "blue": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "alpha": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      }
                     },
                     "required": [
                      "space",
                      "red",
                      "green",
                      "blue",
                      "alpha"
                     ],
                     "additionalProperties": false
                    }
                   },
                   "required": [
                    "id",
                    "position",
                    "color"
                   ],
                   "additionalProperties": false
                  }
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "center",
                 "radius",
                 "stops"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "image"
                 },
                 "assetId": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 500
                 },
                 "fit": {
                  "type": "string",
                  "enum": [
                   "fill",
                   "fit",
                   "crop",
                   "tile"
                  ]
                 },
                 "crop": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "width": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "height": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y",
                   "width",
                   "height"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "assetId",
                 "fit"
                ],
                "additionalProperties": false
               }
              ]
             },
             "alignment": {
              "type": "string",
              "enum": [
               "inside",
               "center",
               "outside"
              ]
             }
            },
            "required": [
             "visible",
             "width",
             "style",
             "paint",
             "alignment"
            ],
            "additionalProperties": false
           },
           "outline": {
            "type": "object",
            "properties": {
             "visible": {
              "type": "boolean"
             },
             "width": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "offset": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             "style": {
              "type": "string",
              "enum": [
               "solid",
               "dashed",
               "dotted"
              ]
             },
             "paint": {
              "oneOf": [
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "solid"
                 },
                 "color": {
                  "type": "object",
                  "properties": {
                   "space": {
                    "type": "string",
                    "enum": [
                     "srgb",
                     "display-p3"
                    ]
                   },
                   "red": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "green": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "blue": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "alpha": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "space",
                   "red",
                   "green",
                   "blue",
                   "alpha"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "color"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "linear-gradient"
                 },
                 "angle": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 },
                 "stops": {
                  "minItems": 2,
                  "maxItems": 32,
                  "type": "array",
                  "items": {
                   "type": "object",
                   "properties": {
                    "id": {
                     "type": "string",
                     "minLength": 1,
                     "maxLength": 200
                    },
                    "position": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "color": {
                     "type": "object",
                     "properties": {
                      "space": {
                       "type": "string",
                       "enum": [
                        "srgb",
                        "display-p3"
                       ]
                      },
                      "red": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "green": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "blue": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "alpha": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      }
                     },
                     "required": [
                      "space",
                      "red",
                      "green",
                      "blue",
                      "alpha"
                     ],
                     "additionalProperties": false
                    }
                   },
                   "required": [
                    "id",
                    "position",
                    "color"
                   ],
                   "additionalProperties": false
                  }
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "angle",
                 "stops"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "radial-gradient"
                 },
                 "center": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y"
                  ],
                  "additionalProperties": false
                 },
                 "radius": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y"
                  ],
                  "additionalProperties": false
                 },
                 "stops": {
                  "minItems": 2,
                  "maxItems": 32,
                  "type": "array",
                  "items": {
                   "type": "object",
                   "properties": {
                    "id": {
                     "type": "string",
                     "minLength": 1,
                     "maxLength": 200
                    },
                    "position": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "color": {
                     "type": "object",
                     "properties": {
                      "space": {
                       "type": "string",
                       "enum": [
                        "srgb",
                        "display-p3"
                       ]
                      },
                      "red": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "green": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "blue": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "alpha": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      }
                     },
                     "required": [
                      "space",
                      "red",
                      "green",
                      "blue",
                      "alpha"
                     ],
                     "additionalProperties": false
                    }
                   },
                   "required": [
                    "id",
                    "position",
                    "color"
                   ],
                   "additionalProperties": false
                  }
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "center",
                 "radius",
                 "stops"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "image"
                 },
                 "assetId": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 500
                 },
                 "fit": {
                  "type": "string",
                  "enum": [
                   "fill",
                   "fit",
                   "crop",
                   "tile"
                  ]
                 },
                 "crop": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "width": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "height": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y",
                   "width",
                   "height"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "assetId",
                 "fit"
                ],
                "additionalProperties": false
               }
              ]
             }
            },
            "required": [
             "visible",
             "width",
             "offset",
             "style",
             "paint"
            ],
            "additionalProperties": false
           },
           "radius": {
            "type": "object",
            "properties": {
             "topLeft": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "topRight": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "bottomRight": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "bottomLeft": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "smoothing": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
             }
            },
            "required": [
             "topLeft",
             "topRight",
             "bottomRight",
             "bottomLeft"
            ],
            "additionalProperties": false
           },
           "shadows": {
            "maxItems": 32,
            "type": "array",
            "items": {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "enum": [
                "outer",
                "inner"
               ]
              },
              "color": {
               "type": "object",
               "properties": {
                "space": {
                 "type": "string",
                 "enum": [
                  "srgb",
                  "display-p3"
                 ]
                },
                "red": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "green": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "blue": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "alpha": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "space",
                "red",
                "green",
                "blue",
                "alpha"
               ],
               "additionalProperties": false
              },
              "offsetX": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              },
              "offsetY": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              },
              "blur": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              },
              "spread": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "color",
              "offsetX",
              "offsetY",
              "blur",
              "spread"
             ],
             "additionalProperties": false
            }
           },
           "filters": {
            "maxItems": 32,
            "type": "array",
            "items": {
             "oneOf": [
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "blur"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "brightness"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "contrast"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "grayscale"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "hue-rotate"
                },
                "value": {
                 "type": "number",
                 "minimum": -100000,
                 "maximum": 100000
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "invert"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "saturate"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "sepia"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              }
             ]
            }
           },
           "backdropFilters": {
            "maxItems": 32,
            "type": "array",
            "items": {
             "oneOf": [
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "blur"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "brightness"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "contrast"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "grayscale"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "hue-rotate"
                },
                "value": {
                 "type": "number",
                 "minimum": -100000,
                 "maximum": 100000
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "invert"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "saturate"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 100000
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              },
              {
               "type": "object",
               "properties": {
                "id": {
                 "type": "string",
                 "minLength": 1,
                 "maxLength": 200
                },
                "visible": {
                 "type": "boolean"
                },
                "kind": {
                 "type": "string",
                 "const": "sepia"
                },
                "value": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "id",
                "visible",
                "kind",
                "value"
               ],
               "additionalProperties": false
              }
             ]
            }
           }
          },
          "additionalProperties": false
         },
         "typography": {
          "type": "object",
          "properties": {
           "family": {
            "type": "string",
            "minLength": 1,
            "maxLength": 500
           },
           "fallbackFamilies": {
            "maxItems": 20,
            "type": "array",
            "items": {
             "type": "string",
             "minLength": 1,
             "maxLength": 500
            }
           },
           "size": {
            "type": "number",
            "minimum": 0,
            "maximum": 100000
           },
           "weight": {
            "type": "integer",
            "minimum": 1,
            "maximum": 1000
           },
           "style": {
            "type": "string",
            "enum": [
             "normal",
             "italic",
             "oblique"
            ]
           },
           "lineHeight": {
            "oneOf": [
             {
              "type": "object",
              "properties": {
               "mode": {
                "type": "string",
                "const": "normal"
               }
              },
              "required": [
               "mode"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "mode": {
                "type": "string",
                "const": "fixed"
               },
               "value": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               }
              },
              "required": [
               "mode",
               "value"
              ],
              "additionalProperties": false
             }
            ]
           },
           "letterSpacing": {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           },
           "align": {
            "type": "string",
            "enum": [
             "left",
             "center",
             "right",
             "justify"
            ]
           },
           "verticalAlign": {
            "type": "string",
            "enum": [
             "top",
             "middle",
             "bottom"
            ]
           },
           "transform": {
            "type": "string",
            "enum": [
             "none",
             "uppercase",
             "lowercase",
             "capitalize"
            ]
           },
           "decoration": {
            "type": "object",
            "properties": {
             "line": {
              "type": "string",
              "enum": [
               "none",
               "underline",
               "line-through"
              ]
             },
             "style": {
              "type": "string",
              "enum": [
               "solid",
               "double",
               "dotted",
               "dashed",
               "wavy"
              ]
             },
             "color": {
              "type": "object",
              "properties": {
               "space": {
                "type": "string",
                "enum": [
                 "srgb",
                 "display-p3"
                ]
               },
               "red": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "green": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "blue": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "alpha": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               }
              },
              "required": [
               "space",
               "red",
               "green",
               "blue",
               "alpha"
              ],
              "additionalProperties": false
             },
             "thickness": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             }
            },
            "required": [
             "line",
             "style"
            ],
            "additionalProperties": false
           },
           "stroke": {
            "type": "object",
            "properties": {
             "width": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "paint": {
              "oneOf": [
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "solid"
                 },
                 "color": {
                  "type": "object",
                  "properties": {
                   "space": {
                    "type": "string",
                    "enum": [
                     "srgb",
                     "display-p3"
                    ]
                   },
                   "red": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "green": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "blue": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "alpha": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "space",
                   "red",
                   "green",
                   "blue",
                   "alpha"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "color"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "linear-gradient"
                 },
                 "angle": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 },
                 "stops": {
                  "minItems": 2,
                  "maxItems": 32,
                  "type": "array",
                  "items": {
                   "type": "object",
                   "properties": {
                    "id": {
                     "type": "string",
                     "minLength": 1,
                     "maxLength": 200
                    },
                    "position": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "color": {
                     "type": "object",
                     "properties": {
                      "space": {
                       "type": "string",
                       "enum": [
                        "srgb",
                        "display-p3"
                       ]
                      },
                      "red": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "green": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "blue": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "alpha": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      }
                     },
                     "required": [
                      "space",
                      "red",
                      "green",
                      "blue",
                      "alpha"
                     ],
                     "additionalProperties": false
                    }
                   },
                   "required": [
                    "id",
                    "position",
                    "color"
                   ],
                   "additionalProperties": false
                  }
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "angle",
                 "stops"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "radial-gradient"
                 },
                 "center": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y"
                  ],
                  "additionalProperties": false
                 },
                 "radius": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y"
                  ],
                  "additionalProperties": false
                 },
                 "stops": {
                  "minItems": 2,
                  "maxItems": 32,
                  "type": "array",
                  "items": {
                   "type": "object",
                   "properties": {
                    "id": {
                     "type": "string",
                     "minLength": 1,
                     "maxLength": 200
                    },
                    "position": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "color": {
                     "type": "object",
                     "properties": {
                      "space": {
                       "type": "string",
                       "enum": [
                        "srgb",
                        "display-p3"
                       ]
                      },
                      "red": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "green": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "blue": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "alpha": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      }
                     },
                     "required": [
                      "space",
                      "red",
                      "green",
                      "blue",
                      "alpha"
                     ],
                     "additionalProperties": false
                    }
                   },
                   "required": [
                    "id",
                    "position",
                    "color"
                   ],
                   "additionalProperties": false
                  }
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "center",
                 "radius",
                 "stops"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "image"
                 },
                 "assetId": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 500
                 },
                 "fit": {
                  "type": "string",
                  "enum": [
                   "fill",
                   "fit",
                   "crop",
                   "tile"
                  ]
                 },
                 "crop": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "width": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "height": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y",
                   "width",
                   "height"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "assetId",
                 "fit"
                ],
                "additionalProperties": false
               }
              ]
             }
            },
            "required": [
             "width",
             "paint"
            ],
            "additionalProperties": false
           },
           "wrapping": {
            "type": "string",
            "enum": [
             "wrap",
             "nowrap",
             "pre",
             "pre-line",
             "pre-wrap",
             "break-spaces"
            ]
           },
           "truncation": {
            "type": "object",
            "properties": {
             "mode": {
              "type": "string",
              "enum": [
               "none",
               "ellipsis"
              ]
             },
             "maxLines": {
              "anyOf": [
               {
                "type": "integer",
                "minimum": 1,
                "maximum": 100000
               },
               {
                "type": "null"
               }
              ]
             }
            },
            "required": [
             "mode",
             "maxLines"
            ],
            "additionalProperties": false
           },
           "insets": {
            "type": "object",
            "properties": {
             "top": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             "right": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             "bottom": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             "left": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            },
            "required": [
             "top",
             "right",
             "bottom",
             "left"
            ],
            "additionalProperties": false
           }
          },
          "required": [
           "family",
           "fallbackFamilies",
           "size",
           "weight",
           "style",
           "lineHeight",
           "letterSpacing",
           "align",
           "verticalAlign",
           "transform",
           "decoration",
           "wrapping"
          ],
          "additionalProperties": false
         },
         "additionalStyles": {
          "type": "object",
          "properties": {
           "declarations": {
            "maxItems": 128,
            "type": "array",
            "items": {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "property": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200,
               "pattern": "^(?:--[\\w-]+|-(?:webkit|moz|ms|o)-[a-z][a-z\\d-]*|[a-z][a-z\\d-]*)$"
              },
              "value": {
               "type": "string",
               "maxLength": 10000
              },
              "enabled": {
               "type": "boolean"
              }
             },
             "required": [
              "id",
              "property",
              "value",
              "enabled"
             ],
             "additionalProperties": false
            }
           }
          },
          "required": [
           "declarations"
          ],
          "additionalProperties": false
         },
         "props": {
          "type": "object",
          "propertyNames": {
           "type": "string"
          },
          "additionalProperties": {}
         },
         "box": {
          "type": "object",
          "properties": {
           "x": {
            "type": "number"
           },
           "y": {
            "type": "number"
           },
           "width": {
            "type": "number",
            "minimum": 0
           },
           "height": {
            "type": "number",
            "minimum": 0
           }
          },
          "required": [
           "x",
           "y",
           "width",
           "height"
          ],
          "additionalProperties": false
         }
        },
        "required": [
         "id",
         "label",
         "component",
         "styles"
        ],
        "additionalProperties": {}
       },
       "parentage": {
        "type": "object",
        "properties": {
         "parentId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 200
         },
         "sortKey": {
          "type": "string",
          "minLength": 1,
          "maxLength": 500
         }
        },
        "required": [
         "parentId",
         "sortKey"
        ],
        "additionalProperties": false
       }
      },
      "required": [
       "op",
       "node",
       "parentage"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "parentId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "afterId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "op": {
        "type": "string",
        "const": "insertText"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "label": {
        "default": "Text",
        "type": "string",
        "maxLength": 500
       },
       "text": {
        "type": "string",
        "maxLength": 100000
       },
       "box": {
        "type": "object",
        "properties": {
         "x": {
          "type": "number"
         },
         "y": {
          "type": "number"
         },
         "width": {
          "type": "number",
          "exclusiveMinimum": 0
         },
         "height": {
          "type": "number",
          "exclusiveMinimum": 0
         }
        },
        "required": [
         "x",
         "y",
         "width",
         "height"
        ],
        "additionalProperties": false
       },
       "styles": {
        "default": {},
        "type": "object",
        "properties": {
         "color": {
          "anyOf": [
           {
            "type": "string",
            "enum": [
             "var(--note-ink)",
             "var(--note-slate)",
             "var(--note-red)",
             "var(--note-orange)",
             "var(--note-amber)",
             "var(--note-green)",
             "var(--note-teal)",
             "var(--note-blue)",
             "var(--note-violet)",
             "var(--note-magenta)"
            ]
           },
           {
            "type": "string",
            "pattern": "^#[\\da-f]{6}$"
           }
          ]
         },
         "font-family": {
          "type": "string",
          "enum": [
           "var(--sans)",
           "var(--mono)"
          ]
         },
         "font-size": {
          "anyOf": [
           {
            "type": "number",
            "const": 16
           },
           {
            "type": "number",
            "const": 24
           },
           {
            "type": "number",
            "const": 40
           },
           {
            "type": "number",
            "const": 64
           },
           {
            "type": "number",
            "const": 96
           }
          ]
         },
         "font-weight": {
          "type": "string",
          "enum": [
           "400",
           "700"
          ]
         },
         "font-style": {
          "type": "string",
          "enum": [
           "normal",
           "italic",
           "oblique"
          ]
         },
         "letter-spacing": {
          "type": "number",
          "minimum": -100,
          "maximum": 100
         },
         "line-height": {
          "anyOf": [
           {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 10000
           },
           {
            "type": "string",
            "pattern": "^(?:\\d+(?:\\.\\d+)?(?:px|em|rem|%)?|normal)$"
           }
          ]
         },
         "text-align": {
          "type": "string",
          "enum": [
           "left",
           "center",
           "right"
          ]
         },
         "white-space": {
          "type": "string",
          "enum": [
           "normal",
           "nowrap",
           "pre",
           "pre-wrap",
           "pre-line",
           "break-spaces"
          ]
         }
        },
        "additionalProperties": false
       }
      },
      "required": [
       "parentId",
       "op",
       "nodeId",
       "label",
       "text",
       "box",
       "styles"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "parentId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "afterId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "op": {
        "type": "string",
        "const": "insertPrototype"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "label": {
        "default": "Prototype",
        "type": "string",
        "maxLength": 500
       },
       "prototypeId": {
        "type": "string",
        "format": "uuid",
        "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
       },
       "deploymentId": {
        "type": "string",
        "format": "uuid",
        "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
       },
       "box": {
        "type": "object",
        "properties": {
         "x": {
          "type": "number"
         },
         "y": {
          "type": "number"
         },
         "width": {
          "type": "number",
          "exclusiveMinimum": 0
         },
         "height": {
          "type": "number",
          "exclusiveMinimum": 0
         }
        },
        "required": [
         "x",
         "y",
         "width",
         "height"
        ],
        "additionalProperties": false
       },
       "canvasPageId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       }
      },
      "required": [
       "parentId",
       "op",
       "nodeId",
       "label",
       "prototypeId",
       "deploymentId",
       "box"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setPrototypeDeployment"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "prototypeId": {
        "type": "string",
        "format": "uuid",
        "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
       },
       "deploymentId": {
        "type": "string",
        "format": "uuid",
        "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
       }
      },
      "required": [
       "op",
       "nodeId",
       "prototypeId",
       "deploymentId"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setText"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "text": {
        "type": "string",
        "maxLength": 100000
       }
      },
      "required": [
       "op",
       "nodeId",
       "text"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setBox"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "box": {
        "anyOf": [
         {
          "type": "object",
          "properties": {
           "x": {
            "type": "number"
           },
           "y": {
            "type": "number"
           },
           "width": {
            "type": "number",
            "minimum": 0
           },
           "height": {
            "type": "number",
            "minimum": 0
           }
          },
          "required": [
           "x",
           "y",
           "width",
           "height"
          ],
          "additionalProperties": false
         },
         {
          "type": "string",
          "const": "default"
         }
        ]
       }
      },
      "required": [
       "op",
       "nodeId",
       "box"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setLabel"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "label": {
        "type": "string",
        "minLength": 1,
        "maxLength": 500
       },
       "labelOrigin": {
        "anyOf": [
         {
          "type": "string",
          "enum": [
           "source",
           "generated",
           "user"
          ]
         },
         {
          "type": "null"
         }
        ]
       }
      },
      "required": [
       "op",
       "nodeId",
       "label"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setContainerKind"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "component": {
        "type": "string",
        "enum": [
         "frame",
         "group"
        ]
       }
      },
      "required": [
       "op",
       "nodeId",
       "component"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setVisibility"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "visible": {
        "anyOf": [
         {
          "type": "boolean"
         },
         {
          "type": "null"
         }
        ]
       }
      },
      "required": [
       "op",
       "nodeId",
       "visible"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setLocked"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "locked": {
        "anyOf": [
         {
          "type": "boolean"
         },
         {
          "type": "null"
         }
        ]
       }
      },
      "required": [
       "op",
       "nodeId",
       "locked"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setConstraints"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "constraints": {
        "type": "object",
        "properties": {
         "x": {
          "type": "string",
          "enum": [
           "start",
           "center",
           "end",
           "stretch",
           "scale"
          ]
         },
         "y": {
          "type": "string",
          "enum": [
           "start",
           "center",
           "end",
           "stretch",
           "scale"
          ]
         }
        },
        "required": [
         "x",
         "y"
        ],
        "additionalProperties": false
       }
      },
      "required": [
       "op",
       "nodeId",
       "constraints"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setStyles"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "styles": {
        "type": "object",
        "properties": {
         "color": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "enum": [
               "var(--note-ink)",
               "var(--note-slate)",
               "var(--note-red)",
               "var(--note-orange)",
               "var(--note-amber)",
               "var(--note-green)",
               "var(--note-teal)",
               "var(--note-blue)",
               "var(--note-violet)",
               "var(--note-magenta)"
              ]
             },
             {
              "type": "string",
              "pattern": "^#[\\da-f]{6}$"
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "font-family": {
          "anyOf": [
           {
            "type": "string",
            "enum": [
             "var(--sans)",
             "var(--mono)"
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "font-size": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             {
              "type": "string",
              "pattern": "^(?:\\d+(?:\\.\\d+)?|\\.\\d+)px$"
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "font-weight": {
          "anyOf": [
           {
            "type": "string",
            "pattern": "^(?:[1-9]\\d{0,2}|1000)$"
           },
           {
            "type": "null"
           }
          ]
         },
         "font-style": {
          "anyOf": [
           {
            "type": "string",
            "enum": [
             "normal",
             "italic",
             "oblique"
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "font-stretch": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "enum": [
               "normal",
               "ultra-condensed",
               "extra-condensed",
               "condensed",
               "semi-condensed",
               "semi-expanded",
               "expanded",
               "extra-expanded",
               "ultra-expanded"
              ]
             },
             {
              "type": "string",
              "pattern": "^\\d+(?:\\.\\d+)?%$"
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "letter-spacing": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             {
              "type": "string",
              "pattern": "^-?(?:\\d+(?:\\.\\d+)?|\\.\\d+)px$"
             },
             {
              "type": "string",
              "const": "normal"
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "line-height": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "number",
              "exclusiveMinimum": 0,
              "maximum": 10000
             },
             {
              "type": "string",
              "pattern": "^(?:\\d+(?:\\.\\d+)?(?:px|em|rem|%)?|normal)$"
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "text-align": {
          "anyOf": [
           {
            "type": "string",
            "enum": [
             "left",
             "center",
             "right"
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "text-indent": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             {
              "type": "string",
              "pattern": "^-?(?:\\d+(?:\\.\\d+)?|\\.\\d+)px$"
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "white-space": {
          "anyOf": [
           {
            "type": "string",
            "enum": [
             "normal",
             "nowrap",
             "pre",
             "pre-wrap",
             "pre-line",
             "break-spaces"
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "word-spacing": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             {
              "type": "string",
              "pattern": "^-?(?:\\d+(?:\\.\\d+)?|\\.\\d+)px$"
             },
             {
              "type": "string",
              "const": "normal"
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "align-content": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "align-items": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "align-self": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "aspect-ratio": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "block-size": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "bottom": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "box-sizing": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "display": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "flex": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "flex-basis": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "flex-direction": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "flex-grow": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "flex-shrink": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "flex-wrap": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "height": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "inline-size": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "inset": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "inset-block": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "inset-block-end": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "inset-block-start": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "inset-inline": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "inset-inline-end": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "inset-inline-start": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "justify-content": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "left": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "margin": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "margin-block": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "margin-block-end": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "margin-block-start": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "margin-inline": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "margin-inline-end": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "margin-inline-start": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "max-block-size": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "max-height": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "max-inline-size": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "max-width": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "min-block-size": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "min-height": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "min-inline-size": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "min-width": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "order": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "padding": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "padding-block": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "padding-block-end": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "padding-block-start": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "padding-inline": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "padding-inline-end": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "padding-inline-start": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "position": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "right": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "top": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "width": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string",
              "maxLength": 10000
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "background": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ]
         },
         "background-color": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ]
         },
         "border-bottom-left-radius": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "border-bottom-right-radius": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "border-bottom-width": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "border-color": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ]
         },
         "border-left-width": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "border-radius": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string"
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "border-right-width": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "border-style": {
          "anyOf": [
           {
            "type": "string",
            "enum": [
             "none",
             "solid",
             "dashed",
             "dotted"
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "border-top-left-radius": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "border-top-right-radius": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "border-top-width": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "border-width": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string"
             },
             {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "box-shadow": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ]
         },
         "column-gap": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "gap": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "margin-bottom": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "margin-left": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "margin-right": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "margin-top": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "opacity": {
          "anyOf": [
           {
            "anyOf": [
             {
              "type": "string"
             },
             {
              "type": "number"
             }
            ]
           },
           {
            "type": "null"
           }
          ]
         },
         "outline-offset": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "outline-width": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "overflow": {
          "anyOf": [
           {
            "type": "string",
            "maxLength": 10000
           },
           {
            "type": "null"
           }
          ]
         },
         "overflow-x": {
          "anyOf": [
           {
            "type": "string",
            "maxLength": 10000
           },
           {
            "type": "null"
           }
          ]
         },
         "overflow-y": {
          "anyOf": [
           {
            "type": "string",
            "maxLength": 10000
           },
           {
            "type": "null"
           }
          ]
         },
         "padding-bottom": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "padding-left": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "padding-right": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "padding-top": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "row-gap": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         },
         "stroke-width": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           }
          ]
         }
        },
        "additionalProperties": false
       },
       "clear": {
        "minItems": 1,
        "maxItems": 97,
        "type": "array",
        "items": {
         "type": "string",
         "enum": [
          "color",
          "font-family",
          "font-size",
          "font-weight",
          "font-style",
          "font-stretch",
          "letter-spacing",
          "line-height",
          "text-align",
          "text-indent",
          "white-space",
          "word-spacing",
          "align-content",
          "align-items",
          "align-self",
          "aspect-ratio",
          "block-size",
          "bottom",
          "box-sizing",
          "display",
          "flex",
          "flex-basis",
          "flex-direction",
          "flex-grow",
          "flex-shrink",
          "flex-wrap",
          "height",
          "inline-size",
          "inset",
          "inset-block",
          "inset-block-end",
          "inset-block-start",
          "inset-inline",
          "inset-inline-end",
          "inset-inline-start",
          "justify-content",
          "left",
          "margin",
          "margin-block",
          "margin-block-end",
          "margin-block-start",
          "margin-inline",
          "margin-inline-end",
          "margin-inline-start",
          "max-block-size",
          "max-height",
          "max-inline-size",
          "max-width",
          "min-block-size",
          "min-height",
          "min-inline-size",
          "min-width",
          "order",
          "padding",
          "padding-block",
          "padding-block-end",
          "padding-block-start",
          "padding-inline",
          "padding-inline-end",
          "padding-inline-start",
          "position",
          "right",
          "top",
          "width",
          "background",
          "background-color",
          "border-bottom-left-radius",
          "border-bottom-right-radius",
          "border-bottom-width",
          "border-color",
          "border-left-width",
          "border-radius",
          "border-right-width",
          "border-style",
          "border-top-left-radius",
          "border-top-right-radius",
          "border-top-width",
          "border-width",
          "box-shadow",
          "column-gap",
          "gap",
          "margin-bottom",
          "margin-left",
          "margin-right",
          "margin-top",
          "opacity",
          "outline-offset",
          "outline-width",
          "overflow",
          "overflow-x",
          "overflow-y",
          "padding-bottom",
          "padding-left",
          "padding-right",
          "padding-top",
          "row-gap",
          "stroke-width"
         ]
        }
       }
      },
      "required": [
       "op",
       "nodeId",
       "styles"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setAppearance"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "appearance": {
        "type": "object",
        "properties": {
         "opacity": {
          "type": "number",
          "minimum": 0,
          "maximum": 1
         },
         "blendMode": {
          "type": "string",
          "enum": [
           "normal",
           "multiply",
           "screen",
           "overlay",
           "darken",
           "lighten",
           "plus-lighter",
           "color-dodge",
           "color-burn",
           "hard-light",
           "soft-light",
           "difference",
           "exclusion",
           "hue",
           "saturation",
           "color",
           "luminosity"
          ]
         },
         "fills": {
          "maxItems": 32,
          "type": "array",
          "items": {
           "oneOf": [
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "opacity": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              },
              "kind": {
               "type": "string",
               "const": "solid"
              },
              "color": {
               "type": "object",
               "properties": {
                "space": {
                 "type": "string",
                 "enum": [
                  "srgb",
                  "display-p3"
                 ]
                },
                "red": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "green": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "blue": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "alpha": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "space",
                "red",
                "green",
                "blue",
                "alpha"
               ],
               "additionalProperties": false
              }
             },
             "required": [
              "id",
              "visible",
              "opacity",
              "kind",
              "color"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "opacity": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              },
              "kind": {
               "type": "string",
               "const": "linear-gradient"
              },
              "angle": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              },
              "stops": {
               "minItems": 2,
               "maxItems": 32,
               "type": "array",
               "items": {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "position": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "color": {
                  "type": "object",
                  "properties": {
                   "space": {
                    "type": "string",
                    "enum": [
                     "srgb",
                     "display-p3"
                    ]
                   },
                   "red": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "green": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "blue": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "alpha": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "space",
                   "red",
                   "green",
                   "blue",
                   "alpha"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "position",
                 "color"
                ],
                "additionalProperties": false
               }
              }
             },
             "required": [
              "id",
              "visible",
              "opacity",
              "kind",
              "angle",
              "stops"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "opacity": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              },
              "kind": {
               "type": "string",
               "const": "radial-gradient"
              },
              "center": {
               "type": "object",
               "properties": {
                "x": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "y": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "x",
                "y"
               ],
               "additionalProperties": false
              },
              "radius": {
               "type": "object",
               "properties": {
                "x": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "y": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "x",
                "y"
               ],
               "additionalProperties": false
              },
              "stops": {
               "minItems": 2,
               "maxItems": 32,
               "type": "array",
               "items": {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "position": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "color": {
                  "type": "object",
                  "properties": {
                   "space": {
                    "type": "string",
                    "enum": [
                     "srgb",
                     "display-p3"
                    ]
                   },
                   "red": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "green": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "blue": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "alpha": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "space",
                   "red",
                   "green",
                   "blue",
                   "alpha"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "position",
                 "color"
                ],
                "additionalProperties": false
               }
              }
             },
             "required": [
              "id",
              "visible",
              "opacity",
              "kind",
              "center",
              "radius",
              "stops"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "opacity": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              },
              "kind": {
               "type": "string",
               "const": "image"
              },
              "assetId": {
               "type": "string",
               "minLength": 1,
               "maxLength": 500
              },
              "fit": {
               "type": "string",
               "enum": [
                "fill",
                "fit",
                "crop",
                "tile"
               ]
              },
              "crop": {
               "type": "object",
               "properties": {
                "x": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "y": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "width": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                },
                "height": {
                 "type": "number",
                 "minimum": 0,
                 "maximum": 1
                }
               },
               "required": [
                "x",
                "y",
                "width",
                "height"
               ],
               "additionalProperties": false
              }
             },
             "required": [
              "id",
              "visible",
              "opacity",
              "kind",
              "assetId",
              "fit"
             ],
             "additionalProperties": false
            }
           ]
          }
         },
         "border": {
          "type": "object",
          "properties": {
           "visible": {
            "type": "boolean"
           },
           "width": {
            "type": "object",
            "properties": {
             "top": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "right": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "bottom": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "left": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             }
            },
            "required": [
             "top",
             "right",
             "bottom",
             "left"
            ],
            "additionalProperties": false
           },
           "style": {
            "type": "string",
            "enum": [
             "solid",
             "dashed",
             "dotted"
            ]
           },
           "paint": {
            "oneOf": [
             {
              "type": "object",
              "properties": {
               "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
               },
               "visible": {
                "type": "boolean"
               },
               "opacity": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "kind": {
                "type": "string",
                "const": "solid"
               },
               "color": {
                "type": "object",
                "properties": {
                 "space": {
                  "type": "string",
                  "enum": [
                   "srgb",
                   "display-p3"
                  ]
                 },
                 "red": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "green": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "blue": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "alpha": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "space",
                 "red",
                 "green",
                 "blue",
                 "alpha"
                ],
                "additionalProperties": false
               }
              },
              "required": [
               "id",
               "visible",
               "opacity",
               "kind",
               "color"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
               },
               "visible": {
                "type": "boolean"
               },
               "opacity": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "kind": {
                "type": "string",
                "const": "linear-gradient"
               },
               "angle": {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               },
               "stops": {
                "minItems": 2,
                "maxItems": 32,
                "type": "array",
                "items": {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "position": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "color": {
                   "type": "object",
                   "properties": {
                    "space": {
                     "type": "string",
                     "enum": [
                      "srgb",
                      "display-p3"
                     ]
                    },
                    "red": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "green": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "blue": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "alpha": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "space",
                    "red",
                    "green",
                    "blue",
                    "alpha"
                   ],
                   "additionalProperties": false
                  }
                 },
                 "required": [
                  "id",
                  "position",
                  "color"
                 ],
                 "additionalProperties": false
                }
               }
              },
              "required": [
               "id",
               "visible",
               "opacity",
               "kind",
               "angle",
               "stops"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
               },
               "visible": {
                "type": "boolean"
               },
               "opacity": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "kind": {
                "type": "string",
                "const": "radial-gradient"
               },
               "center": {
                "type": "object",
                "properties": {
                 "x": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "y": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "x",
                 "y"
                ],
                "additionalProperties": false
               },
               "radius": {
                "type": "object",
                "properties": {
                 "x": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "y": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "x",
                 "y"
                ],
                "additionalProperties": false
               },
               "stops": {
                "minItems": 2,
                "maxItems": 32,
                "type": "array",
                "items": {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "position": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "color": {
                   "type": "object",
                   "properties": {
                    "space": {
                     "type": "string",
                     "enum": [
                      "srgb",
                      "display-p3"
                     ]
                    },
                    "red": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "green": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "blue": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "alpha": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "space",
                    "red",
                    "green",
                    "blue",
                    "alpha"
                   ],
                   "additionalProperties": false
                  }
                 },
                 "required": [
                  "id",
                  "position",
                  "color"
                 ],
                 "additionalProperties": false
                }
               }
              },
              "required": [
               "id",
               "visible",
               "opacity",
               "kind",
               "center",
               "radius",
               "stops"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
               },
               "visible": {
                "type": "boolean"
               },
               "opacity": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "kind": {
                "type": "string",
                "const": "image"
               },
               "assetId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 500
               },
               "fit": {
                "type": "string",
                "enum": [
                 "fill",
                 "fit",
                 "crop",
                 "tile"
                ]
               },
               "crop": {
                "type": "object",
                "properties": {
                 "x": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "y": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "width": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "height": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "x",
                 "y",
                 "width",
                 "height"
                ],
                "additionalProperties": false
               }
              },
              "required": [
               "id",
               "visible",
               "opacity",
               "kind",
               "assetId",
               "fit"
              ],
              "additionalProperties": false
             }
            ]
           },
           "alignment": {
            "type": "string",
            "enum": [
             "inside",
             "center",
             "outside"
            ]
           }
          },
          "required": [
           "visible",
           "width",
           "style",
           "paint",
           "alignment"
          ],
          "additionalProperties": false
         },
         "outline": {
          "type": "object",
          "properties": {
           "visible": {
            "type": "boolean"
           },
           "width": {
            "type": "number",
            "minimum": 0,
            "maximum": 100000
           },
           "offset": {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           },
           "style": {
            "type": "string",
            "enum": [
             "solid",
             "dashed",
             "dotted"
            ]
           },
           "paint": {
            "oneOf": [
             {
              "type": "object",
              "properties": {
               "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
               },
               "visible": {
                "type": "boolean"
               },
               "opacity": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "kind": {
                "type": "string",
                "const": "solid"
               },
               "color": {
                "type": "object",
                "properties": {
                 "space": {
                  "type": "string",
                  "enum": [
                   "srgb",
                   "display-p3"
                  ]
                 },
                 "red": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "green": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "blue": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "alpha": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "space",
                 "red",
                 "green",
                 "blue",
                 "alpha"
                ],
                "additionalProperties": false
               }
              },
              "required": [
               "id",
               "visible",
               "opacity",
               "kind",
               "color"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
               },
               "visible": {
                "type": "boolean"
               },
               "opacity": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "kind": {
                "type": "string",
                "const": "linear-gradient"
               },
               "angle": {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               },
               "stops": {
                "minItems": 2,
                "maxItems": 32,
                "type": "array",
                "items": {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "position": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "color": {
                   "type": "object",
                   "properties": {
                    "space": {
                     "type": "string",
                     "enum": [
                      "srgb",
                      "display-p3"
                     ]
                    },
                    "red": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "green": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "blue": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "alpha": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "space",
                    "red",
                    "green",
                    "blue",
                    "alpha"
                   ],
                   "additionalProperties": false
                  }
                 },
                 "required": [
                  "id",
                  "position",
                  "color"
                 ],
                 "additionalProperties": false
                }
               }
              },
              "required": [
               "id",
               "visible",
               "opacity",
               "kind",
               "angle",
               "stops"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
               },
               "visible": {
                "type": "boolean"
               },
               "opacity": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "kind": {
                "type": "string",
                "const": "radial-gradient"
               },
               "center": {
                "type": "object",
                "properties": {
                 "x": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "y": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "x",
                 "y"
                ],
                "additionalProperties": false
               },
               "radius": {
                "type": "object",
                "properties": {
                 "x": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "y": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "x",
                 "y"
                ],
                "additionalProperties": false
               },
               "stops": {
                "minItems": 2,
                "maxItems": 32,
                "type": "array",
                "items": {
                 "type": "object",
                 "properties": {
                  "id": {
                   "type": "string",
                   "minLength": 1,
                   "maxLength": 200
                  },
                  "position": {
                   "type": "number",
                   "minimum": 0,
                   "maximum": 1
                  },
                  "color": {
                   "type": "object",
                   "properties": {
                    "space": {
                     "type": "string",
                     "enum": [
                      "srgb",
                      "display-p3"
                     ]
                    },
                    "red": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "green": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "blue": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "alpha": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    }
                   },
                   "required": [
                    "space",
                    "red",
                    "green",
                    "blue",
                    "alpha"
                   ],
                   "additionalProperties": false
                  }
                 },
                 "required": [
                  "id",
                  "position",
                  "color"
                 ],
                 "additionalProperties": false
                }
               }
              },
              "required": [
               "id",
               "visible",
               "opacity",
               "kind",
               "center",
               "radius",
               "stops"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
               },
               "visible": {
                "type": "boolean"
               },
               "opacity": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "kind": {
                "type": "string",
                "const": "image"
               },
               "assetId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 500
               },
               "fit": {
                "type": "string",
                "enum": [
                 "fill",
                 "fit",
                 "crop",
                 "tile"
                ]
               },
               "crop": {
                "type": "object",
                "properties": {
                 "x": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "y": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "width": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "height": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 }
                },
                "required": [
                 "x",
                 "y",
                 "width",
                 "height"
                ],
                "additionalProperties": false
               }
              },
              "required": [
               "id",
               "visible",
               "opacity",
               "kind",
               "assetId",
               "fit"
              ],
              "additionalProperties": false
             }
            ]
           }
          },
          "required": [
           "visible",
           "width",
           "offset",
           "style",
           "paint"
          ],
          "additionalProperties": false
         },
         "radius": {
          "type": "object",
          "properties": {
           "topLeft": {
            "type": "number",
            "minimum": 0,
            "maximum": 100000
           },
           "topRight": {
            "type": "number",
            "minimum": 0,
            "maximum": 100000
           },
           "bottomRight": {
            "type": "number",
            "minimum": 0,
            "maximum": 100000
           },
           "bottomLeft": {
            "type": "number",
            "minimum": 0,
            "maximum": 100000
           },
           "smoothing": {
            "type": "number",
            "minimum": 0,
            "maximum": 1
           }
          },
          "required": [
           "topLeft",
           "topRight",
           "bottomRight",
           "bottomLeft"
          ],
          "additionalProperties": false
         },
         "shadows": {
          "maxItems": 32,
          "type": "array",
          "items": {
           "type": "object",
           "properties": {
            "id": {
             "type": "string",
             "minLength": 1,
             "maxLength": 200
            },
            "visible": {
             "type": "boolean"
            },
            "kind": {
             "type": "string",
             "enum": [
              "outer",
              "inner"
             ]
            },
            "color": {
             "type": "object",
             "properties": {
              "space": {
               "type": "string",
               "enum": [
                "srgb",
                "display-p3"
               ]
              },
              "red": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              },
              "green": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              },
              "blue": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              },
              "alpha": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              }
             },
             "required": [
              "space",
              "red",
              "green",
              "blue",
              "alpha"
             ],
             "additionalProperties": false
            },
            "offsetX": {
             "type": "number",
             "minimum": -100000,
             "maximum": 100000
            },
            "offsetY": {
             "type": "number",
             "minimum": -100000,
             "maximum": 100000
            },
            "blur": {
             "type": "number",
             "minimum": 0,
             "maximum": 100000
            },
            "spread": {
             "type": "number",
             "minimum": -100000,
             "maximum": 100000
            }
           },
           "required": [
            "id",
            "visible",
            "kind",
            "color",
            "offsetX",
            "offsetY",
            "blur",
            "spread"
           ],
           "additionalProperties": false
          }
         },
         "filters": {
          "maxItems": 32,
          "type": "array",
          "items": {
           "oneOf": [
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "blur"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "brightness"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "contrast"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "grayscale"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "hue-rotate"
              },
              "value": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "invert"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "saturate"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "sepia"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            }
           ]
          }
         },
         "backdropFilters": {
          "maxItems": 32,
          "type": "array",
          "items": {
           "oneOf": [
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "blur"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "brightness"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "contrast"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "grayscale"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "hue-rotate"
              },
              "value": {
               "type": "number",
               "minimum": -100000,
               "maximum": 100000
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "invert"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "saturate"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 100000
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            },
            {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "visible": {
               "type": "boolean"
              },
              "kind": {
               "type": "string",
               "const": "sepia"
              },
              "value": {
               "type": "number",
               "minimum": 0,
               "maximum": 1
              }
             },
             "required": [
              "id",
              "visible",
              "kind",
              "value"
             ],
             "additionalProperties": false
            }
           ]
          }
         },
         "clear": {
          "minItems": 1,
          "maxItems": 9,
          "type": "array",
          "items": {
           "type": "string",
           "enum": [
            "opacity",
            "blendMode",
            "fills",
            "border",
            "outline",
            "radius",
            "shadows",
            "filters",
            "backdropFilters"
           ]
          }
         }
        },
        "additionalProperties": false
       }
      },
      "required": [
       "op",
       "nodeId",
       "appearance"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setLayout"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "layout": {
        "anyOf": [
         {
          "type": "object",
          "properties": {
           "rotation": {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           },
           "flipHorizontal": {
            "type": "boolean"
           },
           "flipVertical": {
            "type": "boolean"
           },
           "aspectRatioLocked": {
            "type": "boolean"
           },
           "aspectRatio": {
            "type": "number",
            "exclusiveMinimum": 0,
            "maximum": 100000
           },
           "horizontal": {
            "oneOf": [
             {
              "type": "object",
              "properties": {
               "mode": {
                "type": "string",
                "const": "fixed"
               },
               "value": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               }
              },
              "required": [
               "mode",
               "value"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "min": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "max": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "minParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "maxParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "mode": {
                "type": "string",
                "const": "hug"
               }
              },
              "required": [
               "mode"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "min": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "max": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "minParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "maxParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "mode": {
                "type": "string",
                "const": "fill"
               },
               "offset": {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              },
              "required": [
               "mode"
              ],
              "additionalProperties": false
             }
            ]
           },
           "vertical": {
            "oneOf": [
             {
              "type": "object",
              "properties": {
               "mode": {
                "type": "string",
                "const": "fixed"
               },
               "value": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               }
              },
              "required": [
               "mode",
               "value"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "min": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "max": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "minParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "maxParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "mode": {
                "type": "string",
                "const": "hug"
               }
              },
              "required": [
               "mode"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "min": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "max": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "minParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "maxParent": {
                "type": "object",
                "properties": {
                 "ratio": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100000
                 },
                 "offset": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 }
                },
                "required": [
                 "ratio"
                ],
                "additionalProperties": false
               },
               "mode": {
                "type": "string",
                "const": "fill"
               },
               "offset": {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              },
              "required": [
               "mode"
              ],
              "additionalProperties": false
             }
            ]
           },
           "position": {
            "type": "string",
            "enum": [
             "flow",
             "absolute"
            ]
           },
           "alignSelf": {
            "type": "string",
            "enum": [
             "auto",
             "start",
             "center",
             "end",
             "stretch"
            ]
           },
           "flexGrow": {
            "type": "number",
            "minimum": 0,
            "maximum": 100000
           },
           "flexShrink": {
            "type": "number",
            "minimum": 0,
            "maximum": 100000
           },
           "flexBasis": {
            "anyOf": [
             {
              "type": "string",
              "const": "auto"
             },
             {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             {
              "type": "object",
              "properties": {
               "ratio": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "offset": {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              },
              "required": [
               "ratio"
              ],
              "additionalProperties": false
             }
            ]
           },
           "flowOffset": {
            "type": "object",
            "properties": {
             "x": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             "y": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            },
            "required": [
             "x",
             "y"
            ],
            "additionalProperties": false
           },
           "order": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
           },
           "margin": {
            "type": "object",
            "properties": {
             "top": {
              "anyOf": [
               {
                "type": "string",
                "const": "auto"
               },
               {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              ]
             },
             "right": {
              "anyOf": [
               {
                "type": "string",
                "const": "auto"
               },
               {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              ]
             },
             "bottom": {
              "anyOf": [
               {
                "type": "string",
                "const": "auto"
               },
               {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              ]
             },
             "left": {
              "anyOf": [
               {
                "type": "string",
                "const": "auto"
               },
               {
                "type": "number",
                "minimum": -100000,
                "maximum": 100000
               }
              ]
             }
            },
            "additionalProperties": false
           },
           "clipContent": {
            "type": "boolean"
           },
           "container": {
            "type": "object",
            "properties": {
             "direction": {
              "type": "string",
              "enum": [
               "row",
               "column"
              ]
             },
             "alignItems": {
              "type": "string",
              "enum": [
               "start",
               "center",
               "end",
               "stretch"
              ]
             },
             "alignContent": {
              "type": "string",
              "enum": [
               "start",
               "center",
               "end",
               "stretch",
               "space-between",
               "space-around",
               "space-evenly"
              ]
             },
             "justifyContent": {
              "type": "string",
              "enum": [
               "start",
               "center",
               "end",
               "space-between",
               "space-around",
               "space-evenly"
              ]
             },
             "gap": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "rowGap": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "columnGap": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "wrap": {
              "type": "string",
              "enum": [
               "nowrap",
               "wrap"
              ]
             },
             "gridColumns": {
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 100000
             },
             "gridAutoRepeat": {
              "type": "object",
              "properties": {
               "mode": {
                "type": "string",
                "enum": [
                 "auto-fill",
                 "auto-fit"
                ]
               },
               "minimum": {
                "type": "number",
                "exclusiveMinimum": 0,
                "maximum": 100000
               }
              },
              "required": [
               "mode",
               "minimum"
              ],
              "additionalProperties": false
             },
             "padding": {
              "type": "object",
              "properties": {
               "top": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "right": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "bottom": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               },
               "left": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               }
              },
              "additionalProperties": false
             }
            },
            "additionalProperties": false
           }
          },
          "additionalProperties": false
         },
         {
          "type": "string",
          "const": "default"
         }
        ]
       }
      },
      "required": [
       "op",
       "nodeId",
       "layout"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setTypography"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "typography": {
        "anyOf": [
         {
          "type": "object",
          "properties": {
           "family": {
            "type": "string",
            "minLength": 1,
            "maxLength": 500
           },
           "fallbackFamilies": {
            "maxItems": 20,
            "type": "array",
            "items": {
             "type": "string",
             "minLength": 1,
             "maxLength": 500
            }
           },
           "size": {
            "type": "number",
            "minimum": 0,
            "maximum": 100000
           },
           "weight": {
            "type": "integer",
            "minimum": 1,
            "maximum": 1000
           },
           "style": {
            "type": "string",
            "enum": [
             "normal",
             "italic",
             "oblique"
            ]
           },
           "lineHeight": {
            "oneOf": [
             {
              "type": "object",
              "properties": {
               "mode": {
                "type": "string",
                "const": "normal"
               }
              },
              "required": [
               "mode"
              ],
              "additionalProperties": false
             },
             {
              "type": "object",
              "properties": {
               "mode": {
                "type": "string",
                "const": "fixed"
               },
               "value": {
                "type": "number",
                "minimum": 0,
                "maximum": 100000
               }
              },
              "required": [
               "mode",
               "value"
              ],
              "additionalProperties": false
             }
            ]
           },
           "letterSpacing": {
            "type": "number",
            "minimum": -100000,
            "maximum": 100000
           },
           "align": {
            "type": "string",
            "enum": [
             "left",
             "center",
             "right",
             "justify"
            ]
           },
           "verticalAlign": {
            "type": "string",
            "enum": [
             "top",
             "middle",
             "bottom"
            ]
           },
           "transform": {
            "type": "string",
            "enum": [
             "none",
             "uppercase",
             "lowercase",
             "capitalize"
            ]
           },
           "decoration": {
            "type": "object",
            "properties": {
             "line": {
              "type": "string",
              "enum": [
               "none",
               "underline",
               "line-through"
              ]
             },
             "style": {
              "type": "string",
              "enum": [
               "solid",
               "double",
               "dotted",
               "dashed",
               "wavy"
              ]
             },
             "color": {
              "type": "object",
              "properties": {
               "space": {
                "type": "string",
                "enum": [
                 "srgb",
                 "display-p3"
                ]
               },
               "red": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "green": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "blue": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               },
               "alpha": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
               }
              },
              "required": [
               "space",
               "red",
               "green",
               "blue",
               "alpha"
              ],
              "additionalProperties": false
             },
             "thickness": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             }
            },
            "required": [
             "line",
             "style"
            ],
            "additionalProperties": false
           },
           "stroke": {
            "type": "object",
            "properties": {
             "width": {
              "type": "number",
              "minimum": 0,
              "maximum": 100000
             },
             "paint": {
              "oneOf": [
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "solid"
                 },
                 "color": {
                  "type": "object",
                  "properties": {
                   "space": {
                    "type": "string",
                    "enum": [
                     "srgb",
                     "display-p3"
                    ]
                   },
                   "red": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "green": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "blue": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "alpha": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "space",
                   "red",
                   "green",
                   "blue",
                   "alpha"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "color"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "linear-gradient"
                 },
                 "angle": {
                  "type": "number",
                  "minimum": -100000,
                  "maximum": 100000
                 },
                 "stops": {
                  "minItems": 2,
                  "maxItems": 32,
                  "type": "array",
                  "items": {
                   "type": "object",
                   "properties": {
                    "id": {
                     "type": "string",
                     "minLength": 1,
                     "maxLength": 200
                    },
                    "position": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "color": {
                     "type": "object",
                     "properties": {
                      "space": {
                       "type": "string",
                       "enum": [
                        "srgb",
                        "display-p3"
                       ]
                      },
                      "red": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "green": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "blue": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "alpha": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      }
                     },
                     "required": [
                      "space",
                      "red",
                      "green",
                      "blue",
                      "alpha"
                     ],
                     "additionalProperties": false
                    }
                   },
                   "required": [
                    "id",
                    "position",
                    "color"
                   ],
                   "additionalProperties": false
                  }
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "angle",
                 "stops"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "radial-gradient"
                 },
                 "center": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y"
                  ],
                  "additionalProperties": false
                 },
                 "radius": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y"
                  ],
                  "additionalProperties": false
                 },
                 "stops": {
                  "minItems": 2,
                  "maxItems": 32,
                  "type": "array",
                  "items": {
                   "type": "object",
                   "properties": {
                    "id": {
                     "type": "string",
                     "minLength": 1,
                     "maxLength": 200
                    },
                    "position": {
                     "type": "number",
                     "minimum": 0,
                     "maximum": 1
                    },
                    "color": {
                     "type": "object",
                     "properties": {
                      "space": {
                       "type": "string",
                       "enum": [
                        "srgb",
                        "display-p3"
                       ]
                      },
                      "red": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "green": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "blue": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      },
                      "alpha": {
                       "type": "number",
                       "minimum": 0,
                       "maximum": 1
                      }
                     },
                     "required": [
                      "space",
                      "red",
                      "green",
                      "blue",
                      "alpha"
                     ],
                     "additionalProperties": false
                    }
                   },
                   "required": [
                    "id",
                    "position",
                    "color"
                   ],
                   "additionalProperties": false
                  }
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "center",
                 "radius",
                 "stops"
                ],
                "additionalProperties": false
               },
               {
                "type": "object",
                "properties": {
                 "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                 },
                 "visible": {
                  "type": "boolean"
                 },
                 "opacity": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1
                 },
                 "kind": {
                  "type": "string",
                  "const": "image"
                 },
                 "assetId": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 500
                 },
                 "fit": {
                  "type": "string",
                  "enum": [
                   "fill",
                   "fit",
                   "crop",
                   "tile"
                  ]
                 },
                 "crop": {
                  "type": "object",
                  "properties": {
                   "x": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "y": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "width": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   },
                   "height": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1
                   }
                  },
                  "required": [
                   "x",
                   "y",
                   "width",
                   "height"
                  ],
                  "additionalProperties": false
                 }
                },
                "required": [
                 "id",
                 "visible",
                 "opacity",
                 "kind",
                 "assetId",
                 "fit"
                ],
                "additionalProperties": false
               }
              ]
             }
            },
            "required": [
             "width",
             "paint"
            ],
            "additionalProperties": false
           },
           "wrapping": {
            "type": "string",
            "enum": [
             "wrap",
             "nowrap",
             "pre",
             "pre-line",
             "pre-wrap",
             "break-spaces"
            ]
           },
           "truncation": {
            "type": "object",
            "properties": {
             "mode": {
              "type": "string",
              "enum": [
               "none",
               "ellipsis"
              ]
             },
             "maxLines": {
              "anyOf": [
               {
                "type": "integer",
                "minimum": 1,
                "maximum": 100000
               },
               {
                "type": "null"
               }
              ]
             }
            },
            "required": [
             "mode",
             "maxLines"
            ],
            "additionalProperties": false
           },
           "insets": {
            "type": "object",
            "properties": {
             "top": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             "right": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             "bottom": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             },
             "left": {
              "type": "number",
              "minimum": -100000,
              "maximum": 100000
             }
            },
            "required": [
             "top",
             "right",
             "bottom",
             "left"
            ],
            "additionalProperties": false
           }
          },
          "required": [
           "family",
           "fallbackFamilies",
           "size",
           "weight",
           "style",
           "lineHeight",
           "letterSpacing",
           "align",
           "verticalAlign",
           "transform",
           "decoration",
           "wrapping"
          ],
          "additionalProperties": false
         },
         {
          "type": "string",
          "const": "default"
         }
        ]
       }
      },
      "required": [
       "op",
       "nodeId",
       "typography"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setAdditionalStyles"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "additionalStyles": {
        "anyOf": [
         {
          "type": "object",
          "properties": {
           "declarations": {
            "maxItems": 128,
            "type": "array",
            "items": {
             "type": "object",
             "properties": {
              "id": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200
              },
              "property": {
               "type": "string",
               "minLength": 1,
               "maxLength": 200,
               "pattern": "^(?:--[\\w-]+|-(?:webkit|moz|ms|o)-[a-z][a-z\\d-]*|[a-z][a-z\\d-]*)$"
              },
              "value": {
               "type": "string",
               "maxLength": 10000
              },
              "enabled": {
               "type": "boolean"
              }
             },
             "required": [
              "id",
              "property",
              "value",
              "enabled"
             ],
             "additionalProperties": false
            }
           }
          },
          "required": [
           "declarations"
          ],
          "additionalProperties": false
         },
         {
          "type": "string",
          "const": "default"
         }
        ]
       }
      },
      "required": [
       "op",
       "nodeId",
       "additionalStyles"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setProps"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "props": {
        "anyOf": [
         {
          "type": "object",
          "propertyNames": {
           "type": "string"
          },
          "additionalProperties": {}
         },
         {
          "type": "string",
          "const": "default"
         }
        ]
       }
      },
      "required": [
       "op",
       "nodeId",
       "props"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "setParentage"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "parentage": {
        "type": "object",
        "properties": {
         "parentId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 200
         },
         "sortKey": {
          "type": "string",
          "minLength": 1,
          "maxLength": 500
         }
        },
        "required": [
         "parentId",
         "sortKey"
        ],
        "additionalProperties": false
       }
      },
      "required": [
       "op",
       "nodeId",
       "parentage"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "parentId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "afterId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       },
       "op": {
        "type": "string",
        "const": "move"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       }
      },
      "required": [
       "parentId",
       "op",
       "nodeId"
      ],
      "additionalProperties": false
     },
     {
      "type": "object",
      "properties": {
       "op": {
        "type": "string",
        "const": "remove"
       },
       "nodeId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
       }
      },
      "required": [
       "op",
       "nodeId"
      ],
      "additionalProperties": false
     }
    ]
   }
  }
 },
 "required": [
  "canvasId",
  "baseVersion",
  "operations"
 ],
 "additionalProperties": false
}

Example

Show example input
{
 "canvasId": "00000000-0000-4000-8000-000000000010",
 "baseVersion": 1,
 "operations": [
  {
   "op": "setText",
   "nodeId": "text_title",
   "text": "Ready"
  }
 ]
}

Result

Returns a typed canvas.apply result from the Enhance API without transport-specific prose.

Recovery

  • BAD_REQUEST: correct the named fields and call again.
  • UNAUTHORIZED: restore Enhance authentication, then retry once.
  • FORBIDDEN or NOT_FOUND: check the supplied resource and selection; do not substitute unrelated content. Ask for corrected access or scope if needed.
  • CONFLICT: read the current resource, merge the intended change, and retry with its version.
  • INTERNAL: run Enhance diagnostics, report the failure, and stop repeating the call.

Continue with

  • Reuse the committed version for the next edit. Render the affected screen when the requested visual change is ready to review.

Compatibility: b4572d004152f351f784d3af83fa8312a178a94308d6e1bfd1d1d936cf3c3cfd.