func VisualizeWithType(fsm *FSM, visualizeType VisualizeType) (string, error) {
	switch visualizeType {
	case GRAPHVIZ:
		return Visualize(fsm), nil
	case MERMAID:
		return VisualizeForMermaidWithGraphType(fsm, StateDiagram)
	case MermaidStateDiagram:
		return VisualizeForMermaidWithGraphType(fsm, StateDiagram)
	case MermaidFlowChart:
		return VisualizeForMermaidWithGraphType(fsm, FlowChart)
	default:
		return "", fmt.Errorf("unknown VisualizeType: %s", visualizeType)
	}
}
VisualizeWithType outputs a visualization of a FSM in the desired format.
If the type is not given it defaults to GRAPHVIZ
package fsm
import (
	"fmt"
	"sort"
)
type VisualizeType string
const (
	GRAPHVIZ VisualizeType = "graphviz"
	MERMAID VisualizeType = "mermaid"
	MermaidStateDiagram VisualizeType = "mermaid-state-diagram"
	MermaidFlowChart VisualizeType = "mermaid-flow-chart"
)