{
    "source": "core/types/src/index.ts",
    "name": "FlowResult",
    "type": "object",
    "properties": {
        "endState": {
            "required": true,
            "node": {
                "source": "core/types/src/index.ts",
                "name": "NavigationFlowEndState",
                "type": "object",
                "properties": {
                    "_comment": {
                        "required": false,
                        "node": {
                            "type": "string",
                            "title": "CommentBase._comment",
                            "description": "Add comments that will not be processing, but are useful for code explanation"
                        }
                    },
                    "state_type": {
                        "required": true,
                        "node": {
                            "type": "string",
                            "const": "END",
                            "title": "NavigationBaseState.state_type",
                            "description": "A property to determine the type of state this is"
                        }
                    },
                    "onStart": {
                        "required": false,
                        "node": {
                            "type": "or",
                            "or": [
                                {
                                    "type": "ref",
                                    "ref": "Expression",
                                    "title": "NavigationBaseState.onStart"
                                },
                                {
                                    "source": "core/types/src/index.ts",
                                    "name": "ExpressionObject",
                                    "type": "object",
                                    "properties": {
                                        "exp": {
                                            "required": false,
                                            "node": {
                                                "type": "ref",
                                                "ref": "Expression",
                                                "title": "ExpressionObject.exp",
                                                "description": "The expression to run"
                                            }
                                        }
                                    },
                                    "additionalProperties": false,
                                    "title": "ExpressionObject",
                                    "description": "An object with an expression in it"
                                }
                            ],
                            "title": "NavigationBaseState.onStart",
                            "description": "An optional expression to run when this view renders"
                        }
                    },
                    "onEnd": {
                        "required": false,
                        "node": {
                            "type": "or",
                            "or": [
                                {
                                    "type": "ref",
                                    "ref": "Expression",
                                    "title": "NavigationBaseState.onEnd"
                                },
                                {
                                    "source": "core/types/src/index.ts",
                                    "name": "ExpressionObject",
                                    "type": "object",
                                    "properties": {
                                        "exp": {
                                            "required": false,
                                            "node": {
                                                "type": "ref",
                                                "ref": "Expression",
                                                "title": "ExpressionObject.exp",
                                                "description": "The expression to run"
                                            }
                                        }
                                    },
                                    "additionalProperties": false,
                                    "title": "ExpressionObject",
                                    "description": "An object with an expression in it"
                                }
                            ],
                            "title": "NavigationBaseState.onEnd",
                            "description": "An optional expression to run before view transition"
                        }
                    },
                    "exp": {
                        "required": false,
                        "node": {
                            "title": "NavigationBaseState.exp",
                            "type": "never"
                        }
                    },
                    "outcome": {
                        "required": true,
                        "node": {
                            "type": "string",
                            "title": "NavigationFlowEndState.outcome",
                            "description": "A description of _how_ the flow ended.\nIf this is a flow started from another flow, the outcome determines the flow transition"
                        }
                    }
                },
                "additionalProperties": {
                    "type": "unknown"
                },
                "title": "FlowResult.endState",
                "description": "The outcome describes _how_ the flow ended (forwards, backwards, etc)"
            }
        },
        "data": {
            "required": false,
            "node": {
                "type": "any",
                "title": "FlowResult.data",
                "description": "The serialized data-model"
            }
        }
    },
    "additionalProperties": false,
    "title": "FlowResult",
    "description": "The data at the end of a flow"
}