{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "seed": {
      "type": "string"
    },
    "flip": {
      "type": "boolean",
      "default": false
    },
    "rotate": {
      "type": "integer",
      "minimum": 0,
      "maximum": 360,
      "default": 0
    },
    "scale": {
      "type": "integer",
      "minimum": 0,
      "maximum": 200,
      "default": 100
    },
    "radius": {
      "type": "integer",
      "minimum": 0,
      "maximum": 50,
      "default": 0
    },
    "size": {
      "type": "integer",
      "minimum": 1
    },
    "backgroundColor": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^(transparent|[a-fA-F0-9]{6})$"
      }
    },
    "backgroundType": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "solid",
          "gradientLinear"
        ]
      },
      "default": [
        "solid"
      ]
    },
    "backgroundRotation": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": -360,
        "maximum": 360
      },
      "default": [
        0,
        360
      ]
    },
    "translateX": {
      "type": "integer",
      "minimum": -100,
      "maximum": 100,
      "default": 0
    },
    "translateY": {
      "type": "integer",
      "minimum": -100,
      "maximum": 100,
      "default": 0
    },
    "clip": {
      "type": "boolean",
      "default": true
    },
    "randomizeIds": {
      "type": "boolean",
      "default": false
    },
    "row1": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "xooox",
          "xxoxx",
          "xoxox",
          "oxxxo",
          "xxxxx",
          "oxoxo",
          "ooxoo"
        ]
      },
      "default": [
        "xooox",
        "xxoxx",
        "xoxox",
        "oxxxo",
        "xxxxx",
        "oxoxo",
        "ooxoo"
      ]
    },
    "row2": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "xooox",
          "xxoxx",
          "xoxox",
          "oxxxo",
          "xxxxx",
          "oxoxo",
          "ooxoo"
        ]
      },
      "default": [
        "xooox",
        "xxoxx",
        "xoxox",
        "oxxxo",
        "xxxxx",
        "oxoxo",
        "ooxoo"
      ]
    },
    "row3": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "xooox",
          "xxoxx",
          "xoxox",
          "oxxxo",
          "xxxxx",
          "oxoxo",
          "ooxoo"
        ]
      },
      "default": [
        "xooox",
        "xxoxx",
        "xoxox",
        "oxxxo",
        "xxxxx",
        "oxoxo",
        "ooxoo"
      ]
    },
    "row4": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "xooox",
          "xxoxx",
          "xoxox",
          "oxxxo",
          "xxxxx",
          "oxoxo",
          "ooxoo"
        ]
      },
      "default": [
        "xooox",
        "xxoxx",
        "xoxox",
        "oxxxo",
        "xxxxx",
        "oxoxo",
        "ooxoo"
      ]
    },
    "row5": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "xooox",
          "xxoxx",
          "xoxox",
          "oxxxo",
          "xxxxx",
          "oxoxo",
          "ooxoo"
        ]
      },
      "default": [
        "xooox",
        "xxoxx",
        "xoxox",
        "oxxxo",
        "xxxxx",
        "oxoxo",
        "ooxoo"
      ]
    },
    "rowColor": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^(transparent|[a-fA-F0-9]{6})$"
      },
      "default": [
        "e53935",
        "ffb300",
        "1e88e5",
        "546e7a",
        "6d4c41",
        "00acc1",
        "f4511e",
        "5e35b1",
        "43a047",
        "757575",
        "3949ab",
        "039be5",
        "7cb342",
        "c0ca33",
        "fb8c00",
        "d81b60",
        "8e24aa",
        "00897b",
        "fdd835"
      ]
    }
  }
}