{
    "source": "core/types/src/index.ts",
    "name": "DynamicSwitch",
    "type": "object",
    "properties": {
        "dynamicSwitch": {
            "required": true,
            "node": {
                "source": "core/types/src/index.ts",
                "name": "Switch<T>",
                "type": "array",
                "elementType": {
                    "source": "core/types/src/index.ts",
                    "name": "SwitchCase<T>",
                    "type": "object",
                    "properties": {
                        "asset": {
                            "required": true,
                            "node": {
                                "type": "ref",
                                "ref": "T",
                                "title": "SwitchCase.asset",
                                "description": "The Asset to use if this case is applicable"
                            }
                        },
                        "case": {
                            "required": true,
                            "node": {
                                "type": "or",
                                "or": [
                                    {
                                        "type": "ref",
                                        "ref": "Expression",
                                        "title": "SwitchCase.case"
                                    },
                                    {
                                        "type": "boolean",
                                        "const": true
                                    }
                                ],
                                "title": "SwitchCase.case",
                                "description": "An expression to execute to determine if this case applies"
                            }
                        }
                    },
                    "additionalProperties": false,
                    "title": "SwitchCase",
                    "description": "A single case statement to use in a switch",
                    "genericTokens": [
                        {
                            "symbol": "T",
                            "constraints": {
                                "type": "ref",
                                "ref": "Asset"
                            },
                            "default": {
                                "type": "ref",
                                "ref": "Asset"
                            }
                        }
                    ]
                },
                "title": "DynamicSwitch.dynamicSwitch",
                "description": "A dynamic switch re-evaluates the applicable case as data changes",
                "genericTokens": [
                    {
                        "symbol": "T",
                        "constraints": {
                            "type": "ref",
                            "ref": "Asset"
                        },
                        "default": {
                            "type": "ref",
                            "ref": "Asset"
                        }
                    }
                ]
            }
        }
    },
    "additionalProperties": false,
    "title": "DynamicSwitch",
    "genericTokens": [
        {
            "symbol": "T",
            "constraints": {
                "type": "ref",
                "ref": "Asset"
            },
            "default": {
                "type": "ref",
                "ref": "Asset"
            }
        }
    ]
}