(.require
 [library
  [lux (.except)
   ["$" documentation]
   [data
    ["[0]" text (.only \n)
     ["%" \\format (.only format)]]]
   [meta
    ["@" target]]]]
 [\\library
  ["[0]" /]])

(def .public documentation
  (List $.Documentation)
  (`` (`` (list ($.module /._
                          "")

                ($.definition /.normal)
                ($.definition /.error)
                ($.definition /.async)
                (,, (for @.jvm (,, (these ($.definition /.no_more_output)
                                          ($.definition /.default)))
                         (,, (these))))

                ($.definition /.Exit
                  "A program exit code.")

                ($.definition (/.Process !)
                  "The means for communicating with a program/process being executed by the operating system.")

                ($.definition /.Command
                  "A command that can be executed by the operating system.")

                ($.definition /.Argument
                  "A parameter for a command.")

                ($.definition (/.Shell !)
                  "The means for issuing commands to the operating system.")

                ($.definition (/.Mock s)
                  "A simulated process.")

                ($.definition /.mock
                  ""
                  [(mock mock init)])
                ))))
