{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://mockaps.com/apps/project.schema.json",
  "title": "Mockaps app project",
  "description": "Local editable project files. Optional state fields use this tool\u2019s defaults. Import requires user review; it does not upload or publish content. Images must be embedded PNG, JPEG or WebP data URLs, at most 1,800,000 characters per image. File limit: 20 MB. No remote image fetching.",
  "oneOf": [
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "facebook-post-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "verified": {
              "type": "boolean"
            },
            "follow": {
              "type": "boolean"
            },
            "time": {
              "type": "string"
            },
            "audience": {
              "type": "string"
            },
            "sponsored": {
              "type": "boolean"
            },
            "text": {
              "type": "string"
            },
            "type": {
              "type": "string"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number"
            },
            "imageHeight": {
              "type": "number"
            },
            "ratio": {
              "type": "string"
            },
            "cropX": {
              "type": "number"
            },
            "cropY": {
              "type": "number"
            },
            "zoom": {
              "type": "number"
            },
            "seeMore": {
              "type": "boolean"
            },
            "domain": {
              "type": "string"
            },
            "headline": {
              "type": "string"
            },
            "description": {
              "type": "string"
            },
            "cta": {
              "type": "string"
            },
            "reactions": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "reactionCount": {
              "type": "string"
            },
            "commentCount": {
              "type": "string"
            },
            "shareCount": {
              "type": "string"
            },
            "showCounts": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "showComment": {
              "type": "boolean"
            },
            "commentName": {
              "type": "string"
            },
            "commentText": {
              "type": "string"
            },
            "commentTime": {
              "type": "string"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "instagram-post-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "username": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "verified": {
              "type": "boolean"
            },
            "storyRing": {
              "type": "boolean"
            },
            "follow": {
              "type": "boolean"
            },
            "location": {
              "type": "string"
            },
            "sponsored": {
              "type": "boolean"
            },
            "caption": {
              "type": "string"
            },
            "truncate": {
              "type": "boolean"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number"
            },
            "imageHeight": {
              "type": "number"
            },
            "ratio": {
              "type": "string"
            },
            "cropX": {
              "type": "number"
            },
            "cropY": {
              "type": "number"
            },
            "zoom": {
              "type": "number"
            },
            "liked": {
              "type": "boolean"
            },
            "saved": {
              "type": "boolean"
            },
            "showLikes": {
              "type": "boolean"
            },
            "likeCount": {
              "type": "string"
            },
            "showComments": {
              "type": "boolean"
            },
            "commentCount": {
              "type": "string"
            },
            "showComment": {
              "type": "boolean"
            },
            "commentUsername": {
              "type": "string"
            },
            "commentText": {
              "type": "string"
            },
            "time": {
              "type": "string"
            },
            "showCommentInput": {
              "type": "boolean"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string"
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "preset": {
                  "type": "string",
                  "enum": [
                    "feed",
                    "spin",
                    "typewriter"
                  ]
                },
                "motionDuration": {
                  "type": "number",
                  "minimum": 0.6,
                  "maximum": 5
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 0.5,
                  "maximum": 8
                },
                "speed": {
                  "type": "number",
                  "minimum": 10,
                  "maximum": 80
                },
                "cursor": {
                  "type": "boolean"
                },
                "expandCaption": {
                  "type": "boolean"
                },
                "direction": {
                  "type": "string",
                  "enum": [
                    "up",
                    "down"
                  ]
                },
                "spinDirection": {
                  "type": "string",
                  "enum": [
                    "clockwise",
                    "counterclockwise"
                  ]
                },
                "turn": {
                  "type": "string",
                  "enum": [
                    "quarter",
                    "full"
                  ]
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "autoFrame": {
                  "type": "boolean"
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                },
                "loop": {
                  "type": "boolean"
                },
                "postScale": {
                  "type": "number",
                  "minimum": 55,
                  "maximum": 110
                },
                "position": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "linkedin-post-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "authorType": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "headline": {
              "type": "string"
            },
            "followers": {
              "type": "string"
            },
            "connection": {
              "type": "string"
            },
            "verified": {
              "type": "boolean"
            },
            "follow": {
              "type": "boolean"
            },
            "time": {
              "type": "string"
            },
            "audience": {
              "type": "string"
            },
            "edited": {
              "type": "boolean"
            },
            "sponsored": {
              "type": "boolean"
            },
            "text": {
              "type": "string"
            },
            "seeMore": {
              "type": "boolean"
            },
            "type": {
              "type": "string"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number"
            },
            "imageHeight": {
              "type": "number"
            },
            "ratio": {
              "type": "string"
            },
            "cropX": {
              "type": "number"
            },
            "cropY": {
              "type": "number"
            },
            "zoom": {
              "type": "number"
            },
            "domain": {
              "type": "string"
            },
            "linkTitle": {
              "type": "string"
            },
            "linkDescription": {
              "type": "string"
            },
            "reactions": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "reactionCount": {
              "type": "string"
            },
            "commentCount": {
              "type": "string"
            },
            "repostCount": {
              "type": "string"
            },
            "showCounts": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "liked": {
              "type": "boolean"
            },
            "showComment": {
              "type": "boolean"
            },
            "commentName": {
              "type": "string"
            },
            "commentHeadline": {
              "type": "string"
            },
            "commentText": {
              "type": "string"
            },
            "commentTime": {
              "type": "string"
            },
            "showCommentInput": {
              "type": "boolean"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "youtube-video-player-mockup"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "title": {
              "type": "string"
            },
            "description": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "subscribers": {
              "type": "string"
            },
            "verified": {
              "type": "boolean"
            },
            "subscribed": {
              "type": "boolean"
            },
            "viewCount": {
              "type": "string"
            },
            "published": {
              "type": "string"
            },
            "likeCount": {
              "type": "string"
            },
            "liked": {
              "type": "boolean"
            },
            "layout": {
              "type": "string"
            },
            "showHeader": {
              "type": "boolean"
            },
            "showDescription": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "showComments": {
              "type": "boolean"
            },
            "commentCount": {
              "type": "string"
            },
            "commentName": {
              "type": "string"
            },
            "commentText": {
              "type": "string"
            },
            "commentTime": {
              "type": "string"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number"
            },
            "imageHeight": {
              "type": "number"
            },
            "cropX": {
              "type": "number"
            },
            "cropY": {
              "type": "number"
            },
            "zoom": {
              "type": "number"
            },
            "duration": {
              "type": "string"
            },
            "progress": {
              "type": "number"
            },
            "playback": {
              "type": "string"
            },
            "showControls": {
              "type": "boolean"
            },
            "showCenterPlay": {
              "type": "boolean"
            },
            "showTitleOverlay": {
              "type": "boolean"
            },
            "muted": {
              "type": "boolean"
            },
            "captions": {
              "type": "boolean"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "tiktok-video-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string"
            },
            "username": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "verified": {
              "type": "boolean"
            },
            "following": {
              "type": "boolean"
            },
            "caption": {
              "type": "string"
            },
            "expandedCaption": {
              "type": "boolean"
            },
            "published": {
              "type": "string"
            },
            "sponsored": {
              "type": "boolean"
            },
            "sound": {
              "type": "string"
            },
            "soundArtist": {
              "type": "string"
            },
            "showSound": {
              "type": "boolean"
            },
            "likeCount": {
              "type": "string"
            },
            "commentCount": {
              "type": "string"
            },
            "saveCount": {
              "type": "string"
            },
            "shareCount": {
              "type": "string"
            },
            "liked": {
              "type": "boolean"
            },
            "saved": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "showComment": {
              "type": "boolean"
            },
            "commentName": {
              "type": "string"
            },
            "commentText": {
              "type": "string"
            },
            "commentTime": {
              "type": "string"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number"
            },
            "imageHeight": {
              "type": "number"
            },
            "cropX": {
              "type": "number"
            },
            "cropY": {
              "type": "number"
            },
            "zoom": {
              "type": "number"
            },
            "paused": {
              "type": "boolean"
            },
            "muted": {
              "type": "boolean"
            },
            "showProgress": {
              "type": "boolean"
            },
            "showTime": {
              "type": "boolean"
            },
            "duration": {
              "type": "string"
            },
            "progress": {
              "type": "number"
            },
            "showHeader": {
              "type": "boolean"
            },
            "showNavigation": {
              "type": "boolean"
            },
            "feed": {
              "type": "string"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "messenger-chat-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "status": {
              "type": "string"
            },
            "online": {
              "type": "boolean"
            },
            "messages": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "sender": {
                    "type": "string",
                    "enum": [
                      "you",
                      "them"
                    ]
                  },
                  "type": {
                    "type": "string"
                  },
                  "text": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "timestamp": {
                    "type": "string"
                  },
                  "reaction": {
                    "type": "string"
                  },
                  "delay": {
                    "type": "number",
                    "minimum": 0.3,
                    "maximum": 12,
                    "description": "Optional pause before this message, in seconds. Omit to use automatic timing."
                  }
                }
              },
              "maxItems": 20
            },
            "chatColor": {
              "type": "string"
            },
            "receipt": {
              "type": "string"
            },
            "typing": {
              "type": "boolean"
            },
            "showAvatars": {
              "type": "boolean"
            },
            "showIntro": {
              "type": "boolean"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "clock": {
              "type": "string"
            },
            "showComposer": {
              "type": "boolean"
            },
            "composer": {
              "type": "string"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number"
            },
            "fontSize": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "delay": {
                  "type": "number",
                  "minimum": 0.3,
                  "maximum": 5
                },
                "adaptive": {
                  "type": "boolean"
                },
                "typing": {
                  "type": "boolean"
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 8
                },
                "transition": {
                  "type": "string",
                  "enum": [
                    "soft",
                    "pop",
                    "none"
                  ]
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                },
                "loop": {
                  "type": "boolean"
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "ios-messages-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "service": {
              "type": "string"
            },
            "backCount": {
              "type": "string"
            },
            "messages": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "sender": {
                    "type": "string",
                    "enum": [
                      "you",
                      "them"
                    ]
                  },
                  "type": {
                    "type": "string"
                  },
                  "text": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "timestamp": {
                    "type": "string"
                  },
                  "reaction": {
                    "type": "string"
                  },
                  "delay": {
                    "type": "number",
                    "minimum": 0.3,
                    "maximum": 12,
                    "description": "Optional pause before this message, in seconds. Omit to use automatic timing."
                  }
                }
              },
              "maxItems": 20
            },
            "receipt": {
              "type": "string"
            },
            "receiptTime": {
              "type": "string"
            },
            "typing": {
              "type": "boolean"
            },
            "fontSize": {
              "type": "number"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "clock": {
              "type": "string"
            },
            "battery": {
              "type": "number"
            },
            "network": {
              "type": "string"
            },
            "showService": {
              "type": "boolean"
            },
            "showComposer": {
              "type": "boolean"
            },
            "composer": {
              "type": "string"
            },
            "showHomeIndicator": {
              "type": "boolean"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string"
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "delay": {
                  "type": "number",
                  "minimum": 0.3,
                  "maximum": 5
                },
                "adaptive": {
                  "type": "boolean"
                },
                "typing": {
                  "type": "boolean"
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 8
                },
                "transition": {
                  "type": "string",
                  "enum": [
                    "soft",
                    "pop",
                    "none"
                  ]
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                },
                "loop": {
                  "type": "boolean"
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "google-meet-screen-mockup"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "layout": {
              "type": "string"
            },
            "title": {
              "type": "string"
            },
            "code": {
              "type": "string"
            },
            "clock": {
              "type": "string"
            },
            "selfId": {
              "type": "string"
            },
            "speakerId": {
              "type": "string"
            },
            "participants": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "color": {
                    "type": "string"
                  },
                  "image": {
                    "type": "string"
                  },
                  "sample": {
                    "type": "boolean"
                  },
                  "imageWidth": {
                    "type": "number"
                  },
                  "imageHeight": {
                    "type": "number"
                  },
                  "cropX": {
                    "type": "number"
                  },
                  "cropY": {
                    "type": "number"
                  },
                  "zoom": {
                    "type": "number"
                  },
                  "camera": {
                    "type": "boolean"
                  },
                  "muted": {
                    "type": "boolean"
                  },
                  "hand": {
                    "type": "boolean"
                  }
                }
              }
            },
            "showNames": {
              "type": "boolean"
            },
            "captions": {
              "type": "boolean"
            },
            "caption": {
              "type": "string"
            },
            "recording": {
              "type": "boolean"
            },
            "slideTitle": {
              "type": "string"
            },
            "slideSubtitle": {
              "type": "string"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number"
            },
            "imageHeight": {
              "type": "number"
            },
            "background": {
              "type": "string"
            },
            "padding": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "transparent": {
              "type": "boolean"
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "facebook-page-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string"
            },
            "username": {
              "type": "string"
            },
            "category": {
              "type": "string"
            },
            "bio": {
              "type": "string"
            },
            "followers": {
              "type": "string"
            },
            "following": {
              "type": "string"
            },
            "verified": {
              "type": "boolean"
            },
            "avatar": {
              "type": "string"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number"
            },
            "imageHeight": {
              "type": "number"
            },
            "cropX": {
              "type": "number"
            },
            "cropY": {
              "type": "number"
            },
            "zoom": {
              "type": "number"
            },
            "showCover": {
              "type": "boolean"
            },
            "action": {
              "type": "string"
            },
            "followState": {
              "type": "string"
            },
            "layout": {
              "type": "string"
            },
            "showChrome": {
              "type": "boolean"
            },
            "showIntro": {
              "type": "boolean"
            },
            "showPost": {
              "type": "boolean"
            },
            "website": {
              "type": "string"
            },
            "location": {
              "type": "string"
            },
            "email": {
              "type": "string"
            },
            "phone": {
              "type": "string"
            },
            "hours": {
              "type": "string"
            },
            "rating": {
              "type": "string"
            },
            "postText": {
              "type": "string"
            },
            "postTime": {
              "type": "string"
            },
            "postType": {
              "type": "string"
            },
            "postImage": {
              "type": "string"
            },
            "postImageWidth": {
              "type": "number"
            },
            "postImageHeight": {
              "type": "number"
            },
            "postCropX": {
              "type": "number"
            },
            "postCropY": {
              "type": "number"
            },
            "postZoom": {
              "type": "number"
            },
            "postRatio": {
              "type": "string"
            },
            "postSeeMore": {
              "type": "boolean"
            },
            "reactionCount": {
              "type": "string"
            },
            "commentCount": {
              "type": "string"
            },
            "shareCount": {
              "type": "string"
            },
            "showCounts": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "x-post-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string"
            },
            "handle": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "badge": {
              "type": "string"
            },
            "time": {
              "type": "string"
            },
            "timestamp": {
              "type": "string"
            },
            "layout": {
              "type": "string"
            },
            "showHeader": {
              "type": "boolean"
            },
            "text": {
              "type": "string"
            },
            "fontSize": {
              "type": "number"
            },
            "seeMore": {
              "type": "boolean"
            },
            "repostedBy": {
              "type": "string"
            },
            "type": {
              "type": "string"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number"
            },
            "imageHeight": {
              "type": "number"
            },
            "ratio": {
              "type": "string"
            },
            "cropX": {
              "type": "number"
            },
            "cropY": {
              "type": "number"
            },
            "zoom": {
              "type": "number"
            },
            "domain": {
              "type": "string"
            },
            "linkTitle": {
              "type": "string"
            },
            "showQuote": {
              "type": "boolean"
            },
            "quoteName": {
              "type": "string"
            },
            "quoteHandle": {
              "type": "string"
            },
            "quoteText": {
              "type": "string"
            },
            "quoteVerified": {
              "type": "boolean"
            },
            "replyCount": {
              "type": "string"
            },
            "repostCount": {
              "type": "string"
            },
            "likeCount": {
              "type": "string"
            },
            "viewCount": {
              "type": "string"
            },
            "bookmarkCount": {
              "type": "string"
            },
            "showCounts": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "liked": {
              "type": "boolean"
            },
            "reposted": {
              "type": "boolean"
            },
            "bookmarked": {
              "type": "boolean"
            },
            "showReply": {
              "type": "boolean"
            },
            "replyName": {
              "type": "string"
            },
            "replyHandle": {
              "type": "string"
            },
            "replyText": {
              "type": "string"
            },
            "replyTime": {
              "type": "string"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "zoom-meeting-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "layout": {
              "type": "string"
            },
            "title": {
              "type": "string"
            },
            "code": {
              "type": "string"
            },
            "duration": {
              "type": "string"
            },
            "hostId": {
              "type": "string"
            },
            "showToolbar": {
              "type": "boolean"
            },
            "showMeetingId": {
              "type": "boolean"
            },
            "selfId": {
              "type": "string"
            },
            "speakerId": {
              "type": "string"
            },
            "participants": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "color": {
                    "type": "string"
                  },
                  "image": {
                    "type": "string"
                  },
                  "sample": {
                    "type": "boolean"
                  },
                  "imageWidth": {
                    "type": "number"
                  },
                  "imageHeight": {
                    "type": "number"
                  },
                  "cropX": {
                    "type": "number"
                  },
                  "cropY": {
                    "type": "number"
                  },
                  "zoom": {
                    "type": "number"
                  },
                  "camera": {
                    "type": "boolean"
                  },
                  "muted": {
                    "type": "boolean"
                  },
                  "hand": {
                    "type": "boolean"
                  }
                }
              }
            },
            "showNames": {
              "type": "boolean"
            },
            "captions": {
              "type": "boolean"
            },
            "caption": {
              "type": "string"
            },
            "recording": {
              "type": "boolean"
            },
            "slideTitle": {
              "type": "string"
            },
            "slideSubtitle": {
              "type": "string"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number"
            },
            "imageHeight": {
              "type": "number"
            },
            "background": {
              "type": "string"
            },
            "padding": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "transparent": {
              "type": "boolean"
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "instagram-story-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "username": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "verified": {
              "type": "boolean"
            },
            "time": {
              "type": "string"
            },
            "closeFriends": {
              "type": "boolean"
            },
            "sponsored": {
              "type": "boolean"
            },
            "storyCount": {
              "type": "number"
            },
            "currentStory": {
              "type": "number"
            },
            "progress": {
              "type": "number"
            },
            "paused": {
              "type": "boolean"
            },
            "muted": {
              "type": "boolean"
            },
            "showProgress": {
              "type": "boolean"
            },
            "mediaMode": {
              "type": "string"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number"
            },
            "imageHeight": {
              "type": "number"
            },
            "cropX": {
              "type": "number"
            },
            "cropY": {
              "type": "number"
            },
            "zoom": {
              "type": "number"
            },
            "storyColor": {
              "type": "string"
            },
            "gradientColor": {
              "type": "string"
            },
            "shade": {
              "type": "number"
            },
            "text": {
              "type": "string"
            },
            "fontSize": {
              "type": "number"
            },
            "textColor": {
              "type": "string"
            },
            "textBackground": {
              "type": "string"
            },
            "textAlign": {
              "type": "string"
            },
            "textPosition": {
              "type": "number"
            },
            "bold": {
              "type": "boolean"
            },
            "italic": {
              "type": "boolean"
            },
            "sticker": {
              "type": "string"
            },
            "stickerText": {
              "type": "string"
            },
            "stickerPosition": {
              "type": "number"
            },
            "pollQuestion": {
              "type": "string"
            },
            "pollOptionA": {
              "type": "string"
            },
            "pollOptionB": {
              "type": "string"
            },
            "showReply": {
              "type": "boolean"
            },
            "replyText": {
              "type": "string"
            },
            "showActions": {
              "type": "boolean"
            },
            "liked": {
              "type": "boolean"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number"
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "tiktok-text-overlay-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "text": {
              "type": "string",
              "maxLength": 500
            },
            "font": {
              "type": "string",
              "enum": [
                "classic",
                "typewriter",
                "handwriting",
                "serif",
                "simple"
              ]
            },
            "fontSize": {
              "type": "number",
              "minimum": 20,
              "maximum": 100
            },
            "color": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "opacity": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            },
            "backdrop": {
              "type": "string",
              "enum": [
                "line",
                "box",
                "none"
              ]
            },
            "align": {
              "type": "string",
              "enum": [
                "left",
                "center",
                "right"
              ]
            },
            "wrapWidth": {
              "type": "number",
              "minimum": 160,
              "maximum": 900
            },
            "lineHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 1.8
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 32
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "stroke": {
              "type": "number",
              "minimum": 0,
              "maximum": 6
            },
            "strokeColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "shadow": {
              "type": "boolean"
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "tiktok-comment-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "comments": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "parentId": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string",
                    "maxLength": 40
                  },
                  "text": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "time": {
                    "type": "string"
                  },
                  "likes": {
                    "type": "string"
                  },
                  "avatar": {
                    "type": "string"
                  },
                  "avatarColor": {
                    "type": "string"
                  },
                  "verified": {
                    "type": "boolean"
                  },
                  "creator": {
                    "type": "boolean"
                  },
                  "liked": {
                    "type": "boolean"
                  },
                  "likedByCreator": {
                    "type": "boolean"
                  },
                  "pinned": {
                    "type": "boolean"
                  },
                  "replyCount": {
                    "type": "string"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 20
            },
            "layout": {
              "type": "string",
              "enum": [
                "cards",
                "panel"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "fontSize": {
              "type": "number",
              "minimum": 14,
              "maximum": 26
            },
            "rowSpacing": {
              "type": "number",
              "minimum": 12,
              "maximum": 40
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 28
            },
            "showHeader": {
              "type": "boolean"
            },
            "commentCount": {
              "type": "string"
            },
            "showComposer": {
              "type": "boolean"
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "instagram-comment-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "comments": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "parentId": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string",
                    "maxLength": 30
                  },
                  "text": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "time": {
                    "type": "string"
                  },
                  "likes": {
                    "type": "string"
                  },
                  "avatar": {
                    "type": "string"
                  },
                  "avatarColor": {
                    "type": "string"
                  },
                  "verified": {
                    "type": "boolean"
                  },
                  "creator": {
                    "type": "boolean"
                  },
                  "liked": {
                    "type": "boolean"
                  },
                  "likedByCreator": {
                    "type": "boolean"
                  },
                  "pinned": {
                    "type": "boolean"
                  },
                  "storyRing": {
                    "type": "boolean"
                  },
                  "replyCount": {
                    "type": "string"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 20
            },
            "layout": {
              "type": "string",
              "enum": [
                "cards",
                "panel"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "fontSize": {
              "type": "number",
              "minimum": 14,
              "maximum": 26
            },
            "rowSpacing": {
              "type": "number",
              "minimum": 12,
              "maximum": 40
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 28
            },
            "showHeader": {
              "type": "boolean"
            },
            "commentCount": {
              "type": "string"
            },
            "showComposer": {
              "type": "boolean"
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "facebook-comment-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "comments": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "parentId": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string",
                    "maxLength": 40
                  },
                  "text": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "time": {
                    "type": "string"
                  },
                  "likes": {
                    "type": "string"
                  },
                  "avatar": {
                    "type": "string"
                  },
                  "avatarColor": {
                    "type": "string"
                  },
                  "verified": {
                    "type": "boolean"
                  },
                  "creator": {
                    "type": "boolean"
                  },
                  "liked": {
                    "type": "boolean"
                  },
                  "likedByCreator": {
                    "type": "boolean"
                  },
                  "pinned": {
                    "type": "boolean"
                  },
                  "reactions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "like",
                        "love",
                        "care",
                        "haha",
                        "wow",
                        "sad",
                        "angry"
                      ]
                    },
                    "maxItems": 3,
                    "uniqueItems": true
                  },
                  "replyCount": {
                    "type": "string"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 20
            },
            "layout": {
              "type": "string",
              "enum": [
                "cards",
                "panel"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "fontSize": {
              "type": "number",
              "minimum": 14,
              "maximum": 26
            },
            "rowSpacing": {
              "type": "number",
              "minimum": 12,
              "maximum": 40
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 28
            },
            "showHeader": {
              "type": "boolean"
            },
            "commentCount": {
              "type": "string"
            },
            "showComposer": {
              "type": "boolean"
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "youtube-comment-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "comments": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "parentId": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string",
                    "maxLength": 40
                  },
                  "text": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "time": {
                    "type": "string"
                  },
                  "likes": {
                    "type": "string"
                  },
                  "avatar": {
                    "type": "string"
                  },
                  "avatarColor": {
                    "type": "string"
                  },
                  "verified": {
                    "type": "boolean"
                  },
                  "creator": {
                    "type": "boolean"
                  },
                  "liked": {
                    "type": "boolean"
                  },
                  "likedByCreator": {
                    "type": "boolean"
                  },
                  "pinned": {
                    "type": "boolean"
                  },
                  "disliked": {
                    "type": "boolean"
                  },
                  "edited": {
                    "type": "boolean"
                  },
                  "replyCount": {
                    "type": "string"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 20
            },
            "layout": {
              "type": "string",
              "enum": [
                "cards",
                "panel"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "fontSize": {
              "type": "number",
              "minimum": 14,
              "maximum": 26
            },
            "rowSpacing": {
              "type": "number",
              "minimum": 12,
              "maximum": 40
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 28
            },
            "showHeader": {
              "type": "boolean"
            },
            "commentCount": {
              "type": "string"
            },
            "showComposer": {
              "type": "boolean"
            },
            "creatorName": {
              "type": "string",
              "maxLength": 40
            },
            "creatorAvatar": {
              "type": "string"
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "google-search-ad-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "layout": {
              "type": "string",
              "enum": [
                "ad",
                "search"
              ]
            },
            "businessName": {
              "type": "string",
              "maxLength": 25,
              "description": "Full-width CJK characters count as two."
            },
            "domain": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "avatarColor": {
              "type": "string"
            },
            "path1": {
              "type": "string",
              "maxLength": 15,
              "description": "Full-width CJK characters count as two."
            },
            "path2": {
              "type": "string",
              "maxLength": 15,
              "description": "Full-width CJK characters count as two."
            },
            "headline1": {
              "type": "string",
              "maxLength": 30,
              "description": "Full-width CJK characters count as two."
            },
            "headline2": {
              "type": "string",
              "maxLength": 30,
              "description": "Full-width CJK characters count as two."
            },
            "headline3": {
              "type": "string",
              "maxLength": 30,
              "description": "Full-width CJK characters count as two."
            },
            "description1": {
              "type": "string",
              "maxLength": 90,
              "description": "Full-width CJK characters count as two."
            },
            "description2": {
              "type": "string",
              "maxLength": 90,
              "description": "Full-width CJK characters count as two."
            },
            "sitelinks": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "title": {
                    "type": "string",
                    "maxLength": 25
                  },
                  "description1": {
                    "type": "string",
                    "maxLength": 35
                  },
                  "description2": {
                    "type": "string",
                    "maxLength": 35
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 6
            },
            "showSitelinks": {
              "type": "boolean"
            },
            "sitelinkDescriptions": {
              "type": "boolean"
            },
            "showCallouts": {
              "type": "boolean"
            },
            "callout1": {
              "type": "string",
              "maxLength": 25,
              "description": "Full-width CJK characters count as two."
            },
            "callout2": {
              "type": "string",
              "maxLength": 25,
              "description": "Full-width CJK characters count as two."
            },
            "callout3": {
              "type": "string",
              "maxLength": 25,
              "description": "Full-width CJK characters count as two."
            },
            "callout4": {
              "type": "string",
              "maxLength": 25,
              "description": "Full-width CJK characters count as two."
            },
            "showRating": {
              "type": "boolean"
            },
            "rating": {
              "type": "number",
              "minimum": 1,
              "maximum": 5
            },
            "ratingCount": {
              "type": "string"
            },
            "showPhone": {
              "type": "boolean"
            },
            "phone": {
              "type": "string"
            },
            "query": {
              "type": "string"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 28
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "facebook-carousel-post-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "verified": {
              "type": "boolean"
            },
            "sponsored": {
              "type": "boolean"
            },
            "time": {
              "type": "string"
            },
            "text": {
              "type": "string"
            },
            "seeMore": {
              "type": "boolean"
            },
            "cards": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "headline": {
                    "type": "string",
                    "maxLength": 80
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 120
                  },
                  "domain": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "image": {
                    "type": "string"
                  },
                  "sample": {
                    "type": "string",
                    "enum": [
                      "",
                      "coffee",
                      "pour",
                      "iced",
                      "cove",
                      "coast",
                      "cabin",
                      "pottery",
                      "ceramics",
                      "moodboard",
                      "flowers",
                      "florist",
                      "sneaker",
                      "movement",
                      "desk",
                      "team"
                    ]
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 4096
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 4096
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 3
                  }
                },
                "additionalProperties": false
              },
              "minItems": 2,
              "maxItems": 10
            },
            "activeCard": {
              "type": "string"
            },
            "cta": {
              "type": "string",
              "enum": [
                "None",
                "Learn more",
                "Shop now",
                "Sign up",
                "Book now",
                "Contact us",
                "Download"
              ]
            },
            "showDetails": {
              "type": "boolean"
            },
            "showDomain": {
              "type": "boolean"
            },
            "reactions": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "like",
                  "love",
                  "care",
                  "haha",
                  "wow",
                  "sad",
                  "angry"
                ]
              },
              "maxItems": 3,
              "uniqueItems": true
            },
            "reactionCount": {
              "type": "string"
            },
            "commentCount": {
              "type": "string"
            },
            "shareCount": {
              "type": "string"
            },
            "showCounts": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "view": {
              "type": "string",
              "enum": [
                "feed",
                "all"
              ]
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "instagram-carousel-post-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "username": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "verified": {
              "type": "boolean"
            },
            "storyRing": {
              "type": "boolean"
            },
            "follow": {
              "type": "boolean"
            },
            "location": {
              "type": "string"
            },
            "sponsored": {
              "type": "boolean"
            },
            "caption": {
              "type": "string"
            },
            "truncate": {
              "type": "boolean"
            },
            "cards": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "label": {
                    "type": "string",
                    "maxLength": 80
                  },
                  "image": {
                    "type": "string"
                  },
                  "sample": {
                    "type": "string",
                    "enum": [
                      "",
                      "skincare",
                      "coffee",
                      "pour",
                      "iced",
                      "cove",
                      "coast",
                      "cabin",
                      "pottery",
                      "ceramics",
                      "moodboard",
                      "flowers",
                      "florist",
                      "sneaker",
                      "movement",
                      "desk",
                      "team"
                    ]
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 4096
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 4096
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 3
                  }
                },
                "additionalProperties": false
              },
              "minItems": 2,
              "maxItems": 10
            },
            "activeCard": {
              "type": "string"
            },
            "ratio": {
              "type": "string",
              "enum": [
                "square",
                "portrait",
                "tall",
                "landscape"
              ]
            },
            "showCounter": {
              "type": "boolean"
            },
            "showDots": {
              "type": "boolean"
            },
            "liked": {
              "type": "boolean"
            },
            "saved": {
              "type": "boolean"
            },
            "showLikes": {
              "type": "boolean"
            },
            "likeCount": {
              "type": "string"
            },
            "showComments": {
              "type": "boolean"
            },
            "commentCount": {
              "type": "string"
            },
            "showComment": {
              "type": "boolean"
            },
            "commentUsername": {
              "type": "string"
            },
            "commentText": {
              "type": "string"
            },
            "time": {
              "type": "string"
            },
            "showCommentInput": {
              "type": "boolean"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "view": {
              "type": "string",
              "enum": [
                "feed",
                "all"
              ]
            },
            "background": {
              "type": "string"
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "preset": {
                  "type": "string",
                  "enum": [
                    "swipe",
                    "showcase"
                  ]
                },
                "hold": {
                  "type": "number",
                  "minimum": 0.5,
                  "maximum": 5
                },
                "transition": {
                  "type": "number",
                  "minimum": 0.3,
                  "maximum": 1.5
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 0.5,
                  "maximum": 5
                },
                "overview": {
                  "type": "boolean"
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "autoFrame": {
                  "type": "boolean"
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                },
                "loop": {
                  "type": "boolean"
                },
                "postScale": {
                  "type": "number",
                  "minimum": 55,
                  "maximum": 110
                },
                "position": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "linkedin-carousel-post-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "authorType": {
              "type": "string",
              "enum": [
                "company",
                "person"
              ]
            },
            "name": {
              "type": "string"
            },
            "avatar": {
              "type": "string"
            },
            "headline": {
              "type": "string"
            },
            "followers": {
              "type": "string"
            },
            "connection": {
              "type": "string"
            },
            "verified": {
              "type": "boolean"
            },
            "follow": {
              "type": "boolean"
            },
            "time": {
              "type": "string"
            },
            "audience": {
              "type": "string"
            },
            "edited": {
              "type": "boolean"
            },
            "sponsored": {
              "type": "boolean"
            },
            "text": {
              "type": "string",
              "maxLength": 3000
            },
            "seeMore": {
              "type": "boolean"
            },
            "cards": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "label": {
                    "type": "string",
                    "maxLength": 80
                  },
                  "layout": {
                    "type": "string",
                    "enum": [
                      "cover",
                      "note",
                      "photo",
                      "image"
                    ]
                  },
                  "eyebrow": {
                    "type": "string",
                    "maxLength": 60
                  },
                  "title": {
                    "type": "string",
                    "maxLength": 160
                  },
                  "body": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "footer": {
                    "type": "string",
                    "maxLength": 60
                  },
                  "background": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  },
                  "color": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  },
                  "accent": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  },
                  "titleSize": {
                    "type": "number",
                    "minimum": 22,
                    "maximum": 52
                  },
                  "image": {
                    "type": "string"
                  },
                  "sample": {
                    "type": "string",
                    "enum": [
                      "",
                      "skincare",
                      "coffee",
                      "pour",
                      "iced",
                      "cove",
                      "coast",
                      "cabin",
                      "pottery",
                      "ceramics",
                      "moodboard",
                      "flowers",
                      "florist",
                      "sneaker",
                      "movement",
                      "desk",
                      "team"
                    ]
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 4096
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 4096
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 3
                  }
                },
                "additionalProperties": false
              },
              "minItems": 2,
              "maxItems": 10
            },
            "activeCard": {
              "type": "string"
            },
            "ratio": {
              "type": "string",
              "enum": [
                "square",
                "portrait",
                "landscape"
              ]
            },
            "documentTitle": {
              "type": "string",
              "maxLength": 120
            },
            "showDocumentTitle": {
              "type": "boolean"
            },
            "showToolbar": {
              "type": "boolean"
            },
            "reactions": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "like",
                  "celebrate",
                  "support",
                  "love",
                  "insightful",
                  "funny"
                ]
              },
              "maxItems": 3,
              "uniqueItems": true
            },
            "reactionCount": {
              "type": "string"
            },
            "commentCount": {
              "type": "string"
            },
            "repostCount": {
              "type": "string"
            },
            "showCounts": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "liked": {
              "type": "boolean"
            },
            "showComment": {
              "type": "boolean"
            },
            "commentName": {
              "type": "string"
            },
            "commentHeadline": {
              "type": "string"
            },
            "commentText": {
              "type": "string"
            },
            "commentTime": {
              "type": "string"
            },
            "showCommentInput": {
              "type": "boolean"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "view": {
              "type": "string",
              "enum": [
                "feed",
                "all"
              ]
            },
            "background": {
              "type": "string"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "microsoft-teams-meeting-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "layout": {
              "type": "string",
              "enum": [
                "grid",
                "speaker",
                "presentation"
              ]
            },
            "title": {
              "type": "string",
              "maxLength": 70
            },
            "code": {
              "type": "string",
              "maxLength": 30
            },
            "duration": {
              "type": "string",
              "maxLength": 16
            },
            "hostId": {
              "type": "string"
            },
            "showToolbar": {
              "type": "boolean"
            },
            "showMeetingId": {
              "type": "boolean"
            },
            "selfId": {
              "type": "string"
            },
            "speakerId": {
              "type": "string"
            },
            "participants": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "maxLength": 64,
                    "pattern": "^[A-Za-z0-9_-]+$"
                  },
                  "name": {
                    "type": "string",
                    "maxLength": 50
                  },
                  "color": {
                    "type": "string"
                  },
                  "image": {
                    "type": "string"
                  },
                  "sample": {
                    "type": "boolean"
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 2
                  },
                  "camera": {
                    "type": "boolean"
                  },
                  "muted": {
                    "type": "boolean"
                  },
                  "hand": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "minItems": 1,
              "maxItems": 12
            },
            "sidePanel": {
              "type": "string",
              "enum": [
                "none",
                "chat",
                "people"
              ]
            },
            "chat": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "maxLength": 64,
                    "pattern": "^[A-Za-z0-9_-]+$"
                  },
                  "name": {
                    "type": "string",
                    "maxLength": 50
                  },
                  "text": {
                    "type": "string",
                    "maxLength": 280
                  },
                  "time": {
                    "type": "string",
                    "maxLength": 16
                  },
                  "mine": {
                    "type": "boolean"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 6
            },
            "slideColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "showNames": {
              "type": "boolean"
            },
            "captions": {
              "type": "boolean"
            },
            "caption": {
              "type": "string",
              "maxLength": 200
            },
            "recording": {
              "type": "boolean"
            },
            "slideTitle": {
              "type": "string",
              "maxLength": 100
            },
            "slideSubtitle": {
              "type": "string",
              "maxLength": 100
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number"
            },
            "imageHeight": {
              "type": "number"
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "transparent": {
              "type": "boolean"
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "google-display-ad-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "size": {
              "type": "string",
              "enum": [
                "300x250",
                "336x280",
                "300x600",
                "728x90",
                "320x100",
                "970x250"
              ]
            },
            "view": {
              "type": "string",
              "enum": [
                "ad",
                "page"
              ]
            },
            "layout": {
              "type": "string",
              "enum": [
                "split",
                "overlay"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "businessName": {
              "type": "string",
              "maxLength": 25
            },
            "domain": {
              "type": "string",
              "maxLength": 100
            },
            "headline": {
              "type": "string",
              "maxLength": 30
            },
            "longHeadline": {
              "type": "string",
              "maxLength": 90
            },
            "description": {
              "type": "string",
              "maxLength": 90
            },
            "headlineChoice": {
              "type": "string",
              "enum": [
                "short",
                "long"
              ]
            },
            "cta": {
              "type": "string",
              "maxLength": 20
            },
            "showDescription": {
              "type": "boolean"
            },
            "showDomain": {
              "type": "boolean"
            },
            "showLogo": {
              "type": "boolean"
            },
            "showBadge": {
              "type": "boolean"
            },
            "avatar": {
              "type": "string"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "surface": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "color": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "headingScale": {
              "type": "number",
              "minimum": 0.8,
              "maximum": 1.3
            },
            "overlayStrength": {
              "type": "number",
              "minimum": 0.25,
              "maximum": 0.85
            },
            "showImage": {
              "type": "boolean"
            },
            "sample": {
              "type": "string",
              "enum": [
                "",
                "ceramics",
                "skincare",
                "coast",
                "cabin",
                "flowers",
                "sneaker",
                "desk",
                "coffee"
              ]
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "publisher": {
              "type": "string",
              "maxLength": 32
            },
            "pageTitle": {
              "type": "string",
              "maxLength": 80
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "whatsapp-chat-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string",
              "maxLength": 50
            },
            "status": {
              "type": "string",
              "maxLength": 60
            },
            "avatar": {
              "type": "string"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "messages": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "maxLength": 64,
                    "pattern": "^[A-Za-z0-9_-]+$"
                  },
                  "sender": {
                    "type": "string",
                    "enum": [
                      "you",
                      "them"
                    ]
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "text",
                      "photo"
                    ]
                  },
                  "text": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "time": {
                    "type": "string",
                    "maxLength": 12
                  },
                  "date": {
                    "type": "string",
                    "maxLength": 40
                  },
                  "receipt": {
                    "type": "string",
                    "enum": [
                      "none",
                      "pending",
                      "sent",
                      "delivered",
                      "read"
                    ]
                  },
                  "replyTo": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "reaction": {
                    "type": "string",
                    "enum": [
                      "",
                      "\ud83d\udc4d",
                      "\u2764\ufe0f",
                      "\ud83d\ude02",
                      "\ud83d\ude2e",
                      "\ud83d\ude22",
                      "\ud83d\ude4f"
                    ]
                  },
                  "edited": {
                    "type": "boolean"
                  },
                  "forwarded": {
                    "type": "boolean"
                  },
                  "delay": {
                    "type": "number",
                    "minimum": 0.3,
                    "maximum": 12,
                    "description": "Optional pause before this message, in seconds. Omit to use automatic timing."
                  },
                  "image": {
                    "type": "string",
                    "description": "Embedded PNG, JPEG or WebP data URL."
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 2
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 20
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "fontSize": {
              "type": "number",
              "minimum": 14,
              "maximum": 24
            },
            "rowSpacing": {
              "type": "number",
              "minimum": 4,
              "maximum": 24
            },
            "typing": {
              "type": "boolean"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "clock": {
              "type": "string",
              "maxLength": 8
            },
            "battery": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "showComposer": {
              "type": "boolean"
            },
            "composer": {
              "type": "string",
              "maxLength": 80
            },
            "showHomeIndicator": {
              "type": "boolean"
            },
            "wallpaperStyle": {
              "type": "string",
              "enum": [
                "classic",
                "sage",
                "rose",
                "blue",
                "custom"
              ]
            },
            "wallpaper": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "pattern": {
              "type": "boolean"
            },
            "bubbleStyle": {
              "type": "string",
              "enum": [
                "classic",
                "blue",
                "rose",
                "custom"
              ]
            },
            "bubbleColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "delay": {
                  "type": "number",
                  "minimum": 0.3,
                  "maximum": 5
                },
                "adaptive": {
                  "type": "boolean"
                },
                "typing": {
                  "type": "boolean"
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 8
                },
                "transition": {
                  "type": "string",
                  "enum": [
                    "soft",
                    "pop",
                    "none"
                  ]
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                },
                "loop": {
                  "type": "boolean"
                },
                "receipts": {
                  "type": "boolean"
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "email-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "client": {
              "type": "string",
              "enum": [
                "gmail",
                "outlook",
                "apple"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "senderName": {
              "type": "string",
              "maxLength": 60
            },
            "senderEmail": {
              "type": "string",
              "maxLength": 100
            },
            "recipient": {
              "type": "string",
              "maxLength": 140
            },
            "cc": {
              "type": "string",
              "maxLength": 180
            },
            "subject": {
              "type": "string",
              "maxLength": 180
            },
            "date": {
              "type": "string",
              "maxLength": 60
            },
            "body": {
              "type": "string",
              "maxLength": 4000
            },
            "signature": {
              "type": "string",
              "maxLength": 500
            },
            "showSignature": {
              "type": "boolean"
            },
            "avatar": {
              "type": "string"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "bannerHeight": {
              "type": "number",
              "minimum": 80,
              "maximum": 320
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 2.5
            },
            "imagePlacement": {
              "type": "string",
              "enum": [
                "above",
                "below"
              ]
            },
            "showButton": {
              "type": "boolean"
            },
            "buttonText": {
              "type": "string",
              "maxLength": 36
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "showAttachments": {
              "type": "boolean"
            },
            "attachments": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "size": {
                    "type": "string",
                    "maxLength": 20
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "pdf",
                      "image",
                      "document",
                      "archive"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 4
            },
            "showQuote": {
              "type": "boolean"
            },
            "quoteName": {
              "type": "string",
              "maxLength": 80
            },
            "quoteDate": {
              "type": "string",
              "maxLength": 60
            },
            "quoteBody": {
              "type": "string",
              "maxLength": 1200
            },
            "fontSize": {
              "type": "number",
              "minimum": 12,
              "maximum": 22
            },
            "lineHeight": {
              "type": "number",
              "minimum": 1.2,
              "maximum": 2
            },
            "bold": {
              "type": "boolean"
            },
            "align": {
              "type": "string",
              "enum": [
                "left",
                "center"
              ]
            },
            "showToolbar": {
              "type": "boolean"
            },
            "showMailbox": {
              "type": "boolean"
            },
            "showDetails": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "clock": {
              "type": "string",
              "maxLength": 8
            },
            "starred": {
              "type": "boolean"
            },
            "important": {
              "type": "boolean"
            },
            "showFolder": {
              "type": "boolean"
            },
            "folderLabel": {
              "type": "string",
              "maxLength": 24
            },
            "accountName": {
              "type": "string",
              "maxLength": 40
            },
            "unreadCount": {
              "type": "number",
              "minimum": 0,
              "maximum": 9999
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 28
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "linkedin-profile-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string",
              "maxLength": 70
            },
            "pronouns": {
              "type": "string",
              "maxLength": 30
            },
            "headline": {
              "type": "string",
              "maxLength": 220
            },
            "location": {
              "type": "string",
              "maxLength": 100
            },
            "company": {
              "type": "string",
              "maxLength": 80
            },
            "education": {
              "type": "string",
              "maxLength": 100
            },
            "followers": {
              "type": "string",
              "maxLength": 20
            },
            "connections": {
              "type": "string",
              "maxLength": 20
            },
            "connection": {
              "type": "string",
              "enum": [
                "none",
                "1st",
                "2nd",
                "3rd+"
              ]
            },
            "verified": {
              "type": "boolean"
            },
            "premium": {
              "type": "boolean"
            },
            "avatar": {
              "type": "string"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "avatarCropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "avatarCropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "avatarZoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "avatarWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "avatarHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "photoFrame": {
              "type": "string",
              "enum": [
                "none",
                "open",
                "hiring"
              ]
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "coverStyle": {
              "type": "string",
              "enum": [
                "graphic",
                "solid",
                "photo"
              ]
            },
            "coverTitle": {
              "type": "string",
              "maxLength": 100
            },
            "coverSubtitle": {
              "type": "string",
              "maxLength": 120
            },
            "coverColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "coverAccent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "coverTextColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "showCoverText": {
              "type": "boolean"
            },
            "website": {
              "type": "string",
              "maxLength": 100
            },
            "websiteLabel": {
              "type": "string",
              "maxLength": 40
            },
            "showWebsite": {
              "type": "boolean"
            },
            "showFollowers": {
              "type": "boolean"
            },
            "showConnections": {
              "type": "boolean"
            },
            "showContact": {
              "type": "boolean"
            },
            "primaryAction": {
              "type": "string",
              "enum": [
                "Connect",
                "Follow",
                "Message"
              ]
            },
            "secondaryAction": {
              "type": "string",
              "enum": [
                "Message",
                "Follow",
                "Connect",
                "None"
              ]
            },
            "showActions": {
              "type": "boolean"
            },
            "availability": {
              "type": "string",
              "enum": [
                "none",
                "services",
                "work",
                "hiring"
              ]
            },
            "availabilityTitle": {
              "type": "string",
              "maxLength": 80
            },
            "availabilityText": {
              "type": "string",
              "maxLength": 180
            },
            "about": {
              "type": "string",
              "maxLength": 2000
            },
            "showAbout": {
              "type": "boolean"
            },
            "showFeatured": {
              "type": "boolean"
            },
            "featured": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "maxLength": 64,
                    "pattern": "^[A-Za-z0-9_-]+$"
                  },
                  "title": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 180
                  },
                  "color": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "Link",
                      "Post",
                      "Document"
                    ]
                  },
                  "image": {
                    "type": "string"
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 3
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 3
            },
            "showExperience": {
              "type": "boolean"
            },
            "experience": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "maxLength": 64,
                    "pattern": "^[A-Za-z0-9_-]+$"
                  },
                  "title": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "company": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "employment": {
                    "type": "string",
                    "maxLength": 40
                  },
                  "dates": {
                    "type": "string",
                    "maxLength": 80
                  },
                  "location": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "color": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 4
            },
            "showEducation": {
              "type": "boolean"
            },
            "school": {
              "type": "string",
              "maxLength": 100
            },
            "degree": {
              "type": "string",
              "maxLength": 140
            },
            "educationDates": {
              "type": "string",
              "maxLength": 60
            },
            "showSkills": {
              "type": "boolean"
            },
            "skills": {
              "type": "string",
              "maxLength": 400
            },
            "showServices": {
              "type": "boolean"
            },
            "services": {
              "type": "string",
              "maxLength": 240
            },
            "layout": {
              "type": "string",
              "enum": [
                "profile",
                "intro"
              ]
            },
            "showChrome": {
              "type": "boolean"
            },
            "showSidebar": {
              "type": "boolean"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "clock": {
              "type": "string",
              "maxLength": 8
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "shadow": {
              "type": "boolean"
            },
            "fontSize": {
              "type": "number",
              "minimum": 12,
              "maximum": 18
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "instagram-profile-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "username": {
              "type": "string",
              "maxLength": 30
            },
            "name": {
              "type": "string",
              "maxLength": 64
            },
            "category": {
              "type": "string",
              "maxLength": 40
            },
            "bio": {
              "type": "string",
              "maxLength": 300
            },
            "website": {
              "type": "string",
              "maxLength": 100
            },
            "followers": {
              "type": "string",
              "maxLength": 20
            },
            "following": {
              "type": "string",
              "maxLength": 20
            },
            "postCount": {
              "type": "string",
              "maxLength": 20
            },
            "verified": {
              "type": "boolean"
            },
            "storyRing": {
              "type": "boolean"
            },
            "avatar": {
              "type": "string"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "avatarWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "avatarHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "avatarCropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "avatarCropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "avatarZoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "showCategory": {
              "type": "boolean"
            },
            "showWebsite": {
              "type": "boolean"
            },
            "showFollowedBy": {
              "type": "boolean"
            },
            "followedBy": {
              "type": "string",
              "maxLength": 100
            },
            "showActions": {
              "type": "boolean"
            },
            "primaryAction": {
              "type": "string",
              "enum": [
                "Follow",
                "Following",
                "Edit profile"
              ]
            },
            "secondaryAction": {
              "type": "string",
              "enum": [
                "Message",
                "Share profile",
                "None"
              ]
            },
            "showContact": {
              "type": "boolean"
            },
            "contactLabel": {
              "type": "string",
              "enum": [
                "Email",
                "Contact",
                "Book now"
              ]
            },
            "showHighlights": {
              "type": "boolean"
            },
            "highlights": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9_-]{1,64}$"
                  },
                  "sample": {
                    "type": "string",
                    "enum": [
                      "",
                      "skincare",
                      "coffee",
                      "pour",
                      "iced",
                      "cove",
                      "coast",
                      "cabin",
                      "pottery",
                      "ceramics",
                      "moodboard",
                      "flowers",
                      "florist",
                      "sneaker",
                      "movement",
                      "desk",
                      "team"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "maxLength": 20
                  },
                  "image": {
                    "type": "string"
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 3
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "photo",
                      "carousel",
                      "reel"
                    ]
                  },
                  "pinned": {
                    "type": "boolean"
                  },
                  "color": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 6
            },
            "posts": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9_-]{1,64}$"
                  },
                  "sample": {
                    "type": "string",
                    "enum": [
                      "",
                      "skincare",
                      "coffee",
                      "pour",
                      "iced",
                      "cove",
                      "coast",
                      "cabin",
                      "pottery",
                      "ceramics",
                      "moodboard",
                      "flowers",
                      "florist",
                      "sneaker",
                      "movement",
                      "desk",
                      "team"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "maxLength": 80
                  },
                  "image": {
                    "type": "string"
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 3
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "photo",
                      "carousel",
                      "reel"
                    ]
                  },
                  "pinned": {
                    "type": "boolean"
                  },
                  "color": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 12
            },
            "activePost": {
              "type": "string"
            },
            "activeHighlight": {
              "type": "string"
            },
            "layout": {
              "type": "string",
              "enum": [
                "profile",
                "header"
              ]
            },
            "gridRatio": {
              "type": "string",
              "enum": [
                "square",
                "portrait"
              ]
            },
            "gridGap": {
              "type": "number",
              "minimum": 0,
              "maximum": 12
            },
            "showTabs": {
              "type": "boolean"
            },
            "activeTab": {
              "type": "string",
              "enum": [
                "grid",
                "reels",
                "tagged"
              ]
            },
            "showChrome": {
              "type": "boolean"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "showBottomNav": {
              "type": "boolean"
            },
            "clock": {
              "type": "string",
              "maxLength": 8
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "preset": {
                  "type": "string",
                  "enum": [
                    "tour",
                    "reveal"
                  ]
                },
                "duration": {
                  "type": "number",
                  "minimum": 6,
                  "maximum": 30
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 0.5,
                  "maximum": 5
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "autoFrame": {
                  "type": "boolean"
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                },
                "loop": {
                  "type": "boolean"
                },
                "returnToStart": {
                  "type": "boolean"
                },
                "direction": {
                  "type": "string",
                  "enum": [
                    "down",
                    "up"
                  ]
                },
                "scroll": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100
                },
                "order": {
                  "type": "string",
                  "enum": [
                    "rows",
                    "columns",
                    "center"
                  ]
                },
                "profileScale": {
                  "type": "number",
                  "minimum": 55,
                  "maximum": 115
                },
                "position": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 100
                }
              },
              "additionalProperties": false
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "shadow": {
              "type": "boolean"
            },
            "fontSize": {
              "type": "number",
              "minimum": 12,
              "maximum": 18
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "reddit-post-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "community": {
              "type": "string",
              "maxLength": 40
            },
            "author": {
              "type": "string",
              "maxLength": 40
            },
            "avatar": {
              "type": "string"
            },
            "communityColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "time": {
              "type": "string",
              "maxLength": 25
            },
            "showAuthor": {
              "type": "boolean"
            },
            "showHeader": {
              "type": "boolean"
            },
            "showJoin": {
              "type": "boolean"
            },
            "title": {
              "type": "string",
              "maxLength": 300
            },
            "text": {
              "type": "string",
              "maxLength": 3000
            },
            "type": {
              "type": "string",
              "enum": [
                "text",
                "image",
                "link",
                "poll"
              ]
            },
            "flair": {
              "type": "string",
              "maxLength": 40
            },
            "flairColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "flairTextColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "spoiler": {
              "type": "boolean"
            },
            "nsfw": {
              "type": "boolean"
            },
            "pinned": {
              "type": "boolean"
            },
            "locked": {
              "type": "boolean"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "ratio": {
              "type": "string",
              "enum": [
                "landscape",
                "square",
                "portrait",
                "original"
              ]
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "domain": {
              "type": "string",
              "maxLength": 100
            },
            "linkTitle": {
              "type": "string",
              "maxLength": 140
            },
            "votes": {
              "type": "string",
              "maxLength": 10
            },
            "commentCount": {
              "type": "string",
              "maxLength": 10
            },
            "vote": {
              "type": "string",
              "enum": [
                "none",
                "up",
                "down"
              ]
            },
            "saved": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "showComments": {
              "type": "boolean"
            },
            "sort": {
              "type": "string",
              "enum": [
                "Best",
                "Top",
                "New",
                "Controversial",
                "Old"
              ]
            },
            "comments": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "maxLength": 64,
                    "pattern": "^[A-Za-z0-9_-]+$"
                  },
                  "parentId": {
                    "type": "string",
                    "maxLength": 64
                  },
                  "name": {
                    "type": "string",
                    "maxLength": 40
                  },
                  "text": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "time": {
                    "type": "string",
                    "maxLength": 25
                  },
                  "votes": {
                    "type": "string",
                    "maxLength": 10
                  },
                  "vote": {
                    "type": "string",
                    "enum": [
                      "none",
                      "up",
                      "down"
                    ]
                  },
                  "op": {
                    "type": "boolean"
                  },
                  "avatarColor": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 8
            },
            "pollOptions": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9_-]{1,64}$"
                  },
                  "label": {
                    "type": "string",
                    "maxLength": 90
                  },
                  "votes": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 10000000
                  }
                },
                "additionalProperties": false
              },
              "minItems": 2,
              "maxItems": 6
            },
            "pollResults": {
              "type": "boolean"
            },
            "pollSelected": {
              "type": "string"
            },
            "pollTime": {
              "type": "string",
              "maxLength": 30
            },
            "titleSize": {
              "type": "number",
              "minimum": 18,
              "maximum": 32
            },
            "fontSize": {
              "type": "number",
              "minimum": 12,
              "maximum": 24
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 28
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "ios-notes-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "title": {
              "type": "string",
              "maxLength": 200
            },
            "blocks": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9_-]{1,64}$"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "text",
                      "heading",
                      "checklist",
                      "bullet",
                      "numbered",
                      "quote"
                    ]
                  },
                  "text": {
                    "type": "string",
                    "maxLength": 1000
                  },
                  "bold": {
                    "type": "boolean"
                  },
                  "italic": {
                    "type": "boolean"
                  },
                  "underline": {
                    "type": "boolean"
                  },
                  "checked": {
                    "type": "boolean"
                  },
                  "highlight": {
                    "type": "string",
                    "enum": [
                      "none",
                      "yellow",
                      "pink",
                      "purple",
                      "blue",
                      "green"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 16
            },
            "date": {
              "type": "string",
              "maxLength": 70
            },
            "folder": {
              "type": "string",
              "maxLength": 30
            },
            "clock": {
              "type": "string",
              "maxLength": 8
            },
            "battery": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "network": {
              "type": "string",
              "enum": [
                "wifi",
                "5G",
                "LTE",
                "none"
              ]
            },
            "showDate": {
              "type": "boolean"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "showNavigation": {
              "type": "boolean"
            },
            "showToolbar": {
              "type": "boolean"
            },
            "showHomeIndicator": {
              "type": "boolean"
            },
            "layout": {
              "type": "string",
              "enum": [
                "screen",
                "note"
              ]
            },
            "heightMode": {
              "type": "string",
              "enum": [
                "content",
                "tall"
              ]
            },
            "paper": {
              "type": "string",
              "enum": [
                "plain",
                "warm",
                "ruled",
                "grid"
              ]
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "fontSize": {
              "type": "number",
              "minimum": 14,
              "maximum": 32
            },
            "titleSize": {
              "type": "number",
              "minimum": 22,
              "maximum": 44
            },
            "lineHeight": {
              "type": "number",
              "minimum": 1.15,
              "maximum": 1.85
            },
            "blockGap": {
              "type": "number",
              "minimum": 4,
              "maximum": 40
            },
            "align": {
              "type": "string",
              "enum": [
                "left",
                "center",
                "right"
              ]
            },
            "titleBold": {
              "type": "boolean"
            },
            "showImage": {
              "type": "boolean"
            },
            "image": {
              "type": "string"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imagePlacement": {
              "type": "string",
              "enum": [
                "top",
                "bottom"
              ]
            },
            "imageHeightPx": {
              "type": "number",
              "minimum": 100,
              "maximum": 480
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 36
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "cursor": {
                  "type": "boolean"
                },
                "animateTitle": {
                  "type": "boolean"
                },
                "checkOff": {
                  "type": "boolean"
                },
                "loop": {
                  "type": "boolean"
                },
                "speed": {
                  "type": "number",
                  "minimum": 8,
                  "maximum": 60
                },
                "delay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 3
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 8
                },
                "style": {
                  "type": "string",
                  "enum": [
                    "typing",
                    "lines",
                    "paragraphs"
                  ]
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "code-snippet-image-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "code": {
              "type": "string",
              "maxLength": 12000
            },
            "language": {
              "type": "string",
              "enum": [
                "javascript",
                "typescript",
                "jsx",
                "tsx",
                "python",
                "markup",
                "css",
                "json",
                "bash",
                "sql",
                "yaml",
                "go",
                "rust",
                "c",
                "cpp",
                "csharp",
                "java",
                "kotlin",
                "swift",
                "php",
                "ruby",
                "markdown",
                "diff",
                "docker",
                "plain"
              ]
            },
            "filename": {
              "type": "string",
              "maxLength": 80
            },
            "caption": {
              "type": "string",
              "maxLength": 120
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "style": {
              "type": "string",
              "enum": [
                "window",
                "editor",
                "terminal",
                "minimal"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "midnight",
                "graphite",
                "ocean",
                "plum",
                "paper",
                "daylight"
              ]
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "gradient",
                "solid"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "gradientAngle": {
              "type": "number",
              "minimum": 0,
              "maximum": 360
            },
            "width": {
              "type": "number",
              "minimum": 360,
              "maximum": 1200
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 120
            },
            "innerPadding": {
              "type": "number",
              "minimum": 16,
              "maximum": 64
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 32
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "fontSize": {
              "type": "number",
              "minimum": 12,
              "maximum": 28
            },
            "lineHeight": {
              "type": "number",
              "minimum": 1.2,
              "maximum": 2
            },
            "tabSize": {
              "type": "number",
              "enum": [
                2,
                4,
                8
              ]
            },
            "lineNumbers": {
              "type": "boolean"
            },
            "startLine": {
              "type": "number",
              "minimum": 1,
              "maximum": 9999
            },
            "highlightLines": {
              "type": "string",
              "maxLength": 200
            },
            "dimOthers": {
              "type": "boolean"
            },
            "wrap": {
              "type": "boolean"
            },
            "showLanguage": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "cursor": {
                  "type": "boolean"
                },
                "loop": {
                  "type": "boolean"
                },
                "speed": {
                  "type": "number",
                  "minimum": 8,
                  "maximum": 60
                },
                "delay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 3
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 8
                },
                "style": {
                  "type": "string",
                  "enum": [
                    "typing",
                    "lines",
                    "paragraphs"
                  ]
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "notepad-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "filename": {
              "type": "string",
              "maxLength": 80
            },
            "text": {
              "type": "string",
              "maxLength": 5000
            },
            "style": {
              "type": "string",
              "enum": [
                "classic",
                "xp",
                "custom"
              ]
            },
            "font": {
              "type": "string",
              "enum": [
                "retro",
                "courier",
                "sans"
              ]
            },
            "fontSize": {
              "type": "number",
              "minimum": 14,
              "maximum": 48
            },
            "lineHeight": {
              "type": "number",
              "minimum": 1.05,
              "maximum": 2
            },
            "bold": {
              "type": "boolean"
            },
            "italic": {
              "type": "boolean"
            },
            "align": {
              "type": "string",
              "enum": [
                "left",
                "center",
                "right"
              ]
            },
            "textColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "paper": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "titleColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "showMenu": {
              "type": "boolean"
            },
            "showStatus": {
              "type": "boolean"
            },
            "showScrollbars": {
              "type": "boolean"
            },
            "showIcon": {
              "type": "boolean"
            },
            "width": {
              "type": "number",
              "minimum": 320,
              "maximum": 1200
            },
            "minHeight": {
              "type": "number",
              "minimum": 180,
              "maximum": 1000
            },
            "innerPadding": {
              "type": "number",
              "minimum": 8,
              "maximum": 72
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 120
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "cursor": {
                  "type": "boolean"
                },
                "loop": {
                  "type": "boolean"
                },
                "speed": {
                  "type": "number",
                  "minimum": 8,
                  "maximum": 60
                },
                "delay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 3
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 8
                },
                "style": {
                  "type": "string",
                  "enum": [
                    "typing",
                    "lines",
                    "paragraphs"
                  ]
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                },
                "windowHeight": {
                  "type": "number",
                  "minimum": 50,
                  "maximum": 100
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "error-message-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "style": {
              "type": "string",
              "enum": [
                "classic",
                "xp",
                "ios",
                "ios-dark"
              ]
            },
            "windowTitle": {
              "type": "string",
              "maxLength": 80
            },
            "title": {
              "type": "string",
              "maxLength": 120
            },
            "message": {
              "type": "string",
              "maxLength": 1000
            },
            "icon": {
              "type": "string",
              "enum": [
                "error",
                "warning",
                "info",
                "question",
                "success",
                "none"
              ]
            },
            "showIOSIcon": {
              "type": "boolean"
            },
            "showClose": {
              "type": "boolean"
            },
            "buttons": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9_-]{1,64}$"
                  },
                  "label": {
                    "type": "string",
                    "maxLength": 40
                  },
                  "kind": {
                    "type": "string",
                    "enum": [
                      "default",
                      "normal",
                      "destructive",
                      "disabled"
                    ]
                  }
                },
                "additionalProperties": false
              },
              "minItems": 1,
              "maxItems": 3
            },
            "buttonLayout": {
              "type": "string",
              "enum": [
                "auto",
                "horizontal",
                "vertical"
              ]
            },
            "buttonAlign": {
              "type": "string",
              "enum": [
                "left",
                "center",
                "right"
              ]
            },
            "showFocus": {
              "type": "boolean"
            },
            "width": {
              "type": "number",
              "minimum": 260,
              "maximum": 900
            },
            "fontSize": {
              "type": "number",
              "minimum": 11,
              "maximum": 26
            },
            "titleSize": {
              "type": "number",
              "minimum": 14,
              "maximum": 32
            },
            "lineHeight": {
              "type": "number",
              "minimum": 1.1,
              "maximum": 1.9
            },
            "contentPadding": {
              "type": "number",
              "minimum": 16,
              "maximum": 56
            },
            "panelColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "textColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "iosContext": {
              "type": "string",
              "enum": [
                "dialog",
                "phone"
              ]
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "clock": {
              "type": "string",
              "maxLength": 8
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 160
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "notification-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "platform": {
              "type": "string",
              "enum": [
                "ios",
                "android"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "presentation": {
              "type": "string",
              "enum": [
                "cards",
                "lockscreen"
              ]
            },
            "notifications": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9_-]{1,64}$"
                  },
                  "appName": {
                    "type": "string",
                    "maxLength": 40
                  },
                  "title": {
                    "type": "string",
                    "maxLength": 120
                  },
                  "text": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "time": {
                    "type": "string",
                    "maxLength": 24
                  },
                  "icon": {
                    "type": "string",
                    "enum": [
                      "messages",
                      "mail",
                      "calendar",
                      "reminder",
                      "shop",
                      "heart",
                      "bell",
                      "custom"
                    ]
                  },
                  "iconColor": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  },
                  "iconImage": {
                    "type": "string",
                    "maxLength": 1800000,
                    "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
                  },
                  "image": {
                    "type": "string",
                    "maxLength": 1800000,
                    "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
                  },
                  "imageLayout": {
                    "type": "string",
                    "enum": [
                      "thumbnail",
                      "large"
                    ]
                  },
                  "expanded": {
                    "type": "boolean"
                  },
                  "showActions": {
                    "type": "boolean"
                  },
                  "action1": {
                    "type": "string",
                    "maxLength": 30
                  },
                  "action2": {
                    "type": "string",
                    "maxLength": 30
                  }
                },
                "additionalProperties": false
              },
              "minItems": 1,
              "maxItems": 5
            },
            "width": {
              "type": "number",
              "minimum": 300,
              "maximum": 640
            },
            "fontSize": {
              "type": "number",
              "minimum": 12,
              "maximum": 24
            },
            "titleSize": {
              "type": "number",
              "minimum": 13,
              "maximum": 28
            },
            "lineHeight": {
              "type": "number",
              "minimum": 1.1,
              "maximum": 1.8
            },
            "cardPadding": {
              "type": "number",
              "minimum": 12,
              "maximum": 28
            },
            "gap": {
              "type": "number",
              "minimum": 4,
              "maximum": 32
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 32
            },
            "panelColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "textColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "panelOpacity": {
              "type": "number",
              "minimum": 0.65,
              "maximum": 1
            },
            "showAppName": {
              "type": "boolean"
            },
            "showTime": {
              "type": "boolean"
            },
            "clock": {
              "type": "string",
              "maxLength": 8
            },
            "date": {
              "type": "string",
              "maxLength": 50
            },
            "showClock": {
              "type": "boolean"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "showShortcuts": {
              "type": "boolean"
            },
            "position": {
              "type": "string",
              "enum": [
                "top",
                "center",
                "bottom"
              ]
            },
            "wallpaper": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 160
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "transition": {
                  "type": "string",
                  "enum": [
                    "slide",
                    "pop",
                    "fade",
                    "none"
                  ]
                },
                "delay": {
                  "type": "number",
                  "minimum": 0.3,
                  "maximum": 5
                },
                "adaptive": {
                  "type": "boolean"
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 8
                },
                "order": {
                  "type": "string",
                  "enum": [
                    "newest-first",
                    "in-order"
                  ]
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                },
                "loop": {
                  "type": "boolean"
                },
                "delays": {
                  "type": "array",
                  "maxItems": 5,
                  "items": {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id",
                      "seconds"
                    ],
                    "properties": {
                      "id": {
                        "type": "string",
                        "pattern": "^[A-Za-z0-9_-]{1,64}$"
                      },
                      "seconds": {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 12
                      }
                    }
                  }
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "call-screen-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "platform": {
              "type": "string",
              "enum": [
                "ios",
                "android"
              ]
            },
            "callState": {
              "type": "string",
              "enum": [
                "incoming",
                "outgoing",
                "active",
                "ended"
              ]
            },
            "answerStyle": {
              "type": "string",
              "enum": [
                "buttons",
                "slider"
              ]
            },
            "callerName": {
              "type": "string",
              "maxLength": 80
            },
            "contactLabel": {
              "type": "string",
              "maxLength": 40
            },
            "phoneNumber": {
              "type": "string",
              "maxLength": 36
            },
            "status": {
              "type": "string",
              "maxLength": 60
            },
            "duration": {
              "type": "string",
              "maxLength": 12
            },
            "clock": {
              "type": "string",
              "maxLength": 8
            },
            "acceptLabel": {
              "type": "string",
              "maxLength": 18
            },
            "declineLabel": {
              "type": "string",
              "maxLength": 18
            },
            "slideLabel": {
              "type": "string",
              "maxLength": 32
            },
            "nameSize": {
              "type": "number",
              "minimum": 24,
              "maximum": 48
            },
            "detailSize": {
              "type": "number",
              "minimum": 13,
              "maximum": 24
            },
            "photo": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "photoMode": {
              "type": "string",
              "enum": [
                "initials",
                "avatar",
                "poster",
                "none"
              ]
            },
            "photoWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4000
            },
            "photoHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4000
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "photoShade": {
              "type": "number",
              "minimum": 0,
              "maximum": 0.8
            },
            "screenColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "screenEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "textColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "showHomeIndicator": {
              "type": "boolean"
            },
            "showExtras": {
              "type": "boolean"
            },
            "showControls": {
              "type": "boolean"
            },
            "muted": {
              "type": "boolean"
            },
            "speaker": {
              "type": "boolean"
            },
            "battery": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 200
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 52
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "text-selection-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "text": {
              "type": "string",
              "maxLength": 1400
            },
            "title": {
              "type": "string",
              "maxLength": 140
            },
            "caption": {
              "type": "string",
              "maxLength": 100
            },
            "selectionStart": {
              "type": "integer",
              "minimum": 0,
              "maximum": 1400
            },
            "selectionEnd": {
              "type": "integer",
              "minimum": 0,
              "maximum": 1400
            },
            "style": {
              "type": "string",
              "enum": [
                "ios",
                "android",
                "classic"
              ]
            },
            "font": {
              "type": "string",
              "enum": [
                "sans",
                "serif",
                "mono"
              ]
            },
            "fontSize": {
              "type": "number",
              "minimum": 16,
              "maximum": 72
            },
            "titleSize": {
              "type": "number",
              "minimum": 20,
              "maximum": 64
            },
            "lineHeight": {
              "type": "number",
              "minimum": 1.15,
              "maximum": 1.8
            },
            "bold": {
              "type": "boolean"
            },
            "italic": {
              "type": "boolean"
            },
            "align": {
              "type": "string",
              "enum": [
                "left",
                "center",
                "right"
              ]
            },
            "width": {
              "type": "number",
              "minimum": 320,
              "maximum": 960
            },
            "innerPadding": {
              "type": "number",
              "minimum": 20,
              "maximum": 80
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 120
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 40
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "paper": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "textColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "selectionOpacity": {
              "type": "number",
              "minimum": 0.08,
              "maximum": 0.65
            },
            "menuColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "menuText": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "showMenu": {
              "type": "boolean"
            },
            "showHandles": {
              "type": "boolean"
            },
            "menuPosition": {
              "type": "string",
              "enum": [
                "above",
                "below"
              ]
            },
            "menuItem1": {
              "type": "string",
              "maxLength": 18
            },
            "menuItem2": {
              "type": "string",
              "maxLength": 18
            },
            "menuItem3": {
              "type": "string",
              "maxLength": 18
            },
            "showMore": {
              "type": "boolean"
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "style": {
                  "type": "string",
                  "enum": [
                    "drag",
                    "words",
                    "fade"
                  ]
                },
                "duration": {
                  "type": "number",
                  "minimum": 0.5,
                  "maximum": 8
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 8
                },
                "delay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 2
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                },
                "loop": {
                  "type": "boolean"
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "email-signature-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "layout": {
              "type": "string",
              "enum": [
                "classic",
                "stacked",
                "minimal",
                "card"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "desktop",
                "mobile"
              ]
            },
            "context": {
              "type": "string",
              "enum": [
                "signature",
                "email"
              ]
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "wide"
              ]
            },
            "font": {
              "type": "string",
              "enum": [
                "sans",
                "serif",
                "mono"
              ]
            },
            "fullName": {
              "type": "string",
              "maxLength": 80
            },
            "jobTitle": {
              "type": "string",
              "maxLength": 100
            },
            "company": {
              "type": "string",
              "maxLength": 80
            },
            "pronouns": {
              "type": "string",
              "maxLength": 40
            },
            "email": {
              "type": "string",
              "maxLength": 120
            },
            "phone": {
              "type": "string",
              "maxLength": 60
            },
            "website": {
              "type": "string",
              "maxLength": 140
            },
            "address": {
              "type": "string",
              "maxLength": 180
            },
            "signoff": {
              "type": "string",
              "maxLength": 60
            },
            "tagline": {
              "type": "string",
              "maxLength": 180
            },
            "linkedin": {
              "type": "string",
              "maxLength": 160
            },
            "instagram": {
              "type": "string",
              "maxLength": 160
            },
            "x": {
              "type": "string",
              "maxLength": 160
            },
            "showSocials": {
              "type": "boolean"
            },
            "showContactIcons": {
              "type": "boolean"
            },
            "photoMode": {
              "type": "string",
              "enum": [
                "initials",
                "photo",
                "none"
              ]
            },
            "photo": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(?:|data:image/(?:png|jpeg|webp);base64,[A-Za-z0-9+/=]+)$"
            },
            "photoWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "photoHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "photoShape": {
              "type": "string",
              "enum": [
                "circle",
                "rounded",
                "square"
              ]
            },
            "photoSize": {
              "type": "number",
              "minimum": 56,
              "maximum": 140
            },
            "logo": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(?:|data:image/(?:png|jpeg|webp);base64,[A-Za-z0-9+/=]+)$"
            },
            "logoWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "logoHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "showLogo": {
              "type": "boolean"
            },
            "logoSize": {
              "type": "number",
              "minimum": 40,
              "maximum": 150
            },
            "logoText": {
              "type": "string",
              "maxLength": 16
            },
            "showBanner": {
              "type": "boolean"
            },
            "bannerTitle": {
              "type": "string",
              "maxLength": 100
            },
            "bannerSubtitle": {
              "type": "string",
              "maxLength": 100
            },
            "bannerColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "bannerText": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "disclaimer": {
              "type": "string",
              "maxLength": 500
            },
            "emailBody": {
              "type": "string",
              "maxLength": 600
            },
            "nameSize": {
              "type": "number",
              "minimum": 18,
              "maximum": 38
            },
            "fontSize": {
              "type": "number",
              "minimum": 11,
              "maximum": 20
            },
            "lineHeight": {
              "type": "number",
              "minimum": 1.2,
              "maximum": 1.8
            },
            "width": {
              "type": "number",
              "minimum": 480,
              "maximum": 900
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 120
            },
            "innerPadding": {
              "type": "number",
              "minimum": 20,
              "maximum": 60
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 28
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "paper": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "textColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "mutedColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "pinterest-pin-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "title": {
              "type": "string",
              "maxLength": 100
            },
            "description": {
              "type": "string",
              "maxLength": 800
            },
            "name": {
              "type": "string",
              "maxLength": 60
            },
            "followers": {
              "type": "string",
              "maxLength": 24
            },
            "website": {
              "type": "string",
              "maxLength": 100
            },
            "board": {
              "type": "string",
              "maxLength": 40
            },
            "avatar": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "image": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "ratio": {
              "type": "string",
              "enum": [
                "portrait",
                "square",
                "tall",
                "wide",
                "original"
              ]
            },
            "view": {
              "type": "string",
              "enum": [
                "feed",
                "pin"
              ]
            },
            "pinType": {
              "type": "string",
              "enum": [
                "standard",
                "product"
              ]
            },
            "price": {
              "type": "string",
              "maxLength": 24
            },
            "availability": {
              "type": "string",
              "maxLength": 35
            },
            "promoted": {
              "type": "boolean"
            },
            "verified": {
              "type": "boolean"
            },
            "saved": {
              "type": "boolean"
            },
            "showHover": {
              "type": "boolean"
            },
            "showWebsite": {
              "type": "boolean"
            },
            "showDescription": {
              "type": "boolean"
            },
            "showFollow": {
              "type": "boolean"
            },
            "showEngagement": {
              "type": "boolean"
            },
            "liked": {
              "type": "boolean"
            },
            "likes": {
              "type": "string",
              "maxLength": 12
            },
            "commentCount": {
              "type": "string",
              "maxLength": 12
            },
            "titleSize": {
              "type": "number",
              "minimum": 18,
              "maximum": 36
            },
            "fontSize": {
              "type": "number",
              "minimum": 12,
              "maximum": 20
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 32
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "testimonial-card-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "quote": {
              "type": "string",
              "maxLength": 1200
            },
            "title": {
              "type": "string",
              "maxLength": 100
            },
            "name": {
              "type": "string",
              "maxLength": 60
            },
            "role": {
              "type": "string",
              "maxLength": 80
            },
            "company": {
              "type": "string",
              "maxLength": 60
            },
            "brand": {
              "type": "string",
              "maxLength": 50
            },
            "source": {
              "type": "string",
              "maxLength": 60
            },
            "date": {
              "type": "string",
              "maxLength": 40
            },
            "style": {
              "type": "string",
              "enum": [
                "classic",
                "editorial",
                "bold",
                "review",
                "photo"
              ]
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "font": {
              "type": "string",
              "enum": [
                "sans",
                "serif"
              ]
            },
            "align": {
              "type": "string",
              "enum": [
                "left",
                "center"
              ]
            },
            "rating": {
              "type": "number",
              "minimum": 0,
              "maximum": 5,
              "multipleOf": 0.5
            },
            "fontSize": {
              "type": "number",
              "minimum": 18,
              "maximum": 44
            },
            "lineHeight": {
              "type": "number",
              "minimum": 1.2,
              "maximum": 1.8
            },
            "cardPadding": {
              "type": "number",
              "minimum": 20,
              "maximum": 64
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 40
            },
            "showRating": {
              "type": "boolean"
            },
            "showPhoto": {
              "type": "boolean"
            },
            "showBrand": {
              "type": "boolean"
            },
            "showSource": {
              "type": "boolean"
            },
            "showDate": {
              "type": "boolean"
            },
            "showQuoteMark": {
              "type": "boolean"
            },
            "border": {
              "type": "boolean"
            },
            "shadow": {
              "type": "boolean"
            },
            "image": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "avatar": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "panelColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "textColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "mutedColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "starColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "transparent": {
              "type": "boolean"
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "app-store-listing-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string",
              "maxLength": 30
            },
            "subtitle": {
              "type": "string",
              "maxLength": 30
            },
            "developer": {
              "type": "string",
              "maxLength": 60
            },
            "category": {
              "type": "string",
              "maxLength": 30
            },
            "rank": {
              "type": "string",
              "maxLength": 12
            },
            "rating": {
              "type": "number",
              "minimum": 0,
              "maximum": 5
            },
            "ratingCount": {
              "type": "string",
              "maxLength": 20
            },
            "age": {
              "type": "string",
              "maxLength": 8
            },
            "language": {
              "type": "string",
              "maxLength": 8
            },
            "size": {
              "type": "string",
              "maxLength": 16
            },
            "button": {
              "type": "string",
              "enum": [
                "get",
                "open",
                "price"
              ]
            },
            "price": {
              "type": "string",
              "maxLength": 18
            },
            "inAppPurchases": {
              "type": "boolean"
            },
            "avatar": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "iconText": {
              "type": "string",
              "maxLength": 3
            },
            "iconColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "description": {
              "type": "string",
              "maxLength": 1200
            },
            "whatsNew": {
              "type": "string",
              "maxLength": 500
            },
            "appVersion": {
              "type": "string",
              "maxLength": 20
            },
            "updated": {
              "type": "string",
              "maxLength": 30
            },
            "reviewTitle": {
              "type": "string",
              "maxLength": 80
            },
            "reviewText": {
              "type": "string",
              "maxLength": 400
            },
            "reviewer": {
              "type": "string",
              "maxLength": 40
            },
            "reviewDate": {
              "type": "string",
              "maxLength": 30
            },
            "reviewRating": {
              "type": "number",
              "minimum": 0,
              "maximum": 5
            },
            "searchQuery": {
              "type": "string",
              "maxLength": 60
            },
            "time": {
              "type": "string",
              "maxLength": 8
            },
            "view": {
              "type": "string",
              "enum": [
                "product",
                "search"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "showNavigation": {
              "type": "boolean"
            },
            "showDescription": {
              "type": "boolean"
            },
            "showWhatsNew": {
              "type": "boolean"
            },
            "showReviews": {
              "type": "boolean"
            },
            "showInformation": {
              "type": "boolean"
            },
            "promoted": {
              "type": "boolean"
            },
            "screenshotShape": {
              "type": "string",
              "enum": [
                "portrait",
                "landscape"
              ]
            },
            "screenshotFit": {
              "type": "string",
              "enum": [
                "cover",
                "contain"
              ]
            },
            "activeScreenshot": {
              "type": "number",
              "minimum": 0,
              "maximum": 9
            },
            "screenshots": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9_-]{1,64}$"
                  },
                  "title": {
                    "type": "string",
                    "maxLength": 70
                  },
                  "caption": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "color": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  },
                  "style": {
                    "type": "string",
                    "enum": [
                      "focus",
                      "journal",
                      "fitness",
                      "finance",
                      "recipe",
                      "travel"
                    ]
                  },
                  "image": {
                    "type": "string",
                    "maxLength": 1800000,
                    "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 4096
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 4096
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 3
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 10
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 36
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "fontSize": {
              "type": "number",
              "minimum": 13,
              "maximum": 19
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "spotify-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "title": {
              "type": "string",
              "maxLength": 100
            },
            "artist": {
              "type": "string",
              "maxLength": 100
            },
            "album": {
              "type": "string",
              "maxLength": 100
            },
            "playlistName": {
              "type": "string",
              "maxLength": 100
            },
            "description": {
              "type": "string",
              "maxLength": 250
            },
            "owner": {
              "type": "string",
              "maxLength": 60
            },
            "saves": {
              "type": "string",
              "maxLength": 30
            },
            "context": {
              "type": "string",
              "maxLength": 100
            },
            "time": {
              "type": "string",
              "maxLength": 8
            },
            "view": {
              "type": "string",
              "enum": [
                "player",
                "playlist"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "dark",
                "light"
              ]
            },
            "image": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "coverStyle": {
              "type": "string",
              "enum": [
                "sunrise",
                "orbit",
                "waves"
              ]
            },
            "coverColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "tint": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 36
            },
            "fontSize": {
              "type": "number",
              "minimum": 13,
              "maximum": 20
            },
            "duration": {
              "type": "number",
              "minimum": 1,
              "maximum": 7200
            },
            "progress": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "playing": {
              "type": "boolean"
            },
            "liked": {
              "type": "boolean"
            },
            "shuffle": {
              "type": "boolean"
            },
            "repeat": {
              "type": "boolean"
            },
            "explicit": {
              "type": "boolean"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "showNavigation": {
              "type": "boolean"
            },
            "showBottomPlayer": {
              "type": "boolean"
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "activeTrack": {
              "type": "number",
              "minimum": 0,
              "maximum": 19
            },
            "tracks": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9_-]{1,64}$"
                  },
                  "title": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "artist": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "album": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "duration": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 7200
                  },
                  "explicit": {
                    "type": "boolean"
                  },
                  "color": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  },
                  "style": {
                    "type": "string",
                    "enum": [
                      "sunrise",
                      "orbit",
                      "waves"
                    ]
                  },
                  "image": {
                    "type": "string",
                    "maxLength": 1800000,
                    "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 20
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "linkedin-ad-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string",
              "maxLength": 80
            },
            "followers": {
              "type": "string",
              "maxLength": 18
            },
            "avatar": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "follow": {
              "type": "boolean"
            },
            "text": {
              "type": "string",
              "maxLength": 3000
            },
            "seeMore": {
              "type": "boolean"
            },
            "linkTitle": {
              "type": "string",
              "maxLength": 200
            },
            "domain": {
              "type": "string",
              "maxLength": 100
            },
            "cta": {
              "type": "string",
              "enum": [
                "None",
                "Learn more",
                "Download",
                "Sign up",
                "Register",
                "Subscribe",
                "Apply",
                "View quote",
                "Join",
                "Attend",
                "Request demo"
              ]
            },
            "image": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "ratio": {
              "type": "string",
              "enum": [
                "landscape",
                "square",
                "portrait"
              ]
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "creative": {
              "type": "string",
              "enum": [
                "campaign",
                "report",
                "event"
              ]
            },
            "eyebrow": {
              "type": "string",
              "maxLength": 45
            },
            "creativeTitle": {
              "type": "string",
              "maxLength": 100
            },
            "creativeFooter": {
              "type": "string",
              "maxLength": 70
            },
            "creativeBackground": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "creativeColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "reactionCount": {
              "type": "string",
              "maxLength": 16
            },
            "commentCount": {
              "type": "string",
              "maxLength": 12
            },
            "repostCount": {
              "type": "string",
              "maxLength": 12
            },
            "showCounts": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "liked": {
              "type": "boolean"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "instagram-ad-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "username": {
              "type": "string",
              "maxLength": 30,
              "pattern": "^[a-zA-Z0-9_.]*$"
            },
            "avatar": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "verified": {
              "type": "boolean"
            },
            "follow": {
              "type": "boolean"
            },
            "storyRing": {
              "type": "boolean"
            },
            "caption": {
              "type": "string",
              "maxLength": 2200
            },
            "truncate": {
              "type": "boolean"
            },
            "cta": {
              "type": "string",
              "enum": [
                "Shop now",
                "Learn more",
                "Sign up",
                "Book now",
                "Send message",
                "Download",
                "Get offer",
                "Contact us",
                "Subscribe",
                "Watch more",
                "Listen now",
                "Visit Instagram profile",
                "None"
              ]
            },
            "ctaStyle": {
              "type": "string",
              "enum": [
                "blue",
                "subtle"
              ]
            },
            "image": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "ratio": {
              "type": "string",
              "enum": [
                "square",
                "portrait",
                "landscape"
              ]
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "creative": {
              "type": "string",
              "enum": [
                "collection",
                "offer",
                "event"
              ]
            },
            "eyebrow": {
              "type": "string",
              "maxLength": 45
            },
            "creativeTitle": {
              "type": "string",
              "maxLength": 100
            },
            "creativeFooter": {
              "type": "string",
              "maxLength": 70
            },
            "creativeBackground": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "creativeColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "likeCount": {
              "type": "string",
              "maxLength": 18
            },
            "commentCount": {
              "type": "string",
              "maxLength": 12
            },
            "showLikes": {
              "type": "boolean"
            },
            "showComments": {
              "type": "boolean"
            },
            "showComment": {
              "type": "boolean"
            },
            "commentUsername": {
              "type": "string",
              "maxLength": 30,
              "pattern": "^[a-zA-Z0-9_.]*$"
            },
            "commentText": {
              "type": "string",
              "maxLength": 300
            },
            "time": {
              "type": "string",
              "maxLength": 30
            },
            "liked": {
              "type": "boolean"
            },
            "saved": {
              "type": "boolean"
            },
            "fontSize": {
              "type": "number",
              "minimum": 12,
              "maximum": 20
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "google-shopping-ad-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "view": {
              "type": "string",
              "enum": [
                "results",
                "single"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "query": {
              "type": "string",
              "maxLength": 100
            },
            "showSearch": {
              "type": "boolean"
            },
            "showShipping": {
              "type": "boolean"
            },
            "showRating": {
              "type": "boolean"
            },
            "showOffers": {
              "type": "boolean"
            },
            "selectedProduct": {
              "type": "string"
            },
            "products": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[a-zA-Z0-9_-]{1,60}$"
                  },
                  "title": {
                    "type": "string",
                    "maxLength": 150
                  },
                  "price": {
                    "type": "string",
                    "maxLength": 24
                  },
                  "originalPrice": {
                    "type": "string",
                    "maxLength": 24
                  },
                  "merchant": {
                    "type": "string",
                    "maxLength": 40
                  },
                  "rating": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 5
                  },
                  "reviews": {
                    "type": "string",
                    "maxLength": 12
                  },
                  "shipping": {
                    "type": "string",
                    "maxLength": 50
                  },
                  "badge": {
                    "type": "string",
                    "maxLength": 24
                  },
                  "showRating": {
                    "type": "boolean"
                  },
                  "image": {
                    "type": "string",
                    "maxLength": 1800000,
                    "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
                  },
                  "sample": {
                    "type": "string",
                    "enum": [
                      "",
                      "skincare",
                      "ceramics",
                      "sneaker"
                    ]
                  },
                  "fit": {
                    "type": "string",
                    "enum": [
                      "cover",
                      "contain"
                    ]
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 3
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 4096
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 4096
                  },
                  "imageBackground": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  }
                },
                "additionalProperties": false
              },
              "minItems": 1,
              "maxItems": 8
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "facebook-ad-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string",
              "maxLength": 60
            },
            "avatar": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "verified": {
              "type": "boolean"
            },
            "follow": {
              "type": "boolean"
            },
            "text": {
              "type": "string",
              "maxLength": 3000
            },
            "seeMore": {
              "type": "boolean"
            },
            "fontSize": {
              "type": "number",
              "minimum": 14,
              "maximum": 22
            },
            "domain": {
              "type": "string",
              "maxLength": 100
            },
            "headline": {
              "type": "string",
              "maxLength": 150
            },
            "description": {
              "type": "string",
              "maxLength": 180
            },
            "cta": {
              "type": "string",
              "enum": [
                "Shop now",
                "Learn more",
                "Sign up",
                "Book now",
                "Get offer",
                "Contact us",
                "Send message",
                "Download",
                "Subscribe",
                "Apply now",
                "Get quote",
                "Watch more",
                "Listen now",
                "None"
              ]
            },
            "ctaStyle": {
              "type": "string",
              "enum": [
                "subtle",
                "blue"
              ]
            },
            "showLink": {
              "type": "boolean"
            },
            "image": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "ratio": {
              "type": "string",
              "enum": [
                "square",
                "portrait",
                "landscape"
              ]
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "creative": {
              "type": "string",
              "enum": [
                "collection",
                "offer",
                "event"
              ]
            },
            "eyebrow": {
              "type": "string",
              "maxLength": 45
            },
            "creativeTitle": {
              "type": "string",
              "maxLength": 100
            },
            "creativeFooter": {
              "type": "string",
              "maxLength": 70
            },
            "creativeBackground": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "creativeColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "reactions": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "like",
                  "love",
                  "care",
                  "haha",
                  "wow",
                  "sad",
                  "angry"
                ]
              },
              "maxItems": 3,
              "uniqueItems": true
            },
            "reactionCount": {
              "type": "string",
              "maxLength": 16
            },
            "commentCount": {
              "type": "string",
              "maxLength": 12
            },
            "shareCount": {
              "type": "string",
              "maxLength": 12
            },
            "showCounts": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "liked": {
              "type": "boolean"
            },
            "showComment": {
              "type": "boolean"
            },
            "commentName": {
              "type": "string",
              "maxLength": 50
            },
            "commentText": {
              "type": "string",
              "maxLength": 350
            },
            "commentTime": {
              "type": "string",
              "maxLength": 25
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "snapchat-ad-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "name": {
              "type": "string",
              "maxLength": 25
            },
            "headline": {
              "type": "string",
              "maxLength": 34
            },
            "avatar": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "showAvatar": {
              "type": "boolean"
            },
            "image": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "creative": {
              "type": "string",
              "enum": [
                "collection",
                "offer",
                "event"
              ]
            },
            "creativeBackground": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "showText": {
              "type": "boolean"
            },
            "eyebrow": {
              "type": "string",
              "maxLength": 45
            },
            "text": {
              "type": "string",
              "maxLength": 140
            },
            "footer": {
              "type": "string",
              "maxLength": 80
            },
            "fontSize": {
              "type": "number",
              "minimum": 24,
              "maximum": 64
            },
            "textPosition": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "align": {
              "type": "string",
              "enum": [
                "left",
                "center",
                "right"
              ]
            },
            "textColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "bold": {
              "type": "boolean"
            },
            "shade": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "view": {
              "type": "string",
              "enum": [
                "ad",
                "creative"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "cta": {
              "type": "string",
              "enum": [
                "Shop Now",
                "Learn More",
                "Sign Up",
                "Book Now",
                "Install Now",
                "Download",
                "Watch",
                "Listen",
                "Apply Now",
                "Order Now",
                "Get Quote",
                "Subscribe",
                "None"
              ]
            },
            "ctaStyle": {
              "type": "string",
              "enum": [
                "white",
                "dark",
                "yellow"
              ]
            },
            "showDomain": {
              "type": "boolean"
            },
            "domain": {
              "type": "string",
              "maxLength": 60
            },
            "showProgress": {
              "type": "boolean"
            },
            "progress": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "muted": {
              "type": "boolean"
            },
            "showSound": {
              "type": "boolean"
            },
            "showGuides": {
              "type": "boolean"
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ],
              "const": "mobile"
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "youtube-thumbnail-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "title": {
              "type": "string",
              "maxLength": 100
            },
            "name": {
              "type": "string",
              "maxLength": 60
            },
            "avatar": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "verified": {
              "type": "boolean"
            },
            "viewCount": {
              "type": "string",
              "maxLength": 24
            },
            "published": {
              "type": "string",
              "maxLength": 40
            },
            "description": {
              "type": "string",
              "maxLength": 240
            },
            "search": {
              "type": "string",
              "maxLength": 100
            },
            "duration": {
              "type": "string"
            },
            "badge": {
              "type": "string",
              "enum": [
                "duration",
                "live",
                "upcoming",
                "none"
              ]
            },
            "showProgress": {
              "type": "boolean"
            },
            "progress": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "showHeader": {
              "type": "boolean"
            },
            "showAvatar": {
              "type": "boolean"
            },
            "showDescription": {
              "type": "boolean"
            },
            "titleSize": {
              "type": "number",
              "minimum": 14,
              "maximum": 24
            },
            "image": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(|data:image/(png|jpeg|webp);base64,[A-Za-z0-9+/]+=*)$"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "sample": {
              "type": "string",
              "enum": [
                "desk",
                "coast",
                "coffee",
                "ceramics"
              ]
            },
            "showOverlay": {
              "type": "boolean"
            },
            "overlayText": {
              "type": "string",
              "maxLength": 100
            },
            "overlaySize": {
              "type": "number",
              "minimum": 26,
              "maximum": 90
            },
            "overlayPosition": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "overlayAlign": {
              "type": "string",
              "enum": [
                "left",
                "center",
                "right"
              ]
            },
            "overlayColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "shade": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "view": {
              "type": "string",
              "enum": [
                "home",
                "search",
                "suggested",
                "thumbnail"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "shadow": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "tiktok-profile-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "username": {
              "type": "string",
              "maxLength": 24
            },
            "name": {
              "type": "string",
              "maxLength": 30
            },
            "bio": {
              "type": "string",
              "maxLength": 160
            },
            "website": {
              "type": "string",
              "maxLength": 100
            },
            "followers": {
              "type": "string",
              "maxLength": 20
            },
            "following": {
              "type": "string",
              "maxLength": 20
            },
            "likes": {
              "type": "string",
              "maxLength": 20
            },
            "verified": {
              "type": "boolean"
            },
            "avatar": {
              "type": "string"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "avatarWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "avatarHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "avatarCropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "avatarCropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "avatarZoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "showWebsite": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "primaryAction": {
              "type": "string",
              "enum": [
                "Follow",
                "Following",
                "Edit profile"
              ]
            },
            "secondaryAction": {
              "type": "string",
              "enum": [
                "Message",
                "Share profile",
                "None"
              ]
            },
            "posts": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9_-]{1,64}$"
                  },
                  "sample": {
                    "type": "string",
                    "enum": [
                      "",
                      "skincare",
                      "coffee",
                      "pour",
                      "iced",
                      "cove",
                      "coast",
                      "cabin",
                      "pottery",
                      "ceramics",
                      "moodboard",
                      "flowers",
                      "florist",
                      "sneaker",
                      "movement",
                      "desk",
                      "team"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "maxLength": 60
                  },
                  "image": {
                    "type": "string"
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 3
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "video",
                      "photo"
                    ]
                  },
                  "pinned": {
                    "type": "boolean"
                  },
                  "views": {
                    "type": "string",
                    "maxLength": 20
                  },
                  "color": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 12
            },
            "activePost": {
              "type": "string"
            },
            "layout": {
              "type": "string",
              "enum": [
                "profile",
                "header",
                "grid"
              ]
            },
            "gridRatio": {
              "type": "string",
              "enum": [
                "square",
                "portrait"
              ]
            },
            "gridGap": {
              "type": "number",
              "minimum": 0,
              "maximum": 12
            },
            "showCoverText": {
              "type": "boolean"
            },
            "coverSize": {
              "type": "number",
              "minimum": 12,
              "maximum": 28
            },
            "coverColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "showViews": {
              "type": "boolean"
            },
            "showTabs": {
              "type": "boolean"
            },
            "activeTab": {
              "type": "string",
              "enum": [
                "videos",
                "reposts",
                "liked"
              ]
            },
            "showChrome": {
              "type": "boolean"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "showBottomNav": {
              "type": "boolean"
            },
            "clock": {
              "type": "string",
              "maxLength": 8
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "shadow": {
              "type": "boolean"
            },
            "fontSize": {
              "type": "number",
              "minimum": 12,
              "maximum": 18
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "youtube-channel-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "username": {
              "type": "string",
              "maxLength": 30
            },
            "name": {
              "type": "string",
              "maxLength": 80
            },
            "bio": {
              "type": "string",
              "maxLength": 240
            },
            "website": {
              "type": "string",
              "maxLength": 100
            },
            "subscribers": {
              "type": "string",
              "maxLength": 20
            },
            "videoCount": {
              "type": "string",
              "maxLength": 20
            },
            "verified": {
              "type": "boolean"
            },
            "avatar": {
              "type": "string"
            },
            "avatarColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "avatarWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "avatarHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 1600
            },
            "avatarCropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "avatarCropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "avatarZoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "showWebsite": {
              "type": "boolean"
            },
            "showActions": {
              "type": "boolean"
            },
            "primaryAction": {
              "type": "string",
              "enum": [
                "Subscribe",
                "Subscribed",
                "Customize channel"
              ]
            },
            "showJoin": {
              "type": "boolean"
            },
            "posts": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9_-]{1,64}$"
                  },
                  "sample": {
                    "type": "string",
                    "enum": [
                      "",
                      "skincare",
                      "coffee",
                      "pour",
                      "iced",
                      "cove",
                      "coast",
                      "cabin",
                      "pottery",
                      "ceramics",
                      "moodboard",
                      "flowers",
                      "florist",
                      "sneaker",
                      "movement",
                      "desk",
                      "team"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "image": {
                    "type": "string"
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 3
                  },
                  "views": {
                    "type": "string",
                    "maxLength": 20
                  },
                  "published": {
                    "type": "string",
                    "maxLength": 30
                  },
                  "duration": {
                    "type": "string",
                    "maxLength": 12
                  },
                  "cover": {
                    "type": "string",
                    "maxLength": 60
                  },
                  "color": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 12
            },
            "activePost": {
              "type": "string"
            },
            "banners": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9_-]{1,64}$"
                  },
                  "sample": {
                    "type": "string",
                    "enum": [
                      "",
                      "skincare",
                      "coffee",
                      "pour",
                      "iced",
                      "cove",
                      "coast",
                      "cabin",
                      "pottery",
                      "ceramics",
                      "moodboard",
                      "flowers",
                      "florist",
                      "sneaker",
                      "movement",
                      "desk",
                      "team"
                    ]
                  },
                  "label": {
                    "type": "string",
                    "maxLength": 100
                  },
                  "image": {
                    "type": "string"
                  },
                  "imageWidth": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "imageHeight": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 1600
                  },
                  "cropX": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "cropY": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100
                  },
                  "zoom": {
                    "type": "number",
                    "minimum": 1,
                    "maximum": 3
                  },
                  "views": {
                    "type": "string",
                    "maxLength": 20
                  },
                  "published": {
                    "type": "string",
                    "maxLength": 30
                  },
                  "duration": {
                    "type": "string",
                    "maxLength": 12
                  },
                  "cover": {
                    "type": "string",
                    "maxLength": 60
                  },
                  "color": {
                    "type": "string",
                    "pattern": "^#[a-fA-F0-9]{6}$"
                  }
                },
                "additionalProperties": false
              },
              "maxItems": 1,
              "minItems": 1
            },
            "activeBanner": {
              "type": "string"
            },
            "showBanner": {
              "type": "boolean"
            },
            "showBannerText": {
              "type": "boolean"
            },
            "bannerTitle": {
              "type": "string",
              "maxLength": 70
            },
            "bannerSubtitle": {
              "type": "string",
              "maxLength": 100
            },
            "bannerShade": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "coverColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "layout": {
              "type": "string",
              "enum": [
                "profile",
                "header",
                "grid"
              ]
            },
            "videoLayout": {
              "type": "string",
              "enum": [
                "auto",
                "grid",
                "list"
              ]
            },
            "activeTab": {
              "type": "string",
              "enum": [
                "Home",
                "Videos"
              ]
            },
            "sort": {
              "type": "string",
              "enum": [
                "Latest",
                "Popular",
                "Oldest"
              ]
            },
            "showFeatured": {
              "type": "boolean"
            },
            "showCoverText": {
              "type": "boolean"
            },
            "coverSize": {
              "type": "number",
              "minimum": 16,
              "maximum": 38
            },
            "showViews": {
              "type": "boolean"
            },
            "showTabs": {
              "type": "boolean"
            },
            "showChrome": {
              "type": "boolean"
            },
            "showStatusBar": {
              "type": "boolean"
            },
            "showBottomNav": {
              "type": "boolean"
            },
            "clock": {
              "type": "string",
              "maxLength": 8
            },
            "device": {
              "type": "string",
              "enum": [
                "mobile",
                "desktop"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "transparent": {
              "type": "boolean"
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 80
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "shadow": {
              "type": "boolean"
            },
            "fontSize": {
              "type": "number",
              "minimum": 12,
              "maximum": 18
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "web-browser-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "browser": {
              "type": "string",
              "enum": [
                "chrome",
                "safari",
                "edge",
                "firefox",
                "minimal",
                "none"
              ]
            },
            "os": {
              "type": "string",
              "enum": [
                "mac",
                "windows"
              ]
            },
            "device": {
              "type": "string",
              "enum": [
                "desktop",
                "mobile"
              ]
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "viewport": {
              "type": "string",
              "enum": [
                "desktop",
                "laptop",
                "tablet",
                "mobile",
                "custom"
              ]
            },
            "viewportWidth": {
              "type": "number",
              "minimum": 320,
              "maximum": 1600
            },
            "viewportHeight": {
              "type": "number",
              "minimum": 180,
              "maximum": 1400
            },
            "title": {
              "type": "string",
              "maxLength": 100
            },
            "url": {
              "type": "string",
              "maxLength": 160
            },
            "secondTab": {
              "type": "string",
              "maxLength": 80
            },
            "showTabs": {
              "type": "boolean"
            },
            "showBookmarks": {
              "type": "boolean"
            },
            "bookmarks": {
              "type": "string",
              "maxLength": 140
            },
            "showAddress": {
              "type": "boolean"
            },
            "showBorder": {
              "type": "boolean"
            },
            "image": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(?:|data:image/(?:png|jpeg|webp);base64,[A-Za-z0-9+/=]+)$"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "sample": {
              "type": "string",
              "enum": [
                "studio",
                "dashboard",
                "portfolio",
                "mobile",
                "shop",
                "wellness",
                "wellness-mobile"
              ]
            },
            "imageFit": {
              "type": "string",
              "enum": [
                "cover",
                "contain"
              ]
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "pageColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "gradientAngle": {
              "type": "number",
              "minimum": 0,
              "maximum": 360
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 160
            },
            "windowScale": {
              "type": "number",
              "minimum": 45,
              "maximum": 100
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 28
            },
            "rotation": {
              "type": "number",
              "minimum": -10,
              "maximum": 10
            },
            "shadow": {
              "type": "boolean"
            },
            "shadowStrength": {
              "type": "number",
              "minimum": 0,
              "maximum": 45
            },
            "transparent": {
              "type": "boolean"
            },
            "fitPreview": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "license-plate-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "style": {
              "type": "string",
              "enum": [
                "us",
                "europe",
                "uk",
                "vintage",
                "minimal",
                "square"
              ]
            },
            "text": {
              "type": "string",
              "maxLength": 14
            },
            "header": {
              "type": "string",
              "maxLength": 32
            },
            "footer": {
              "type": "string",
              "maxLength": 48
            },
            "countryCode": {
              "type": "string",
              "maxLength": 3
            },
            "tagText": {
              "type": "string",
              "maxLength": 8
            },
            "showTag": {
              "type": "boolean"
            },
            "showBand": {
              "type": "boolean"
            },
            "ukSide": {
              "type": "string",
              "enum": [
                "front",
                "rear"
              ]
            },
            "lettering": {
              "type": "string",
              "enum": [
                "condensed",
                "block",
                "mono"
              ]
            },
            "fontSize": {
              "type": "number",
              "minimum": 90,
              "maximum": 270
            },
            "tracking": {
              "type": "number",
              "minimum": 0,
              "maximum": 24
            },
            "uppercase": {
              "type": "boolean"
            },
            "plateColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "textColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "accentColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "borderColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "bandColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "border": {
              "type": "boolean"
            },
            "emboss": {
              "type": "boolean"
            },
            "finish": {
              "type": "string",
              "enum": [
                "matte",
                "satin",
                "gloss"
              ]
            },
            "screws": {
              "type": "string",
              "enum": [
                "four",
                "two",
                "none"
              ]
            },
            "frame": {
              "type": "boolean"
            },
            "frameColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "shadow": {
              "type": "boolean"
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "gradientAngle": {
              "type": "number",
              "minimum": 0,
              "maximum": 360
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 200
            },
            "plateScale": {
              "type": "number",
              "minimum": 40,
              "maximum": 100
            },
            "transparent": {
              "type": "boolean"
            },
            "fitPreview": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "street-sign-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "style": {
              "type": "string",
              "enum": [
                "classic",
                "city",
                "london",
                "paris",
                "direction",
                "vintage",
                "baltic",
                "enamel",
                "nordic"
              ]
            },
            "text": {
              "type": "string",
              "maxLength": 42
            },
            "suffix": {
              "type": "string",
              "maxLength": 8
            },
            "district": {
              "type": "string",
              "maxLength": 42
            },
            "postcode": {
              "type": "string",
              "maxLength": 12
            },
            "subline": {
              "type": "string",
              "maxLength": 60
            },
            "blockNumber": {
              "type": "string",
              "maxLength": 8
            },
            "secondText": {
              "type": "string",
              "maxLength": 42
            },
            "secondSuffix": {
              "type": "string",
              "maxLength": 8
            },
            "showHouseNumber": {
              "type": "boolean"
            },
            "houseNumber": {
              "type": "string",
              "maxLength": 12
            },
            "secondHouseNumber": {
              "type": "string",
              "maxLength": 12
            },
            "numberPosition": {
              "type": "string",
              "enum": [
                "left",
                "right"
              ]
            },
            "numberGap": {
              "type": "number",
              "minimum": 0,
              "maximum": 40
            },
            "numberWidth": {
              "type": "number",
              "minimum": 130,
              "maximum": 320
            },
            "numberColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "numberTextColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "sublineSpacing": {
              "type": "number",
              "minimum": 0,
              "maximum": 10
            },
            "layout": {
              "type": "string",
              "enum": [
                "single",
                "stacked",
                "post"
              ]
            },
            "arrow": {
              "type": "string",
              "enum": [
                "none",
                "left",
                "right",
                "both"
              ]
            },
            "font": {
              "type": "string",
              "enum": [
                "condensed",
                "block",
                "serif"
              ]
            },
            "fontSize": {
              "type": "number",
              "minimum": 55,
              "maximum": 210
            },
            "tracking": {
              "type": "number",
              "minimum": 0,
              "maximum": 12
            },
            "uppercase": {
              "type": "boolean"
            },
            "signColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "textColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "accentColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "borderColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "border": {
              "type": "boolean"
            },
            "borderWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 12
            },
            "roundness": {
              "type": "number",
              "minimum": 0,
              "maximum": 35
            },
            "finish": {
              "type": "string",
              "enum": [
                "matte",
                "satin",
                "gloss"
              ]
            },
            "shadow": {
              "type": "boolean"
            },
            "postColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "postHeight": {
              "type": "number",
              "minimum": 150,
              "maximum": 700
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "gradientAngle": {
              "type": "number",
              "minimum": 0,
              "maximum": 360
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 200
            },
            "signScale": {
              "type": "number",
              "minimum": 40,
              "maximum": 100
            },
            "transparent": {
              "type": "boolean"
            },
            "fitPreview": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "github-contribution-graph-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "order": {
                  "type": "string",
                  "enum": [
                    "weeks",
                    "rows",
                    "center",
                    "scattered"
                  ]
                },
                "transition": {
                  "type": "string",
                  "enum": [
                    "pop",
                    "fade",
                    "none"
                  ]
                },
                "duration": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 20
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 8
                },
                "showGrid": {
                  "type": "boolean"
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "autoFrame": {
                  "type": "boolean"
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                },
                "loop": {
                  "type": "boolean"
                }
              },
              "additionalProperties": false
            },
            "mode": {
              "type": "string",
              "enum": [
                "text",
                "paint",
                "image",
                "activity"
              ]
            },
            "message": {
              "type": "string",
              "maxLength": 40
            },
            "pixelFont": {
              "type": "string",
              "enum": [
                "classic",
                "compact"
              ]
            },
            "textAlign": {
              "type": "string",
              "enum": [
                "left",
                "center",
                "right"
              ]
            },
            "textLevel": {
              "type": "number",
              "minimum": 1,
              "maximum": 4
            },
            "pattern": {
              "type": "string",
              "enum": [
                "scatter",
                "wave",
                "rising",
                "checker"
              ]
            },
            "density": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "seed": {
              "type": "number",
              "minimum": 1,
              "maximum": 99999
            },
            "stamp": {
              "type": "string",
              "enum": [
                "heart",
                "spark",
                "smile",
                "sun",
                "mountain"
              ]
            },
            "repeatImage": {
              "type": "boolean"
            },
            "image": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(?:|data:image/(?:png|jpeg|webp);base64,[A-Za-z0-9+/=]+)$"
            },
            "imageGrid": {
              "type": "string",
              "minLength": 378,
              "maxLength": 378,
              "pattern": "^[0-4]{378}$"
            },
            "imageColumns": {
              "type": "number",
              "minimum": 13,
              "maximum": 54
            },
            "imageFit": {
              "type": "string",
              "enum": [
                "contain",
                "cover"
              ]
            },
            "imageContrast": {
              "type": "number",
              "minimum": 0.5,
              "maximum": 3
            },
            "imageThreshold": {
              "type": "number",
              "minimum": 0,
              "maximum": 90
            },
            "invertImage": {
              "type": "boolean"
            },
            "imageLevels": {
              "type": "number",
              "enum": [
                1,
                4
              ]
            },
            "period": {
              "type": "string",
              "enum": [
                "year",
                "half",
                "quarter"
              ]
            },
            "year": {
              "type": "number",
              "minimum": 1970,
              "maximum": 2100
            },
            "cells": {
              "type": "string",
              "minLength": 378,
              "maxLength": 378,
              "pattern": "^[0-4]{378}$"
            },
            "brush": {
              "type": "number",
              "minimum": 0,
              "maximum": 4
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "palette": {
              "type": "string",
              "enum": [
                "green",
                "blue",
                "violet",
                "coral",
                "amber"
              ]
            },
            "showTitle": {
              "type": "boolean"
            },
            "title": {
              "type": "string",
              "maxLength": 90
            },
            "showProfile": {
              "type": "boolean"
            },
            "username": {
              "type": "string",
              "maxLength": 39
            },
            "showMonths": {
              "type": "boolean"
            },
            "showDays": {
              "type": "boolean"
            },
            "showLegend": {
              "type": "boolean"
            },
            "showFooter": {
              "type": "boolean"
            },
            "caption": {
              "type": "string",
              "maxLength": 100
            },
            "card": {
              "type": "boolean"
            },
            "shadow": {
              "type": "boolean"
            },
            "roundness": {
              "type": "number",
              "minimum": 0,
              "maximum": 30
            },
            "cellRadius": {
              "type": "number",
              "minimum": 0,
              "maximum": 8
            },
            "cellSize": {
              "type": "number",
              "minimum": 10,
              "maximum": 26
            },
            "gap": {
              "type": "number",
              "minimum": 1,
              "maximum": 8
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 200
            },
            "graphScale": {
              "type": "number",
              "minimum": 40,
              "maximum": 100
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "gradientAngle": {
              "type": "number",
              "minimum": 0,
              "maximum": 360
            },
            "transparent": {
              "type": "boolean"
            },
            "fitPreview": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "phone-camera-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "platform": {
              "type": "string",
              "enum": [
                "ios",
                "android"
              ]
            },
            "orientation": {
              "type": "string",
              "enum": [
                "portrait",
                "landscape"
              ]
            },
            "mode": {
              "type": "string",
              "enum": [
                "photo",
                "portrait",
                "video"
              ]
            },
            "aspect": {
              "type": "string",
              "enum": [
                "standard",
                "full",
                "square"
              ]
            },
            "image": {
              "type": "string",
              "maxLength": 1800000,
              "pattern": "^(?:|data:image/(?:png|jpeg|webp);base64,[A-Za-z0-9+/=]+)$"
            },
            "imageWidth": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "imageHeight": {
              "type": "number",
              "minimum": 1,
              "maximum": 4096
            },
            "sample": {
              "type": "string",
              "enum": [
                "ceramics",
                "coast",
                "flowers",
                "portrait",
                "coffee",
                "skincare"
              ]
            },
            "cropX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "cropY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "zoom": {
              "type": "number",
              "minimum": 1,
              "maximum": 3
            },
            "mirror": {
              "type": "boolean"
            },
            "showFocus": {
              "type": "boolean"
            },
            "focusX": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "focusY": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "focusSize": {
              "type": "number",
              "minimum": 40,
              "maximum": 120
            },
            "focusLock": {
              "type": "boolean"
            },
            "showGrid": {
              "type": "boolean"
            },
            "showLevel": {
              "type": "boolean"
            },
            "lens": {
              "type": "string",
              "enum": [
                ".5",
                "1",
                "2",
                "3"
              ]
            },
            "flash": {
              "type": "string",
              "enum": [
                "off",
                "auto",
                "on"
              ]
            },
            "livePhoto": {
              "type": "boolean"
            },
            "hdr": {
              "type": "boolean"
            },
            "timer": {
              "type": "string",
              "enum": [
                "off",
                "3",
                "10"
              ]
            },
            "exposure": {
              "type": "number",
              "minimum": -2,
              "maximum": 2
            },
            "recording": {
              "type": "boolean"
            },
            "videoTime": {
              "type": "string",
              "maxLength": 12
            },
            "quality": {
              "type": "string",
              "enum": [
                "HD",
                "4K"
              ]
            },
            "fps": {
              "type": "string",
              "enum": [
                "24",
                "30",
                "60"
              ]
            },
            "badge": {
              "type": "string",
              "maxLength": 28
            },
            "showThumbnail": {
              "type": "boolean"
            },
            "showHomeIndicator": {
              "type": "boolean"
            },
            "accent": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "gradientAngle": {
              "type": "number",
              "minimum": 0,
              "maximum": 360
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 200
            },
            "screenScale": {
              "type": "number",
              "minimum": 40,
              "maximum": 100
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 48
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "fitPreview": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    },
    {
      "type": "object",
      "required": [
        "format",
        "version",
        "tool",
        "state"
      ],
      "properties": {
        "format": {
          "const": "mockaps-app-project"
        },
        "version": {
          "const": 1
        },
        "tool": {
          "const": "trading-chart-mockup-generator"
        },
        "state": {
          "type": "object",
          "properties": {
            "version": {
              "type": "number",
              "const": 1
            },
            "animation": {
              "type": "object",
              "properties": {
                "enabled": {
                  "type": "boolean"
                },
                "style": {
                  "type": "string",
                  "enum": [
                    "candles",
                    "smooth"
                  ]
                },
                "duration": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 20
                },
                "startDelay": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 4
                },
                "endHold": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 8
                },
                "frame": {
                  "type": "string",
                  "enum": [
                    "portrait",
                    "square",
                    "landscape"
                  ]
                },
                "autoFrame": {
                  "type": "boolean"
                },
                "resolution": {
                  "type": "number",
                  "enum": [
                    720,
                    1080
                  ]
                },
                "loop": {
                  "type": "boolean"
                }
              },
              "additionalProperties": false
            },
            "presentation": {
              "type": "string",
              "enum": [
                "creative",
                "market"
              ]
            },
            "title": {
              "type": "string",
              "maxLength": 64
            },
            "subtitle": {
              "type": "string",
              "maxLength": 90
            },
            "symbol": {
              "type": "string",
              "maxLength": 30
            },
            "timeframe": {
              "type": "string",
              "maxLength": 8
            },
            "startLabel": {
              "type": "string",
              "maxLength": 16
            },
            "endLabel": {
              "type": "string",
              "maxLength": 16
            },
            "pricePrefix": {
              "type": "string",
              "maxLength": 4
            },
            "decimals": {
              "type": "number",
              "minimum": 0,
              "maximum": 4
            },
            "theme": {
              "type": "string",
              "enum": [
                "light",
                "dark"
              ]
            },
            "chartType": {
              "type": "string",
              "enum": [
                "candles",
                "line",
                "area"
              ]
            },
            "pattern": {
              "type": "string",
              "enum": [
                "climb",
                "moon",
                "drop",
                "crash",
                "recovery",
                "breakout",
                "spike",
                "range",
                "fall",
                "wave"
              ]
            },
            "seed": {
              "type": "number",
              "minimum": 1,
              "maximum": 999999
            },
            "count": {
              "type": "number",
              "minimum": 8,
              "maximum": 100
            },
            "startPrice": {
              "type": "number",
              "minimum": 0.01,
              "maximum": 100000
            },
            "volatility": {
              "type": "number",
              "minimum": 0,
              "maximum": 100
            },
            "candles": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "open": {
                    "type": "number",
                    "minimum": 0.0001,
                    "maximum": 1000000
                  },
                  "close": {
                    "type": "number",
                    "minimum": 0.0001,
                    "maximum": 1000000
                  },
                  "high": {
                    "type": "number",
                    "minimum": 0.0001,
                    "maximum": 1000000
                  },
                  "low": {
                    "type": "number",
                    "minimum": 0.0001,
                    "maximum": 1000000
                  },
                  "volume": {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100000000
                  }
                },
                "additionalProperties": false,
                "required": [
                  "open",
                  "high",
                  "low",
                  "close",
                  "volume"
                ]
              },
              "minItems": 8,
              "maxItems": 100
            },
            "upColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "downColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "lineColor": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "titleSize": {
              "type": "number",
              "minimum": 40,
              "maximum": 108
            },
            "candleWidth": {
              "type": "number",
              "minimum": 30,
              "maximum": 90
            },
            "chartZoom": {
              "type": "number",
              "minimum": 100,
              "maximum": 250
            },
            "annotationSize": {
              "type": "number",
              "minimum": 16,
              "maximum": 44
            },
            "showTimeLabels": {
              "type": "boolean"
            },
            "showHeader": {
              "type": "boolean"
            },
            "showGrid": {
              "type": "boolean"
            },
            "showVolume": {
              "type": "boolean"
            },
            "showAverage": {
              "type": "boolean"
            },
            "averagePeriod": {
              "type": "number",
              "minimum": 2,
              "maximum": 30
            },
            "showPrice": {
              "type": "boolean"
            },
            "showAxes": {
              "type": "boolean"
            },
            "showToolbar": {
              "type": "boolean"
            },
            "showAnnotation": {
              "type": "boolean"
            },
            "annotation": {
              "type": "string",
              "maxLength": 45
            },
            "annotationX": {
              "type": "number",
              "minimum": 5,
              "maximum": 95
            },
            "annotationY": {
              "type": "number",
              "minimum": 6,
              "maximum": 80
            },
            "showLevel": {
              "type": "boolean"
            },
            "level": {
              "type": "number",
              "minimum": 0.0001,
              "maximum": 1000000
            },
            "levelLabel": {
              "type": "string",
              "maxLength": 28
            },
            "canvasFormat": {
              "type": "string",
              "enum": [
                "fit",
                "square",
                "portrait",
                "story",
                "wide"
              ]
            },
            "background": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundEnd": {
              "type": "string",
              "pattern": "^#[a-fA-F0-9]{6}$"
            },
            "backgroundMode": {
              "type": "string",
              "enum": [
                "solid",
                "gradient"
              ]
            },
            "gradientAngle": {
              "type": "number",
              "minimum": 0,
              "maximum": 360
            },
            "padding": {
              "type": "number",
              "minimum": 0,
              "maximum": 160
            },
            "radius": {
              "type": "number",
              "minimum": 0,
              "maximum": 40
            },
            "shadow": {
              "type": "boolean"
            },
            "transparent": {
              "type": "boolean"
            },
            "fitPreview": {
              "type": "boolean"
            },
            "format": {
              "type": "string",
              "enum": [
                "png",
                "jpeg"
              ]
            },
            "scale": {
              "type": "number",
              "enum": [
                1,
                2,
                3
              ]
            }
          },
          "additionalProperties": false
        }
      }
    }
  ]
}
