WithConfig _ Nothing (Check Nothing False (fromList []) _ (Alt (Check Nothing False (fromList []) _ (Setting Nothing (Setting [ DashedLong ('c' :| "onfig-file") ] [ _ ] False Nothing True (Just (EnvVarSetting { envVarSettingVar = "CONFIG_FILE" , envVarSettingAllowPrefix = True } :| [])) Nothing Nothing [] False (Just "FILE_PATH") (Just "Path to the configuration file") (Just _) (fromList [])))) (Check Nothing False (fromList []) _ (Pure _)))) (Commands Nothing Nothing [ Command "top" "command without subcommands" (Check Nothing True (fromList []) _ (Setting Nothing (Setting [ DashedLong ('n' :| "ame") ] [ _ ] False Nothing True (Just (EnvVarSetting { envVarSettingVar = "NAME" , envVarSettingAllowPrefix = True } :| [])) (Just (ConfigValSetting ("name" :| []) BimapCodec _ _ (EitherCodec PossiblyJointUnion NullCodec (BimapCodec _ _ (StringCodec Nothing))) :| [])) Nothing [ "john" ] False (Just "NAME") (Just "name") Nothing (fromList [])))) , Command "sub" "command with subcommands" (Ap (Commands Nothing Nothing [ Command "a" "A" (Pure _) , Command "b" "B" (Pure _) ]) (Commands Nothing (Just "c") [ Command "c" "C" (Pure _) , Command "d" "D" (Pure _) ])) ])