{
    "properties": {
        "changeDetection": {
            "alias": "c",
            "default": "Default",
            "description": "Specifies the change detection strategy.",
            "enum": [
                "Default",
                "OnPush"
            ],
            "type": "string"
        },
        "export": {
            "default": false,
            "description": "Specifies if declaring module exports the component.",
            "type": "boolean"
        },
        "flat": {
            "default": false,
            "description": "Flag to indicate if a dir is created.",
            "type": "boolean"
        },
        "inlineStyle": {
            "alias": "s",
            "default": false,
            "description": "Specifies if the style will be in the ts file.",
            "type": "boolean"
        },
        "inlineTemplate": {
            "alias": "t",
            "default": false,
            "description": "Specifies if the template will be in the ts file.",
            "type": "boolean"
        },
        "module": {
            "alias": "m",
            "description": "Allows specification of the declaring module.",
            "type": "string"
        },
        "name": {
            "$default": {
                "$source": "argv",
                "index": 0
            },
            "description": "The name of the component.",
            "type": "string",
            "x-prompt": "What should be the name of the container component?"
        },
        "path": {
            "description": "The path to create the component.",
            "format": "path",
            "type": "string",
            "visible": false
        },
        "prefix": {
            "alias": "p",
            "description": "The prefix to apply to generated selectors.",
            "format": "html-selector",
            "type": "string"
        },
        "project": {
            "aliases": [
                "p"
            ],
            "description": "The name of the project.",
            "type": "string"
        },
        "selector": {
            "description": "The selector to use for the component.",
            "format": "html-selector",
            "type": "string"
        },
        "skipImport": {
            "default": false,
            "description": "Flag to skip the module import.",
            "type": "boolean"
        },
        "skipTest": {
            "default": false,
            "description": "When true, does not create test files.",
            "type": "boolean"
        },
        "state": {
            "description": "Specifies the path to the state exports.",
            "type": "string"
        },
        "stateInterface": {
            "default": "State",
            "description": "Specifies the interface for the state.",
            "type": "string"
        },
        "style": {
            "default": "css",
            "description": "The file extension or preprocessor to use for style files.",
            "type": "string"
        },
        "testDepth": {
            "default": "integration",
            "description": "Specifies whether to create a unit test or an integration test.",
            "enum": [
                "unit",
                "integration"
            ],
            "type": "string"
        },
        "viewEncapsulation": {
            "alias": "v",
            "description": "Specifies the view encapsulation strategy.",
            "enum": [
                "Emulated",
                "Native",
                "None"
            ],
            "type": "string"
        }
    },
    "required": [],
    "title": "NgRx Container Options Schema",
    "type": "object"
}