{
    "source": "core/types/src/index.ts",
    "name": "Navigation",
    "type": "and",
    "and": [
        {
            "type": "object",
            "properties": {
                "BEGIN": {
                    "required": true,
                    "node": {
                        "type": "string",
                        "title": "BEGIN",
                        "description": "The name of the Flow to begin on"
                    }
                }
            },
            "additionalProperties": false
        },
        {
            "type": "record",
            "keyType": {
                "type": "string"
            },
            "valueType": {
                "type": "or",
                "or": [
                    {
                        "type": "string"
                    },
                    {
                        "source": "core/types/src/index.ts",
                        "name": "NavigationFlow",
                        "type": "object",
                        "properties": {
                            "startState": {
                                "required": true,
                                "node": {
                                    "type": "string",
                                    "title": "NavigationFlow.startState",
                                    "description": "The first state to kick off the state machine"
                                }
                            },
                            "onStart": {
                                "required": false,
                                "node": {
                                    "type": "or",
                                    "or": [
                                        {
                                            "type": "ref",
                                            "ref": "Expression",
                                            "title": "NavigationFlow.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": "NavigationFlow.onStart",
                                    "description": "An optional expression to run when this Flow starts"
                                }
                            },
                            "onEnd": {
                                "required": false,
                                "node": {
                                    "type": "or",
                                    "or": [
                                        {
                                            "type": "ref",
                                            "ref": "Expression",
                                            "title": "NavigationFlow.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": "NavigationFlow.onEnd",
                                    "description": "An optional expression to run when this Flow ends"
                                }
                            }
                        },
                        "additionalProperties": {
                            "type": "or",
                            "or": [
                                {
                                    "type": "undefined"
                                },
                                {
                                    "type": "string"
                                },
                                {
                                    "type": "ref",
                                    "ref": "Expression"
                                },
                                {
                                    "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"
                                },
                                {
                                    "source": "core/types/src/index.ts",
                                    "name": "NavigationFlowState",
                                    "type": "or",
                                    "or": [
                                        {
                                            "source": "core/types/src/index.ts",
                                            "name": "NavigationFlowViewState",
                                            "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": "VIEW",
                                                        "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"
                                                    }
                                                },
                                                "transitions": {
                                                    "required": true,
                                                    "node": {
                                                        "source": "core/types/src/index.ts",
                                                        "name": "NavigationFlowTransition",
                                                        "type": "record",
                                                        "keyType": {
                                                            "type": "string"
                                                        },
                                                        "valueType": {
                                                            "type": "string"
                                                        },
                                                        "title": "NavigationFlowTransitionableState.transitions",
                                                        "description": "A mapping of transition-name to FlowState name"
                                                    }
                                                },
                                                "ref": {
                                                    "required": true,
                                                    "node": {
                                                        "type": "string",
                                                        "title": "NavigationFlowViewState.ref",
                                                        "description": "An id corresponding to a view from the 'views' array"
                                                    }
                                                },
                                                "attributes": {
                                                    "required": false,
                                                    "node": {
                                                        "type": "object",
                                                        "properties": {},
                                                        "additionalProperties": {
                                                            "type": "any"
                                                        },
                                                        "title": "NavigationFlowViewState.attributes",
                                                        "description": "View meta-properties"
                                                    }
                                                }
                                            },
                                            "additionalProperties": {
                                                "type": "unknown"
                                            },
                                            "title": "NavigationFlowViewState",
                                            "description": "A state representing a view"
                                        },
                                        {
                                            "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": "NavigationFlowEndState",
                                            "description": "An END state of the flow."
                                        },
                                        {
                                            "source": "core/types/src/index.ts",
                                            "name": "NavigationFlowFlowState",
                                            "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": "FLOW",
                                                        "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"
                                                    }
                                                },
                                                "transitions": {
                                                    "required": true,
                                                    "node": {
                                                        "source": "core/types/src/index.ts",
                                                        "name": "NavigationFlowTransition",
                                                        "type": "record",
                                                        "keyType": {
                                                            "type": "string"
                                                        },
                                                        "valueType": {
                                                            "type": "string"
                                                        },
                                                        "title": "NavigationFlowTransitionableState.transitions",
                                                        "description": "A mapping of transition-name to FlowState name"
                                                    }
                                                },
                                                "ref": {
                                                    "required": true,
                                                    "node": {
                                                        "type": "string",
                                                        "title": "NavigationFlowFlowState.ref",
                                                        "description": "A reference to a FLOW id state to run"
                                                    }
                                                }
                                            },
                                            "additionalProperties": false,
                                            "title": "NavigationFlowFlowState"
                                        },
                                        {
                                            "source": "core/types/src/index.ts",
                                            "name": "NavigationFlowActionState",
                                            "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": "ACTION",
                                                        "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": true,
                                                    "node": {
                                                        "type": "ref",
                                                        "ref": "Expression",
                                                        "title": "NavigationFlowActionState.exp",
                                                        "description": "An expression to execute.\nThe return value determines the transition to take"
                                                    }
                                                },
                                                "transitions": {
                                                    "required": true,
                                                    "node": {
                                                        "source": "core/types/src/index.ts",
                                                        "name": "NavigationFlowTransition",
                                                        "type": "record",
                                                        "keyType": {
                                                            "type": "string"
                                                        },
                                                        "valueType": {
                                                            "type": "string"
                                                        },
                                                        "title": "NavigationFlowTransitionableState.transitions",
                                                        "description": "A mapping of transition-name to FlowState name"
                                                    }
                                                }
                                            },
                                            "additionalProperties": false,
                                            "title": "NavigationFlowActionState",
                                            "description": "Action states execute an expression to determine the next state to transition to"
                                        },
                                        {
                                            "source": "core/types/src/index.ts",
                                            "name": "NavigationFlowAsyncActionState",
                                            "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": "ASYNC_ACTION",
                                                        "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": true,
                                                    "node": {
                                                        "type": "ref",
                                                        "ref": "Expression",
                                                        "title": "NavigationFlowAsyncActionState.exp",
                                                        "description": "An expression to execute.\nThe return value determines the transition to take"
                                                    }
                                                },
                                                "transitions": {
                                                    "required": true,
                                                    "node": {
                                                        "source": "core/types/src/index.ts",
                                                        "name": "NavigationFlowTransition",
                                                        "type": "record",
                                                        "keyType": {
                                                            "type": "string"
                                                        },
                                                        "valueType": {
                                                            "type": "string"
                                                        },
                                                        "title": "NavigationFlowTransitionableState.transitions",
                                                        "description": "A mapping of transition-name to FlowState name"
                                                    }
                                                },
                                                "await": {
                                                    "required": true,
                                                    "node": {
                                                        "type": "boolean",
                                                        "title": "NavigationFlowAsyncActionState.await",
                                                        "description": "Whether the expression(s) should be awaited before transitioning"
                                                    }
                                                }
                                            },
                                            "additionalProperties": false,
                                            "title": "NavigationFlowAsyncActionState",
                                            "description": "Action states execute an expression to determine the next state to transition to"
                                        },
                                        {
                                            "source": "core/types/src/index.ts",
                                            "name": "NavigationFlowExternalState",
                                            "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": "EXTERNAL",
                                                        "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"
                                                    }
                                                },
                                                "transitions": {
                                                    "required": true,
                                                    "node": {
                                                        "source": "core/types/src/index.ts",
                                                        "name": "NavigationFlowTransition",
                                                        "type": "record",
                                                        "keyType": {
                                                            "type": "string"
                                                        },
                                                        "valueType": {
                                                            "type": "string"
                                                        },
                                                        "title": "NavigationFlowTransitionableState.transitions",
                                                        "description": "A mapping of transition-name to FlowState name"
                                                    }
                                                },
                                                "ref": {
                                                    "required": true,
                                                    "node": {
                                                        "type": "string",
                                                        "title": "NavigationFlowExternalState.ref",
                                                        "description": "A reference for this external state"
                                                    }
                                                }
                                            },
                                            "additionalProperties": {
                                                "type": "unknown"
                                            },
                                            "title": "NavigationFlowExternalState",
                                            "description": "External Flow states represent states in the FSM that can't be resolved internally in Player.\nThe flow will wait for the embedded application to manage moving to the next state via a transition"
                                        }
                                    ],
                                    "title": "NavigationFlowState"
                                }
                            ]
                        },
                        "title": "NavigationFlow",
                        "description": "A state machine in the navigation"
                    }
                ]
            }
        }
    ],
    "title": "Navigation",
    "description": "The navigation section of the flow describes a State Machine for the user."
}