@start9labs/start-sdk 0.4.0-beta.5 → 0.4.0-beta.51

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 (834) hide show
  1. package/base/lib/Effects.d.ts +35 -39
  2. package/base/lib/actions/index.d.ts +18 -19
  3. package/base/lib/actions/index.js +4 -4
  4. package/base/lib/actions/index.js.map +1 -1
  5. package/base/lib/actions/input/builder/index.d.ts +4 -4
  6. package/base/lib/actions/input/builder/inputSpec.d.ts +33 -31
  7. package/base/lib/actions/input/builder/inputSpec.js +29 -25
  8. package/base/lib/actions/input/builder/inputSpec.js.map +1 -1
  9. package/base/lib/actions/input/builder/inputSpecTools.d.ts +173 -0
  10. package/base/lib/actions/input/builder/inputSpecTools.js +16 -0
  11. package/base/lib/actions/input/builder/inputSpecTools.js.map +1 -0
  12. package/base/lib/actions/input/builder/list.d.ts +18 -29
  13. package/base/lib/actions/input/builder/list.js +28 -39
  14. package/base/lib/actions/input/builder/list.js.map +1 -1
  15. package/base/lib/actions/input/builder/value.d.ts +428 -76
  16. package/base/lib/actions/input/builder/value.js +567 -230
  17. package/base/lib/actions/input/builder/value.js.map +1 -1
  18. package/base/lib/actions/input/builder/variants.d.ts +32 -29
  19. package/base/lib/actions/input/builder/variants.js +26 -25
  20. package/base/lib/actions/input/builder/variants.js.map +1 -1
  21. package/base/lib/actions/input/index.d.ts +3 -3
  22. package/base/lib/actions/input/inputSpecConstants.d.ts +27 -19
  23. package/base/lib/actions/input/inputSpecConstants.js +30 -26
  24. package/base/lib/actions/input/inputSpecConstants.js.map +1 -1
  25. package/base/lib/actions/input/inputSpecTypes.d.ts +24 -23
  26. package/base/lib/actions/input/inputSpecTypes.js +1 -1
  27. package/base/lib/actions/input/inputSpecTypes.js.map +1 -1
  28. package/base/lib/actions/setupActions.d.ts +27 -19
  29. package/base/lib/actions/setupActions.js +42 -7
  30. package/base/lib/actions/setupActions.js.map +1 -1
  31. package/base/lib/dependencies/dependencies.d.ts +8 -4
  32. package/base/lib/dependencies/dependencies.js +41 -32
  33. package/base/lib/dependencies/dependencies.js.map +1 -1
  34. package/base/lib/dependencies/setupDependencies.d.ts +7 -9
  35. package/base/lib/dependencies/setupDependencies.js +3 -10
  36. package/base/lib/dependencies/setupDependencies.js.map +1 -1
  37. package/base/lib/exver/exver.d.ts +5 -5
  38. package/base/lib/exver/exver.js +42 -73
  39. package/base/lib/exver/exver.js.map +1 -1
  40. package/base/lib/exver/index.d.ts +12 -12
  41. package/base/lib/exver/index.js +153 -153
  42. package/base/lib/exver/index.js.map +1 -1
  43. package/base/lib/index.d.ts +11 -10
  44. package/base/lib/index.js +4 -2
  45. package/base/lib/index.js.map +1 -1
  46. package/base/lib/inits/index.d.ts +2 -0
  47. package/base/lib/inits/index.js +19 -0
  48. package/base/lib/inits/index.js.map +1 -0
  49. package/base/lib/inits/setupInit.d.ts +9 -0
  50. package/base/lib/inits/setupInit.js +40 -0
  51. package/base/lib/inits/setupInit.js.map +1 -0
  52. package/base/lib/inits/setupUninit.d.ts +25 -0
  53. package/base/lib/inits/setupUninit.js +24 -0
  54. package/base/lib/inits/setupUninit.js.map +1 -0
  55. package/base/lib/interfaces/Host.d.ts +6 -6
  56. package/base/lib/interfaces/Host.js +28 -18
  57. package/base/lib/interfaces/Host.js.map +1 -1
  58. package/base/lib/interfaces/Origin.d.ts +6 -6
  59. package/base/lib/interfaces/Origin.js +5 -5
  60. package/base/lib/interfaces/Origin.js.map +1 -1
  61. package/base/lib/interfaces/ServiceInterfaceBuilder.d.ts +5 -5
  62. package/base/lib/interfaces/setupExportedUrls.d.ts +7 -0
  63. package/base/lib/interfaces/setupExportedUrls.js +27 -0
  64. package/base/lib/interfaces/setupExportedUrls.js.map +1 -0
  65. package/base/lib/interfaces/setupInterfaces.d.ts +4 -6
  66. package/base/lib/interfaces/setupInterfaces.js +8 -17
  67. package/base/lib/interfaces/setupInterfaces.js.map +1 -1
  68. package/base/lib/osBindings/AcceptSigners.d.ts +1 -1
  69. package/base/lib/osBindings/ActionInput.d.ts +2 -0
  70. package/base/lib/osBindings/ActionInput.js +0 -1
  71. package/base/lib/osBindings/ActionInput.js.map +1 -1
  72. package/base/lib/osBindings/ActionMetadata.d.ts +2 -2
  73. package/base/lib/osBindings/ActionResult.d.ts +4 -4
  74. package/base/lib/osBindings/ActionResultMember.d.ts +2 -2
  75. package/base/lib/osBindings/ActionResultV1.d.ts +1 -1
  76. package/base/lib/osBindings/ActionResultValue.d.ts +3 -3
  77. package/base/lib/osBindings/ActionVisibility.d.ts +2 -2
  78. package/base/lib/osBindings/AddAdminParams.d.ts +1 -1
  79. package/base/lib/osBindings/AddAssetParams.d.ts +2 -2
  80. package/base/lib/osBindings/AddCategoryParams.d.ts +2 -3
  81. package/base/lib/osBindings/AddCategoryParams.js +0 -1
  82. package/base/lib/osBindings/AddCategoryParams.js.map +1 -1
  83. package/base/lib/osBindings/AddMirrorParams.d.ts +7 -0
  84. package/base/lib/osBindings/AddMirrorParams.js +3 -0
  85. package/base/lib/osBindings/AddMirrorParams.js.map +1 -0
  86. package/base/lib/osBindings/AddPackageParams.d.ts +3 -3
  87. package/base/lib/osBindings/AddPackageSignerParams.d.ts +7 -0
  88. package/base/lib/osBindings/AddPackageSignerParams.js +3 -0
  89. package/base/lib/osBindings/AddPackageSignerParams.js.map +1 -0
  90. package/base/lib/osBindings/AddPackageToCategoryParams.d.ts +5 -0
  91. package/base/lib/osBindings/AddPackageToCategoryParams.js +3 -0
  92. package/base/lib/osBindings/AddPackageToCategoryParams.js.map +1 -0
  93. package/base/lib/osBindings/AddPrivateDomainParams.d.ts +5 -0
  94. package/base/lib/osBindings/AddPrivateDomainParams.js +3 -0
  95. package/base/lib/osBindings/AddPrivateDomainParams.js.map +1 -0
  96. package/base/lib/osBindings/AddPublicDomainParams.d.ts +7 -0
  97. package/base/lib/osBindings/AddPublicDomainParams.js +3 -0
  98. package/base/lib/osBindings/AddPublicDomainParams.js.map +1 -0
  99. package/base/lib/osBindings/AddSslOptions.d.ts +2 -1
  100. package/base/lib/osBindings/AddTunnelParams.d.ts +7 -0
  101. package/base/lib/osBindings/AddTunnelParams.js +3 -0
  102. package/base/lib/osBindings/AddTunnelParams.js.map +1 -0
  103. package/base/lib/osBindings/AddressInfo.d.ts +1 -1
  104. package/base/lib/osBindings/Alerts.d.ts +6 -5
  105. package/base/lib/osBindings/Alerts.js +0 -1
  106. package/base/lib/osBindings/Alerts.js.map +1 -1
  107. package/base/lib/osBindings/Algorithm.d.ts +1 -1
  108. package/base/lib/osBindings/AllPackageData.d.ts +2 -2
  109. package/base/lib/osBindings/AllowedStatuses.d.ts +1 -1
  110. package/base/lib/osBindings/AlpnInfo.d.ts +2 -2
  111. package/base/lib/osBindings/ApiState.d.ts +1 -1
  112. package/base/lib/osBindings/AttachParams.d.ts +3 -2
  113. package/base/lib/osBindings/BackupInfo.d.ts +9 -0
  114. package/base/lib/osBindings/{MainStatus.js → BackupInfo.js} +1 -1
  115. package/base/lib/osBindings/BackupInfo.js.map +1 -0
  116. package/base/lib/osBindings/BackupParams.d.ts +9 -0
  117. package/base/lib/osBindings/{DomainConfig.js → BackupParams.js} +1 -1
  118. package/base/lib/osBindings/BackupParams.js.map +1 -0
  119. package/base/lib/osBindings/BackupReport.d.ts +9 -0
  120. package/base/lib/osBindings/BackupReport.js +3 -0
  121. package/base/lib/osBindings/BackupReport.js.map +1 -0
  122. package/base/lib/osBindings/BackupTarget.d.ts +17 -0
  123. package/base/lib/osBindings/BackupTarget.js +3 -0
  124. package/base/lib/osBindings/BackupTarget.js.map +1 -0
  125. package/base/lib/osBindings/BackupTargetFS.d.ts +4 -4
  126. package/base/lib/osBindings/BackupTargetId.d.ts +1 -0
  127. package/base/lib/osBindings/{DependencyKind.js → BackupTargetId.js} +1 -1
  128. package/base/lib/osBindings/BackupTargetId.js.map +1 -0
  129. package/base/lib/osBindings/BindId.d.ts +1 -1
  130. package/base/lib/osBindings/BindInfo.d.ts +4 -2
  131. package/base/lib/osBindings/BindOptions.d.ts +2 -2
  132. package/base/lib/osBindings/BindParams.d.ts +3 -3
  133. package/base/lib/osBindings/BindingGatewaySetEnabledParams.d.ts +6 -0
  134. package/base/lib/osBindings/BindingGatewaySetEnabledParams.js +3 -0
  135. package/base/lib/osBindings/BindingGatewaySetEnabledParams.js.map +1 -0
  136. package/base/lib/osBindings/BindingSetAddressEnabledParams.d.ts +5 -0
  137. package/base/lib/osBindings/BindingSetAddressEnabledParams.js +4 -0
  138. package/base/lib/osBindings/BindingSetAddressEnabledParams.js.map +1 -0
  139. package/base/lib/osBindings/Bindings.d.ts +4 -0
  140. package/base/lib/osBindings/{HostAddress.js → Bindings.js} +1 -1
  141. package/base/lib/osBindings/Bindings.js.map +1 -0
  142. package/base/lib/osBindings/Blake3Commitment.d.ts +1 -1
  143. package/base/lib/osBindings/CancelInstallParams.d.ts +4 -0
  144. package/base/lib/osBindings/CancelInstallParams.js +3 -0
  145. package/base/lib/osBindings/CancelInstallParams.js.map +1 -0
  146. package/base/lib/osBindings/Category.d.ts +2 -3
  147. package/base/lib/osBindings/Celsius.d.ts +4 -1
  148. package/base/lib/osBindings/CheckDependenciesParam.d.ts +1 -1
  149. package/base/lib/osBindings/CheckDependenciesResult.d.ts +8 -8
  150. package/base/lib/osBindings/CheckDnsParams.d.ts +4 -0
  151. package/base/lib/osBindings/{GetStoreParams.js → CheckDnsParams.js} +1 -1
  152. package/base/lib/osBindings/CheckDnsParams.js.map +1 -0
  153. package/base/lib/osBindings/CheckPortParams.d.ts +5 -0
  154. package/base/lib/osBindings/CheckPortParams.js +3 -0
  155. package/base/lib/osBindings/CheckPortParams.js.map +1 -0
  156. package/base/lib/osBindings/CheckPortRes.d.ts +5 -0
  157. package/base/lib/osBindings/{ActionSeverity.js → CheckPortRes.js} +1 -1
  158. package/base/lib/osBindings/CheckPortRes.js.map +1 -0
  159. package/base/lib/osBindings/CifsAddParams.d.ts +6 -0
  160. package/base/lib/osBindings/{SetStoreParams.js → CifsAddParams.js} +1 -1
  161. package/base/lib/osBindings/CifsAddParams.js.map +1 -0
  162. package/base/lib/osBindings/CifsBackupTarget.d.ts +10 -0
  163. package/base/lib/osBindings/CifsBackupTarget.js +3 -0
  164. package/base/lib/osBindings/CifsBackupTarget.js.map +1 -0
  165. package/base/lib/osBindings/CifsRemoveParams.d.ts +4 -0
  166. package/base/lib/osBindings/CifsRemoveParams.js +3 -0
  167. package/base/lib/osBindings/CifsRemoveParams.js.map +1 -0
  168. package/base/lib/osBindings/CifsUpdateParams.d.ts +8 -0
  169. package/base/lib/osBindings/CifsUpdateParams.js +3 -0
  170. package/base/lib/osBindings/CifsUpdateParams.js.map +1 -0
  171. package/base/lib/osBindings/ClearActionsParams.d.ts +1 -1
  172. package/base/lib/osBindings/ClearBindingsParams.d.ts +1 -1
  173. package/base/lib/osBindings/ClearServiceInterfacesParams.d.ts +1 -1
  174. package/base/lib/osBindings/ClearTaskParams.d.ts +7 -0
  175. package/base/lib/osBindings/ClearTaskParams.js +3 -0
  176. package/base/lib/osBindings/ClearTaskParams.js.map +1 -0
  177. package/base/lib/osBindings/{ClearActionRequestsParams.d.ts → ClearTasksParams.d.ts} +1 -1
  178. package/base/lib/osBindings/{UnsetPublicParams.js → ClearTasksParams.js} +1 -1
  179. package/base/lib/osBindings/ClearTasksParams.js.map +1 -0
  180. package/base/lib/osBindings/ControlParams.d.ts +4 -0
  181. package/base/lib/osBindings/{ActionRequest.js → ControlParams.js} +1 -1
  182. package/base/lib/osBindings/ControlParams.js.map +1 -0
  183. package/base/lib/osBindings/CreateSubcontainerFsParams.d.ts +1 -1
  184. package/base/lib/osBindings/CreateTaskParams.d.ts +15 -0
  185. package/base/lib/osBindings/CreateTaskParams.js +3 -0
  186. package/base/lib/osBindings/CreateTaskParams.js.map +1 -0
  187. package/base/lib/osBindings/CurrentDependencies.d.ts +2 -2
  188. package/base/lib/osBindings/CurrentDependencyInfo.d.ts +5 -4
  189. package/base/lib/osBindings/DepInfo.d.ts +4 -4
  190. package/base/lib/osBindings/Dependencies.d.ts +2 -2
  191. package/base/lib/osBindings/DependencyMetadata.d.ts +4 -3
  192. package/base/lib/osBindings/DependencyRequirement.d.ts +4 -4
  193. package/base/lib/osBindings/DerivedAddressInfo.d.ts +15 -0
  194. package/base/lib/osBindings/{ActionRequestEntry.js → DerivedAddressInfo.js} +1 -1
  195. package/base/lib/osBindings/DerivedAddressInfo.js.map +1 -0
  196. package/base/lib/osBindings/Description.d.ts +3 -2
  197. package/base/lib/osBindings/Description.js +0 -1
  198. package/base/lib/osBindings/Description.js.map +1 -1
  199. package/base/lib/osBindings/DesiredStatus.d.ts +11 -0
  200. package/base/lib/osBindings/DesiredStatus.js +3 -0
  201. package/base/lib/osBindings/DesiredStatus.js.map +1 -0
  202. package/base/lib/osBindings/DestroySubcontainerFsParams.d.ts +1 -1
  203. package/base/lib/osBindings/DeviceFilter.d.ts +6 -3
  204. package/base/lib/osBindings/DnsSettings.d.ts +4 -0
  205. package/base/lib/osBindings/DnsSettings.js +4 -0
  206. package/base/lib/osBindings/DnsSettings.js.map +1 -0
  207. package/base/lib/osBindings/DomainSettings.d.ts +4 -0
  208. package/base/lib/osBindings/DomainSettings.js +3 -0
  209. package/base/lib/osBindings/DomainSettings.js.map +1 -0
  210. package/base/lib/osBindings/EditSignerParams.d.ts +3 -3
  211. package/base/lib/osBindings/EffectsRunActionParams.d.ts +7 -0
  212. package/base/lib/osBindings/EffectsRunActionParams.js +3 -0
  213. package/base/lib/osBindings/EffectsRunActionParams.js.map +1 -0
  214. package/base/lib/osBindings/ErrorData.d.ts +5 -0
  215. package/base/lib/osBindings/ErrorData.js +4 -0
  216. package/base/lib/osBindings/ErrorData.js.map +1 -0
  217. package/base/lib/osBindings/EventId.d.ts +4 -0
  218. package/base/lib/osBindings/{ProcedureId.js → EventId.js} +1 -1
  219. package/base/lib/osBindings/EventId.js.map +1 -0
  220. package/base/lib/osBindings/ExportActionParams.d.ts +2 -2
  221. package/base/lib/osBindings/ExportServiceInterfaceParams.d.ts +3 -3
  222. package/base/lib/osBindings/FileType.d.ts +1 -0
  223. package/base/lib/osBindings/FileType.js +4 -0
  224. package/base/lib/osBindings/FileType.js.map +1 -0
  225. package/base/lib/osBindings/ForgetGatewayParams.d.ts +4 -0
  226. package/base/lib/osBindings/ForgetGatewayParams.js +3 -0
  227. package/base/lib/osBindings/ForgetGatewayParams.js.map +1 -0
  228. package/base/lib/osBindings/FullIndex.d.ts +5 -5
  229. package/base/lib/osBindings/FullProgress.d.ts +2 -2
  230. package/base/lib/osBindings/GatewayId.d.ts +1 -0
  231. package/base/lib/osBindings/GatewayId.js +4 -0
  232. package/base/lib/osBindings/GatewayId.js.map +1 -0
  233. package/base/lib/osBindings/GatewayInfo.d.ts +6 -0
  234. package/base/lib/osBindings/GatewayInfo.js +3 -0
  235. package/base/lib/osBindings/GatewayInfo.js.map +1 -0
  236. package/base/lib/osBindings/GatewayType.d.ts +1 -0
  237. package/base/lib/osBindings/GatewayType.js +4 -0
  238. package/base/lib/osBindings/GatewayType.js.map +1 -0
  239. package/base/lib/osBindings/GetActionInputParams.d.ts +3 -2
  240. package/base/lib/osBindings/GetContainerIpParams.d.ts +2 -2
  241. package/base/lib/osBindings/GetHostInfoParams.d.ts +3 -3
  242. package/base/lib/osBindings/GetOsVersionParams.d.ts +3 -3
  243. package/base/lib/osBindings/GetOutboundGatewayParams.d.ts +4 -0
  244. package/base/lib/osBindings/GetOutboundGatewayParams.js +3 -0
  245. package/base/lib/osBindings/GetOutboundGatewayParams.js.map +1 -0
  246. package/base/lib/osBindings/GetPackageParams.d.ts +5 -5
  247. package/base/lib/osBindings/GetPackageResponse.d.ts +3 -3
  248. package/base/lib/osBindings/GetPackageResponseFull.d.ts +2 -2
  249. package/base/lib/osBindings/GetServiceInterfaceParams.d.ts +3 -3
  250. package/base/lib/osBindings/GetServiceManifestParams.d.ts +6 -0
  251. package/base/lib/osBindings/GetServiceManifestParams.js +3 -0
  252. package/base/lib/osBindings/GetServiceManifestParams.js.map +1 -0
  253. package/base/lib/osBindings/GetServicePortForwardParams.d.ts +2 -2
  254. package/base/lib/osBindings/GetSslCertificateParams.d.ts +2 -2
  255. package/base/lib/osBindings/GetSslKeyParams.d.ts +1 -1
  256. package/base/lib/osBindings/GetStatusParams.d.ts +2 -2
  257. package/base/lib/osBindings/GetSystemSmtpParams.d.ts +1 -1
  258. package/base/lib/osBindings/GigaBytes.d.ts +4 -1
  259. package/base/lib/osBindings/HardwareRequirements.d.ts +1 -1
  260. package/base/lib/osBindings/Host.d.ts +11 -12
  261. package/base/lib/osBindings/Hostname.d.ts +1 -0
  262. package/base/lib/osBindings/Hostname.js +4 -0
  263. package/base/lib/osBindings/Hostname.js.map +1 -0
  264. package/base/lib/osBindings/HostnameInfo.d.ts +5 -8
  265. package/base/lib/osBindings/HostnameMetadata.d.ts +26 -0
  266. package/base/lib/osBindings/HostnameMetadata.js +3 -0
  267. package/base/lib/osBindings/HostnameMetadata.js.map +1 -0
  268. package/base/lib/osBindings/Hosts.d.ts +2 -2
  269. package/base/lib/osBindings/IdMap.d.ts +5 -0
  270. package/base/lib/osBindings/IdMap.js +4 -0
  271. package/base/lib/osBindings/IdMap.js.map +1 -0
  272. package/base/lib/osBindings/ImageConfig.d.ts +2 -1
  273. package/base/lib/osBindings/ImageSource.d.ts +2 -2
  274. package/base/lib/osBindings/InfoParams.d.ts +6 -0
  275. package/base/lib/osBindings/InfoParams.js +3 -0
  276. package/base/lib/osBindings/InfoParams.js.map +1 -0
  277. package/base/lib/osBindings/InitAcmeParams.d.ts +5 -0
  278. package/base/lib/osBindings/InitAcmeParams.js +3 -0
  279. package/base/lib/osBindings/InitAcmeParams.js.map +1 -0
  280. package/base/lib/osBindings/InitProgressRes.d.ts +2 -2
  281. package/base/lib/osBindings/InstallParams.d.ts +2 -2
  282. package/base/lib/osBindings/InstalledState.d.ts +1 -1
  283. package/base/lib/osBindings/InstalledVersionParams.d.ts +1 -1
  284. package/base/lib/osBindings/InstallingInfo.d.ts +2 -2
  285. package/base/lib/osBindings/InstallingState.d.ts +1 -1
  286. package/base/lib/osBindings/IpHostname.d.ts +5 -6
  287. package/base/lib/osBindings/IpInfo.d.ts +3 -1
  288. package/base/lib/osBindings/KeyboardOptions.d.ts +7 -0
  289. package/base/lib/osBindings/KeyboardOptions.js +4 -0
  290. package/base/lib/osBindings/KeyboardOptions.js.map +1 -0
  291. package/base/lib/osBindings/KillParams.d.ts +3 -0
  292. package/base/lib/osBindings/KillParams.js +4 -0
  293. package/base/lib/osBindings/KillParams.js.map +1 -0
  294. package/base/lib/osBindings/ListNotificationParams.d.ts +4 -0
  295. package/base/lib/osBindings/{ActionRequestCondition.js → ListNotificationParams.js} +1 -1
  296. package/base/lib/osBindings/ListNotificationParams.js.map +1 -0
  297. package/base/lib/osBindings/ListPackageSignersParams.d.ts +1 -1
  298. package/base/lib/osBindings/ListServiceInterfacesParams.d.ts +2 -2
  299. package/base/lib/osBindings/LocaleString.d.ts +1 -0
  300. package/base/lib/osBindings/LocaleString.js +4 -0
  301. package/base/lib/osBindings/LocaleString.js.map +1 -0
  302. package/base/lib/osBindings/LogEntry.d.ts +5 -0
  303. package/base/lib/osBindings/LogEntry.js +4 -0
  304. package/base/lib/osBindings/LogEntry.js.map +1 -0
  305. package/base/lib/osBindings/LogFollowResponse.d.ts +5 -0
  306. package/base/lib/osBindings/LogFollowResponse.js +3 -0
  307. package/base/lib/osBindings/LogFollowResponse.js.map +1 -0
  308. package/base/lib/osBindings/LogResponse.d.ts +6 -0
  309. package/base/lib/osBindings/LogResponse.js +3 -0
  310. package/base/lib/osBindings/LogResponse.js.map +1 -0
  311. package/base/lib/osBindings/LoginParams.d.ts +1 -2
  312. package/base/lib/osBindings/LoginParams.js +1 -0
  313. package/base/lib/osBindings/LoginParams.js.map +1 -1
  314. package/base/lib/osBindings/LogsParams.d.ts +6 -0
  315. package/base/lib/osBindings/LogsParams.js +4 -0
  316. package/base/lib/osBindings/LogsParams.js.map +1 -0
  317. package/base/lib/osBindings/LshwDevice.d.ts +4 -4
  318. package/base/lib/osBindings/LshwDisplay.d.ts +4 -1
  319. package/base/lib/osBindings/LshwProcessor.d.ts +3 -1
  320. package/base/lib/osBindings/Manifest.d.ts +26 -21
  321. package/base/lib/osBindings/MebiBytes.d.ts +4 -1
  322. package/base/lib/osBindings/MerkleArchiveCommitment.d.ts +1 -1
  323. package/base/lib/osBindings/Metadata.d.ts +6 -0
  324. package/base/lib/osBindings/Metadata.js +3 -0
  325. package/base/lib/osBindings/Metadata.js.map +1 -0
  326. package/base/lib/osBindings/MetadataSrc.d.ts +7 -0
  327. package/base/lib/osBindings/MetadataSrc.js +3 -0
  328. package/base/lib/osBindings/MetadataSrc.js.map +1 -0
  329. package/base/lib/osBindings/Metrics.d.ts +4 -4
  330. package/base/lib/osBindings/MetricsCpu.d.ts +1 -1
  331. package/base/lib/osBindings/MetricsDisk.d.ts +2 -2
  332. package/base/lib/osBindings/MetricsFollowResponse.d.ts +6 -0
  333. package/base/lib/osBindings/MetricsFollowResponse.js +3 -0
  334. package/base/lib/osBindings/MetricsFollowResponse.js.map +1 -0
  335. package/base/lib/osBindings/MetricsGeneral.d.ts +1 -1
  336. package/base/lib/osBindings/MetricsMemory.d.ts +2 -2
  337. package/base/lib/osBindings/ModifyNotificationBeforeParams.d.ts +3 -0
  338. package/base/lib/osBindings/ModifyNotificationBeforeParams.js +4 -0
  339. package/base/lib/osBindings/ModifyNotificationBeforeParams.js.map +1 -0
  340. package/base/lib/osBindings/ModifyNotificationParams.d.ts +3 -0
  341. package/base/lib/osBindings/{BindingSetPublicParams.js → ModifyNotificationParams.js} +1 -1
  342. package/base/lib/osBindings/ModifyNotificationParams.js.map +1 -0
  343. package/base/lib/osBindings/MountParams.d.ts +1 -1
  344. package/base/lib/osBindings/MountTarget.d.ts +4 -2
  345. package/base/lib/osBindings/NamedHealthCheckResult.d.ts +8 -5
  346. package/base/lib/osBindings/NamedProgress.d.ts +1 -1
  347. package/base/lib/osBindings/NetInfo.d.ts +0 -1
  348. package/base/lib/osBindings/NetworkInfo.d.ts +11 -7
  349. package/base/lib/osBindings/NetworkInterfaceInfo.d.ts +5 -3
  350. package/base/lib/osBindings/NetworkInterfaceType.d.ts +1 -1
  351. package/base/lib/osBindings/Notification.d.ts +12 -0
  352. package/base/lib/osBindings/Notification.js +3 -0
  353. package/base/lib/osBindings/Notification.js.map +1 -0
  354. package/base/lib/osBindings/NotificationLevel.d.ts +1 -0
  355. package/base/lib/osBindings/NotificationLevel.js +4 -0
  356. package/base/lib/osBindings/NotificationLevel.js.map +1 -0
  357. package/base/lib/osBindings/NotificationWithId.d.ts +13 -0
  358. package/base/lib/osBindings/NotificationWithId.js +3 -0
  359. package/base/lib/osBindings/NotificationWithId.js.map +1 -0
  360. package/base/lib/osBindings/OsIndex.d.ts +1 -1
  361. package/base/lib/osBindings/OsVersionInfo.d.ts +3 -3
  362. package/base/lib/osBindings/OsVersionInfoMap.d.ts +1 -1
  363. package/base/lib/osBindings/PackageBackupInfo.d.ts +7 -0
  364. package/base/lib/osBindings/PackageBackupInfo.js +3 -0
  365. package/base/lib/osBindings/PackageBackupInfo.js.map +1 -0
  366. package/base/lib/osBindings/PackageBackupReport.d.ts +3 -0
  367. package/base/lib/osBindings/PackageBackupReport.js +4 -0
  368. package/base/lib/osBindings/PackageBackupReport.js.map +1 -0
  369. package/base/lib/osBindings/PackageDataEntry.d.ts +18 -15
  370. package/base/lib/osBindings/PackageDetailLevel.d.ts +1 -1
  371. package/base/lib/osBindings/PackageIndex.d.ts +3 -3
  372. package/base/lib/osBindings/PackageInfo.d.ts +6 -4
  373. package/base/lib/osBindings/PackageInfoShort.d.ts +2 -1
  374. package/base/lib/osBindings/PackageInfoShort.js +0 -1
  375. package/base/lib/osBindings/PackageInfoShort.js.map +1 -1
  376. package/base/lib/osBindings/PackagePlugin.d.ts +4 -0
  377. package/base/lib/osBindings/PackagePlugin.js +3 -0
  378. package/base/lib/osBindings/PackagePlugin.js.map +1 -0
  379. package/base/lib/osBindings/PackageState.d.ts +8 -8
  380. package/base/lib/osBindings/PackageVersionInfo.d.ts +24 -20
  381. package/base/lib/osBindings/PartitionInfo.d.ts +11 -0
  382. package/base/lib/osBindings/PartitionInfo.js +3 -0
  383. package/base/lib/osBindings/PartitionInfo.js.map +1 -0
  384. package/base/lib/osBindings/PasswordType.d.ts +1 -1
  385. package/base/lib/osBindings/Pem.d.ts +1 -0
  386. package/base/lib/osBindings/Pem.js +4 -0
  387. package/base/lib/osBindings/Pem.js.map +1 -0
  388. package/base/lib/osBindings/Percentage.d.ts +4 -1
  389. package/base/lib/osBindings/PluginHostnameInfo.d.ts +12 -0
  390. package/base/lib/osBindings/PluginHostnameInfo.js +3 -0
  391. package/base/lib/osBindings/PluginHostnameInfo.js.map +1 -0
  392. package/base/lib/osBindings/PluginId.d.ts +1 -0
  393. package/base/lib/osBindings/PluginId.js +4 -0
  394. package/base/lib/osBindings/PluginId.js.map +1 -0
  395. package/base/lib/osBindings/PortForward.d.ts +6 -0
  396. package/base/lib/osBindings/PortForward.js +3 -0
  397. package/base/lib/osBindings/PortForward.js.map +1 -0
  398. package/base/lib/osBindings/Progress.d.ts +2 -0
  399. package/base/lib/osBindings/Progress.js +0 -1
  400. package/base/lib/osBindings/Progress.js.map +1 -1
  401. package/base/lib/osBindings/ProgressUnits.d.ts +1 -0
  402. package/base/lib/osBindings/ProgressUnits.js +4 -0
  403. package/base/lib/osBindings/ProgressUnits.js.map +1 -0
  404. package/base/lib/osBindings/Public.d.ts +2 -2
  405. package/base/lib/osBindings/PublicDomainConfig.d.ts +6 -0
  406. package/base/lib/osBindings/PublicDomainConfig.js +3 -0
  407. package/base/lib/osBindings/PublicDomainConfig.js.map +1 -0
  408. package/base/lib/osBindings/QueryDnsParams.d.ts +3 -0
  409. package/base/lib/osBindings/QueryDnsParams.js +4 -0
  410. package/base/lib/osBindings/QueryDnsParams.js.map +1 -0
  411. package/base/lib/osBindings/RebuildParams.d.ts +4 -0
  412. package/base/lib/osBindings/RebuildParams.js +3 -0
  413. package/base/lib/osBindings/RebuildParams.js.map +1 -0
  414. package/base/lib/osBindings/RecoverySource.d.ts +3 -3
  415. package/base/lib/osBindings/RegistryAsset.d.ts +3 -3
  416. package/base/lib/osBindings/RegistryInfo.d.ts +2 -2
  417. package/base/lib/osBindings/RemoveAcmeParams.d.ts +4 -0
  418. package/base/lib/osBindings/RemoveAcmeParams.js +3 -0
  419. package/base/lib/osBindings/RemoveAcmeParams.js.map +1 -0
  420. package/base/lib/osBindings/RemoveAdminParams.d.ts +4 -0
  421. package/base/lib/osBindings/RemoveAdminParams.js +3 -0
  422. package/base/lib/osBindings/RemoveAdminParams.js.map +1 -0
  423. package/base/lib/osBindings/RemoveAssetParams.d.ts +4 -0
  424. package/base/lib/osBindings/RemoveAssetParams.js +4 -0
  425. package/base/lib/osBindings/RemoveAssetParams.js.map +1 -0
  426. package/base/lib/osBindings/RemoveDomainParams.d.ts +3 -0
  427. package/base/lib/osBindings/{ActionRequestInput.js → RemoveDomainParams.js} +1 -1
  428. package/base/lib/osBindings/RemoveDomainParams.js.map +1 -0
  429. package/base/lib/osBindings/RemoveMirrorParams.d.ts +7 -0
  430. package/base/lib/osBindings/RemoveMirrorParams.js +3 -0
  431. package/base/lib/osBindings/RemoveMirrorParams.js.map +1 -0
  432. package/base/lib/osBindings/RemovePackageFromCategoryParams.d.ts +5 -0
  433. package/base/lib/osBindings/RemovePackageFromCategoryParams.js +3 -0
  434. package/base/lib/osBindings/RemovePackageFromCategoryParams.js.map +1 -0
  435. package/base/lib/osBindings/RemovePackageParams.d.ts +8 -0
  436. package/base/lib/osBindings/RemovePackageParams.js +3 -0
  437. package/base/lib/osBindings/RemovePackageParams.js.map +1 -0
  438. package/base/lib/osBindings/RemovePackageSignerParams.d.ts +6 -0
  439. package/base/lib/osBindings/RemovePackageSignerParams.js +3 -0
  440. package/base/lib/osBindings/RemovePackageSignerParams.js.map +1 -0
  441. package/base/lib/osBindings/RemoveTunnelParams.d.ts +4 -0
  442. package/base/lib/osBindings/RemoveTunnelParams.js +3 -0
  443. package/base/lib/osBindings/RemoveTunnelParams.js.map +1 -0
  444. package/base/lib/osBindings/RenameGatewayParams.d.ts +5 -0
  445. package/base/lib/osBindings/RenameGatewayParams.js +3 -0
  446. package/base/lib/osBindings/RenameGatewayParams.js.map +1 -0
  447. package/base/lib/osBindings/RequestCommitment.d.ts +1 -1
  448. package/base/lib/osBindings/ResetPasswordParams.d.ts +5 -0
  449. package/base/lib/osBindings/ResetPasswordParams.js +3 -0
  450. package/base/lib/osBindings/ResetPasswordParams.js.map +1 -0
  451. package/base/lib/osBindings/RestorePackageParams.d.ts +7 -0
  452. package/base/lib/osBindings/{ActionRequestTrigger.js → RestorePackageParams.js} +1 -1
  453. package/base/lib/osBindings/RestorePackageParams.js.map +1 -0
  454. package/base/lib/osBindings/RunActionParams.d.ts +6 -4
  455. package/base/lib/osBindings/ServerBackupReport.d.ts +4 -0
  456. package/base/lib/osBindings/ServerBackupReport.js +4 -0
  457. package/base/lib/osBindings/ServerBackupReport.js.map +1 -0
  458. package/base/lib/osBindings/ServerInfo.d.ts +11 -6
  459. package/base/lib/osBindings/ServerStatus.d.ts +3 -3
  460. package/base/lib/osBindings/ServiceInterface.d.ts +3 -3
  461. package/base/lib/osBindings/ServiceInterfaceType.d.ts +1 -1
  462. package/base/lib/osBindings/SessionList.d.ts +1 -1
  463. package/base/lib/osBindings/Sessions.d.ts +2 -5
  464. package/base/lib/osBindings/Sessions.js +0 -1
  465. package/base/lib/osBindings/Sessions.js.map +1 -1
  466. package/base/lib/osBindings/SetCountryParams.d.ts +3 -0
  467. package/base/lib/osBindings/SetCountryParams.js +4 -0
  468. package/base/lib/osBindings/SetCountryParams.js.map +1 -0
  469. package/base/lib/osBindings/SetDefaultOutboundParams.d.ts +4 -0
  470. package/base/lib/osBindings/SetDefaultOutboundParams.js +3 -0
  471. package/base/lib/osBindings/SetDefaultOutboundParams.js.map +1 -0
  472. package/base/lib/osBindings/SetDependenciesParams.d.ts +1 -1
  473. package/base/lib/osBindings/SetHealth.d.ts +9 -6
  474. package/base/lib/osBindings/SetIconParams.d.ts +1 -1
  475. package/base/lib/osBindings/SetLanguageParams.d.ts +3 -0
  476. package/base/lib/osBindings/SetLanguageParams.js +4 -0
  477. package/base/lib/osBindings/SetLanguageParams.js.map +1 -0
  478. package/base/lib/osBindings/SetMainStatus.d.ts +1 -1
  479. package/base/lib/osBindings/SetMainStatusStatus.d.ts +1 -1
  480. package/base/lib/osBindings/SetOutboundGatewayParams.d.ts +6 -0
  481. package/base/lib/osBindings/SetOutboundGatewayParams.js +3 -0
  482. package/base/lib/osBindings/SetOutboundGatewayParams.js.map +1 -0
  483. package/base/lib/osBindings/SetStaticDnsParams.d.ts +3 -0
  484. package/base/lib/osBindings/SetStaticDnsParams.js +4 -0
  485. package/base/lib/osBindings/SetStaticDnsParams.js.map +1 -0
  486. package/base/lib/osBindings/SetWifiEnabledParams.d.ts +3 -0
  487. package/base/lib/osBindings/SetWifiEnabledParams.js +4 -0
  488. package/base/lib/osBindings/SetWifiEnabledParams.js.map +1 -0
  489. package/base/lib/osBindings/SetupExecuteParams.d.ts +5 -4
  490. package/base/lib/osBindings/SetupInfo.d.ts +4 -0
  491. package/base/lib/osBindings/SetupInfo.js +4 -0
  492. package/base/lib/osBindings/SetupInfo.js.map +1 -0
  493. package/base/lib/osBindings/SetupProgress.d.ts +2 -2
  494. package/base/lib/osBindings/SetupResult.d.ts +3 -3
  495. package/base/lib/osBindings/SetupResult.js +0 -1
  496. package/base/lib/osBindings/SetupResult.js.map +1 -1
  497. package/base/lib/osBindings/SetupStatusRes.d.ts +12 -7
  498. package/base/lib/osBindings/SideloadParams.d.ts +1 -0
  499. package/base/lib/osBindings/SideloadParams.js +4 -0
  500. package/base/lib/osBindings/SideloadParams.js.map +1 -0
  501. package/base/lib/osBindings/SideloadResponse.d.ts +5 -0
  502. package/base/lib/osBindings/SideloadResponse.js +3 -0
  503. package/base/lib/osBindings/SideloadResponse.js.map +1 -0
  504. package/base/lib/osBindings/SignAssetParams.d.ts +1 -1
  505. package/base/lib/osBindings/SignalStrength.d.ts +4 -0
  506. package/base/lib/osBindings/SignalStrength.js +4 -0
  507. package/base/lib/osBindings/SignalStrength.js.map +1 -0
  508. package/base/lib/osBindings/SignerInfo.d.ts +2 -2
  509. package/base/lib/osBindings/SshAddParams.d.ts +4 -0
  510. package/base/lib/osBindings/SshAddParams.js +3 -0
  511. package/base/lib/osBindings/SshAddParams.js.map +1 -0
  512. package/base/lib/osBindings/SshDeleteParams.d.ts +3 -0
  513. package/base/lib/osBindings/SshDeleteParams.js +4 -0
  514. package/base/lib/osBindings/SshDeleteParams.js.map +1 -0
  515. package/base/lib/osBindings/SshKeyResponse.d.ts +6 -0
  516. package/base/lib/osBindings/SshKeyResponse.js +4 -0
  517. package/base/lib/osBindings/SshKeyResponse.js.map +1 -0
  518. package/base/lib/osBindings/SshPubKey.d.ts +1 -0
  519. package/base/lib/osBindings/SshPubKey.js +4 -0
  520. package/base/lib/osBindings/SshPubKey.js.map +1 -0
  521. package/base/lib/osBindings/Ssid.d.ts +4 -0
  522. package/base/lib/osBindings/Ssid.js +4 -0
  523. package/base/lib/osBindings/Ssid.js.map +1 -0
  524. package/base/lib/osBindings/StartOsRecoveryInfo.d.ts +8 -0
  525. package/base/lib/osBindings/StartOsRecoveryInfo.js +3 -0
  526. package/base/lib/osBindings/StartOsRecoveryInfo.js.map +1 -0
  527. package/base/lib/osBindings/StartStop.d.ts +1 -1
  528. package/base/lib/osBindings/StatusInfo.d.ts +12 -0
  529. package/base/lib/osBindings/StatusInfo.js +3 -0
  530. package/base/lib/osBindings/StatusInfo.js.map +1 -0
  531. package/base/lib/osBindings/Task.d.ts +13 -0
  532. package/base/lib/osBindings/Task.js +3 -0
  533. package/base/lib/osBindings/Task.js.map +1 -0
  534. package/base/lib/osBindings/TaskCondition.d.ts +1 -0
  535. package/base/lib/osBindings/TaskCondition.js +4 -0
  536. package/base/lib/osBindings/TaskCondition.js.map +1 -0
  537. package/base/lib/osBindings/TaskEntry.d.ts +5 -0
  538. package/base/lib/osBindings/TaskEntry.js +3 -0
  539. package/base/lib/osBindings/TaskEntry.js.map +1 -0
  540. package/base/lib/osBindings/TaskInput.d.ts +4 -0
  541. package/base/lib/osBindings/TaskInput.js +4 -0
  542. package/base/lib/osBindings/TaskInput.js.map +1 -0
  543. package/base/lib/osBindings/TaskSeverity.d.ts +1 -0
  544. package/base/lib/osBindings/TaskSeverity.js +4 -0
  545. package/base/lib/osBindings/TaskSeverity.js.map +1 -0
  546. package/base/lib/osBindings/TaskTrigger.d.ts +5 -0
  547. package/base/lib/osBindings/TaskTrigger.js +3 -0
  548. package/base/lib/osBindings/TaskTrigger.js.map +1 -0
  549. package/base/lib/osBindings/TestSmtpParams.d.ts +1 -1
  550. package/base/lib/osBindings/TimeInfo.d.ts +4 -0
  551. package/base/lib/osBindings/TimeInfo.js +4 -0
  552. package/base/lib/osBindings/TimeInfo.js.map +1 -0
  553. package/base/lib/osBindings/UmountParams.d.ts +4 -0
  554. package/base/lib/osBindings/UmountParams.js +3 -0
  555. package/base/lib/osBindings/UmountParams.js.map +1 -0
  556. package/base/lib/osBindings/UninstallParams.d.ts +6 -0
  557. package/base/lib/osBindings/UninstallParams.js +3 -0
  558. package/base/lib/osBindings/UninstallParams.js.map +1 -0
  559. package/base/lib/osBindings/UpdatingState.d.ts +3 -2
  560. package/base/lib/osBindings/UrlPluginClearUrlsParams.d.ts +4 -0
  561. package/base/lib/osBindings/UrlPluginClearUrlsParams.js +3 -0
  562. package/base/lib/osBindings/UrlPluginClearUrlsParams.js.map +1 -0
  563. package/base/lib/osBindings/UrlPluginExportUrlParams.d.ts +7 -0
  564. package/base/lib/osBindings/UrlPluginExportUrlParams.js +3 -0
  565. package/base/lib/osBindings/UrlPluginExportUrlParams.js.map +1 -0
  566. package/base/lib/osBindings/UrlPluginRegisterParams.d.ts +4 -0
  567. package/base/lib/osBindings/UrlPluginRegisterParams.js +3 -0
  568. package/base/lib/osBindings/UrlPluginRegisterParams.js.map +1 -0
  569. package/base/lib/osBindings/UrlPluginRegistration.d.ts +4 -0
  570. package/base/lib/osBindings/UrlPluginRegistration.js +3 -0
  571. package/base/lib/osBindings/UrlPluginRegistration.js.map +1 -0
  572. package/base/lib/osBindings/VerifyCifsParams.d.ts +1 -1
  573. package/base/lib/osBindings/VersionSignerParams.d.ts +1 -1
  574. package/base/lib/osBindings/WifiAddParams.d.ts +4 -0
  575. package/base/lib/osBindings/WifiAddParams.js +4 -0
  576. package/base/lib/osBindings/WifiAddParams.js.map +1 -0
  577. package/base/lib/osBindings/WifiListInfo.d.ts +12 -0
  578. package/base/lib/osBindings/WifiListInfo.js +3 -0
  579. package/base/lib/osBindings/WifiListInfo.js.map +1 -0
  580. package/base/lib/osBindings/WifiListOut.d.ts +7 -0
  581. package/base/lib/osBindings/WifiListOut.js +3 -0
  582. package/base/lib/osBindings/WifiListOut.js.map +1 -0
  583. package/base/lib/osBindings/WifiSsidParams.d.ts +3 -0
  584. package/base/lib/osBindings/WifiSsidParams.js +4 -0
  585. package/base/lib/osBindings/WifiSsidParams.js.map +1 -0
  586. package/base/lib/osBindings/index.d.ts +304 -208
  587. package/base/lib/s9pk/index.d.ts +3 -4
  588. package/base/lib/s9pk/index.js +19 -25
  589. package/base/lib/s9pk/index.js.map +1 -1
  590. package/base/lib/s9pk/merkleArchive/directoryContents.d.ts +1 -1
  591. package/base/lib/s9pk/merkleArchive/directoryContents.js +2 -2
  592. package/base/lib/s9pk/merkleArchive/fileContents.d.ts +1 -1
  593. package/base/lib/s9pk/merkleArchive/fileContents.js +1 -1
  594. package/base/lib/s9pk/merkleArchive/index.d.ts +3 -3
  595. package/base/lib/s9pk/merkleArchive/index.js +8 -8
  596. package/base/lib/s9pk/merkleArchive/varint.js +1 -1
  597. package/base/lib/types/ManifestTypes.d.ts +47 -30
  598. package/base/lib/types.d.ts +33 -45
  599. package/base/lib/types.js +15 -2
  600. package/base/lib/types.js.map +1 -1
  601. package/base/lib/util/Drop.d.ts +47 -0
  602. package/base/lib/util/Drop.js +130 -0
  603. package/base/lib/util/Drop.js.map +1 -0
  604. package/base/lib/util/GetOutboundGateway.d.ts +30 -0
  605. package/base/lib/util/GetOutboundGateway.js +90 -0
  606. package/base/lib/util/GetOutboundGateway.js.map +1 -0
  607. package/base/lib/util/GetSystemSmtp.d.ts +13 -4
  608. package/base/lib/util/GetSystemSmtp.js +36 -9
  609. package/base/lib/util/GetSystemSmtp.js.map +1 -1
  610. package/base/lib/util/asError.js +1 -1
  611. package/base/lib/util/deepEqual.d.ts +1 -1
  612. package/base/lib/util/deepEqual.js +3 -4
  613. package/base/lib/util/deepEqual.js.map +1 -1
  614. package/base/lib/util/deepMerge.js +9 -4
  615. package/base/lib/util/deepMerge.js.map +1 -1
  616. package/base/lib/util/getDefaultString.d.ts +1 -1
  617. package/base/lib/util/getDefaultString.js +1 -1
  618. package/base/lib/util/getRandomCharInSet.js +9 -9
  619. package/base/lib/util/getRandomString.d.ts +1 -1
  620. package/base/lib/util/getRandomString.js +1 -1
  621. package/base/lib/util/getServiceInterface.d.ts +83 -33
  622. package/base/lib/util/getServiceInterface.js +170 -133
  623. package/base/lib/util/getServiceInterface.js.map +1 -1
  624. package/base/lib/util/getServiceInterfaces.d.ts +26 -9
  625. package/base/lib/util/getServiceInterfaces.js +66 -24
  626. package/base/lib/util/getServiceInterfaces.js.map +1 -1
  627. package/base/lib/util/graph.d.ts +2 -1
  628. package/base/lib/util/graph.js +12 -0
  629. package/base/lib/util/graph.js.map +1 -1
  630. package/base/lib/util/inMs.js +7 -7
  631. package/base/lib/util/index.d.ts +19 -19
  632. package/base/lib/util/index.js +8 -8
  633. package/base/lib/util/index.js.map +1 -1
  634. package/base/lib/util/ip.d.ts +30 -0
  635. package/base/lib/util/ip.js +257 -0
  636. package/base/lib/util/ip.js.map +1 -0
  637. package/base/lib/util/patterns.d.ts +1 -3
  638. package/base/lib/util/patterns.js +10 -18
  639. package/base/lib/util/patterns.js.map +1 -1
  640. package/base/lib/util/regexes.d.ts +3 -2
  641. package/base/lib/util/regexes.js +7 -3
  642. package/base/lib/util/regexes.js.map +1 -1
  643. package/base/lib/util/splitCommand.js +2 -3
  644. package/base/lib/util/splitCommand.js.map +1 -1
  645. package/base/lib/util/typeHelpers.d.ts +4 -4
  646. package/base/lib/util/typeHelpers.js +1 -1
  647. package/package/lib/StartSdk.d.ts +185 -609
  648. package/package/lib/StartSdk.js +144 -445
  649. package/package/lib/StartSdk.js.map +1 -1
  650. package/package/lib/backup/Backups.d.ts +14 -8
  651. package/package/lib/backup/Backups.js +57 -42
  652. package/package/lib/backup/Backups.js.map +1 -1
  653. package/package/lib/backup/index.d.ts +2 -2
  654. package/package/lib/backup/setupBackups.d.ts +8 -5
  655. package/package/lib/backup/setupBackups.js +7 -5
  656. package/package/lib/backup/setupBackups.js.map +1 -1
  657. package/package/lib/health/HealthCheck.d.ts +4 -5
  658. package/package/lib/health/HealthCheck.js +9 -16
  659. package/package/lib/health/HealthCheck.js.map +1 -1
  660. package/package/lib/health/checkFns/HealthCheckResult.d.ts +2 -2
  661. package/package/lib/health/checkFns/checkPortListening.d.ts +2 -2
  662. package/package/lib/health/checkFns/checkPortListening.js +7 -7
  663. package/package/lib/health/checkFns/checkWebUrl.d.ts +3 -3
  664. package/package/lib/health/checkFns/checkWebUrl.js +2 -2
  665. package/package/lib/health/checkFns/index.d.ts +4 -4
  666. package/package/lib/health/checkFns/index.js +1 -1
  667. package/package/lib/health/checkFns/runHealthScript.d.ts +3 -3
  668. package/package/lib/health/checkFns/runHealthScript.js +3 -3
  669. package/package/lib/health/checkFns/runHealthScript.js.map +1 -1
  670. package/package/lib/health/index.d.ts +2 -2
  671. package/package/lib/i18n/index.d.ts +24 -0
  672. package/package/lib/i18n/index.js +59 -0
  673. package/package/lib/i18n/index.js.map +1 -0
  674. package/package/lib/index.d.ts +21 -23
  675. package/package/lib/index.js +4 -9
  676. package/package/lib/index.js.map +1 -1
  677. package/package/lib/mainFn/CommandController.d.ts +8 -18
  678. package/package/lib/mainFn/CommandController.js +74 -38
  679. package/package/lib/mainFn/CommandController.js.map +1 -1
  680. package/package/lib/mainFn/Daemon.d.ts +20 -20
  681. package/package/lib/mainFn/Daemon.js +79 -20
  682. package/package/lib/mainFn/Daemon.js.map +1 -1
  683. package/package/lib/mainFn/Daemons.d.ts +81 -39
  684. package/package/lib/mainFn/Daemons.js +122 -35
  685. package/package/lib/mainFn/Daemons.js.map +1 -1
  686. package/package/lib/mainFn/HealthDaemon.d.ts +12 -11
  687. package/package/lib/mainFn/HealthDaemon.js +90 -49
  688. package/package/lib/mainFn/HealthDaemon.js.map +1 -1
  689. package/package/lib/mainFn/Mounts.d.ts +34 -47
  690. package/package/lib/mainFn/Mounts.js +19 -58
  691. package/package/lib/mainFn/Mounts.js.map +1 -1
  692. package/package/lib/mainFn/Oneshot.d.ts +12 -0
  693. package/package/lib/mainFn/Oneshot.js +23 -0
  694. package/package/lib/mainFn/Oneshot.js.map +1 -0
  695. package/package/lib/mainFn/index.d.ts +6 -7
  696. package/package/lib/mainFn/index.js +1 -1
  697. package/package/lib/mainFn/index.js.map +1 -1
  698. package/package/lib/manifest/setupManifest.d.ts +4 -4
  699. package/package/lib/manifest/setupManifest.js +19 -15
  700. package/package/lib/manifest/setupManifest.js.map +1 -1
  701. package/package/lib/test/health.readyCheck.test.js +2 -2
  702. package/package/lib/test/host.test.js +11 -11
  703. package/package/lib/test/host.test.js.map +1 -1
  704. package/package/lib/test/inputSpecBuilder.test.js +351 -353
  705. package/package/lib/test/inputSpecBuilder.test.js.map +1 -1
  706. package/package/lib/test/makeOutput.js +197 -197
  707. package/package/lib/test/output.d.ts +10 -39
  708. package/package/lib/test/output.js +419 -327
  709. package/package/lib/test/output.js.map +1 -1
  710. package/package/lib/test/output.sdk.d.ts +197 -967
  711. package/package/lib/test/output.sdk.js +15 -19
  712. package/package/lib/test/output.sdk.js.map +1 -1
  713. package/package/lib/test/output.test.js +31 -27
  714. package/package/lib/test/output.test.js.map +1 -1
  715. package/package/lib/trigger/TriggerInput.d.ts +1 -1
  716. package/package/lib/trigger/changeOnFirstSuccess.d.ts +1 -1
  717. package/package/lib/trigger/changeOnFirstSuccess.js +1 -1
  718. package/package/lib/trigger/index.d.ts +3 -3
  719. package/package/lib/trigger/lastStatus.d.ts +2 -2
  720. package/package/lib/trigger/lastStatus.js +1 -1
  721. package/package/lib/trigger/successFailure.d.ts +1 -1
  722. package/package/lib/types.d.ts +2 -2
  723. package/package/lib/util/GetServiceManifest.d.ts +36 -0
  724. package/package/lib/util/GetServiceManifest.js +116 -0
  725. package/package/lib/util/GetServiceManifest.js.map +1 -0
  726. package/package/lib/util/GetSslCertificate.d.ts +13 -4
  727. package/package/lib/util/GetSslCertificate.js +36 -9
  728. package/package/lib/util/GetSslCertificate.js.map +1 -1
  729. package/package/lib/util/SubContainer.d.ts +194 -49
  730. package/package/lib/util/SubContainer.js +265 -99
  731. package/package/lib/util/SubContainer.js.map +1 -1
  732. package/package/lib/util/Volume.d.ts +48 -0
  733. package/package/lib/util/Volume.js +91 -0
  734. package/package/lib/util/Volume.js.map +1 -0
  735. package/package/lib/util/fileHelper.d.ts +53 -20
  736. package/package/lib/util/fileHelper.js +161 -67
  737. package/package/lib/util/fileHelper.js.map +1 -1
  738. package/package/lib/util/index.d.ts +5 -4
  739. package/package/lib/util/index.js +7 -4
  740. package/package/lib/util/index.js.map +1 -1
  741. package/package/lib/version/VersionGraph.d.ts +20 -8
  742. package/package/lib/version/VersionGraph.js +101 -30
  743. package/package/lib/version/VersionGraph.js.map +1 -1
  744. package/package/lib/version/VersionInfo.d.ts +11 -6
  745. package/package/lib/version/VersionInfo.js +10 -10
  746. package/package/lib/version/VersionInfo.js.map +1 -1
  747. package/package/lib/version/index.d.ts +2 -2
  748. package/package/package.json +63 -0
  749. package/package/scripts/oldSpecToBuilder.js +52 -49
  750. package/package/scripts/oldSpecToBuilder.js.map +1 -1
  751. package/package.json +13 -14
  752. package/base/lib/osBindings/ActionRequest.d.ts +0 -13
  753. package/base/lib/osBindings/ActionRequest.js.map +0 -1
  754. package/base/lib/osBindings/ActionRequestCondition.d.ts +0 -1
  755. package/base/lib/osBindings/ActionRequestCondition.js.map +0 -1
  756. package/base/lib/osBindings/ActionRequestEntry.d.ts +0 -5
  757. package/base/lib/osBindings/ActionRequestEntry.js.map +0 -1
  758. package/base/lib/osBindings/ActionRequestInput.d.ts +0 -4
  759. package/base/lib/osBindings/ActionRequestInput.js.map +0 -1
  760. package/base/lib/osBindings/ActionRequestTrigger.d.ts +0 -5
  761. package/base/lib/osBindings/ActionRequestTrigger.js.map +0 -1
  762. package/base/lib/osBindings/ActionSeverity.d.ts +0 -1
  763. package/base/lib/osBindings/ActionSeverity.js.map +0 -1
  764. package/base/lib/osBindings/BindingSetPublicParams.d.ts +0 -4
  765. package/base/lib/osBindings/BindingSetPublicParams.js.map +0 -1
  766. package/base/lib/osBindings/ClearActionRequestsParams.js +0 -4
  767. package/base/lib/osBindings/ClearActionRequestsParams.js.map +0 -1
  768. package/base/lib/osBindings/DependencyKind.d.ts +0 -1
  769. package/base/lib/osBindings/DependencyKind.js.map +0 -1
  770. package/base/lib/osBindings/DomainConfig.d.ts +0 -5
  771. package/base/lib/osBindings/DomainConfig.js.map +0 -1
  772. package/base/lib/osBindings/ExposeForDependentsParams.d.ts +0 -3
  773. package/base/lib/osBindings/ExposeForDependentsParams.js +0 -4
  774. package/base/lib/osBindings/ExposeForDependentsParams.js.map +0 -1
  775. package/base/lib/osBindings/ForgetInterfaceParams.d.ts +0 -3
  776. package/base/lib/osBindings/ForgetInterfaceParams.js +0 -4
  777. package/base/lib/osBindings/ForgetInterfaceParams.js.map +0 -1
  778. package/base/lib/osBindings/GetStoreParams.d.ts +0 -7
  779. package/base/lib/osBindings/GetStoreParams.js.map +0 -1
  780. package/base/lib/osBindings/HostAddress.d.ts +0 -10
  781. package/base/lib/osBindings/HostAddress.js.map +0 -1
  782. package/base/lib/osBindings/MainStatus.d.ts +0 -31
  783. package/base/lib/osBindings/MainStatus.js.map +0 -1
  784. package/base/lib/osBindings/NetworkInterfaceSetInboundParams.d.ts +0 -4
  785. package/base/lib/osBindings/NetworkInterfaceSetInboundParams.js +0 -4
  786. package/base/lib/osBindings/NetworkInterfaceSetInboundParams.js.map +0 -1
  787. package/base/lib/osBindings/NetworkInterfaceSetPublicParams.d.ts +0 -4
  788. package/base/lib/osBindings/NetworkInterfaceSetPublicParams.js +0 -4
  789. package/base/lib/osBindings/NetworkInterfaceSetPublicParams.js.map +0 -1
  790. package/base/lib/osBindings/PackageSignerParams.d.ts +0 -6
  791. package/base/lib/osBindings/PackageSignerParams.js +0 -3
  792. package/base/lib/osBindings/PackageSignerParams.js.map +0 -1
  793. package/base/lib/osBindings/ProcedureId.d.ts +0 -4
  794. package/base/lib/osBindings/ProcedureId.js.map +0 -1
  795. package/base/lib/osBindings/RequestActionParams.d.ts +0 -15
  796. package/base/lib/osBindings/RequestActionParams.js +0 -3
  797. package/base/lib/osBindings/RequestActionParams.js.map +0 -1
  798. package/base/lib/osBindings/SetStoreParams.d.ts +0 -4
  799. package/base/lib/osBindings/SetStoreParams.js.map +0 -1
  800. package/base/lib/osBindings/UnsetInboundParams.d.ts +0 -3
  801. package/base/lib/osBindings/UnsetInboundParams.js +0 -4
  802. package/base/lib/osBindings/UnsetInboundParams.js.map +0 -1
  803. package/base/lib/osBindings/UnsetPublicParams.d.ts +0 -3
  804. package/base/lib/osBindings/UnsetPublicParams.js.map +0 -1
  805. package/base/lib/util/Hostname.d.ts +0 -2
  806. package/base/lib/util/Hostname.js +0 -25
  807. package/base/lib/util/Hostname.js.map +0 -1
  808. package/base/lib/util/PathBuilder.d.ts +0 -13
  809. package/base/lib/util/PathBuilder.js +0 -23
  810. package/base/lib/util/PathBuilder.js.map +0 -1
  811. package/package/lib/inits/index.d.ts +0 -3
  812. package/package/lib/inits/index.js +0 -6
  813. package/package/lib/inits/index.js.map +0 -1
  814. package/package/lib/inits/setupInit.d.ts +0 -14
  815. package/package/lib/inits/setupInit.js +0 -56
  816. package/package/lib/inits/setupInit.js.map +0 -1
  817. package/package/lib/inits/setupInstall.d.ts +0 -20
  818. package/package/lib/inits/setupInstall.js +0 -46
  819. package/package/lib/inits/setupInstall.js.map +0 -1
  820. package/package/lib/inits/setupUninstall.d.ts +0 -11
  821. package/package/lib/inits/setupUninstall.js +0 -23
  822. package/package/lib/inits/setupUninstall.js.map +0 -1
  823. package/package/lib/store/getStore.d.ts +0 -34
  824. package/package/lib/store/getStore.js +0 -77
  825. package/package/lib/store/getStore.js.map +0 -1
  826. package/package/lib/store/setupExposeStore.d.ts +0 -16
  827. package/package/lib/store/setupExposeStore.js +0 -21
  828. package/package/lib/store/setupExposeStore.js.map +0 -1
  829. package/package/lib/test/store.test.d.ts +0 -1
  830. package/package/lib/test/store.test.js +0 -90
  831. package/package/lib/test/store.test.js.map +0 -1
  832. package/package/lib/util/Drop.d.ts +0 -11
  833. package/package/lib/util/Drop.js +0 -30
  834. package/package/lib/util/Drop.js.map +0 -1
@@ -0,0 +1,48 @@
1
+ import * as fs from 'node:fs/promises';
2
+ import * as T from '../../../base/lib/types';
3
+ /**
4
+ * Common interface for objects that have a subpath method (Volume, SubContainer, etc.)
5
+ */
6
+ export interface PathBase {
7
+ subpath(path: string): string;
8
+ }
9
+ /**
10
+ * @description Represents a volume in the StartOS filesystem.
11
+ * Provides utilities for reading and writing files within the volume.
12
+ */
13
+ export declare class Volume<Id extends string = string> implements PathBase {
14
+ readonly id: Id;
15
+ /**
16
+ * The absolute path to this volume's root directory
17
+ */
18
+ readonly path: string;
19
+ constructor(id: Id);
20
+ /**
21
+ * Get the absolute path to a file or directory within this volume
22
+ * @param subpath Path relative to the volume root
23
+ */
24
+ subpath(subpath: string): string;
25
+ /**
26
+ * @description Read a file from this volume
27
+ * @param subpath Path relative to the volume root (e.g. "config.json" or "/data/file.txt")
28
+ * @param options Optional read options (same as node:fs/promises readFile)
29
+ */
30
+ readFile(subpath: string, options?: Parameters<typeof fs.readFile>[1]): Promise<Buffer | string>;
31
+ /**
32
+ * @description Write a file to this volume
33
+ * @param subpath Path relative to the volume root (e.g. "config.json" or "/data/file.txt")
34
+ * @param data The data to write
35
+ * @param options Optional write options (same as node:fs/promises writeFile)
36
+ */
37
+ writeFile(subpath: string, data: string | NodeJS.ArrayBufferView | Iterable<string | NodeJS.ArrayBufferView> | AsyncIterable<string | NodeJS.ArrayBufferView>, options?: Parameters<typeof fs.writeFile>[2]): Promise<void>;
38
+ }
39
+ /**
40
+ * Type-safe volumes object that provides Volume instances for each volume defined in the manifest
41
+ */
42
+ export type Volumes<Manifest extends T.SDKManifest> = {
43
+ [K in Manifest['volumes'][number]]: Volume<K>;
44
+ };
45
+ /**
46
+ * Creates a type-safe volumes object from a manifest
47
+ */
48
+ export declare function createVolumes<Manifest extends T.SDKManifest>(manifest: Manifest): Volumes<Manifest>;
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.Volume = void 0;
37
+ exports.createVolumes = createVolumes;
38
+ const fs = __importStar(require("node:fs/promises"));
39
+ /**
40
+ * @description Represents a volume in the StartOS filesystem.
41
+ * Provides utilities for reading and writing files within the volume.
42
+ */
43
+ class Volume {
44
+ constructor(id) {
45
+ this.id = id;
46
+ this.path = `/media/startos/volumes/${id}`;
47
+ }
48
+ /**
49
+ * Get the absolute path to a file or directory within this volume
50
+ * @param subpath Path relative to the volume root
51
+ */
52
+ subpath(subpath) {
53
+ return subpath.startsWith('/')
54
+ ? `${this.path}${subpath}`
55
+ : `${this.path}/${subpath}`;
56
+ }
57
+ /**
58
+ * @description Read a file from this volume
59
+ * @param subpath Path relative to the volume root (e.g. "config.json" or "/data/file.txt")
60
+ * @param options Optional read options (same as node:fs/promises readFile)
61
+ */
62
+ async readFile(subpath, options) {
63
+ const fullPath = this.subpath(subpath);
64
+ return fs.readFile(fullPath, options);
65
+ }
66
+ /**
67
+ * @description Write a file to this volume
68
+ * @param subpath Path relative to the volume root (e.g. "config.json" or "/data/file.txt")
69
+ * @param data The data to write
70
+ * @param options Optional write options (same as node:fs/promises writeFile)
71
+ */
72
+ async writeFile(subpath, data, options) {
73
+ const fullPath = this.subpath(subpath);
74
+ const dir = fullPath.replace(/\/[^/]*\/?$/, '');
75
+ await fs.mkdir(dir, { recursive: true });
76
+ return fs.writeFile(fullPath, data, options);
77
+ }
78
+ }
79
+ exports.Volume = Volume;
80
+ /**
81
+ * Creates a type-safe volumes object from a manifest
82
+ */
83
+ function createVolumes(manifest) {
84
+ const volumes = {};
85
+ for (const volumeId of manifest.volumes) {
86
+ ;
87
+ volumes[volumeId] = new Volume(volumeId);
88
+ }
89
+ return volumes;
90
+ }
91
+ //# sourceMappingURL=Volume.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Volume.js","sourceRoot":"","sources":["../../../../package/lib/util/Volume.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+EA,sCAQC;AAvFD,qDAAsC;AAUtC;;;GAGG;AACH,MAAa,MAAM;IAMjB,YAAqB,EAAM;QAAN,OAAE,GAAF,EAAE,CAAI;QACzB,IAAI,CAAC,IAAI,GAAG,0BAA0B,EAAE,EAAE,CAAA;IAC5C,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,OAAe;QACrB,OAAO,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAC5B,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,OAAO,EAAE;YAC1B,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,EAAE,CAAA;IAC/B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ,CACZ,OAAe,EACf,OAA2C;QAE3C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACtC,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IACvC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CACb,OAAe,EACf,IAIkD,EAClD,OAA4C;QAE5C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACtC,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAA;QAC/C,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACxC,OAAO,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IAC9C,CAAC;CACF;AArDD,wBAqDC;AASD;;GAEG;AACH,SAAgB,aAAa,CAC3B,QAAkB;IAElB,MAAM,OAAO,GAAG,EAAuB,CAAA;IACvC,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACxC,CAAC;QAAC,OAAe,CAAC,QAAQ,CAAC,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAA;IACpD,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
@@ -1,6 +1,27 @@
1
- import * as matches from "ts-matches";
2
- import * as INI from "ini";
3
- import * as T from "../../../base/lib/types";
1
+ import { z } from 'zod';
2
+ import * as INI from 'ini';
3
+ import * as T from '../../../base/lib/types';
4
+ import { PathBase } from './Volume';
5
+ export type Transformers<Raw = unknown, Transformed = unknown> = {
6
+ onRead: (value: Raw) => Transformed;
7
+ onWrite: (value: Transformed) => Raw;
8
+ };
9
+ type ToPath = string | {
10
+ base: PathBase;
11
+ subpath: string;
12
+ };
13
+ type Validator<_T, U> = z.ZodType<U>;
14
+ type ReadType<A> = {
15
+ once: () => Promise<A | null>;
16
+ const: (effects: T.Effects) => Promise<A | null>;
17
+ watch: (effects: T.Effects, abort?: AbortSignal) => AsyncGenerator<A | null, never, unknown>;
18
+ onChange: (effects: T.Effects, callback: (value: A | null, error?: Error) => {
19
+ cancel: boolean;
20
+ } | Promise<{
21
+ cancel: boolean;
22
+ }>) => void;
23
+ waitFor: (effects: T.Effects, pred: (value: A | null) => boolean) => Promise<A | null>;
24
+ };
4
25
  /**
5
26
  * @description Use this class to read/write an underlying configuration file belonging to the upstream service.
6
27
  *
@@ -62,44 +83,56 @@ export declare class FileHelper<A> {
62
83
  private readConst;
63
84
  private readWatch;
64
85
  private readOnChange;
65
- get read(): {
66
- once: () => Promise<A | null>;
67
- const: (effects: T.Effects) => Promise<A | null>;
68
- watch: (effects: T.Effects) => AsyncGenerator<Awaited<A> | null, null, unknown>;
69
- onChange: (effects: T.Effects, callback: (value: A | null, error?: Error) => void | Promise<void>) => void;
70
- };
86
+ private readWaitFor;
87
+ read(): ReadType<A>;
88
+ read<B>(map: (value: A) => B, eq?: (left: B | null | undefined, right: B | null) => boolean): ReadType<B>;
71
89
  /**
72
90
  * Accepts full structured data and overwrites the existing file on disk if it exists.
73
91
  */
74
- write(effects: T.Effects, data: A): Promise<null>;
92
+ write(effects: T.Effects, data: T.AllowReadonly<A> | A, options?: {
93
+ allowWriteAfterConst?: boolean;
94
+ }): Promise<null>;
75
95
  /**
76
96
  * Accepts partial structured data and performs a merge with the existing file on disk.
77
97
  */
78
- merge(effects: T.Effects, data: T.DeepPartial<A>): Promise<null>;
98
+ merge(effects: T.Effects, data: T.AllowReadonly<T.DeepPartial<A>>, options?: {
99
+ allowWriteAfterConst?: boolean;
100
+ }): Promise<null>;
79
101
  /**
80
102
  * We wanted to be able to have a fileHelper, and just modify the path later in time.
81
103
  * Like one behavior of another dependency or something similar.
82
104
  */
83
- withPath(path: string): FileHelper<A>;
105
+ withPath(path: ToPath): FileHelper<A>;
84
106
  /**
85
107
  * Create a File Helper for an arbitrary file type.
86
108
  *
87
109
  * Provide custom functions for translating data to/from the file format.
88
110
  */
89
- static raw<A>(path: string, toFile: (dataIn: A) => string, fromFile: (rawData: string) => unknown, validate: (data: unknown) => A): FileHelper<A>;
111
+ static raw<A>(path: ToPath, toFile: (dataIn: A) => string, fromFile: (rawData: string) => unknown, validate: (data: unknown) => A): FileHelper<A>;
112
+ private static rawTransformed;
90
113
  /**
91
- * Create a File Helper for a .json file.
114
+ * Create a File Helper for a text file
92
115
  */
93
- static json<A>(path: string, shape: matches.Validator<unknown, A>): FileHelper<A>;
116
+ static string(path: ToPath): FileHelper<string>;
117
+ static string<A extends string>(path: ToPath, shape: Validator<string, A>): FileHelper<A>;
118
+ static string<A extends Transformed, Transformed = string>(path: ToPath, shape: Validator<Transformed, A>, transformers: Transformers<string, Transformed>): FileHelper<A>;
94
119
  /**
95
- * Create a File Helper for a .toml file
120
+ * Create a File Helper for a .json file.
96
121
  */
97
- static toml<A extends Record<string, unknown>>(path: string, shape: matches.Validator<unknown, A>): FileHelper<A>;
122
+ static json<A>(path: ToPath, shape: Validator<unknown, A>, transformers?: Transformers): FileHelper<A>;
98
123
  /**
99
124
  * Create a File Helper for a .yaml file
100
125
  */
101
- static yaml<A extends Record<string, unknown>>(path: string, shape: matches.Validator<unknown, A>): FileHelper<A>;
102
- static ini<A extends Record<string, unknown>>(path: string, shape: matches.Validator<unknown, A>, options?: INI.EncodeOptions & INI.DecodeOptions): FileHelper<A>;
103
- static env<A extends Record<string, string>>(path: string, shape: matches.Validator<unknown, A>): FileHelper<A>;
126
+ static yaml<A extends Record<string, unknown>>(path: ToPath, shape: Validator<Record<string, unknown>, A>): FileHelper<A>;
127
+ static yaml<A extends Transformed, Transformed = Record<string, unknown>>(path: ToPath, shape: Validator<Transformed, A>, transformers: Transformers<Record<string, unknown>, Transformed>): FileHelper<A>;
128
+ /**
129
+ * Create a File Helper for a .toml file
130
+ */
131
+ static toml<A extends Record<string, unknown>>(path: ToPath, shape: Validator<Record<string, unknown>, A>): FileHelper<A>;
132
+ static toml<A extends Transformed, Transformed = Record<string, unknown>>(path: ToPath, shape: Validator<Transformed, A>, transformers: Transformers<Record<string, unknown>, Transformed>): FileHelper<A>;
133
+ static ini<A extends Record<string, unknown>>(path: ToPath, shape: Validator<Record<string, unknown>, A>, options?: INI.EncodeOptions & INI.DecodeOptions): FileHelper<A>;
134
+ static ini<A extends Transformed, Transformed = Record<string, unknown>>(path: ToPath, shape: Validator<Transformed, A>, options: INI.EncodeOptions & INI.DecodeOptions, transformers: Transformers<Record<string, unknown>, Transformed>): FileHelper<A>;
135
+ static env<A extends Record<string, string>>(path: ToPath, shape: Validator<Record<string, string>, A>): FileHelper<A>;
136
+ static env<A extends Transformed, Transformed = Record<string, string>>(path: ToPath, shape: Validator<Transformed, A>, transformers: Transformers<Record<string, string>, Transformed>): FileHelper<A>;
104
137
  }
105
138
  export default FileHelper;
@@ -34,34 +34,40 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.FileHelper = void 0;
37
+ const zod_1 = require("zod");
37
38
  const YAML = __importStar(require("yaml"));
38
39
  const TOML = __importStar(require("@iarna/toml"));
39
40
  const INI = __importStar(require("ini"));
40
41
  const fs = __importStar(require("node:fs/promises"));
41
42
  const util_1 = require("../../../base/lib/util");
43
+ const Drop_1 = require("../../../base/lib/util/Drop");
42
44
  const previousPath = /(.+?)\/([^/]*)$/;
43
45
  const exists = (path) => fs.access(path).then(() => true, () => false);
44
46
  async function onCreated(path) {
45
- if (path === "/")
47
+ if (path === '/')
46
48
  return;
47
- if (!path.startsWith("/"))
49
+ if (!path.startsWith('/'))
48
50
  path = `${process.cwd()}/${path}`;
49
51
  if (await exists(path)) {
50
52
  return;
51
53
  }
52
- const split = path.split("/");
54
+ const split = path.split('/');
53
55
  const filename = split.pop();
54
- const parent = split.join("/");
56
+ const parent = split.join('/');
55
57
  await onCreated(parent);
56
58
  const ctrl = new AbortController();
57
59
  const watch = fs.watch(parent, { persistent: false, signal: ctrl.signal });
60
+ if (await exists(path)) {
61
+ ctrl.abort();
62
+ return;
63
+ }
58
64
  if (await fs.access(path).then(() => true, () => false)) {
59
- ctrl.abort("finished");
65
+ ctrl.abort();
60
66
  return;
61
67
  }
62
68
  for await (let event of watch) {
63
69
  if (event.filename === filename) {
64
- ctrl.abort("finished");
70
+ ctrl.abort('finished');
65
71
  return;
66
72
  }
67
73
  }
@@ -71,8 +77,10 @@ function fileMerge(...args) {
71
77
  for (const arg of args) {
72
78
  if (res === arg)
73
79
  continue;
74
- else if (typeof res === "object" &&
75
- typeof arg === "object" &&
80
+ else if (res &&
81
+ arg &&
82
+ typeof res === 'object' &&
83
+ typeof arg === 'object' &&
76
84
  !Array.isArray(res) &&
77
85
  !Array.isArray(arg)) {
78
86
  for (const key of Object.keys(arg)) {
@@ -84,6 +92,26 @@ function fileMerge(...args) {
84
92
  }
85
93
  return res;
86
94
  }
95
+ function filterUndefined(a) {
96
+ if (a && typeof a === 'object') {
97
+ if (Array.isArray(a)) {
98
+ return a.map(filterUndefined);
99
+ }
100
+ return Object.entries(a).reduce((acc, [k, v]) => {
101
+ if (v !== undefined) {
102
+ acc[k] = filterUndefined(v);
103
+ }
104
+ return acc;
105
+ }, {});
106
+ }
107
+ return a;
108
+ }
109
+ function toPath(path) {
110
+ if (typeof path === 'string') {
111
+ return path;
112
+ }
113
+ return path.base.subpath(path.subpath);
114
+ }
87
115
  /**
88
116
  * @description Use this class to read/write an underlying configuration file belonging to the upstream service.
89
117
  *
@@ -150,7 +178,7 @@ class FileHelper {
150
178
  if (!(await exists(this.path))) {
151
179
  return null;
152
180
  }
153
- return await fs.readFile(this.path).then((data) => data.toString("utf-8"));
181
+ return await fs.readFile(this.path).then((data) => data.toString('utf-8'));
154
182
  }
155
183
  async readFile() {
156
184
  const raw = await this.readFileRaw();
@@ -162,44 +190,57 @@ class FileHelper {
162
190
  /**
163
191
  * Reads the file from disk and converts it to structured data.
164
192
  */
165
- async readOnce() {
193
+ async readOnce(map) {
166
194
  const data = await this.readFile();
167
195
  if (!data)
168
196
  return null;
169
- return this.validate(data);
197
+ return map(this.validate(data));
170
198
  }
171
- async readConst(effects) {
172
- const watch = this.readWatch(effects);
199
+ async readConst(effects, map, eq) {
200
+ const watch = this.readWatch(effects, map, eq);
173
201
  const res = await watch.next();
174
202
  if (effects.constRetry) {
175
- if (!this.consts.includes(effects.constRetry))
176
- this.consts.push(effects.constRetry);
177
- watch.next().then(() => {
178
- this.consts = this.consts.filter((a) => a === effects.constRetry);
203
+ const record = [
204
+ effects.constRetry,
205
+ res.value,
206
+ map,
207
+ eq,
208
+ ];
209
+ this.consts.push(record);
210
+ watch
211
+ .next()
212
+ .then(() => {
213
+ this.consts = this.consts.filter((r) => r !== record);
179
214
  effects.constRetry && effects.constRetry();
180
- });
215
+ })
216
+ .catch();
181
217
  }
182
218
  return res.value;
183
219
  }
184
- async *readWatch(effects) {
185
- let res;
186
- while (effects.isInContext) {
220
+ async *readWatch(effects, map, eq, abort) {
221
+ let prev = null;
222
+ while (effects.isInContext && !abort?.aborted) {
187
223
  if (await exists(this.path)) {
188
224
  const ctrl = new AbortController();
225
+ abort?.addEventListener('abort', () => ctrl.abort());
189
226
  const watch = fs.watch(this.path, {
190
227
  persistent: false,
191
228
  signal: ctrl.signal,
192
229
  });
193
- res = await this.readOnce();
230
+ const newRes = await this.readOnce(map);
194
231
  const listen = Promise.resolve()
195
232
  .then(async () => {
196
233
  for await (const _ of watch) {
197
- ctrl.abort("finished");
234
+ ctrl.abort();
198
235
  return null;
199
236
  }
200
237
  })
201
238
  .catch((e) => console.error((0, util_1.asError)(e)));
202
- yield res;
239
+ if (!prev || !eq(prev.value, newRes)) {
240
+ console.error('yielding', JSON.stringify({ prev: prev, newRes }));
241
+ yield newRes;
242
+ }
243
+ prev = { value: newRes };
203
244
  await listen;
204
245
  }
205
246
  else {
@@ -207,44 +248,87 @@ class FileHelper {
207
248
  await onCreated(this.path).catch((e) => console.error((0, util_1.asError)(e)));
208
249
  }
209
250
  }
210
- return null;
251
+ return new Promise((_, rej) => rej(new Error('aborted')));
211
252
  }
212
- readOnChange(effects, callback) {
253
+ readOnChange(effects, callback, map, eq) {
213
254
  ;
214
255
  (async () => {
215
- for await (const value of this.readWatch(effects)) {
256
+ const ctrl = new AbortController();
257
+ for await (const value of this.readWatch(effects, map, eq, ctrl.signal)) {
216
258
  try {
217
- await callback(value);
259
+ const res = await callback(value);
260
+ if (res.cancel)
261
+ ctrl.abort();
218
262
  }
219
263
  catch (e) {
220
- console.error("callback function threw an error @ FileHelper.read.onChange", e);
264
+ console.error('callback function threw an error @ FileHelper.read.onChange', e);
221
265
  }
222
266
  }
223
267
  })()
224
268
  .catch((e) => callback(null, e))
225
- .catch((e) => console.error("callback function threw an error @ FileHelper.read.onChange", e));
269
+ .catch((e) => console.error('callback function threw an error @ FileHelper.read.onChange', e));
226
270
  }
227
- get read() {
271
+ readWaitFor(effects, pred, map) {
272
+ const ctrl = new AbortController();
273
+ return Drop_1.DropPromise.of(Promise.resolve().then(async () => {
274
+ const watch = this.readWatch(effects, map, (_) => false, ctrl.signal);
275
+ while (true) {
276
+ try {
277
+ const res = await watch.next();
278
+ if (pred(res.value)) {
279
+ ctrl.abort();
280
+ return res.value;
281
+ }
282
+ if (res.done) {
283
+ break;
284
+ }
285
+ }
286
+ catch (e) {
287
+ if (pred(null, e)) {
288
+ break;
289
+ }
290
+ }
291
+ }
292
+ ctrl.abort();
293
+ return null;
294
+ }), () => ctrl.abort());
295
+ }
296
+ read(map, eq) {
297
+ map = map ?? ((a) => a);
298
+ eq = eq ?? util_1.deepEqual;
228
299
  return {
229
- once: () => this.readOnce(),
230
- const: (effects) => this.readConst(effects),
231
- watch: (effects) => this.readWatch(effects),
232
- onChange: (effects, callback) => this.readOnChange(effects, callback),
300
+ once: () => this.readOnce(map),
301
+ const: (effects) => this.readConst(effects, map, eq),
302
+ watch: (effects, abort) => {
303
+ const ctrl = new AbortController();
304
+ abort?.addEventListener('abort', () => ctrl.abort());
305
+ return Drop_1.DropGenerator.of(this.readWatch(effects, map, eq, ctrl.signal), () => ctrl.abort());
306
+ },
307
+ onChange: (effects, callback) => this.readOnChange(effects, callback, map, eq),
308
+ waitFor: (effects, pred) => this.readWaitFor(effects, pred, map),
233
309
  };
234
310
  }
235
311
  /**
236
312
  * Accepts full structured data and overwrites the existing file on disk if it exists.
237
313
  */
238
- async write(effects, data) {
239
- await this.writeFile(this.validate(data));
240
- if (effects.constRetry && this.consts.includes(effects.constRetry))
241
- throw new Error(`Canceled: write after const: ${this.path}`);
314
+ async write(effects, data, options = {}) {
315
+ const newData = this.validate(data);
316
+ await this.writeFile(newData);
317
+ if (!options.allowWriteAfterConst && effects.constRetry) {
318
+ const records = this.consts.filter(([c]) => c === effects.constRetry);
319
+ for (const record of records) {
320
+ const [_, prev, map, eq] = record;
321
+ if (!eq(prev, map(newData))) {
322
+ throw new Error(`Canceled: write after const: ${this.path}`);
323
+ }
324
+ }
325
+ }
242
326
  return null;
243
327
  }
244
328
  /**
245
329
  * Accepts partial structured data and performs a merge with the existing file on disk.
246
330
  */
247
- async merge(effects, data) {
331
+ async merge(effects, data, options = {}) {
248
332
  const fileDataRaw = await this.readFileRaw();
249
333
  let fileData = fileDataRaw === null ? null : this.readData(fileDataRaw);
250
334
  try {
@@ -255,12 +339,14 @@ class FileHelper {
255
339
  const toWrite = this.writeData(mergeData);
256
340
  if (toWrite !== fileDataRaw) {
257
341
  this.writeFile(mergeData);
258
- if (effects.constRetry && this.consts.includes(effects.constRetry)) {
259
- const diff = (0, util_1.partialDiff)(fileData, mergeData);
260
- if (!diff) {
261
- return null;
342
+ if (!options.allowWriteAfterConst && effects.constRetry) {
343
+ const records = this.consts.filter(([c]) => c === effects.constRetry);
344
+ for (const record of records) {
345
+ const [_, prev, map, eq] = record;
346
+ if (!eq(prev, map(mergeData))) {
347
+ throw new Error(`Canceled: write after const: ${this.path}`);
348
+ }
262
349
  }
263
- throw new Error(`Canceled: write after const: ${this.path}`);
264
350
  }
265
351
  }
266
352
  return null;
@@ -270,7 +356,7 @@ class FileHelper {
270
356
  * Like one behavior of another dependency or something similar.
271
357
  */
272
358
  withPath(path) {
273
- return new FileHelper(path, this.writeData, this.readData, this.validate);
359
+ return new FileHelper(toPath(path), this.writeData, this.readData, this.validate);
274
360
  }
275
361
  /**
276
362
  * Create a File Helper for an arbitrary file type.
@@ -278,37 +364,45 @@ class FileHelper {
278
364
  * Provide custom functions for translating data to/from the file format.
279
365
  */
280
366
  static raw(path, toFile, fromFile, validate) {
281
- return new FileHelper(path, toFile, fromFile, validate);
367
+ return new FileHelper(toPath(path), toFile, fromFile, validate);
368
+ }
369
+ static rawTransformed(path, toFile, fromFile, validate, transformers) {
370
+ return FileHelper.raw(path, (inData) => {
371
+ if (transformers) {
372
+ return toFile(transformers.onWrite(inData));
373
+ }
374
+ return toFile(inData);
375
+ }, fromFile, validate);
376
+ }
377
+ static string(path, shape, transformers) {
378
+ return FileHelper.rawTransformed(path, (inData) => inData, (inString) => inString, (data) => (shape || zod_1.z.string()).parse(data), transformers);
282
379
  }
283
380
  /**
284
381
  * Create a File Helper for a .json file.
285
382
  */
286
- static json(path, shape) {
287
- return new FileHelper(path, (inData) => JSON.stringify(inData, null, 2), (inString) => JSON.parse(inString), (data) => shape.unsafeCast(data));
383
+ static json(path, shape, transformers) {
384
+ return FileHelper.rawTransformed(path, (inData) => JSON.stringify(inData, null, 2), (inString) => JSON.parse(inString), (data) => shape.parse(data), transformers);
288
385
  }
289
- /**
290
- * Create a File Helper for a .toml file
291
- */
292
- static toml(path, shape) {
293
- return new FileHelper(path, (inData) => TOML.stringify(inData), (inString) => TOML.parse(inString), (data) => shape.unsafeCast(data));
386
+ static yaml(path, shape, transformers) {
387
+ return FileHelper.rawTransformed(path, (inData) => YAML.stringify(inData, null, 2), (inString) => YAML.parse(inString), (data) => shape.parse(data), transformers);
294
388
  }
295
- /**
296
- * Create a File Helper for a .yaml file
297
- */
298
- static yaml(path, shape) {
299
- return new FileHelper(path, (inData) => YAML.stringify(inData, null, 2), (inString) => YAML.parse(inString), (data) => shape.unsafeCast(data));
389
+ static toml(path, shape, transformers) {
390
+ return FileHelper.rawTransformed(path, (inData) => TOML.stringify(inData), (inString) => TOML.parse(inString), (data) => shape.parse(data), transformers);
300
391
  }
301
- static ini(path, shape, options) {
302
- return new FileHelper(path, (inData) => INI.stringify(inData, options), (inString) => INI.parse(inString, options), (data) => shape.unsafeCast(data));
392
+ static ini(path, shape, options, transformers) {
393
+ return FileHelper.rawTransformed(path, (inData) => INI.stringify(filterUndefined(inData), options), (inString) => INI.parse(inString, options), (data) => shape.parse(data), transformers);
303
394
  }
304
- static env(path, shape) {
305
- return new FileHelper(path, (inData) => Object.entries(inData)
395
+ static env(path, shape, transformers) {
396
+ return FileHelper.rawTransformed(path, (inData) => Object.entries(inData)
306
397
  .map(([k, v]) => `${k}=${v}`)
307
- .join("\n"), (inString) => Object.fromEntries(inString
308
- .split("\n")
398
+ .join('\n'), (inString) => Object.fromEntries(inString
399
+ .split('\n')
309
400
  .map((line) => line.trim())
310
- .filter((line) => !line.startsWith("#") && line.includes("="))
311
- .map((line) => line.split("=", 2))), (data) => shape.unsafeCast(data));
401
+ .filter((line) => !line.startsWith('#') && line.includes('='))
402
+ .map((line) => {
403
+ const pos = line.indexOf('=');
404
+ return [line.slice(0, pos), line.slice(pos + 1)];
405
+ })), (data) => shape.parse(data), transformers);
312
406
  }
313
407
  }
314
408
  exports.FileHelper = FileHelper;