AnyDocsAnd
  [ AnyDocsOr []
  , AnyDocsCommands
      Nothing
      [ CommandDoc
          { commandDocArgument = "top"
          , commandDocHelp = "command without subcommands"
          , commandDocs =
              AnyDocsSingle
                ConfDoc
                  { confDocKeys =
                      ( "name" :| [] , AnyOfSchema (NullSchema :| [ StringSchema ]) ) :|
                        []
                  , confDocDefault = Nothing
                  , confDocExamples = [ "john" ]
                  , confDocHelp = Just "name"
                  }
          }
      , CommandDoc
          { commandDocArgument = "sub"
          , commandDocHelp = "command with subcommands"
          , commandDocs =
              AnyDocsAnd
                [ AnyDocsCommands
                    Nothing
                    [ CommandDoc
                        { commandDocArgument = "a"
                        , commandDocHelp = "A"
                        , commandDocs = AnyDocsAnd []
                        }
                    , CommandDoc
                        { commandDocArgument = "b"
                        , commandDocHelp = "B"
                        , commandDocs = AnyDocsAnd []
                        }
                    ]
                , AnyDocsCommands
                    (Just "c")
                    [ CommandDoc
                        { commandDocArgument = "c"
                        , commandDocHelp = "C"
                        , commandDocs = AnyDocsAnd []
                        }
                    , CommandDoc
                        { commandDocArgument = "d"
                        , commandDocHelp = "D"
                        , commandDocs = AnyDocsAnd []
                        }
                    ]
                ]
          }
      ]
  ]