{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "title": "atcoder-cli Contest Project File",
  "required": [
    "contest",
    "tasks"
  ],
  "properties": {
    "contest": {
      "$ref": "#contest"
    },
    "tasks": {
      "$ref": "#tasks"
    }
  },
  "definitions": {
    "contest": {
      "$id": "#contest",
      "type": "object",
      "required": [
        "id",
        "title",
        "url"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "title": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      }
    },
    "directory": {
      "$id": "#directory",
      "type": "object",
      "required": [
        "path"
      ],
      "properties": {
        "path": {
          "type": "string"
        },
        "submit": {
          "type": "string"
        },
        "testdir": {
          "type": "string"
        }
      }
    },
    "task": {
      "$id": "#task",
      "type": "object",
      "required": [
        "id",
        "label",
        "title",
        "url"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "label": {
          "type": "string"
        },
        "title": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "directory": {
          "$ref": "#directory"
        }
      }
    },
    "tasks": {
      "$id": "#tasks",
      "type": "array",
      "items": {
        "$ref": "#task"
      }
    }
  }
}
