{
  "$defs": {
    "StatusLevel": {
      "description": "Missing docstring.",
      "enum": [
        "draft",
        "active"
      ],
      "title": "StatusLevel",
      "type": "string"
    },
    "WorkflowEdge": {
      "description": "Missing docstring.",
      "properties": {
        "target": {
          "title": "Target",
          "type": "string"
        },
        "condition": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Condition"
        }
      },
      "required": [
        "target"
      ],
      "title": "WorkflowEdge",
      "type": "object"
    },
    "WorkflowInput": {
      "description": "Missing docstring.",
      "properties": {
        "name": {
          "title": "Name",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Description"
        }
      },
      "required": [
        "name"
      ],
      "title": "WorkflowInput",
      "type": "object"
    },
    "WorkflowMetadata": {
      "description": "Missing docstring.",
      "properties": {
        "domain": {
          "title": "Domain",
          "type": "string"
        },
        "status": {
          "anyOf": [
            {
              "$ref": "#/$defs/StatusLevel"
            },
            {
              "type": "null"
            }
          ],
          "default": "active"
        },
        "topic": {
          "title": "Topic",
          "type": "string"
        }
      },
      "required": [
        "domain",
        "topic"
      ],
      "title": "WorkflowMetadata",
      "type": "object"
    },
    "WorkflowStep": {
      "description": "Missing docstring.",
      "properties": {
        "step_id": {
          "title": "Step Id",
          "type": "string"
        },
        "prompt_file": {
          "title": "Prompt File",
          "type": "string"
        },
        "map_inputs": {
          "additionalProperties": true,
          "title": "Map Inputs",
          "type": "object"
        },
        "next": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "$ref": "#/$defs/WorkflowEdge"
                  }
                ]
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Next"
        }
      },
      "required": [
        "step_id",
        "prompt_file",
        "map_inputs"
      ],
      "title": "WorkflowStep",
      "type": "object"
    }
  },
  "description": "Missing docstring.",
  "properties": {
    "name": {
      "title": "Name",
      "type": "string"
    },
    "description": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Description"
    },
    "metadata": {
      "anyOf": [
        {
          "$ref": "#/$defs/WorkflowMetadata"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "inputs": {
      "default": [],
      "items": {
        "$ref": "#/$defs/WorkflowInput"
      },
      "title": "Inputs",
      "type": "array"
    },
    "steps": {
      "items": {
        "$ref": "#/$defs/WorkflowStep"
      },
      "title": "Steps",
      "type": "array"
    },
    "testData": {
      "anyOf": [
        {
          "items": {},
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Testdata"
    }
  },
  "required": [
    "name",
    "steps"
  ],
  "title": "WorkflowSchema",
  "type": "object"
}
