{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "$schema": {
      "default": "https://public.storm-cdn.com/schemas/storm-workspace.schema.json",
      "description": "The URL or file path to the JSON schema file that describes the Storm configuration file",
      "type": "string"
    },
    "extends": {
      "description": "The path to a base config file to use as a configuration preset file. Documentation can be found at https://github.com/unjs/c12#extending-configuration.",
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      ]
    },
    "name": {
      "type": "string",
      "description": "The name of the workspace/project/service/package/scope using this configuration"
    },
    "variant": {
      "default": "monorepo",
      "description": "The variant of the workspace. This can be used to enable or disable certain features or configurations.",
      "type": "string",
      "enum": ["minimal", "monorepo"]
    },
    "namespace": {
      "type": "string",
      "description": "The namespace of the workspace/project/service/package/scope using this configuration"
    },
    "organization": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "name": {
              "description": "The name of the organization",
              "type": "string"
            },
            "description": {
              "description": "A description of the organization",
              "type": "string"
            },
            "logo": {
              "description": "A URL to the organization's logo image",
              "type": "string",
              "format": "uri"
            },
            "icon": {
              "description": "A URL to the organization's icon image",
              "type": "string",
              "format": "uri"
            },
            "url": {
              "description": "A URL to a page that provides more information about the organization",
              "type": "string",
              "format": "uri"
            }
          },
          "additionalProperties": false,
          "description": "The workspace's organization details"
        },
        {
          "type": "string"
        }
      ],
      "description": "The organization of the workspace. This can be a string or an object containing the organization's details"
    },
    "repository": {
      "type": "string",
      "description": "The repo URL of the workspace (i.e. the GitHub repository URL)"
    },
    "license": {
      "default": "Apache-2.0",
      "description": "The license type of the package",
      "type": "string"
    },
    "homepage": {
      "description": "The homepage of the workspace",
      "type": "string",
      "format": "uri"
    },
    "docs": {
      "description": "The documentation site for the workspace",
      "type": "string",
      "format": "uri"
    },
    "portal": {
      "description": "The development portal site for the workspace",
      "type": "string",
      "format": "uri"
    },
    "licensing": {
      "description": "The licensing site for the workspace",
      "type": "string",
      "format": "uri"
    },
    "contact": {
      "description": "The contact site for the workspace",
      "type": "string",
      "format": "uri"
    },
    "support": {
      "description": "The support site for the workspace. If not provided, this is defaulted to the `contact` config value",
      "type": "string",
      "format": "uri"
    },
    "branch": {
      "default": "main",
      "description": "The branch of the workspace",
      "type": "string"
    },
    "preid": {
      "description": "A tag specifying the version pre-release identifier",
      "type": "string"
    },
    "owner": {
      "description": "The owner of the package",
      "type": "string"
    },
    "bot": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "The workspace bot user's name (this is the bot that will be used to perform various tasks)"
        },
        "email": {
          "type": "string",
          "description": "The email of the workspace bot"
        }
      },
      "required": ["name", "email"],
      "additionalProperties": false,
      "description": "The workspace's bot user's config used to automated various operations tasks"
    },
    "release": {
      "type": "object",
      "properties": {
        "banner": {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "url": {
                  "description": "A URL to a banner image used to display the workspace's release",
                  "type": "string",
                  "format": "uri"
                },
                "alt": {
                  "default": "The workspace's banner image",
                  "description": "The alt text for the workspace's release banner image",
                  "type": "string"
                }
              },
              "required": ["alt"],
              "additionalProperties": false,
              "description": "The workspace's banner image used during the release process"
            },
            {
              "type": "string",
              "format": "uri"
            }
          ]
        },
        "header": {
          "description": "A header message appended to the start of the workspace's release notes",
          "type": "string"
        },
        "footer": {
          "description": "A footer message appended to the end of the workspace's release notes",
          "type": "string"
        }
      },
      "required": ["banner"],
      "additionalProperties": false,
      "description": "The workspace's release config used during the release process"
    },
    "socials": {
      "type": "object",
      "properties": {
        "twitter": {
          "description": "A Twitter/X account associated with the organization/project",
          "type": "string"
        },
        "discord": {
          "description": "A Discord account associated with the organization/project",
          "type": "string"
        },
        "telegram": {
          "description": "A Telegram account associated with the organization/project",
          "type": "string"
        },
        "slack": {
          "description": "A Slack account associated with the organization/project",
          "type": "string"
        },
        "medium": {
          "description": "A Medium account associated with the organization/project",
          "type": "string"
        },
        "github": {
          "description": "A GitHub account associated with the organization/project",
          "type": "string"
        }
      },
      "additionalProperties": false,
      "description": "The workspace's account config used to store various social media links"
    },
    "error": {
      "type": "object",
      "properties": {
        "codesFile": {
          "default": "tools/errors/codes.json",
          "description": "The path to the workspace's error codes JSON file",
          "type": "string"
        },
        "url": {
          "description": "A URL to a page that looks up the workspace's error messages given a specific error code",
          "type": "string",
          "format": "uri"
        }
      },
      "required": ["codesFile"],
      "additionalProperties": false,
      "description": "The workspace's error config used when creating error details during a system error"
    },
    "mode": {
      "default": "production",
      "description": "The current runtime environment mode for the package",
      "type": "string",
      "enum": ["development", "test", "production"]
    },
    "workspaceRoot": {
      "type": "string",
      "description": "The root directory of the workspace"
    },
    "skipCache": {
      "default": false,
      "description": "Should all known types of workspace caching be skipped?",
      "type": "boolean"
    },
    "directories": {
      "type": "object",
      "properties": {
        "cache": {
          "description": "The directory used to store the environment's cached file data",
          "type": "string"
        },
        "data": {
          "description": "The directory used to store the environment's data files",
          "type": "string"
        },
        "config": {
          "description": "The directory used to store the environment's configuration files",
          "type": "string"
        },
        "temp": {
          "description": "The directory used to store the environment's temp files",
          "type": "string"
        },
        "log": {
          "description": "The directory used to store the environment's log files",
          "type": "string"
        },
        "build": {
          "default": "dist",
          "description": "The directory used to store the workspace's distributable files after a build (relative to the workspace root)",
          "type": "string"
        }
      },
      "required": ["build"],
      "additionalProperties": false,
      "description": "Various directories used by the workspace to store data, cache, and configuration files"
    },
    "packageManager": {
      "default": "npm",
      "description": "The JavaScript/TypeScript package manager used by the repository",
      "type": "string",
      "enum": ["npm", "yarn", "pnpm", "bun"]
    },
    "timezone": {
      "default": "America/New_York",
      "description": "The default timezone of the workspace",
      "type": "string"
    },
    "locale": {
      "default": "en-US",
      "description": "The default locale of the workspace",
      "type": "string"
    },
    "logLevel": {
      "default": "info",
      "description": "The log level used to filter out lower priority log messages. If not provided, this is defaulted using the `environment` config value (if `environment` is set to `production` then `level` is `error`, else `level` is `debug`).",
      "type": "string",
      "enum": [
        "silent",
        "fatal",
        "error",
        "warn",
        "success",
        "info",
        "performance",
        "debug",
        "trace",
        "all"
      ]
    },
    "skipConfigLogging": {
      "default": true,
      "description": "Should the logging of the current Storm Workspace configuration be skipped?",
      "type": "boolean"
    },
    "registry": {
      "default": {},
      "description": "A list of remote registry URLs used by Storm Software",
      "type": "object",
      "properties": {
        "github": {
          "description": "A remote registry URL used to publish distributable packages",
          "type": "string",
          "format": "uri"
        },
        "npm": {
          "description": "A remote registry URL used to publish distributable packages",
          "type": "string",
          "format": "uri"
        },
        "cargo": {
          "description": "A remote registry URL used to publish distributable packages",
          "type": "string",
          "format": "uri"
        },
        "cyclone": {
          "description": "A remote registry URL used to publish distributable packages",
          "type": "string",
          "format": "uri"
        },
        "container": {
          "description": "A remote registry URL used to publish distributable packages",
          "type": "string",
          "format": "uri"
        }
      },
      "additionalProperties": false
    },
    "configFile": {
      "default": null,
      "description": "The filepath of the Storm config. When this field is null, no config file was found in the current workspace.",
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "colors": {
      "anyOf": [
        {
          "anyOf": [
            {
              "type": "object",
              "properties": {
                "dark": {
                  "default": "#1e2124",
                  "description": "The dark background color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "light": {
                  "default": "#cbd5e1",
                  "description": "The light background color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "brand": {
                  "default": "#1fb2a6",
                  "description": "The primary brand specific color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "alternate": {
                  "description": "The alternate brand specific color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "accent": {
                  "description": "The secondary brand specific color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "link": {
                  "default": "#3fa6ff",
                  "description": "The color used to display hyperlink text",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "discovery": {
                  "default": "#818cf8",
                  "description": "The second brand specific color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "success": {
                  "default": "#45b27e",
                  "description": "The success color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "info": {
                  "default": "#38bdf8",
                  "description": "The informational color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "debug": {
                  "default": "#8afafc",
                  "description": "The debug color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "warning": {
                  "default": "#f3d371",
                  "description": "The warning color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "danger": {
                  "default": "#d8314a",
                  "description": "The danger color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "fatal": {
                  "description": "The fatal color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "performance": {
                  "default": "#80fd74",
                  "description": "The performance color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "positive": {
                  "default": "#4ade80",
                  "description": "The positive number color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "negative": {
                  "default": "#ef4444",
                  "description": "The negative number color of the workspace",
                  "type": "string",
                  "minLength": 7,
                  "maxLength": 7,
                  "pattern": "^#([0-9a-f]{3}){1,2}$"
                },
                "gradient": {
                  "description": "The color stops for the base gradient color pattern used in the workspace",
                  "type": "array",
                  "items": {
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$",
                    "description": "A base schema for describing the format of colors"
                  }
                }
              },
              "required": [
                "dark",
                "light",
                "brand",
                "link",
                "discovery",
                "success",
                "info",
                "debug",
                "warning",
                "danger",
                "performance",
                "positive",
                "negative"
              ],
              "additionalProperties": false
            },
            {
              "type": "object",
              "properties": {
                "dark": {
                  "type": "object",
                  "properties": {
                    "foreground": {
                      "default": "#cbd5e1",
                      "description": "The light background color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "background": {
                      "default": "#1e2124",
                      "description": "The dark background color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "brand": {
                      "default": "#1fb2a6",
                      "description": "The primary brand specific color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "alternate": {
                      "description": "The alternate brand specific color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "accent": {
                      "description": "The secondary brand specific color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "link": {
                      "default": "#3fa6ff",
                      "description": "The color used to display hyperlink text",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "discovery": {
                      "default": "#818cf8",
                      "description": "The second brand specific color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "success": {
                      "default": "#45b27e",
                      "description": "The success color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "info": {
                      "default": "#38bdf8",
                      "description": "The informational color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "debug": {
                      "default": "#8afafc",
                      "description": "The debug color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "warning": {
                      "default": "#f3d371",
                      "description": "The warning color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "danger": {
                      "default": "#d8314a",
                      "description": "The danger color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "fatal": {
                      "description": "The fatal color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "performance": {
                      "default": "#80fd74",
                      "description": "The performance color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "positive": {
                      "default": "#4ade80",
                      "description": "The positive number color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "negative": {
                      "default": "#ef4444",
                      "description": "The negative number color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "gradient": {
                      "description": "The color stops for the base gradient color pattern used in the workspace",
                      "type": "array",
                      "items": {
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$",
                        "description": "A base schema for describing the format of colors"
                      }
                    }
                  },
                  "required": [
                    "foreground",
                    "background",
                    "brand",
                    "link",
                    "discovery",
                    "success",
                    "info",
                    "debug",
                    "warning",
                    "danger",
                    "performance",
                    "positive",
                    "negative"
                  ],
                  "additionalProperties": false
                },
                "light": {
                  "type": "object",
                  "properties": {
                    "foreground": {
                      "default": "#1e2124",
                      "description": "The dark background color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "background": {
                      "default": "#cbd5e1",
                      "description": "The light background color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "brand": {
                      "default": "#1fb2a6",
                      "description": "The primary brand specific color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "alternate": {
                      "description": "The alternate brand specific color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "accent": {
                      "description": "The secondary brand specific color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "link": {
                      "default": "#3fa6ff",
                      "description": "The color used to display hyperlink text",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "discovery": {
                      "default": "#818cf8",
                      "description": "The second brand specific color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "success": {
                      "default": "#45b27e",
                      "description": "The success color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "info": {
                      "default": "#38bdf8",
                      "description": "The informational color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "debug": {
                      "default": "#8afafc",
                      "description": "The debug color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "warning": {
                      "default": "#f3d371",
                      "description": "The warning color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "danger": {
                      "default": "#d8314a",
                      "description": "The danger color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "fatal": {
                      "description": "The fatal color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "performance": {
                      "default": "#80fd74",
                      "description": "The performance color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "positive": {
                      "default": "#4ade80",
                      "description": "The positive number color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "negative": {
                      "default": "#ef4444",
                      "description": "The negative number color of the workspace",
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$"
                    },
                    "gradient": {
                      "description": "The color stops for the base gradient color pattern used in the workspace",
                      "type": "array",
                      "items": {
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$",
                        "description": "A base schema for describing the format of colors"
                      }
                    }
                  },
                  "required": [
                    "foreground",
                    "background",
                    "brand",
                    "link",
                    "discovery",
                    "success",
                    "info",
                    "debug",
                    "warning",
                    "danger",
                    "performance",
                    "positive",
                    "negative"
                  ],
                  "additionalProperties": false
                }
              },
              "required": ["dark", "light"],
              "additionalProperties": false
            }
          ],
          "description": "Colors used for various workspace elements"
        },
        {
          "type": "object",
          "propertyNames": {
            "anyOf": [
              {
                "anyOf": [
                  {
                    "type": "string",
                    "const": "base"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              {
                "type": "string"
              }
            ]
          },
          "additionalProperties": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "dark": {
                    "default": "#1e2124",
                    "description": "The dark background color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "light": {
                    "default": "#cbd5e1",
                    "description": "The light background color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "brand": {
                    "default": "#1fb2a6",
                    "description": "The primary brand specific color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "alternate": {
                    "description": "The alternate brand specific color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "accent": {
                    "description": "The secondary brand specific color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "link": {
                    "default": "#3fa6ff",
                    "description": "The color used to display hyperlink text",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "discovery": {
                    "default": "#818cf8",
                    "description": "The second brand specific color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "success": {
                    "default": "#45b27e",
                    "description": "The success color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "info": {
                    "default": "#38bdf8",
                    "description": "The informational color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "debug": {
                    "default": "#8afafc",
                    "description": "The debug color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "warning": {
                    "default": "#f3d371",
                    "description": "The warning color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "danger": {
                    "default": "#d8314a",
                    "description": "The danger color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "fatal": {
                    "description": "The fatal color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "performance": {
                    "default": "#80fd74",
                    "description": "The performance color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "positive": {
                    "default": "#4ade80",
                    "description": "The positive number color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "negative": {
                    "default": "#ef4444",
                    "description": "The negative number color of the workspace",
                    "type": "string",
                    "minLength": 7,
                    "maxLength": 7,
                    "pattern": "^#([0-9a-f]{3}){1,2}$"
                  },
                  "gradient": {
                    "description": "The color stops for the base gradient color pattern used in the workspace",
                    "type": "array",
                    "items": {
                      "type": "string",
                      "minLength": 7,
                      "maxLength": 7,
                      "pattern": "^#([0-9a-f]{3}){1,2}$",
                      "description": "A base schema for describing the format of colors"
                    }
                  }
                },
                "required": [
                  "dark",
                  "light",
                  "brand",
                  "link",
                  "discovery",
                  "success",
                  "info",
                  "debug",
                  "warning",
                  "danger",
                  "performance",
                  "positive",
                  "negative"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "dark": {
                    "type": "object",
                    "properties": {
                      "foreground": {
                        "default": "#cbd5e1",
                        "description": "The light background color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "background": {
                        "default": "#1e2124",
                        "description": "The dark background color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "brand": {
                        "default": "#1fb2a6",
                        "description": "The primary brand specific color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "alternate": {
                        "description": "The alternate brand specific color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "accent": {
                        "description": "The secondary brand specific color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "link": {
                        "default": "#3fa6ff",
                        "description": "The color used to display hyperlink text",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "discovery": {
                        "default": "#818cf8",
                        "description": "The second brand specific color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "success": {
                        "default": "#45b27e",
                        "description": "The success color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "info": {
                        "default": "#38bdf8",
                        "description": "The informational color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "debug": {
                        "default": "#8afafc",
                        "description": "The debug color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "warning": {
                        "default": "#f3d371",
                        "description": "The warning color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "danger": {
                        "default": "#d8314a",
                        "description": "The danger color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "fatal": {
                        "description": "The fatal color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "performance": {
                        "default": "#80fd74",
                        "description": "The performance color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "positive": {
                        "default": "#4ade80",
                        "description": "The positive number color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "negative": {
                        "default": "#ef4444",
                        "description": "The negative number color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "gradient": {
                        "description": "The color stops for the base gradient color pattern used in the workspace",
                        "type": "array",
                        "items": {
                          "type": "string",
                          "minLength": 7,
                          "maxLength": 7,
                          "pattern": "^#([0-9a-f]{3}){1,2}$",
                          "description": "A base schema for describing the format of colors"
                        }
                      }
                    },
                    "required": [
                      "foreground",
                      "background",
                      "brand",
                      "link",
                      "discovery",
                      "success",
                      "info",
                      "debug",
                      "warning",
                      "danger",
                      "performance",
                      "positive",
                      "negative"
                    ],
                    "additionalProperties": false
                  },
                  "light": {
                    "type": "object",
                    "properties": {
                      "foreground": {
                        "default": "#1e2124",
                        "description": "The dark background color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "background": {
                        "default": "#cbd5e1",
                        "description": "The light background color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "brand": {
                        "default": "#1fb2a6",
                        "description": "The primary brand specific color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "alternate": {
                        "description": "The alternate brand specific color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "accent": {
                        "description": "The secondary brand specific color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "link": {
                        "default": "#3fa6ff",
                        "description": "The color used to display hyperlink text",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "discovery": {
                        "default": "#818cf8",
                        "description": "The second brand specific color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "success": {
                        "default": "#45b27e",
                        "description": "The success color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "info": {
                        "default": "#38bdf8",
                        "description": "The informational color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "debug": {
                        "default": "#8afafc",
                        "description": "The debug color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "warning": {
                        "default": "#f3d371",
                        "description": "The warning color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "danger": {
                        "default": "#d8314a",
                        "description": "The danger color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "fatal": {
                        "description": "The fatal color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "performance": {
                        "default": "#80fd74",
                        "description": "The performance color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "positive": {
                        "default": "#4ade80",
                        "description": "The positive number color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "negative": {
                        "default": "#ef4444",
                        "description": "The negative number color of the workspace",
                        "type": "string",
                        "minLength": 7,
                        "maxLength": 7,
                        "pattern": "^#([0-9a-f]{3}){1,2}$"
                      },
                      "gradient": {
                        "description": "The color stops for the base gradient color pattern used in the workspace",
                        "type": "array",
                        "items": {
                          "type": "string",
                          "minLength": 7,
                          "maxLength": 7,
                          "pattern": "^#([0-9a-f]{3}){1,2}$",
                          "description": "A base schema for describing the format of colors"
                        }
                      }
                    },
                    "required": [
                      "foreground",
                      "background",
                      "brand",
                      "link",
                      "discovery",
                      "success",
                      "info",
                      "debug",
                      "warning",
                      "danger",
                      "performance",
                      "positive",
                      "negative"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": ["dark", "light"],
                "additionalProperties": false
              }
            ],
            "description": "Colors used for various workspace elements"
          },
          "description": "Storm theme config values used for styling various package elements"
        }
      ]
    },
    "extensions": {
      "default": {},
      "description": "Storm Workspace config values used during various dev-ops processes. This type is a combination of the StormPackageConfig and StormProject types. It represents the config of the entire monorepo.",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    }
  },
  "required": [
    "$schema",
    "name",
    "variant",
    "namespace",
    "organization",
    "repository",
    "license",
    "branch",
    "bot",
    "release",
    "socials",
    "error",
    "mode",
    "workspaceRoot",
    "skipCache",
    "directories",
    "packageManager",
    "timezone",
    "locale",
    "logLevel",
    "skipConfigLogging",
    "registry",
    "configFile",
    "colors",
    "extensions"
  ],
  "additionalProperties": false,
  "$id": "https://public.storm-cdn.com/schemas/storm-workspace.schema.json",
  "title": "Storm Workspace Configuration JSON Schema",
  "description": "This JSON Schema defines the structure of the Storm Workspace configuration file (`storm-workspace.json`). It is used to validate the configuration file and ensure that it adheres to the expected format."
}
