{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/sapphire-cli-config/latest.json",
  "title": "Sapphire CLI Config",
  "description": "Scheme for Sapphire CLI Config (@sapphire/cli)",
  "x-lintel": {
    "source": "https://raw.githubusercontent.com/sapphiredev/cli/main/templates/schemas/.sapphirerc.scheme.json",
    "sourceSha256": "812cbffb2c77707996c701a8fa3a2de7ec862d5304666cb9ce099e1144eb5977",
    "fileMatch": [
      ".sapphirerc.json",
      ".sapphirerc.yml"
    ],
    "parsers": [
      "json",
      "yaml"
    ]
  },
  "type": "object",
  "properties": {
    "projectLanguage": {
      "description": "Project language (ts | js)",
      "type": "string",
      "enum": [
        "ts",
        "js"
      ]
    },
    "locations": {
      "description": "Categories and their locations",
      "type": "object",
      "properties": {
        "base": {
          "type": "string"
        },
        "arguments": {
          "type": "string"
        },
        "commands": {
          "type": "string"
        },
        "listeners": {
          "type": "string"
        },
        "preconditions": {
          "type": "string"
        },
        "interaction-handlers": {
          "type": "string"
        },
        "routes": {
          "type": "string"
        }
      },
      "required": [
        "base",
        "arguments",
        "commands",
        "listeners",
        "preconditions",
        "interaction-handlers"
      ]
    },
    "customFileTemplates": {
      "description": "Settings about custom component (piece) templates",
      "type": "object",
      "properties": {
        "enabled": {
          "description": "Enable custom file templates",
          "type": "boolean"
        },
        "location": {
          "description": "Location of your custom file templates",
          "type": "string"
        }
      },
      "required": [
        "enabled",
        "location"
      ]
    }
  },
  "required": [
    "projectLanguage",
    "locations",
    "customFileTemplates"
  ]
}
