{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/github/label-commenter-config-yml/latest.json",
  "description": "Configuration for Actions Label Commenter, for posting messages triggered by labels.",
  "x-lintel": {
    "source": "https://www.schemastore.org/label-commenter-config.json",
    "sourceSha256": "219a83d7026317ffda68ca0b6100c7b1a51f3f34240fe2b96b691f54bf653527",
    "fileMatch": [
      "**/.github/label-commenter-config.yml"
    ],
    "parsers": [
      "yaml"
    ]
  },
  "type": "object",
  "properties": {
    "comment": {
      "title": "Comment",
      "type": "object",
      "properties": {
        "header": {
          "title": "Header",
          "type": "string"
        },
        "footer": {
          "title": "Footer",
          "type": "string"
        }
      }
    },
    "labels": {
      "title": "Labels",
      "type": "array",
      "items": {
        "$ref": "#/$defs/labelType",
        "title": "Label",
        "properties": {
          "name": {
            "title": "Name",
            "type": "string"
          }
        },
        "type": "object"
      }
    }
  },
  "id": "https://json.schemastore.org/label-commenter-config.json",
  "$comment": "https://github.com/peaceiris/actions-label-commenter",
  "$defs": {
    "labelItem": {
      "type": "object",
      "properties": {
        "body": {
          "title": "Body",
          "type": "string"
        },
        "action": {
          "title": "Action",
          "type": "string"
        },
        "locking": {
          "title": "Locking",
          "enum": [
            "lock",
            "unlock"
          ]
        },
        "lock_reason": {
          "title": "Lock Reason",
          "type": "string"
        }
      }
    },
    "labelFor": {
      "type": "object",
      "properties": {
        "issue": {
          "$ref": "#/$defs/labelItem",
          "title": "Issue"
        },
        "pr": {
          "$ref": "#/$defs/labelItem",
          "title": "Pull Request"
        }
      }
    },
    "labelType": {
      "type": "object",
      "properties": {
        "labeled": {
          "$ref": "#/$defs/labelFor",
          "title": "Labeled"
        },
        "unlabeled": {
          "$ref": "#/$defs/labelFor",
          "title": "Unlabeled"
        }
      }
    }
  }
}
