{
    "description": "Generates a new, generic route guard definition in the given or default project.",
    "properties": {
        "flat": {
            "default": true,
            "description": "When true (the default), creates the new files at the top level of the current project.",
            "type": "boolean"
        },
        "implements": {
            "default": [
                "CanActivate"
            ],
            "description": "Specifies which interfaces to implement.",
            "items": {
                "enum": [
                    "CanActivate",
                    "CanActivateChild",
                    "CanDeactivate",
                    "CanLoad"
                ],
                "type": "string"
            },
            "minItems": 1,
            "type": "array",
            "_uniqueItems": true,
            "x-prompt": "Which interfaces would you like to implement?"
        },
        "lintFix": {
            "default": false,
            "description": "When true, applies lint fixes after generating the guard.",
            "type": "boolean",
            "x-user-analytics": 15
        },
        "name": {
            "$default": {
                "$source": "argv",
                "index": 0
            },
            "description": "The name of the new route guard.",
            "type": "string",
            "x-prompt": "What name would you like to use for the guard?"
        },
        "path": {
            "description": "The path at which to create the interface that defines the guard, relative to the current workspace.",
            "format": "path",
            "type": "string",
            "visible": false
        },
        "project": {
            "$default": {
                "$source": "projectName"
            },
            "description": "The name of the project.",
            "type": "string"
        },
        "skipTests": {
            "default": false,
            "description": "When true, does not create \"spec.ts\" test files for the new guard.",
            "type": "boolean",
            "x-user-analytics": 12
        },
        "spec": {
            "default": true,
            "description": "When true (the default), generates a  \"spec.ts\" test file for the new guard.",
            "type": "boolean",
            "x-deprecated": "Use \"skipTests\" instead."
        }
    },
    "required": [
        "name"
    ],
    "title": "Angular Guard Options Schema",
    "type": "object"
}