@bemoje/cli 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (707) hide show
  1. package/.eslintrc.json +5 -0
  2. package/.swcrc +32 -0
  3. package/dist/cjs/arg/ArgumentBuilder.js +45 -0
  4. package/dist/cjs/arg/ArgumentBuilder.js.map +1 -0
  5. package/dist/cjs/arg/ArgumentParserSelector.js +15 -0
  6. package/dist/cjs/arg/ArgumentParserSelector.js.map +1 -0
  7. package/dist/cjs/arg/ArgumentReader.js +38 -0
  8. package/dist/cjs/arg/ArgumentReader.js.map +1 -0
  9. package/dist/cjs/arg/ArgumentValidatorSelector.js +16 -0
  10. package/dist/cjs/arg/ArgumentValidatorSelector.js.map +1 -0
  11. package/dist/cjs/cmd/CLI.js +16 -0
  12. package/dist/cjs/cmd/CLI.js.map +1 -0
  13. package/dist/cjs/cmd/CommandBuilder.js +1098 -0
  14. package/dist/cjs/cmd/CommandBuilder.js.map +1 -0
  15. package/dist/cjs/cmd/CommandBuilderMetaData.js +43 -0
  16. package/dist/cjs/cmd/CommandBuilderMetaData.js.map +1 -0
  17. package/dist/cjs/cmd/CommandFeatureSelector.js +112 -0
  18. package/dist/cjs/cmd/CommandFeatureSelector.js.map +1 -0
  19. package/dist/cjs/cmd/DefaultHelpConfig.js +141 -0
  20. package/dist/cjs/cmd/DefaultHelpConfig.js.map +1 -0
  21. package/dist/cjs/cmd/asdas.js +27 -0
  22. package/dist/cjs/cmd/asdas.js.map +1 -0
  23. package/dist/cjs/core/OutputManager.js +99 -0
  24. package/dist/cjs/core/OutputManager.js.map +1 -0
  25. package/dist/cjs/core/ParserSelector.js +36 -0
  26. package/dist/cjs/core/ParserSelector.js.map +1 -0
  27. package/dist/cjs/core/ValidatorSelector.js +36 -0
  28. package/dist/cjs/core/ValidatorSelector.js.map +1 -0
  29. package/dist/cjs/core/splitCombinedArgvShorts.js +15 -0
  30. package/dist/cjs/core/splitCombinedArgvShorts.js.map +1 -0
  31. package/dist/cjs/db/AbstractJsonFileSection.js +190 -0
  32. package/dist/cjs/db/AbstractJsonFileSection.js.map +1 -0
  33. package/dist/cjs/db/AppDataSection.js +48 -0
  34. package/dist/cjs/db/AppDataSection.js.map +1 -0
  35. package/dist/cjs/db/ConfigSection.js +71 -0
  36. package/dist/cjs/db/ConfigSection.js.map +1 -0
  37. package/dist/cjs/db/JsonFile.js +55 -0
  38. package/dist/cjs/db/JsonFile.js.map +1 -0
  39. package/dist/cjs/db/PresetsSection.js +92 -0
  40. package/dist/cjs/db/PresetsSection.js.map +1 -0
  41. package/dist/cjs/index.js +120 -0
  42. package/dist/cjs/index.js.map +1 -0
  43. package/dist/cjs/opt/OptionArgumentParserSelector.js +16 -0
  44. package/dist/cjs/opt/OptionArgumentParserSelector.js.map +1 -0
  45. package/dist/cjs/opt/OptionArgumentValidatorSelector.js +19 -0
  46. package/dist/cjs/opt/OptionArgumentValidatorSelector.js.map +1 -0
  47. package/dist/cjs/opt/OptionBuilder.js +88 -0
  48. package/dist/cjs/opt/OptionBuilder.js.map +1 -0
  49. package/dist/cjs/opt/OptionHelpers.js +57 -0
  50. package/dist/cjs/opt/OptionHelpers.js.map +1 -0
  51. package/dist/cjs/opt/OptionReader.js +66 -0
  52. package/dist/cjs/opt/OptionReader.js.map +1 -0
  53. package/dist/cjs/proto/overrideCommanderPrototype.js +37 -0
  54. package/dist/cjs/proto/overrideCommanderPrototype.js.map +1 -0
  55. package/dist/cjs/types/IConfig.js +3 -0
  56. package/dist/cjs/types/IConfig.js.map +1 -0
  57. package/dist/cjs/types/IPreset.js +3 -0
  58. package/dist/cjs/types/IPreset.js.map +1 -0
  59. package/dist/cjs/util/array/arrLast.js +21 -0
  60. package/dist/cjs/util/array/arrLast.js.map +1 -0
  61. package/dist/cjs/util/array/arrSome.js +26 -0
  62. package/dist/cjs/util/array/arrSome.js.map +1 -0
  63. package/dist/cjs/util/array/types/ArrayPredicate.js +3 -0
  64. package/dist/cjs/util/array/types/ArrayPredicate.js.map +1 -0
  65. package/dist/cjs/util/db/JsonDB.js +145 -0
  66. package/dist/cjs/util/db/JsonDB.js.map +1 -0
  67. package/dist/cjs/util/errors/ErrorParser.js +164 -0
  68. package/dist/cjs/util/errors/ErrorParser.js.map +1 -0
  69. package/dist/cjs/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.js +3 -0
  70. package/dist/cjs/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.js.map +1 -0
  71. package/dist/cjs/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.js +32 -0
  72. package/dist/cjs/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.js.map +1 -0
  73. package/dist/cjs/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.js +25 -0
  74. package/dist/cjs/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.js.map +1 -0
  75. package/dist/cjs/util/fs/readFile/readFileSafeSync.js +28 -0
  76. package/dist/cjs/util/fs/readFile/readFileSafeSync.js.map +1 -0
  77. package/dist/cjs/util/fs/readFile/readFileSync.js +20 -0
  78. package/dist/cjs/util/fs/readFile/readFileSync.js.map +1 -0
  79. package/dist/cjs/util/fs/readJsonFile/readJsonFileSafeSync.js +24 -0
  80. package/dist/cjs/util/fs/readJsonFile/readJsonFileSafeSync.js.map +1 -0
  81. package/dist/cjs/util/fs/removeFile/removeFile.js +6 -0
  82. package/dist/cjs/util/fs/removeFile/removeFile.js.map +1 -0
  83. package/dist/cjs/util/fs/tempFile/tempFileSync.js +28 -0
  84. package/dist/cjs/util/fs/tempFile/tempFileSync.js.map +1 -0
  85. package/dist/cjs/util/fs/types/IReadJsonFileOptions.js +3 -0
  86. package/dist/cjs/util/fs/types/IReadJsonFileOptions.js.map +1 -0
  87. package/dist/cjs/util/fs/writeFile/writeFileSafeSync.js +6 -0
  88. package/dist/cjs/util/fs/writeFile/writeFileSafeSync.js.map +1 -0
  89. package/dist/cjs/util/fs/writeFile/writeFileSync.js +6 -0
  90. package/dist/cjs/util/fs/writeFile/writeFileSync.js.map +1 -0
  91. package/dist/cjs/util/fs/writeJsonFile/writeJsonFileSafe.js +6 -0
  92. package/dist/cjs/util/fs/writeJsonFile/writeJsonFileSafe.js.map +1 -0
  93. package/dist/cjs/util/function/MethodDisabler.js +94 -0
  94. package/dist/cjs/util/function/MethodDisabler.js.map +1 -0
  95. package/dist/cjs/util/function/funSetName.js +21 -0
  96. package/dist/cjs/util/function/funSetName.js.map +1 -0
  97. package/dist/cjs/util/node/execInherit.js +19 -0
  98. package/dist/cjs/util/node/execInherit.js.map +1 -0
  99. package/dist/cjs/util/node/formatTableForTerminal.js +21 -0
  100. package/dist/cjs/util/node/formatTableForTerminal.js.map +1 -0
  101. package/dist/cjs/util/object/arrAssign.js +6 -0
  102. package/dist/cjs/util/object/arrAssign.js.map +1 -0
  103. package/dist/cjs/util/object/createArrayMerger.js +20 -0
  104. package/dist/cjs/util/object/createArrayMerger.js.map +1 -0
  105. package/dist/cjs/util/object/createObjectMerger.js +20 -0
  106. package/dist/cjs/util/object/createObjectMerger.js.map +1 -0
  107. package/dist/cjs/util/object/objAssign.js +6 -0
  108. package/dist/cjs/util/object/objAssign.js.map +1 -0
  109. package/dist/cjs/util/object/objUpdatePropertyDescriptors.js +28 -0
  110. package/dist/cjs/util/object/objUpdatePropertyDescriptors.js.map +1 -0
  111. package/dist/cjs/util/object/realizeLazyProperty.js +14 -0
  112. package/dist/cjs/util/object/realizeLazyProperty.js.map +1 -0
  113. package/dist/cjs/util/object/setNonEnumerable.js +25 -0
  114. package/dist/cjs/util/object/setNonEnumerable.js.map +1 -0
  115. package/dist/cjs/util/os/defaultOpenInEditorCommand.js +18 -0
  116. package/dist/cjs/util/os/defaultOpenInEditorCommand.js.map +1 -0
  117. package/dist/cjs/util/os/isOSX.js +13 -0
  118. package/dist/cjs/util/os/isOSX.js.map +1 -0
  119. package/dist/cjs/util/os/isVsCodeInstalled.js +19 -0
  120. package/dist/cjs/util/os/isVsCodeInstalled.js.map +1 -0
  121. package/dist/cjs/util/os/isWindows.js +16 -0
  122. package/dist/cjs/util/os/isWindows.js.map +1 -0
  123. package/dist/cjs/util/path/getTempDataPath.js +20 -0
  124. package/dist/cjs/util/path/getTempDataPath.js.map +1 -0
  125. package/dist/cjs/util/regex/regexEscapeString.js +18 -0
  126. package/dist/cjs/util/regex/regexEscapeString.js.map +1 -0
  127. package/dist/cjs/util/string/strEnsureStartsWith.js +19 -0
  128. package/dist/cjs/util/string/strEnsureStartsWith.js.map +1 -0
  129. package/dist/cjs/util/string/strFirstCharToUpperCase.js +16 -0
  130. package/dist/cjs/util/string/strFirstCharToUpperCase.js.map +1 -0
  131. package/dist/cjs/util/string/strIsLowerCase.js +18 -0
  132. package/dist/cjs/util/string/strIsLowerCase.js.map +1 -0
  133. package/dist/cjs/util/string/strIsUpperCase.js +18 -0
  134. package/dist/cjs/util/string/strIsUpperCase.js.map +1 -0
  135. package/dist/cjs/util/string/strSplitCamelCase.js +55 -0
  136. package/dist/cjs/util/string/strSplitCamelCase.js.map +1 -0
  137. package/dist/cjs/util/string-parsers/createBooleanParser.js +21 -0
  138. package/dist/cjs/util/string-parsers/createBooleanParser.js.map +1 -0
  139. package/dist/cjs/util/string-parsers/createTypedListParser.js +22 -0
  140. package/dist/cjs/util/string-parsers/createTypedListParser.js.map +1 -0
  141. package/dist/cjs/util/string-parsers/parseBoolean.js +15 -0
  142. package/dist/cjs/util/string-parsers/parseBoolean.js.map +1 -0
  143. package/dist/cjs/util/string-parsers/parseInteger.js +17 -0
  144. package/dist/cjs/util/string-parsers/parseInteger.js.map +1 -0
  145. package/dist/cjs/util/string-parsers/parseNumber.js +13 -0
  146. package/dist/cjs/util/string-parsers/parseNumber.js.map +1 -0
  147. package/dist/cjs/util/string-parsers/parseString.js +8 -0
  148. package/dist/cjs/util/string-parsers/parseString.js.map +1 -0
  149. package/dist/cjs/util/types/Any.js +3 -0
  150. package/dist/cjs/util/types/Any.js.map +1 -0
  151. package/dist/cjs/util/types/DeepArray.js +3 -0
  152. package/dist/cjs/util/types/DeepArray.js.map +1 -0
  153. package/dist/cjs/util/types/DeepObject.js +3 -0
  154. package/dist/cjs/util/types/DeepObject.js.map +1 -0
  155. package/dist/cjs/util/types/JsonArray.js +3 -0
  156. package/dist/cjs/util/types/JsonArray.js.map +1 -0
  157. package/dist/cjs/util/types/JsonDefinedPrimitive.js +6 -0
  158. package/dist/cjs/util/types/JsonDefinedPrimitive.js.map +1 -0
  159. package/dist/cjs/util/types/JsonObject.js +3 -0
  160. package/dist/cjs/util/types/JsonObject.js.map +1 -0
  161. package/dist/cjs/util/types/JsonRawPrimitive.js +3 -0
  162. package/dist/cjs/util/types/JsonRawPrimitive.js.map +1 -0
  163. package/dist/cjs/util/types/JsonValue.js +3 -0
  164. package/dist/cjs/util/types/JsonValue.js.map +1 -0
  165. package/dist/cjs/util/types/ObjectKey.js +3 -0
  166. package/dist/cjs/util/types/ObjectKey.js.map +1 -0
  167. package/dist/cjs/util/types/TConstructor.js +3 -0
  168. package/dist/cjs/util/types/TConstructor.js.map +1 -0
  169. package/dist/cjs/util/types/TFunction.js +3 -0
  170. package/dist/cjs/util/types/TFunction.js.map +1 -0
  171. package/dist/cjs/util/types/TFunctionNoNew.js +3 -0
  172. package/dist/cjs/util/types/TFunctionNoNew.js.map +1 -0
  173. package/dist/cjs/util/types/TPlainObject.js +3 -0
  174. package/dist/cjs/util/types/TPlainObject.js.map +1 -0
  175. package/dist/cjs/util/types/TPrimitive.js +3 -0
  176. package/dist/cjs/util/types/TPrimitive.js.map +1 -0
  177. package/dist/cjs/util/types/TStringParser.js +3 -0
  178. package/dist/cjs/util/types/TStringParser.js.map +1 -0
  179. package/dist/cjs/util/types/TValidator.js +3 -0
  180. package/dist/cjs/util/types/TValidator.js.map +1 -0
  181. package/dist/cjs/util/validation/createTypedArrayValidator.js +26 -0
  182. package/dist/cjs/util/validation/createTypedArrayValidator.js.map +1 -0
  183. package/dist/cjs/util/validation/ensureThat.js +12 -0
  184. package/dist/cjs/util/validation/ensureThat.js.map +1 -0
  185. package/dist/cjs/util/validation/isArray.js +5 -0
  186. package/dist/cjs/util/validation/isArray.js.map +1 -0
  187. package/dist/cjs/util/validation/isBoolean.js +8 -0
  188. package/dist/cjs/util/validation/isBoolean.js.map +1 -0
  189. package/dist/cjs/util/validation/isFunction.js +17 -0
  190. package/dist/cjs/util/validation/isFunction.js.map +1 -0
  191. package/dist/cjs/util/validation/isNamedFunction.js +11 -0
  192. package/dist/cjs/util/validation/isNamedFunction.js.map +1 -0
  193. package/dist/cjs/util/validation/isNamedFunctionArray.js +9 -0
  194. package/dist/cjs/util/validation/isNamedFunctionArray.js.map +1 -0
  195. package/dist/cjs/util/validation/isObject.js +22 -0
  196. package/dist/cjs/util/validation/isObject.js.map +1 -0
  197. package/dist/cjs/util/validation/isPlainObject.js +19 -0
  198. package/dist/cjs/util/validation/isPlainObject.js.map +1 -0
  199. package/dist/cjs/util/validation/isPrimitive.js +18 -0
  200. package/dist/cjs/util/validation/isPrimitive.js.map +1 -0
  201. package/dist/cjs/util/validation/isString.js +8 -0
  202. package/dist/cjs/util/validation/isString.js.map +1 -0
  203. package/dist/cjs/util/validation/isStringArray.js +12 -0
  204. package/dist/cjs/util/validation/isStringArray.js.map +1 -0
  205. package/dist/cjs/util/validation/isStringWithNoSpacesOrDashes.js +9 -0
  206. package/dist/cjs/util/validation/isStringWithNoSpacesOrDashes.js.map +1 -0
  207. package/dist/cjs/util/validation/numbers/isInteger.js +17 -0
  208. package/dist/cjs/util/validation/numbers/isInteger.js.map +1 -0
  209. package/dist/cjs/util/validation/numbers/isValidNumber.js +22 -0
  210. package/dist/cjs/util/validation/numbers/isValidNumber.js.map +1 -0
  211. package/dist/esm/arg/ArgumentBuilder.js +41 -0
  212. package/dist/esm/arg/ArgumentBuilder.js.map +1 -0
  213. package/dist/esm/arg/ArgumentParserSelector.js +11 -0
  214. package/dist/esm/arg/ArgumentParserSelector.js.map +1 -0
  215. package/dist/esm/arg/ArgumentReader.js +34 -0
  216. package/dist/esm/arg/ArgumentReader.js.map +1 -0
  217. package/dist/esm/arg/ArgumentValidatorSelector.js +12 -0
  218. package/dist/esm/arg/ArgumentValidatorSelector.js.map +1 -0
  219. package/dist/esm/cmd/CLI.js +12 -0
  220. package/dist/esm/cmd/CLI.js.map +1 -0
  221. package/dist/esm/cmd/CommandBuilder.js +1091 -0
  222. package/dist/esm/cmd/CommandBuilder.js.map +1 -0
  223. package/dist/esm/cmd/CommandBuilderMetaData.js +39 -0
  224. package/dist/esm/cmd/CommandBuilderMetaData.js.map +1 -0
  225. package/dist/esm/cmd/CommandFeatureSelector.js +108 -0
  226. package/dist/esm/cmd/CommandFeatureSelector.js.map +1 -0
  227. package/dist/esm/cmd/DefaultHelpConfig.js +135 -0
  228. package/dist/esm/cmd/DefaultHelpConfig.js.map +1 -0
  229. package/dist/esm/cmd/asdas.js +25 -0
  230. package/dist/esm/cmd/asdas.js.map +1 -0
  231. package/dist/esm/core/OutputManager.js +92 -0
  232. package/dist/esm/core/OutputManager.js.map +1 -0
  233. package/dist/esm/core/ParserSelector.js +32 -0
  234. package/dist/esm/core/ParserSelector.js.map +1 -0
  235. package/dist/esm/core/ValidatorSelector.js +32 -0
  236. package/dist/esm/core/ValidatorSelector.js.map +1 -0
  237. package/dist/esm/core/splitCombinedArgvShorts.js +11 -0
  238. package/dist/esm/core/splitCombinedArgvShorts.js.map +1 -0
  239. package/dist/esm/db/AbstractJsonFileSection.js +186 -0
  240. package/dist/esm/db/AbstractJsonFileSection.js.map +1 -0
  241. package/dist/esm/db/AppDataSection.js +44 -0
  242. package/dist/esm/db/AppDataSection.js.map +1 -0
  243. package/dist/esm/db/ConfigSection.js +67 -0
  244. package/dist/esm/db/ConfigSection.js.map +1 -0
  245. package/dist/esm/db/JsonFile.js +51 -0
  246. package/dist/esm/db/JsonFile.js.map +1 -0
  247. package/dist/esm/db/PresetsSection.js +88 -0
  248. package/dist/esm/db/PresetsSection.js.map +1 -0
  249. package/dist/esm/index.js +104 -0
  250. package/dist/esm/index.js.map +1 -0
  251. package/dist/esm/opt/OptionArgumentParserSelector.js +12 -0
  252. package/dist/esm/opt/OptionArgumentParserSelector.js.map +1 -0
  253. package/dist/esm/opt/OptionArgumentValidatorSelector.js +15 -0
  254. package/dist/esm/opt/OptionArgumentValidatorSelector.js.map +1 -0
  255. package/dist/esm/opt/OptionBuilder.js +84 -0
  256. package/dist/esm/opt/OptionBuilder.js.map +1 -0
  257. package/dist/esm/opt/OptionHelpers.js +54 -0
  258. package/dist/esm/opt/OptionHelpers.js.map +1 -0
  259. package/dist/esm/opt/OptionReader.js +62 -0
  260. package/dist/esm/opt/OptionReader.js.map +1 -0
  261. package/dist/esm/proto/overrideCommanderPrototype.js +34 -0
  262. package/dist/esm/proto/overrideCommanderPrototype.js.map +1 -0
  263. package/dist/esm/types/IConfig.js +2 -0
  264. package/dist/esm/types/IConfig.js.map +1 -0
  265. package/dist/esm/types/IPreset.js +2 -0
  266. package/dist/esm/types/IPreset.js.map +1 -0
  267. package/dist/esm/util/array/arrLast.js +17 -0
  268. package/dist/esm/util/array/arrLast.js.map +1 -0
  269. package/dist/esm/util/array/arrSome.js +22 -0
  270. package/dist/esm/util/array/arrSome.js.map +1 -0
  271. package/dist/esm/util/array/types/ArrayPredicate.js +2 -0
  272. package/dist/esm/util/array/types/ArrayPredicate.js.map +1 -0
  273. package/dist/esm/util/db/JsonDB.js +141 -0
  274. package/dist/esm/util/db/JsonDB.js.map +1 -0
  275. package/dist/esm/util/errors/ErrorParser.js +154 -0
  276. package/dist/esm/util/errors/ErrorParser.js.map +1 -0
  277. package/dist/esm/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.js +2 -0
  278. package/dist/esm/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.js.map +1 -0
  279. package/dist/esm/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.js +28 -0
  280. package/dist/esm/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.js.map +1 -0
  281. package/dist/esm/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.js +21 -0
  282. package/dist/esm/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.js.map +1 -0
  283. package/dist/esm/util/fs/readFile/readFileSafeSync.js +21 -0
  284. package/dist/esm/util/fs/readFile/readFileSafeSync.js.map +1 -0
  285. package/dist/esm/util/fs/readFile/readFileSync.js +13 -0
  286. package/dist/esm/util/fs/readFile/readFileSync.js.map +1 -0
  287. package/dist/esm/util/fs/readJsonFile/readJsonFileSafeSync.js +17 -0
  288. package/dist/esm/util/fs/readJsonFile/readJsonFileSafeSync.js.map +1 -0
  289. package/dist/esm/util/fs/removeFile/removeFile.js +2 -0
  290. package/dist/esm/util/fs/removeFile/removeFile.js.map +1 -0
  291. package/dist/esm/util/fs/tempFile/tempFileSync.js +21 -0
  292. package/dist/esm/util/fs/tempFile/tempFileSync.js.map +1 -0
  293. package/dist/esm/util/fs/types/IReadJsonFileOptions.js +2 -0
  294. package/dist/esm/util/fs/types/IReadJsonFileOptions.js.map +1 -0
  295. package/dist/esm/util/fs/writeFile/writeFileSafeSync.js +2 -0
  296. package/dist/esm/util/fs/writeFile/writeFileSafeSync.js.map +1 -0
  297. package/dist/esm/util/fs/writeFile/writeFileSync.js +2 -0
  298. package/dist/esm/util/fs/writeFile/writeFileSync.js.map +1 -0
  299. package/dist/esm/util/fs/writeJsonFile/writeJsonFileSafe.js +2 -0
  300. package/dist/esm/util/fs/writeJsonFile/writeJsonFileSafe.js.map +1 -0
  301. package/dist/esm/util/function/MethodDisabler.js +90 -0
  302. package/dist/esm/util/function/MethodDisabler.js.map +1 -0
  303. package/dist/esm/util/function/funSetName.js +17 -0
  304. package/dist/esm/util/function/funSetName.js.map +1 -0
  305. package/dist/esm/util/node/execInherit.js +15 -0
  306. package/dist/esm/util/node/execInherit.js.map +1 -0
  307. package/dist/esm/util/node/formatTableForTerminal.js +14 -0
  308. package/dist/esm/util/node/formatTableForTerminal.js.map +1 -0
  309. package/dist/esm/util/object/arrAssign.js +3 -0
  310. package/dist/esm/util/object/arrAssign.js.map +1 -0
  311. package/dist/esm/util/object/createArrayMerger.js +16 -0
  312. package/dist/esm/util/object/createArrayMerger.js.map +1 -0
  313. package/dist/esm/util/object/createObjectMerger.js +16 -0
  314. package/dist/esm/util/object/createObjectMerger.js.map +1 -0
  315. package/dist/esm/util/object/objAssign.js +3 -0
  316. package/dist/esm/util/object/objAssign.js.map +1 -0
  317. package/dist/esm/util/object/objUpdatePropertyDescriptors.js +24 -0
  318. package/dist/esm/util/object/objUpdatePropertyDescriptors.js.map +1 -0
  319. package/dist/esm/util/object/realizeLazyProperty.js +10 -0
  320. package/dist/esm/util/object/realizeLazyProperty.js.map +1 -0
  321. package/dist/esm/util/object/setNonEnumerable.js +21 -0
  322. package/dist/esm/util/object/setNonEnumerable.js.map +1 -0
  323. package/dist/esm/util/os/defaultOpenInEditorCommand.js +14 -0
  324. package/dist/esm/util/os/defaultOpenInEditorCommand.js.map +1 -0
  325. package/dist/esm/util/os/isOSX.js +9 -0
  326. package/dist/esm/util/os/isOSX.js.map +1 -0
  327. package/dist/esm/util/os/isVsCodeInstalled.js +15 -0
  328. package/dist/esm/util/os/isVsCodeInstalled.js.map +1 -0
  329. package/dist/esm/util/os/isWindows.js +12 -0
  330. package/dist/esm/util/os/isWindows.js.map +1 -0
  331. package/dist/esm/util/path/getTempDataPath.js +13 -0
  332. package/dist/esm/util/path/getTempDataPath.js.map +1 -0
  333. package/dist/esm/util/regex/regexEscapeString.js +14 -0
  334. package/dist/esm/util/regex/regexEscapeString.js.map +1 -0
  335. package/dist/esm/util/string/strEnsureStartsWith.js +15 -0
  336. package/dist/esm/util/string/strEnsureStartsWith.js.map +1 -0
  337. package/dist/esm/util/string/strFirstCharToUpperCase.js +12 -0
  338. package/dist/esm/util/string/strFirstCharToUpperCase.js.map +1 -0
  339. package/dist/esm/util/string/strIsLowerCase.js +14 -0
  340. package/dist/esm/util/string/strIsLowerCase.js.map +1 -0
  341. package/dist/esm/util/string/strIsUpperCase.js +14 -0
  342. package/dist/esm/util/string/strIsUpperCase.js.map +1 -0
  343. package/dist/esm/util/string/strSplitCamelCase.js +51 -0
  344. package/dist/esm/util/string/strSplitCamelCase.js.map +1 -0
  345. package/dist/esm/util/string-parsers/createBooleanParser.js +17 -0
  346. package/dist/esm/util/string-parsers/createBooleanParser.js.map +1 -0
  347. package/dist/esm/util/string-parsers/createTypedListParser.js +18 -0
  348. package/dist/esm/util/string-parsers/createTypedListParser.js.map +1 -0
  349. package/dist/esm/util/string-parsers/parseBoolean.js +12 -0
  350. package/dist/esm/util/string-parsers/parseBoolean.js.map +1 -0
  351. package/dist/esm/util/string-parsers/parseInteger.js +13 -0
  352. package/dist/esm/util/string-parsers/parseInteger.js.map +1 -0
  353. package/dist/esm/util/string-parsers/parseNumber.js +9 -0
  354. package/dist/esm/util/string-parsers/parseNumber.js.map +1 -0
  355. package/dist/esm/util/string-parsers/parseString.js +4 -0
  356. package/dist/esm/util/string-parsers/parseString.js.map +1 -0
  357. package/dist/esm/util/types/Any.js +2 -0
  358. package/dist/esm/util/types/Any.js.map +1 -0
  359. package/dist/esm/util/types/DeepArray.js +2 -0
  360. package/dist/esm/util/types/DeepArray.js.map +1 -0
  361. package/dist/esm/util/types/DeepObject.js +2 -0
  362. package/dist/esm/util/types/DeepObject.js.map +1 -0
  363. package/dist/esm/util/types/JsonArray.js +2 -0
  364. package/dist/esm/util/types/JsonArray.js.map +1 -0
  365. package/dist/esm/util/types/JsonDefinedPrimitive.js +5 -0
  366. package/dist/esm/util/types/JsonDefinedPrimitive.js.map +1 -0
  367. package/dist/esm/util/types/JsonObject.js +2 -0
  368. package/dist/esm/util/types/JsonObject.js.map +1 -0
  369. package/dist/esm/util/types/JsonRawPrimitive.js +2 -0
  370. package/dist/esm/util/types/JsonRawPrimitive.js.map +1 -0
  371. package/dist/esm/util/types/JsonValue.js +2 -0
  372. package/dist/esm/util/types/JsonValue.js.map +1 -0
  373. package/dist/esm/util/types/ObjectKey.js +2 -0
  374. package/dist/esm/util/types/ObjectKey.js.map +1 -0
  375. package/dist/esm/util/types/TConstructor.js +2 -0
  376. package/dist/esm/util/types/TConstructor.js.map +1 -0
  377. package/dist/esm/util/types/TFunction.js +2 -0
  378. package/dist/esm/util/types/TFunction.js.map +1 -0
  379. package/dist/esm/util/types/TFunctionNoNew.js +2 -0
  380. package/dist/esm/util/types/TFunctionNoNew.js.map +1 -0
  381. package/dist/esm/util/types/TPlainObject.js +2 -0
  382. package/dist/esm/util/types/TPlainObject.js.map +1 -0
  383. package/dist/esm/util/types/TPrimitive.js +2 -0
  384. package/dist/esm/util/types/TPrimitive.js.map +1 -0
  385. package/dist/esm/util/types/TStringParser.js +2 -0
  386. package/dist/esm/util/types/TStringParser.js.map +1 -0
  387. package/dist/esm/util/types/TValidator.js +2 -0
  388. package/dist/esm/util/types/TValidator.js.map +1 -0
  389. package/dist/esm/util/validation/createTypedArrayValidator.js +22 -0
  390. package/dist/esm/util/validation/createTypedArrayValidator.js.map +1 -0
  391. package/dist/esm/util/validation/ensureThat.js +8 -0
  392. package/dist/esm/util/validation/ensureThat.js.map +1 -0
  393. package/dist/esm/util/validation/isArray.js +2 -0
  394. package/dist/esm/util/validation/isArray.js.map +1 -0
  395. package/dist/esm/util/validation/isBoolean.js +4 -0
  396. package/dist/esm/util/validation/isBoolean.js.map +1 -0
  397. package/dist/esm/util/validation/isFunction.js +13 -0
  398. package/dist/esm/util/validation/isFunction.js.map +1 -0
  399. package/dist/esm/util/validation/isNamedFunction.js +7 -0
  400. package/dist/esm/util/validation/isNamedFunction.js.map +1 -0
  401. package/dist/esm/util/validation/isNamedFunctionArray.js +5 -0
  402. package/dist/esm/util/validation/isNamedFunctionArray.js.map +1 -0
  403. package/dist/esm/util/validation/isObject.js +18 -0
  404. package/dist/esm/util/validation/isObject.js.map +1 -0
  405. package/dist/esm/util/validation/isPlainObject.js +15 -0
  406. package/dist/esm/util/validation/isPlainObject.js.map +1 -0
  407. package/dist/esm/util/validation/isPrimitive.js +14 -0
  408. package/dist/esm/util/validation/isPrimitive.js.map +1 -0
  409. package/dist/esm/util/validation/isString.js +4 -0
  410. package/dist/esm/util/validation/isString.js.map +1 -0
  411. package/dist/esm/util/validation/isStringArray.js +8 -0
  412. package/dist/esm/util/validation/isStringArray.js.map +1 -0
  413. package/dist/esm/util/validation/isStringWithNoSpacesOrDashes.js +5 -0
  414. package/dist/esm/util/validation/isStringWithNoSpacesOrDashes.js.map +1 -0
  415. package/dist/esm/util/validation/numbers/isInteger.js +14 -0
  416. package/dist/esm/util/validation/numbers/isInteger.js.map +1 -0
  417. package/dist/esm/util/validation/numbers/isValidNumber.js +18 -0
  418. package/dist/esm/util/validation/numbers/isValidNumber.js.map +1 -0
  419. package/{src → dist/types}/arg/ArgumentBuilder.d.ts +1 -1
  420. package/{src → dist/types}/arg/ArgumentParserSelector.d.ts +2 -2
  421. package/{src → dist/types}/arg/ArgumentReader.d.ts +3 -3
  422. package/{src → dist/types}/arg/ArgumentValidatorSelector.d.ts +2 -2
  423. package/dist/types/cmd/CLI.d.ts +2 -0
  424. package/{src → dist/types}/cmd/CommandBuilder.d.ts +26 -28
  425. package/{src → dist/types}/cmd/CommandBuilderMetaData.d.ts +7 -7
  426. package/{src → dist/types}/cmd/CommandFeatureSelector.d.ts +1 -1
  427. package/dist/types/cmd/DefaultHelpConfig.d.ts +28 -0
  428. package/dist/types/cmd/asdas.d.ts +6 -0
  429. package/{src → dist/types}/core/OutputManager.d.ts +1 -1
  430. package/{src → dist/types}/core/ParserSelector.d.ts +3 -3
  431. package/{src → dist/types}/core/ValidatorSelector.d.ts +2 -2
  432. package/{src → dist/types}/db/AbstractJsonFileSection.d.ts +3 -3
  433. package/{src → dist/types}/db/AppDataSection.d.ts +1 -1
  434. package/{src → dist/types}/db/ConfigSection.d.ts +4 -4
  435. package/{src → dist/types}/db/PresetsSection.d.ts +2 -2
  436. package/{src → dist/types}/index.d.ts +1 -0
  437. package/{src → dist/types}/opt/OptionArgumentParserSelector.d.ts +1 -1
  438. package/{src → dist/types}/opt/OptionArgumentValidatorSelector.d.ts +2 -2
  439. package/{src → dist/types}/opt/OptionBuilder.d.ts +2 -1
  440. package/{src → dist/types}/opt/OptionHelpers.d.ts +2 -2
  441. package/{src → dist/types}/opt/OptionReader.d.ts +7 -7
  442. package/dist/types/proto/overrideCommanderPrototype.d.ts +8 -0
  443. package/{src → dist/types}/types/IConfig.d.ts +3 -3
  444. package/{src → dist/types}/types/IPreset.d.ts +4 -3
  445. package/{src → dist/types}/util/db/JsonDB.d.ts +2 -2
  446. package/{src → dist/types}/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.d.ts +1 -1
  447. package/{src → dist/types}/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.d.ts +1 -1
  448. package/{src → dist/types}/util/fs/readJsonFile/readJsonFileSafeSync.d.ts +1 -1
  449. package/{src → dist/types}/util/fs/tempFile/tempFileSync.d.ts +1 -1
  450. package/{src → dist/types}/util/function/MethodDisabler.d.ts +3 -3
  451. package/{src → dist/types}/util/object/createObjectMerger.d.ts +1 -1
  452. package/{src → dist/types}/util/object/objUpdatePropertyDescriptors.d.ts +1 -1
  453. package/{src → dist/types}/util/object/setNonEnumerable.d.ts +1 -1
  454. package/{src → dist/types}/util/string-parsers/createTypedListParser.d.ts +1 -1
  455. package/{src → dist/types}/util/types/DeepArray.d.ts +2 -2
  456. package/{src → dist/types}/util/types/DeepObject.d.ts +2 -2
  457. package/{src → dist/types}/util/types/JsonArray.d.ts +2 -2
  458. package/{src → dist/types}/util/types/JsonObject.d.ts +2 -2
  459. package/{src → dist/types}/util/types/JsonRawPrimitive.d.ts +1 -1
  460. package/{src → dist/types}/util/types/JsonValue.d.ts +3 -3
  461. package/{src → dist/types}/util/types/TConstructor.d.ts +1 -1
  462. package/dist/types/util/types/TFunction.d.ts +4 -0
  463. package/{src → dist/types}/util/types/TFunctionNoNew.d.ts +1 -1
  464. package/{src → dist/types}/util/types/TPlainObject.d.ts +1 -1
  465. package/dist/types/util/types/TValidator.d.ts +2 -0
  466. package/{src → dist/types}/util/validation/ensureThat.d.ts +2 -2
  467. package/{src → dist/types}/util/validation/isFunction.d.ts +1 -1
  468. package/{src → dist/types}/util/validation/isNamedFunction.d.ts +1 -1
  469. package/{src → dist/types}/util/validation/isPlainObject.d.ts +2 -2
  470. package/{src → dist/types}/util/validation/isPrimitive.d.ts +1 -1
  471. package/jest.config.ts +11 -0
  472. package/notes/tsc.md +1 -0
  473. package/package.json +13 -6
  474. package/project.json +43 -0
  475. package/scripts/_example/CommandBuilder.example.ts +96 -0
  476. package/scripts/_example/CommandBuilder.example2.ts +31 -0
  477. package/scripts/_example/CommandBuilder.example3.ts +20 -0
  478. package/scripts/_example/bFindIn.ts +207 -0
  479. package/scripts/currentBemojeUtils.txt +41 -0
  480. package/scripts/rollupUtils.ts +184 -0
  481. package/src/arg/ArgumentBuilder.test.ts +102 -0
  482. package/src/arg/ArgumentBuilder.ts +47 -0
  483. package/src/arg/ArgumentParserSelector.test.ts +53 -0
  484. package/src/arg/ArgumentParserSelector.ts +14 -0
  485. package/src/arg/ArgumentReader.test.ts +60 -0
  486. package/src/arg/ArgumentReader.ts +33 -0
  487. package/src/arg/ArgumentValidatorSelector.test.ts +80 -0
  488. package/src/arg/ArgumentValidatorSelector.ts +14 -0
  489. package/src/cmd/CLI.test.ts +14 -0
  490. package/src/cmd/CLI.ts +13 -0
  491. package/src/cmd/CommandBuilder.test.ts +611 -0
  492. package/src/cmd/CommandBuilder.ts +1175 -0
  493. package/src/cmd/CommandBuilderMetaData.test.ts +54 -0
  494. package/src/cmd/CommandBuilderMetaData.ts +44 -0
  495. package/src/cmd/CommandFeatureSelector.test.ts +185 -0
  496. package/src/cmd/CommandFeatureSelector.ts +113 -0
  497. package/src/cmd/DefaultHelpConfig.test.ts +22 -0
  498. package/src/cmd/DefaultHelpConfig.ts +141 -0
  499. package/src/cmd/asdas.ts +40 -0
  500. package/src/core/OutputManager.test.ts +129 -0
  501. package/src/core/OutputManager.ts +103 -0
  502. package/src/core/ParserSelector.test.ts +7 -0
  503. package/src/core/ParserSelector.ts +38 -0
  504. package/src/core/ValidatorSelector.test.ts +7 -0
  505. package/src/core/ValidatorSelector.ts +38 -0
  506. package/src/core/splitCombinedArgvShorts.test.ts +9 -0
  507. package/src/core/splitCombinedArgvShorts.ts +10 -0
  508. package/src/db/AbstractJsonFileSection.test.ts +274 -0
  509. package/src/db/AbstractJsonFileSection.ts +218 -0
  510. package/src/db/AppDataSection.test.ts +69 -0
  511. package/src/db/AppDataSection.ts +46 -0
  512. package/src/db/ConfigSection.test.ts +95 -0
  513. package/src/db/ConfigSection.ts +74 -0
  514. package/src/db/JsonFile.test.ts +56 -0
  515. package/src/db/JsonFile.ts +52 -0
  516. package/src/db/PresetsSection.test.ts +130 -0
  517. package/src/db/PresetsSection.ts +92 -0
  518. package/src/index.ts +103 -0
  519. package/src/opt/OptionArgumentParserSelector.test.ts +54 -0
  520. package/src/opt/OptionArgumentParserSelector.ts +14 -0
  521. package/src/opt/OptionArgumentValidatorSelector.test.ts +90 -0
  522. package/src/opt/OptionArgumentValidatorSelector.ts +16 -0
  523. package/src/opt/OptionBuilder.test.ts +229 -0
  524. package/src/opt/OptionBuilder.ts +85 -0
  525. package/src/opt/OptionHelpers.test.ts +229 -0
  526. package/src/opt/OptionHelpers.ts +57 -0
  527. package/src/opt/OptionReader.test.ts +106 -0
  528. package/src/opt/OptionReader.ts +61 -0
  529. package/src/proto/overrideCommanderPrototype.ts +42 -0
  530. package/src/types/IConfig.ts +25 -0
  531. package/src/types/IPreset.ts +16 -0
  532. package/src/util/array/arrLast.test.ts +25 -0
  533. package/src/util/array/arrLast.ts +15 -0
  534. package/src/util/array/arrSome.test.ts +78 -0
  535. package/src/util/array/arrSome.ts +23 -0
  536. package/src/util/array/types/ArrayPredicate.ts +10 -0
  537. package/src/util/db/JsonDB.test.ts +214 -0
  538. package/src/util/db/JsonDB.ts +138 -0
  539. package/src/util/errors/ErrorParser.ts +165 -0
  540. package/src/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.ts +15 -0
  541. package/src/util/fs/promptUserEditInTextEditor/promptUserEditInTextEditorSync.ts +30 -0
  542. package/src/util/fs/promptUserEditInTextEditor/promptUserEditJsonInTextEditorSync.ts +25 -0
  543. package/src/util/fs/readFile/readFileSafeSync.ts +20 -0
  544. package/src/util/fs/readFile/readFileSync.ts +13 -0
  545. package/src/util/fs/readJsonFile/readJsonFileSafeSync.ts +17 -0
  546. package/src/util/fs/removeFile/removeFile.ts +1 -0
  547. package/src/util/fs/tempFile/tempFileSync.ts +21 -0
  548. package/src/util/fs/types/IReadJsonFileOptions.ts +1 -0
  549. package/src/util/fs/writeFile/writeFileSafeSync.ts +1 -0
  550. package/src/util/fs/writeFile/writeFileSync.ts +1 -0
  551. package/src/util/fs/writeJsonFile/writeJsonFileSafe.ts +1 -0
  552. package/src/util/function/MethodDisabler.test.ts +112 -0
  553. package/src/util/function/MethodDisabler.ts +94 -0
  554. package/src/util/function/funSetName.test.ts +12 -0
  555. package/src/util/function/funSetName.ts +16 -0
  556. package/src/util/node/execInherit.ts +14 -0
  557. package/src/util/node/formatTableForTerminal.ts +12 -0
  558. package/src/util/object/arrAssign.ts +3 -0
  559. package/src/util/object/createArrayMerger.test.ts +11 -0
  560. package/src/util/object/createArrayMerger.ts +15 -0
  561. package/src/util/object/createObjectMerger.test.ts +11 -0
  562. package/src/util/object/createObjectMerger.ts +17 -0
  563. package/src/util/object/objAssign.ts +3 -0
  564. package/src/util/object/objUpdatePropertyDescriptors.test.ts +40 -0
  565. package/src/util/object/objUpdatePropertyDescriptors.ts +29 -0
  566. package/src/util/object/realizeLazyProperty.ts +9 -0
  567. package/src/util/object/setNonEnumerable.test.ts +63 -0
  568. package/src/util/object/setNonEnumerable.ts +22 -0
  569. package/src/util/os/defaultOpenInEditorCommand.ts +14 -0
  570. package/src/util/os/isOSX.ts +9 -0
  571. package/src/util/os/isVsCodeInstalled.test.ts +7 -0
  572. package/src/util/os/isVsCodeInstalled.ts +14 -0
  573. package/src/util/os/isWindows.ts +12 -0
  574. package/src/util/path/getTempDataPath.test.ts +9 -0
  575. package/src/util/path/getTempDataPath.ts +14 -0
  576. package/src/util/regex/regexEscapeString.test.ts +35 -0
  577. package/src/util/regex/regexEscapeString.ts +13 -0
  578. package/src/util/string/strEnsureStartsWith.test.ts +13 -0
  579. package/src/util/string/strEnsureStartsWith.ts +14 -0
  580. package/src/util/string/strFirstCharToUpperCase.test.ts +33 -0
  581. package/src/util/string/strFirstCharToUpperCase.ts +11 -0
  582. package/src/util/string/strIsLowerCase.test.ts +42 -0
  583. package/src/util/string/strIsLowerCase.ts +13 -0
  584. package/src/util/string/strIsUpperCase.test.ts +48 -0
  585. package/src/util/string/strIsUpperCase.ts +13 -0
  586. package/src/util/string/strSplitCamelCase.test.ts +54 -0
  587. package/src/util/string/strSplitCamelCase.ts +51 -0
  588. package/src/util/string-parsers/createBooleanParser.test.ts +58 -0
  589. package/src/util/string-parsers/createBooleanParser.ts +21 -0
  590. package/src/util/string-parsers/createTypedListParser.test.ts +19 -0
  591. package/src/util/string-parsers/createTypedListParser.ts +19 -0
  592. package/src/util/string-parsers/parseBoolean.test.ts +30 -0
  593. package/src/util/string-parsers/parseBoolean.ts +12 -0
  594. package/src/util/string-parsers/parseInteger.test.ts +52 -0
  595. package/src/util/string-parsers/parseInteger.ts +9 -0
  596. package/src/util/string-parsers/parseNumber.test.ts +53 -0
  597. package/src/util/string-parsers/parseNumber.ts +6 -0
  598. package/src/util/string-parsers/parseString.test.ts +7 -0
  599. package/src/util/string-parsers/parseString.ts +3 -0
  600. package/src/util/types/Any.ts +2 -0
  601. package/src/util/types/DeepArray.ts +12 -0
  602. package/src/util/types/DeepObject.ts +16 -0
  603. package/src/util/types/JsonArray.ts +8 -0
  604. package/src/util/types/JsonDefinedPrimitive.ts +5 -0
  605. package/src/util/types/JsonObject.ts +8 -0
  606. package/src/util/types/JsonRawPrimitive.ts +7 -0
  607. package/src/util/types/JsonValue.ts +14 -0
  608. package/src/util/types/ObjectKey.ts +1 -0
  609. package/src/util/types/TConstructor.ts +6 -0
  610. package/src/util/types/TFunction.ts +5 -0
  611. package/src/util/types/TFunctionNoNew.ts +3 -0
  612. package/src/util/types/TPlainObject.ts +4 -0
  613. package/src/util/types/TPrimitive.ts +1 -0
  614. package/src/util/types/TStringParser.ts +1 -0
  615. package/src/util/types/TValidator.ts +3 -0
  616. package/src/util/validation/createTypedArrayValidator.test.ts +34 -0
  617. package/src/util/validation/createTypedArrayValidator.ts +25 -0
  618. package/src/util/validation/ensureThat.test.ts +37 -0
  619. package/src/util/validation/ensureThat.ts +14 -0
  620. package/src/util/validation/isArray.test.ts +7 -0
  621. package/src/util/validation/isArray.ts +1 -0
  622. package/src/util/validation/isBoolean.test.ts +31 -0
  623. package/src/util/validation/isBoolean.ts +3 -0
  624. package/src/util/validation/isFunction.test.ts +54 -0
  625. package/src/util/validation/isFunction.ts +14 -0
  626. package/src/util/validation/isNamedFunction.test.ts +28 -0
  627. package/src/util/validation/isNamedFunction.ts +8 -0
  628. package/src/util/validation/isNamedFunctionArray.test.ts +14 -0
  629. package/src/util/validation/isNamedFunctionArray.ts +5 -0
  630. package/src/util/validation/isObject.test.ts +57 -0
  631. package/src/util/validation/isObject.ts +17 -0
  632. package/src/util/validation/isPlainObject.test.ts +21 -0
  633. package/src/util/validation/isPlainObject.ts +14 -0
  634. package/src/util/validation/isPrimitive.ts +15 -0
  635. package/src/util/validation/isString.test.ts +23 -0
  636. package/src/util/validation/isString.ts +3 -0
  637. package/src/util/validation/isStringArray.test.ts +24 -0
  638. package/src/util/validation/isStringArray.ts +8 -0
  639. package/src/util/validation/isStringWithNoSpacesOrDashes.test.ts +28 -0
  640. package/src/util/validation/isStringWithNoSpacesOrDashes.ts +5 -0
  641. package/src/util/validation/numbers/isInteger.test.ts +25 -0
  642. package/src/util/validation/numbers/isInteger.ts +13 -0
  643. package/src/util/validation/numbers/isValidNumber.test.ts +20 -0
  644. package/src/util/validation/numbers/isValidNumber.ts +17 -0
  645. package/tsconfig.json +32 -0
  646. package/tsconfig.lib.json +18 -0
  647. package/tsconfig.spec.json +10 -0
  648. package/index.cjs.d.ts +0 -1
  649. package/index.cjs.js +0 -3231
  650. package/index.esm.js +0 -3119
  651. package/src/cmd/CLI.d.ts +0 -2
  652. package/src/cmd/DefaultHelpConfig.d.ts +0 -2
  653. package/src/proto/overrideCommanderPrototype.d.ts +0 -8
  654. package/src/util/types/TFunction.d.ts +0 -4
  655. package/src/util/types/TValidator.d.ts +0 -1
  656. /package/{src → dist/types}/core/splitCombinedArgvShorts.d.ts +0 -0
  657. /package/{src → dist/types}/db/JsonFile.d.ts +0 -0
  658. /package/{src → dist/types}/util/array/arrLast.d.ts +0 -0
  659. /package/{src → dist/types}/util/array/arrSome.d.ts +0 -0
  660. /package/{src → dist/types}/util/array/types/ArrayPredicate.d.ts +0 -0
  661. /package/{src → dist/types}/util/errors/ErrorParser.d.ts +0 -0
  662. /package/{src → dist/types}/util/fs/promptUserEditInTextEditor/IGetUserInputFromEditorOptions.d.ts +0 -0
  663. /package/{src → dist/types}/util/fs/readFile/readFileSafeSync.d.ts +0 -0
  664. /package/{src → dist/types}/util/fs/readFile/readFileSync.d.ts +0 -0
  665. /package/{src → dist/types}/util/fs/removeFile/removeFile.d.ts +0 -0
  666. /package/{src → dist/types}/util/fs/types/IReadJsonFileOptions.d.ts +0 -0
  667. /package/{src → dist/types}/util/fs/writeFile/writeFileSafeSync.d.ts +0 -0
  668. /package/{src → dist/types}/util/fs/writeFile/writeFileSync.d.ts +0 -0
  669. /package/{src → dist/types}/util/fs/writeJsonFile/writeJsonFileSafe.d.ts +0 -0
  670. /package/{src → dist/types}/util/function/funSetName.d.ts +0 -0
  671. /package/{src → dist/types}/util/node/execInherit.d.ts +0 -0
  672. /package/{src → dist/types}/util/node/formatTableForTerminal.d.ts +0 -0
  673. /package/{src → dist/types}/util/object/arrAssign.d.ts +0 -0
  674. /package/{src → dist/types}/util/object/createArrayMerger.d.ts +0 -0
  675. /package/{src → dist/types}/util/object/objAssign.d.ts +0 -0
  676. /package/{src → dist/types}/util/object/realizeLazyProperty.d.ts +0 -0
  677. /package/{src → dist/types}/util/os/defaultOpenInEditorCommand.d.ts +0 -0
  678. /package/{src → dist/types}/util/os/isOSX.d.ts +0 -0
  679. /package/{src → dist/types}/util/os/isVsCodeInstalled.d.ts +0 -0
  680. /package/{src → dist/types}/util/os/isWindows.d.ts +0 -0
  681. /package/{src → dist/types}/util/path/getTempDataPath.d.ts +0 -0
  682. /package/{src → dist/types}/util/regex/regexEscapeString.d.ts +0 -0
  683. /package/{src → dist/types}/util/string/strEnsureStartsWith.d.ts +0 -0
  684. /package/{src → dist/types}/util/string/strFirstCharToUpperCase.d.ts +0 -0
  685. /package/{src → dist/types}/util/string/strIsLowerCase.d.ts +0 -0
  686. /package/{src → dist/types}/util/string/strIsUpperCase.d.ts +0 -0
  687. /package/{src → dist/types}/util/string/strSplitCamelCase.d.ts +0 -0
  688. /package/{src → dist/types}/util/string-parsers/createBooleanParser.d.ts +0 -0
  689. /package/{src → dist/types}/util/string-parsers/parseBoolean.d.ts +0 -0
  690. /package/{src → dist/types}/util/string-parsers/parseInteger.d.ts +0 -0
  691. /package/{src → dist/types}/util/string-parsers/parseNumber.d.ts +0 -0
  692. /package/{src → dist/types}/util/string-parsers/parseString.d.ts +0 -0
  693. /package/{src → dist/types}/util/types/Any.d.ts +0 -0
  694. /package/{src → dist/types}/util/types/JsonDefinedPrimitive.d.ts +0 -0
  695. /package/{src → dist/types}/util/types/ObjectKey.d.ts +0 -0
  696. /package/{src → dist/types}/util/types/TPrimitive.d.ts +0 -0
  697. /package/{src → dist/types}/util/types/TStringParser.d.ts +0 -0
  698. /package/{src → dist/types}/util/validation/createTypedArrayValidator.d.ts +0 -0
  699. /package/{src → dist/types}/util/validation/isArray.d.ts +0 -0
  700. /package/{src → dist/types}/util/validation/isBoolean.d.ts +0 -0
  701. /package/{src → dist/types}/util/validation/isNamedFunctionArray.d.ts +0 -0
  702. /package/{src → dist/types}/util/validation/isObject.d.ts +0 -0
  703. /package/{src → dist/types}/util/validation/isString.d.ts +0 -0
  704. /package/{src → dist/types}/util/validation/isStringArray.d.ts +0 -0
  705. /package/{src → dist/types}/util/validation/isStringWithNoSpacesOrDashes.d.ts +0 -0
  706. /package/{src → dist/types}/util/validation/numbers/isInteger.d.ts +0 -0
  707. /package/{src → dist/types}/util/validation/numbers/isValidNumber.d.ts +0 -0
@@ -1,7 +1,7 @@
1
1
  import { ArgumentBuilder } from './ArgumentBuilder';
2
- import { JsonValue } from '../util/types/JsonValue';
2
+ import type { JsonValue } from '../util/types/JsonValue';
3
3
  import { ParserSelector } from '../core/ParserSelector';
4
- import { TStringParser } from '../util/types/TStringParser';
4
+ import type { TStringParser } from '../util/types/TStringParser';
5
5
  export declare class ArgumentParserSelector extends ParserSelector<ArgumentBuilder> {
6
6
  constructor(builder: ArgumentBuilder);
7
7
  custom<T extends JsonValue>(parser: TStringParser<T>): ArgumentBuilder;
@@ -2,10 +2,10 @@ import { ArgumentBuilder } from './ArgumentBuilder';
2
2
  export declare class ArgumentReader {
3
3
  protected readonly parent: ArgumentBuilder;
4
4
  constructor(parent: ArgumentBuilder);
5
- get $(): import("commander").Argument;
6
- get argument(): import("commander").Argument;
5
+ get $(): import("@commander-js/extra-typings").Argument<"", undefined, undefined, undefined, undefined>;
6
+ get argument(): import("@commander-js/extra-typings").Argument<"", undefined, undefined, undefined, undefined>;
7
7
  get name(): string;
8
- get choices(): string[] | undefined;
8
+ get choices(): string[];
9
9
  get default(): any;
10
10
  get description(): string;
11
11
  get variadic(): boolean;
@@ -1,7 +1,7 @@
1
1
  import { ArgumentBuilder } from './ArgumentBuilder';
2
- import { TValidator } from '../util/types/TValidator';
2
+ import type { TValidator } from '../util/types/TValidator';
3
3
  import { ValidatorSelector } from '../core/ValidatorSelector';
4
4
  export declare class ArgumentValidatorSelector extends ValidatorSelector<ArgumentBuilder> {
5
5
  constructor(builder: ArgumentBuilder);
6
- custom<O>(validator: TValidator<O>): ArgumentBuilder;
6
+ custom<T>(validator: TValidator<T>): ArgumentBuilder;
7
7
  }
@@ -0,0 +1,2 @@
1
+ import { CommandBuilder } from './CommandBuilder';
2
+ export declare function CLI(name: string, callback: (this: CommandBuilder, cmd: CommandBuilder) => void): () => import("@commander-js/extra-typings").Command<unknown[], import("@commander-js/extra-typings").OptionValues>;
@@ -1,25 +1,24 @@
1
- import { AddHelpTextPosition, Argument, Command, CommanderError, ErrorOptions, HelpConfiguration, HookEvent, Option, OptionValues, OptionValueSource } from 'commander';
2
- import { Any } from '../util/types/Any';
1
+ import type { Any } from '../util/types/Any';
3
2
  import { ArgumentBuilder } from '../arg/ArgumentBuilder';
4
3
  import { CommandBuilderMetaData } from './CommandBuilderMetaData';
5
4
  import { CommandFeatureSelector } from './CommandFeatureSelector';
6
- import { IConfig } from '../types/IConfig';
7
- import { IPreset, IPresetPartial } from '../types/IPreset';
5
+ import type { IConfig } from '../types/IConfig';
6
+ import type { IPreset, IPresetPartial } from '../types/IPreset';
8
7
  import { JsonFile } from '../db/JsonFile';
9
- import { JsonValue } from '../util/types/JsonValue';
10
8
  import { OptionBuilder } from '../opt/OptionBuilder';
11
- export * from 'commander';
9
+ import { type AddHelpTextPosition, Argument, Command, CommanderError, type CommandUnknownOpts, type ErrorOptions, type HelpConfiguration, type HookEvent, Option, type OptionValues, type OptionValueSource } from '@commander-js/extra-typings';
10
+ import { type JsonValue } from '../util/types/JsonValue';
12
11
  /**
13
12
  * Wrapper around the @see Command class, for more intuitive construction.
14
13
  */
15
- export declare class CommandBuilder {
14
+ export declare class CommandBuilder<Args extends Any[] = unknown[], Opts extends OptionValues = OptionValues> {
16
15
  static dataDirectory: string;
17
16
  protected readonly features: CommandFeatureSelector;
18
17
  readonly parent: CommandBuilder | null;
19
- readonly $: Command;
20
- readonly meta: CommandBuilderMetaData;
18
+ readonly $: Command<Args, Opts>;
19
+ readonly meta: CommandBuilderMetaData<Args>;
21
20
  get db(): JsonFile;
22
- constructor(name: string, callback?: (this: CommandBuilder, cmd: CommandBuilder) => void, parent?: CommandBuilder, isNative?: boolean);
21
+ constructor(name: string, callback?: (this: CommandBuilder<Args, Opts>, cmd: CommandBuilder<Args, Opts>) => void, parent?: CommandBuilder, isNative?: boolean);
23
22
  setRecommended(): void;
24
23
  deleteDataFile(): void;
25
24
  version(string: string): this;
@@ -38,10 +37,10 @@ export declare class CommandBuilder {
38
37
  option(flags: string, cb?: (opt: OptionBuilder, cmd: this) => void): this;
39
38
  globalOption(flags: string, description?: string): this;
40
39
  globalOption(flags: string, cb?: (opt: OptionBuilder, cmd: this) => void): this;
41
- command(name: string, cb: (this: CommandBuilder, cmd: CommandBuilder) => void): this;
42
- nativeCommand(name: string, cb: (this: CommandBuilder, cmd: CommandBuilder) => void): this;
43
- action<T extends (...args: Any[]) => void | Promise<void>>(fn: T): this;
44
- errorHandler(fn: (this: Command, error: unknown, cmd: CommandBuilder) => void): this;
40
+ command<A extends Any[] = unknown[], O extends OptionValues = OptionValues>(name: string, cb: (this: CommandBuilder<A, O>, cmd: CommandBuilder<A, O>) => void): this;
41
+ nativeCommand<A extends Any[] = unknown[], O extends OptionValues = OptionValues>(name: string, cb: (this: CommandBuilder<A, O>, cmd: CommandBuilder<A, O>) => void): this;
42
+ action(fn: (...args: any[]) => void | Promise<void>): this;
43
+ errorHandler(fn: (this: Command, error: unknown, cmd: CommandBuilder<Args, Opts>) => void): this;
45
44
  appData(key: string, value: JsonValue): this;
46
45
  config(key: string, entry: IConfig<JsonValue>): this;
47
46
  preset(name: string, preset: IPresetPartial): this;
@@ -58,7 +57,7 @@ export declare class CommandBuilder {
58
57
  /**
59
58
  * Add hook for life cycle event.
60
59
  */
61
- hook(event: HookEvent, listener: (thisCommand: Command, actionCommand: Command) => void | Promise<void>): this;
60
+ hook(event: HookEvent, listener: (thisCommand: CommandUnknownOpts, actionCommand: CommandUnknownOpts) => void | Promise<void>): this;
62
61
  /**
63
62
  * You can customise the help by overriding Help properties using configureHelp(),
64
63
  * or with a subclass of Help by overriding createHelp().
@@ -127,9 +126,9 @@ export declare class CommandBuilder {
127
126
  */
128
127
  get root(): CommandBuilder;
129
128
  get isRoot(): boolean;
130
- get arguments(): readonly Argument[];
131
- get options(): readonly Option[];
132
- get commander(): Command;
129
+ get arguments(): readonly Argument<"", undefined, undefined, undefined, undefined>[];
130
+ get options(): readonly Option<"", undefined, undefined, undefined, false, undefined>[];
131
+ get commander(): Command<Args, Opts>;
133
132
  get hasGrandChildren(): boolean;
134
133
  /**
135
134
  * Returns whether a command's last argument is variadic.
@@ -152,10 +151,10 @@ export declare class CommandBuilder {
152
151
  * Get source of option value. See also .optsWithGlobals().
153
152
  */
154
153
  getOptionValueSourceWithGlobals(key: string): OptionValueSource | undefined;
155
- getActionHandler(): (this: CommandBuilder, ...args: any[]) => void | Promise<void>;
154
+ getActionHandler(): (this: CommandBuilder<unknown[], OptionValues>, ...args: any[]) => void | Promise<void>;
156
155
  getDescription(): string;
157
156
  getSummary(): string;
158
- getVersion(): string | undefined;
157
+ getVersion(): string;
159
158
  getAlias(): string;
160
159
  getAliases(): string[];
161
160
  /**
@@ -173,7 +172,7 @@ export declare class CommandBuilder {
173
172
  }): Generator<CommandBuilder>;
174
173
  getChildren(options?: {
175
174
  includeSelf?: boolean;
176
- }): CommandBuilder[];
175
+ }): CommandBuilder<unknown[], OptionValues>[];
177
176
  getAncestorsIterator(options?: {
178
177
  includeSelf?: boolean;
179
178
  }): Generator<CommandBuilder>;
@@ -183,17 +182,17 @@ export declare class CommandBuilder {
183
182
  getAncestors(options?: {
184
183
  includeSelf?: boolean;
185
184
  }): CommandBuilder[];
186
- getSiblingsIterator(): Generator<CommandBuilder, void, unknown>;
185
+ getSiblingsIterator(): Generator<CommandBuilder<unknown[], OptionValues>, void, unknown>;
187
186
  /**
188
187
  * Returns an array of sibling CommandBuilder objects.
189
188
  */
190
- getSiblings(): CommandBuilder[];
191
- getClosestNonNativeParent(): CommandBuilder;
189
+ getSiblings(): CommandBuilder<unknown[], OptionValues>[];
190
+ getClosestNonNativeParent(): CommandBuilder<unknown[], OptionValues>;
192
191
  getRenderedHelp(): string;
193
192
  getOptsWithGlobalsParsed(): OptionValues;
194
193
  getParsedValidArgsOptsWithPresets(): [Any[], OptionValues];
195
- getParsedValidArgsWithPresets<T>(presetArgs: T[][]): any[];
196
- getParsedValidOptsWithPresets(presetOpts: OptionValues[]): OptionValues;
194
+ getParsedValidArgsWithPresets(presetArgs: Any[][]): any[];
195
+ getParsedValidOptsWithPresets(presetOpts: OptionValues[]): Record<string, any>;
197
196
  getPresetArgsAndOpts(): [presetArgs: string[][], presetOpts: OptionValues[], presetOrder: string[]];
198
197
  protected combineVariadicArgs(result: Any[]): any[];
199
198
  protected debugLogArgsOpts(args: Any[], opts: OptionValues, presetArgs: string[][], presetOpts: OptionValues[], presetOrder: string[]): void;
@@ -230,9 +229,8 @@ export declare class CommandBuilder {
230
229
  protected assertNoDuplicateCommandNames(): void;
231
230
  protected hasIdenticalParentOption(option: Option): boolean;
232
231
  protected assertNoDuplicateOptionNames(): void;
233
- protected initializeActionWrapper(): void;
232
+ protected initializeActionWrapper(isAsync?: boolean): void;
234
233
  protected initializeHelp(): void;
235
234
  protected inheritParentHiddenGlobals(): void;
236
235
  protected assertCommandNameNotReserved(name: string): void;
237
- protected assertNotInitialized(): void;
238
236
  }
@@ -1,12 +1,13 @@
1
- import { Any } from '../util/types/Any';
1
+ import type { Any } from '../util/types/Any';
2
2
  import { CommandBuilder } from './CommandBuilder';
3
- import { Option } from 'commander';
4
- import { TStringParser } from '../util/types/TStringParser';
5
- import { TValidator } from '../util/types/TValidator';
6
- export declare class CommandBuilderMetaData {
3
+ import { Option } from '@commander-js/extra-typings';
4
+ import type { TStringParser } from '../util/types/TStringParser';
5
+ import type { TValidator } from '../util/types/TValidator';
6
+ export declare class CommandBuilderMetaData<Args extends Any[] = unknown[]> {
7
7
  subcommands: CommandBuilder[];
8
+ optsMap: Record<string, Option>;
8
9
  globalOptions: Option[];
9
- hiddenGlobalOptions: Set<Option>;
10
+ hiddenGlobalOptions: Set<Option<"", undefined, undefined, undefined, false, undefined>>;
10
11
  presetOptionKeys: string[];
11
12
  argParsers: TStringParser<Any>[];
12
13
  argValidators: TValidator<Any>[][];
@@ -14,7 +15,6 @@ export declare class CommandBuilderMetaData {
14
15
  optValidators: Record<string, TValidator<Any>[]>;
15
16
  rawArgs: string[];
16
17
  isNative: boolean;
17
- isInitialized: boolean;
18
18
  get actionHandler(): (this: CommandBuilder, ...args: any[]) => void | Promise<void>;
19
19
  get errorHandler(): (this: CommandBuilder, error: unknown, cmd: CommandBuilder) => void;
20
20
  get hasCustomActionHandler(): boolean;
@@ -75,5 +75,5 @@ export declare class CommandFeatureSelector {
75
75
  * @param throwIfNative - Indicates whether an error should be thrown if the command is native.
76
76
  * @returns The current CommandFeatureSelector instance.
77
77
  */
78
- protected setProperty(boolean: boolean | undefined, prop: keyof this, method: string, throwIfNative: boolean): this;
78
+ protected setProperty(boolean: boolean, prop: keyof this, method: string, throwIfNative: boolean): this;
79
79
  }
@@ -0,0 +1,28 @@
1
+ import { Argument, Command, Help, Option } from '@commander-js/extra-typings';
2
+ export declare const DefaultHelpConfig: {
3
+ helpWidth: any;
4
+ showGlobalOptions: boolean;
5
+ sortSubcommands: boolean;
6
+ sortOptions: boolean;
7
+ subcommandTerm: typeof subcommandTerm;
8
+ argumentTerm: typeof argumentTerm;
9
+ commandUsage: typeof commandUsage;
10
+ visibleOptions: typeof visibleOptions;
11
+ visibleGlobalOptions: typeof visibleGlobalOptions;
12
+ subcommandDescription: typeof subcommandDescription;
13
+ optionDescription: typeof optionDescription;
14
+ argumentDescription: typeof argumentDescription;
15
+ commandDescription: typeof commandDescription;
16
+ formatHelp: typeof formatHelp;
17
+ };
18
+ declare function formatHelp(this: Help, cmd: Command): any;
19
+ declare function subcommandTerm(this: Help, cmd: Command): string;
20
+ declare function argumentTerm(this: Help, arg: Argument): string;
21
+ declare function commandUsage(this: Help, cmd: Command): string;
22
+ declare function visibleOptions(this: Help, cmd: Command): Option<"", undefined, undefined, undefined, false, undefined>[];
23
+ declare function visibleGlobalOptions(this: Help, cmd: Command): Option<"", undefined, undefined, undefined, false, undefined>[];
24
+ declare function subcommandDescription(this: Help, cmd: Command): string;
25
+ declare function optionDescription(this: Help, opt: Option): string;
26
+ declare function argumentDescription(this: Help, arg: Argument): string;
27
+ declare function commandDescription(this: Help, cmd: Command): string;
28
+ export {};
@@ -0,0 +1,6 @@
1
+ export type ReturnTypesOfFunctionArray<Arr extends ((...args: any[]) => unknown)[]> = {
2
+ [I in keyof Arr]: Arr[I] extends never | undefined ? string : ReturnType<Arr[I]>;
3
+ };
4
+ export type ReturnTypesOfFunctionMap<O extends Record<string, (...args: any[]) => unknown>> = {
5
+ [K in keyof O]: O[K] extends never | undefined ? string : ReturnType<O[K]>;
6
+ };
@@ -1,5 +1,5 @@
1
1
  import colors from 'ansi-colors';
2
- import { Any } from '../util/types/Any';
2
+ import type { Any } from '../util/types/Any';
3
3
  import { MethodDisabler } from '../util/function/MethodDisabler';
4
4
  /**
5
5
  * The OutputManager class manages the output of debug messages to the console.
@@ -1,7 +1,7 @@
1
1
  import { ArgumentBuilder } from '../arg/ArgumentBuilder';
2
- import { JsonValue } from '../util/types/JsonValue';
2
+ import type { JsonValue } from '../util/types/JsonValue';
3
3
  import { OptionBuilder } from '../opt/OptionBuilder';
4
- import { TStringParser } from '../util/types/TStringParser';
4
+ import type { TStringParser } from '../util/types/TStringParser';
5
5
  export declare abstract class ParserSelector<Builder extends ArgumentBuilder | OptionBuilder> {
6
6
  protected readonly builder: Builder;
7
7
  constructor(builder: Builder);
@@ -12,5 +12,5 @@ export declare abstract class ParserSelector<Builder extends ArgumentBuilder | O
12
12
  delimitedStrings(delimiter?: string): Builder;
13
13
  delimitedNumbers(delimiter?: string): Builder;
14
14
  delimitedIntegers(delimiter?: string): Builder;
15
- delimited<T extends JsonValue>(delimiter: string | undefined, parser: TStringParser<T>): Builder;
15
+ delimited<T extends JsonValue>(delimiter: string, parser: TStringParser<T>): Builder;
16
16
  }
@@ -1,7 +1,7 @@
1
1
  import { ArgumentBuilder } from '../arg/ArgumentBuilder';
2
- import { JsonValue } from '../util/types/JsonValue';
2
+ import type { JsonValue } from '../util/types/JsonValue';
3
3
  import { OptionBuilder } from '../opt/OptionBuilder';
4
- import { TValidator } from '../util/types/TValidator';
4
+ import type { TValidator } from '../util/types/TValidator';
5
5
  export declare abstract class ValidatorSelector<Builder extends OptionBuilder | ArgumentBuilder> {
6
6
  protected readonly builder: Builder;
7
7
  constructor(builder: Builder);
@@ -1,6 +1,6 @@
1
- import { Any } from '../util/types/Any';
1
+ import type { Any } from '../util/types/Any';
2
2
  import { JsonFile } from './JsonFile';
3
- import { JsonValue } from '../util/types/JsonValue';
3
+ import type { JsonValue } from '../util/types/JsonValue';
4
4
  /**
5
5
  * A class that represents a section of the JSON file used as a simple database.
6
6
  */
@@ -52,7 +52,7 @@ export declare abstract class AbstractJsonFileSection<Val = JsonValue> {
52
52
  /**
53
53
  * The CommandBuilder associated with the section.
54
54
  */
55
- get cmd(): import("..").CommandBuilder;
55
+ get cmd(): import("..").CommandBuilder<unknown[], import("@commander-js/extra-typings").OptionValues>;
56
56
  /**
57
57
  * Saves the section.
58
58
  * @returns A promise that resolves when the section is saved.
@@ -1,6 +1,6 @@
1
1
  import { AbstractJsonFileSection } from './AbstractJsonFileSection';
2
2
  import { JsonFile } from './JsonFile';
3
- import { JsonValue } from '../util/types/JsonValue';
3
+ import type { JsonValue } from '../util/types/JsonValue';
4
4
  /**
5
5
  * A class that represents the appdata section of the JSON file used as simple database.
6
6
  */
@@ -1,9 +1,9 @@
1
1
  import { AbstractJsonFileSection } from './AbstractJsonFileSection';
2
- import { IConfig } from '../types/IConfig';
2
+ import type { IConfig } from '../types/IConfig';
3
3
  import { JsonFile } from './JsonFile';
4
- import { JsonValue } from '../util/types/JsonValue';
5
- import { TStringParser } from '../util/types/TStringParser';
6
- import { TValidator } from '../util/types/TValidator';
4
+ import type { JsonValue } from '../util/types/JsonValue';
5
+ import type { TStringParser } from '../util/types/TStringParser';
6
+ import type { TValidator } from '../util/types/TValidator';
7
7
  /**
8
8
  * A class that represents the user-config section of the JSON file used as simple database.
9
9
  */
@@ -1,5 +1,5 @@
1
1
  import { AbstractJsonFileSection } from './AbstractJsonFileSection';
2
- import { IPreset } from '../types/IPreset';
2
+ import type { IPreset } from '../types/IPreset';
3
3
  import { JsonFile } from './JsonFile';
4
4
  /**
5
5
  * A class that represents the user-presets section of the JSON file used as simple database.
@@ -34,7 +34,7 @@ export declare class PresetsSection extends AbstractJsonFileSection<IPreset> {
34
34
  * @param values - The values to set.
35
35
  * @param save - Indicates whether to save the section after setting the values.
36
36
  */
37
- setAll(presets: typeof this.defaultValues, save?: boolean): Promise<void>;
37
+ setAll(presets: Record<string, IPreset>, save?: boolean): Promise<void>;
38
38
  /**
39
39
  * Deletes the value associated with the specified key.
40
40
  * @param key - The key to delete.
@@ -2,6 +2,7 @@ export * from './arg/ArgumentBuilder';
2
2
  export * from './arg/ArgumentParserSelector';
3
3
  export * from './arg/ArgumentReader';
4
4
  export * from './arg/ArgumentValidatorSelector';
5
+ export * from './cmd/asdas';
5
6
  export * from './cmd/CLI';
6
7
  export * from './cmd/CommandBuilder';
7
8
  export * from './cmd/CommandBuilderMetaData';
@@ -1,6 +1,6 @@
1
1
  import { OptionBuilder } from './OptionBuilder';
2
2
  import { ParserSelector } from '../core/ParserSelector';
3
- import { TStringParser } from '../util/types/TStringParser';
3
+ import type { TStringParser } from '../util/types/TStringParser';
4
4
  export declare class OptionArgumentParserSelector extends ParserSelector<OptionBuilder> {
5
5
  constructor(builder: OptionBuilder);
6
6
  custom<T>(parser: TStringParser<T>): OptionBuilder;
@@ -1,7 +1,7 @@
1
1
  import { OptionBuilder } from './OptionBuilder';
2
- import { TValidator } from '../util/types/TValidator';
2
+ import type { TValidator } from '../util/types/TValidator';
3
3
  import { ValidatorSelector } from '../core/ValidatorSelector';
4
4
  export declare class OptionArgumentValidatorSelector extends ValidatorSelector<OptionBuilder> {
5
5
  constructor(builder: OptionBuilder);
6
- custom<O>(validator: TValidator<O>): OptionBuilder;
6
+ custom<T>(validator: TValidator<T>): OptionBuilder;
7
7
  }
@@ -1,8 +1,9 @@
1
1
  import { CommandBuilder } from '../cmd/CommandBuilder';
2
- import { Option, OptionValues } from 'commander';
2
+ import { Option } from '@commander-js/extra-typings';
3
3
  import { OptionArgumentParserSelector } from './OptionArgumentParserSelector';
4
4
  import { OptionArgumentValidatorSelector } from './OptionArgumentValidatorSelector';
5
5
  import { OptionReader } from './OptionReader';
6
+ import type { OptionValues } from '@commander-js/extra-typings';
6
7
  /**
7
8
  * Wrapper around the @see Option class, for more intuitive construction.
8
9
  * @remarks Options are one of boolean, negated, required argument, or optional argument.
@@ -1,8 +1,8 @@
1
- import { Option } from 'commander';
1
+ import { Option } from '@commander-js/extra-typings';
2
2
  /**
3
3
  * Extract the argument name from an option's 'flags' string.
4
4
  */
5
- declare function getArgumentName(opt: Option): string | undefined;
5
+ declare function getArgumentName(opt: Option): string;
6
6
  /**
7
7
  * Check if an option has an argument.
8
8
  */
@@ -2,22 +2,22 @@ import { OptionBuilder } from './OptionBuilder';
2
2
  export declare class OptionReader {
3
3
  protected readonly parent: OptionBuilder;
4
4
  constructor(parent: OptionBuilder);
5
- get $(): import("commander").Option;
6
- get option(): import("commander").Option;
5
+ get $(): import("@commander-js/extra-typings").Option<"", undefined, undefined, undefined, false, undefined>;
6
+ get option(): import("@commander-js/extra-typings").Option<"", undefined, undefined, undefined, false, undefined>;
7
7
  get description(): string;
8
8
  get optional(): boolean;
9
9
  get mandatory(): boolean;
10
10
  get hidden(): boolean;
11
11
  get variadic(): boolean;
12
- get short(): string | undefined;
13
- get long(): string | undefined;
12
+ get short(): string;
13
+ get long(): string;
14
14
  get preset(): unknown;
15
15
  get default(): any;
16
- get choices(): string[] | undefined;
17
- get env(): string | undefined;
16
+ get choices(): string[];
17
+ get env(): string;
18
18
  get flags(): string;
19
19
  get name(): string;
20
20
  get attributeName(): string;
21
- get defaultValueDescription(): string | undefined;
21
+ get defaultValueDescription(): string;
22
22
  get hasArgument(): boolean;
23
23
  }
@@ -0,0 +1,8 @@
1
+ import { Command } from '@commander-js/extra-typings';
2
+ import { CommandBuilder } from '../cmd/CommandBuilder';
3
+ export declare const commanderBackRefs: WeakMap<Command<any, any>, CommandBuilder<any, any>>;
4
+ declare module '@commander-js/extra-typings' {
5
+ interface Command {
6
+ get builder(): CommandBuilder;
7
+ }
8
+ }
@@ -1,6 +1,6 @@
1
- import { JsonValue } from '../util/types/JsonValue';
2
- import { TStringParser } from '../util/types/TStringParser';
3
- import { TValidator } from '../util/types/TValidator';
1
+ import type { JsonValue } from '../util/types/JsonValue';
2
+ import type { TStringParser } from '../util/types/TStringParser';
3
+ import type { TValidator } from '../util/types/TValidator';
4
4
  export interface IConfig<Val extends JsonValue> {
5
5
  /**
6
6
  * The default value of the property.
@@ -1,13 +1,14 @@
1
- import { OptionValues } from 'commander';
1
+ import type { Any } from '../util/types/Any';
2
+ import type { OptionValues } from '@commander-js/extra-typings';
2
3
  export interface IPreset {
3
4
  description: string;
4
5
  presets: string[];
5
- args: OptionValues[keyof OptionValues][];
6
+ args: Any[];
6
7
  options: OptionValues;
7
8
  }
8
9
  export interface IPresetPartial {
9
10
  description: string;
10
11
  presets?: string[];
11
- args?: OptionValues[keyof OptionValues][];
12
+ args?: Any[];
12
13
  options?: OptionValues;
13
14
  }
@@ -1,5 +1,5 @@
1
- import { JsonObject } from '../types/JsonObject';
2
- import { JsonValue } from '../types/JsonValue';
1
+ import type { JsonObject } from '../types/JsonObject';
2
+ import type { JsonValue } from '../types/JsonValue';
3
3
  /**
4
4
  * Represents a simple JSON file database.
5
5
  */
@@ -1,4 +1,4 @@
1
- import { IGetUserInputFromEditorOptions } from './IGetUserInputFromEditorOptions';
1
+ import type { IGetUserInputFromEditorOptions } from './IGetUserInputFromEditorOptions';
2
2
  /**
3
3
  * Prompts the user to edit a string in the user's text editor.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { JsonValue } from '../../types/JsonValue';
1
+ import type { JsonValue } from '../../types/JsonValue';
2
2
  /**
3
3
  * Edit a JSON-stringify-compatible value in the user's editor and return the (JSON.parse'd) result.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { IReadJsonFileOptions } from '../types/IReadJsonFileOptions';
1
+ import type { IReadJsonFileOptions } from '../types/IReadJsonFileOptions';
2
2
  /**
3
3
  * Reads a JSON file and then parses it into an object.
4
4
  * If an error occurs, it returns undefined.
@@ -1,4 +1,4 @@
1
- import { Any } from '../../types/Any';
1
+ import type { Any } from '../../types/Any';
2
2
  /**
3
3
  * Syncrhonously creates a temporary file and deletes it after the callback has finished.
4
4
  * @param fileExtension - The file extension to use for the temporary file.
@@ -1,6 +1,6 @@
1
- import { Any } from '../types/Any';
2
- import { ObjectKey } from '../types/ObjectKey';
3
- import { TFunctionNoNew } from '../types/TFunctionNoNew';
1
+ import type { Any } from '../types/Any';
2
+ import type { ObjectKey } from '../types/ObjectKey';
3
+ import type { TFunctionNoNew } from '../types/TFunctionNoNew';
4
4
  /**
5
5
  * A class that creates an object with methods for disabling/enabling a given method on a given object.
6
6
  *
@@ -1,4 +1,4 @@
1
- import { Any } from '../types/Any';
1
+ import type { Any } from '../types/Any';
2
2
  /**
3
3
  * Creates a function that merges objects based on a predicate function.
4
4
  */
@@ -1,4 +1,4 @@
1
- import { ObjectKey } from '../types/ObjectKey';
1
+ import type { ObjectKey } from '../types/ObjectKey';
2
2
  /**
3
3
  * Updates the property descriptors of the specified properties on the given object.
4
4
  * @param object - The object whose property descriptors are to be updated.
@@ -1,4 +1,4 @@
1
- import { ObjectKey } from '../types/ObjectKey';
1
+ import type { ObjectKey } from '../types/ObjectKey';
2
2
  /**
3
3
  * Sets the specified properties of an object as non-enumerable.
4
4
  * @remarks This function modifies the original object by setting the specified properties as non-enumerable.
@@ -1,4 +1,4 @@
1
- import { TStringParser } from '../types/TStringParser';
1
+ import type { TStringParser } from '../types/TStringParser';
2
2
  /**
3
3
  * Creates a parser function that parses a delimited string into a list of typed values.
4
4
  * The parser function takes a string and returns an array of typed values.
@@ -1,5 +1,5 @@
1
- import { DeepObject } from './DeepObject';
2
- import { ObjectKey } from './ObjectKey';
1
+ import type { DeepObject } from './DeepObject';
2
+ import type { ObjectKey } from './ObjectKey';
3
3
  /**
4
4
  * Recursively defined array that can contain objects+arrays with values of a given type V.
5
5
  */
@@ -1,5 +1,5 @@
1
- import { DeepArray } from './DeepArray';
2
- import { ObjectKey } from './ObjectKey';
1
+ import type { DeepArray } from './DeepArray';
2
+ import type { ObjectKey } from './ObjectKey';
3
3
  /**
4
4
  * Recursively defined object with objects+arrays with values of a given type V.
5
5
  */
@@ -1,5 +1,5 @@
1
- import { DeepArray } from './DeepArray';
2
- import { JsonRawPrimitive } from './JsonRawPrimitive';
1
+ import type { DeepArray } from './DeepArray';
2
+ import type { JsonRawPrimitive } from './JsonRawPrimitive';
3
3
  /**
4
4
  * Return-type of parsed JSON array.
5
5
  */
@@ -1,5 +1,5 @@
1
- import { DeepObject } from './DeepObject';
2
- import { JsonRawPrimitive } from './JsonRawPrimitive';
1
+ import type { DeepObject } from './DeepObject';
2
+ import type { JsonRawPrimitive } from './JsonRawPrimitive';
3
3
  /**
4
4
  * Return-type of parsed JSON object.
5
5
  */
@@ -1,4 +1,4 @@
1
- import { JsonDefinedPrimitive } from './JsonDefinedPrimitive';
1
+ import type { JsonDefinedPrimitive } from './JsonDefinedPrimitive';
2
2
  /**
3
3
  * All supported primitive types in JSON.
4
4
  */
@@ -1,6 +1,6 @@
1
- import { JsonArray } from './JsonArray';
2
- import { JsonObject } from './JsonObject';
3
- import { JsonRawPrimitive } from './JsonRawPrimitive';
1
+ import type { JsonArray } from './JsonArray';
2
+ import type { JsonObject } from './JsonObject';
3
+ import type { JsonRawPrimitive } from './JsonRawPrimitive';
4
4
  /**
5
5
  * Any JSON value. Any JSON.parse() return value.
6
6
  */
@@ -1,4 +1,4 @@
1
- import { Any } from './Any';
1
+ import type { Any } from './Any';
2
2
  /**
3
3
  * This type represents a constructor function. It is a function that can be called with the `new` keyword to create an instance of a certain type.
4
4
  */
@@ -0,0 +1,4 @@
1
+ import type { Any } from './Any';
2
+ import type { TConstructor } from './TConstructor';
3
+ import type { TFunctionNoNew } from './TFunctionNoNew';
4
+ export type TFunction<R = Any, A extends Any[] = Any[]> = TConstructor<R, A> | TFunctionNoNew<R, A>;
@@ -1,2 +1,2 @@
1
- import { Any } from './Any';
1
+ import type { Any } from './Any';
2
2
  export type TFunctionNoNew<R = Any, A extends Any[] = Any[]> = (...args: A) => R;