{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "type": "object",
    "title": "PR Preview Config",
    "description": "Config file for PR Preview.",
    "properties": {
        "type": {
            "definition": "The spec processor used to render this spec.",
            "enum": [
                "bikeshed",
                "Bikeshed",
                "BikeShed",
                "respec",
                "Respec",
                "ReSpec",
                "wattsi",
                "Wattsi",
                "html",
                "HTML"
            ]
        },
        "src_file": {
            "definition": "Relative path to the source file from the root of the repository",
            "type": "string",
            "minLength": 1
        },
        "params": {
            "definition": "parameters for the spec processor",
            "type": "object",
            "additionalProperties": {
                "anyOf": [
                    {
                        "type": "string"
                    },
                    {
                        "type": "number"
                    },
                    {
                        "type": "boolean"
                    },
                    {
                        "type": "null"
                    }
                ]
            }
        },
        "post_processing": {
            "definition": "Set a post processor.",
            "type": "object",
            "properties": {
                "name": {
                    "definition": "Name of the post-processor",
                    "enum": [
                        "emu-algify",
                        "webidl-grammar"
                    ]
                },
                "options": {
                    "definition": "Options object for the post-processor",
                    "type": "object",
                    "additionalProperties": true
                }
            },
            "required": [
                "name"
            ]
        },
        "multipage": {
            "definition": "Whether the rendered spec is multipage.",
            "type": "boolean"
        }
    },
    "additionalProperties": true,
    "required": [
        "src_file",
        "type"
    ]
}