{
  "$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})$"
      },
      "default": [
        "ffa6e6",
        "619eff",
        "29e051"
      ]
    },
    "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
    },
    "facialHair": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "default"
        ]
      },
      "default": [
        "default"
      ]
    },
    "facialHairProbability": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100,
      "default": 20
    },
    "hair": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "plain",
          "wavy",
          "shortCurls",
          "parting",
          "spiky",
          "roundBob",
          "longCurls",
          "buns",
          "bangs",
          "fluffy",
          "flatTop",
          "shaggy"
        ]
      },
      "default": [
        "plain",
        "wavy",
        "shortCurls",
        "parting",
        "spiky",
        "roundBob",
        "longCurls",
        "buns",
        "bangs",
        "fluffy",
        "flatTop",
        "shaggy"
      ]
    },
    "hairColor": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^(transparent|[a-fA-F0-9]{6})$"
      },
      "default": [
        "000000",
        "ff543d",
        "fff500",
        "1d5dff",
        "ffffff"
      ]
    },
    "mood": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "happy",
          "angry",
          "neutral",
          "superHappy",
          "sad",
          "hopeful",
          "confused"
        ]
      },
      "default": [
        "happy",
        "angry",
        "neutral",
        "superHappy",
        "sad",
        "hopeful",
        "confused"
      ]
    },
    "skinColor": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^(transparent|[a-fA-F0-9]{6})$"
      },
      "default": [
        "ffd6c0",
        "c26450"
      ]
    }
  }
}