{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "id": "https://json.schemastore.org/clasp.json",
  "properties": {
    "scriptId": {
      "description": "An ID of the current Google Apps Script project\nhttps://github.com/google/clasp#scriptid-required",
      "type": "string",
      "minLength": 57,
      "maxLength": 57
    },
    "rootDir": {
      "description": "A root directory path of the current Google Apps Script project\nhttps://github.com/google/clasp#rootdir-optional",
      "$ref": "https://json.schemastore.org/base-04.json#/definitions/path"
    },
    "projectId": {
      "description": "An ID for a Google Cloud Platform project linked to the current Google Apps Script project\nhttps://github.com/google/clasp#projectid-optional",
      "default": "project-id-xxxxxxxxxxxxxxxxxxx",
      "type": "string",
      "minLength": 4,
      "maxLength": 30
    },
    "fileExtension": {
      "description": "An extension for local files of the current Google Apps Script project\nhttps://github.com/google/clasp#filepushorder-optional",
      "type": "string",
      "minLength": 1
    },
    "filePushOrder": {
      "description": "Files pushed first of the current Google Apps Script project\nhttps://github.com/google/clasp#filepushorder-optional",
      "type": "array",
      "uniqueItems": true,
      "items": {
        "title": "file",
        "description": "A file\nhttps://github.com/google/clasp#filepushorder-optional",
        "$ref": "https://json.schemastore.org/base-04.json#/definitions/path"
      }
    }
  },
  "required": ["scriptId"],
  "title": "Google Apps Script config schema",
  "type": "object"
}
