@rushstack/rush-sdk 5.91.0 → 5.92.0

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 (361) hide show
  1. package/README.md +46 -11
  2. package/dist/rush-lib.d.ts +18 -0
  3. package/lib/api/ApprovedPackagesConfiguration.d.ts +74 -0
  4. package/lib/api/ApprovedPackagesConfiguration.js +1 -0
  5. package/lib/api/ApprovedPackagesPolicy.d.ts +54 -0
  6. package/lib/api/ApprovedPackagesPolicy.js +1 -0
  7. package/lib/api/BuildCacheConfiguration.d.ts +77 -0
  8. package/lib/api/BuildCacheConfiguration.js +1 -0
  9. package/lib/api/ChangeFile.d.ts +42 -0
  10. package/lib/api/ChangeFile.js +1 -0
  11. package/lib/api/ChangeManagement.d.ts +85 -0
  12. package/lib/api/ChangeManagement.js +1 -0
  13. package/lib/api/ChangeManager.d.ts +16 -0
  14. package/lib/api/ChangeManager.js +1 -0
  15. package/lib/api/Changelog.d.ts +74 -0
  16. package/lib/api/Changelog.js +1 -0
  17. package/lib/api/CommandLineConfiguration.d.ts +161 -0
  18. package/lib/api/CommandLineConfiguration.js +1 -0
  19. package/lib/api/CommandLineJson.d.ts +251 -0
  20. package/lib/api/CommandLineJson.js +1 -0
  21. package/lib/api/CommonVersionsConfiguration.d.ts +96 -0
  22. package/lib/api/CommonVersionsConfiguration.js +1 -0
  23. package/lib/api/EnvironmentConfiguration.d.ts +258 -0
  24. package/lib/api/EnvironmentConfiguration.js +1 -0
  25. package/lib/api/EventHooks.d.ts +42 -0
  26. package/lib/api/EventHooks.js +1 -0
  27. package/lib/api/ExperimentsConfiguration.d.ts +62 -0
  28. package/lib/api/ExperimentsConfiguration.js +1 -0
  29. package/lib/api/LastInstallFlag.d.ts +73 -0
  30. package/lib/api/LastInstallFlag.js +1 -0
  31. package/lib/api/LastLinkFlag.d.ts +41 -0
  32. package/lib/api/LastLinkFlag.js +1 -0
  33. package/lib/api/PackageJsonEditor.d.ts +79 -0
  34. package/lib/api/PackageJsonEditor.js +1 -0
  35. package/lib/api/PackageNameParsers.d.ts +18 -0
  36. package/lib/api/PackageNameParsers.js +1 -0
  37. package/lib/api/Rush.d.ts +91 -0
  38. package/lib/api/Rush.js +1 -0
  39. package/lib/api/RushConfiguration.d.ts +595 -0
  40. package/lib/api/RushConfiguration.js +1 -0
  41. package/lib/api/RushConfigurationProject.d.ts +217 -0
  42. package/lib/api/RushConfigurationProject.js +1 -0
  43. package/lib/api/RushGlobalFolder.d.ts +32 -0
  44. package/lib/api/RushGlobalFolder.js +1 -0
  45. package/lib/api/RushInternals.d.ts +15 -0
  46. package/lib/api/RushInternals.js +1 -0
  47. package/lib/api/RushPluginsConfiguration.d.ts +21 -0
  48. package/lib/api/RushPluginsConfiguration.js +1 -0
  49. package/lib/api/RushProjectConfiguration.d.ts +117 -0
  50. package/lib/api/RushProjectConfiguration.js +1 -0
  51. package/lib/api/RushUserConfiguration.d.ts +16 -0
  52. package/lib/api/RushUserConfiguration.js +1 -0
  53. package/lib/api/SaveCallbackPackageJsonEditor.d.ts +14 -0
  54. package/lib/api/SaveCallbackPackageJsonEditor.js +1 -0
  55. package/lib/api/Variants.d.ts +11 -0
  56. package/lib/api/Variants.js +1 -0
  57. package/lib/api/VersionPolicy.d.ts +203 -0
  58. package/lib/api/VersionPolicy.js +1 -0
  59. package/lib/api/VersionPolicyConfiguration.d.ts +75 -0
  60. package/lib/api/VersionPolicyConfiguration.js +1 -0
  61. package/lib/api/packageManager/NpmPackageManager.d.ts +9 -0
  62. package/lib/api/packageManager/NpmPackageManager.js +1 -0
  63. package/lib/api/packageManager/PackageManager.d.ts +29 -0
  64. package/lib/api/packageManager/PackageManager.js +1 -0
  65. package/lib/api/packageManager/PnpmPackageManager.d.ts +17 -0
  66. package/lib/api/packageManager/PnpmPackageManager.js +1 -0
  67. package/lib/api/packageManager/YarnPackageManager.d.ts +9 -0
  68. package/lib/api/packageManager/YarnPackageManager.js +1 -0
  69. package/lib/cli/CommandLineMigrationAdvisor.d.ts +5 -0
  70. package/lib/cli/CommandLineMigrationAdvisor.js +1 -0
  71. package/lib/cli/RushCommandLineParser.d.ts +49 -0
  72. package/lib/cli/RushCommandLineParser.js +1 -0
  73. package/lib/cli/RushPnpmCommandLine.d.ts +7 -0
  74. package/lib/cli/RushPnpmCommandLine.js +1 -0
  75. package/lib/cli/RushPnpmCommandLineParser.d.ts +26 -0
  76. package/lib/cli/RushPnpmCommandLineParser.js +1 -0
  77. package/lib/cli/RushStartupBanner.d.ts +7 -0
  78. package/lib/cli/RushStartupBanner.js +1 -0
  79. package/lib/cli/RushXCommandLine.d.ts +17 -0
  80. package/lib/cli/RushXCommandLine.js +1 -0
  81. package/lib/cli/actions/AddAction.d.ts +15 -0
  82. package/lib/cli/actions/AddAction.js +1 -0
  83. package/lib/cli/actions/BaseAddAndRemoveAction.d.ts +36 -0
  84. package/lib/cli/actions/BaseAddAndRemoveAction.js +1 -0
  85. package/lib/cli/actions/BaseInstallAction.d.ts +23 -0
  86. package/lib/cli/actions/BaseInstallAction.js +1 -0
  87. package/lib/cli/actions/BaseRushAction.d.ts +55 -0
  88. package/lib/cli/actions/BaseRushAction.js +1 -0
  89. package/lib/cli/actions/ChangeAction.d.ts +65 -0
  90. package/lib/cli/actions/ChangeAction.js +1 -0
  91. package/lib/cli/actions/CheckAction.d.ts +10 -0
  92. package/lib/cli/actions/CheckAction.js +1 -0
  93. package/lib/cli/actions/DeployAction.d.ts +12 -0
  94. package/lib/cli/actions/DeployAction.js +1 -0
  95. package/lib/cli/actions/InitAction.d.ts +16 -0
  96. package/lib/cli/actions/InitAction.js +1 -0
  97. package/lib/cli/actions/InitAutoinstallerAction.d.ts +8 -0
  98. package/lib/cli/actions/InitAutoinstallerAction.js +1 -0
  99. package/lib/cli/actions/InitDeployAction.d.ts +9 -0
  100. package/lib/cli/actions/InitDeployAction.js +1 -0
  101. package/lib/cli/actions/InstallAction.d.ts +9 -0
  102. package/lib/cli/actions/InstallAction.js +1 -0
  103. package/lib/cli/actions/LinkAction.d.ts +8 -0
  104. package/lib/cli/actions/LinkAction.js +1 -0
  105. package/lib/cli/actions/ListAction.d.ts +54 -0
  106. package/lib/cli/actions/ListAction.js +1 -0
  107. package/lib/cli/actions/PublishAction.d.ts +49 -0
  108. package/lib/cli/actions/PublishAction.js +1 -0
  109. package/lib/cli/actions/PurgeAction.d.ts +8 -0
  110. package/lib/cli/actions/PurgeAction.js +1 -0
  111. package/lib/cli/actions/RemoveAction.d.ts +13 -0
  112. package/lib/cli/actions/RemoveAction.js +1 -0
  113. package/lib/cli/actions/ScanAction.d.ts +23 -0
  114. package/lib/cli/actions/ScanAction.js +1 -0
  115. package/lib/cli/actions/SetupAction.d.ts +7 -0
  116. package/lib/cli/actions/SetupAction.js +1 -0
  117. package/lib/cli/actions/UnlinkAction.d.ts +7 -0
  118. package/lib/cli/actions/UnlinkAction.js +1 -0
  119. package/lib/cli/actions/UpdateAction.d.ts +11 -0
  120. package/lib/cli/actions/UpdateAction.js +1 -0
  121. package/lib/cli/actions/UpdateAutoinstallerAction.d.ts +8 -0
  122. package/lib/cli/actions/UpdateAutoinstallerAction.js +1 -0
  123. package/lib/cli/actions/UpdateCloudCredentialsAction.d.ts +10 -0
  124. package/lib/cli/actions/UpdateCloudCredentialsAction.js +1 -0
  125. package/lib/cli/actions/UpgradeInteractiveAction.d.ts +9 -0
  126. package/lib/cli/actions/UpgradeInteractiveAction.js +1 -0
  127. package/lib/cli/actions/VersionAction.d.ts +22 -0
  128. package/lib/cli/actions/VersionAction.js +1 -0
  129. package/lib/cli/parsing/ParseParallelism.d.ts +6 -0
  130. package/lib/cli/parsing/ParseParallelism.js +1 -0
  131. package/lib/cli/parsing/SelectionParameterSet.d.ts +51 -0
  132. package/lib/cli/parsing/SelectionParameterSet.js +1 -0
  133. package/lib/cli/scriptActions/BaseScriptAction.d.ts +28 -0
  134. package/lib/cli/scriptActions/BaseScriptAction.js +1 -0
  135. package/lib/cli/scriptActions/GlobalScriptAction.d.ts +30 -0
  136. package/lib/cli/scriptActions/GlobalScriptAction.js +1 -0
  137. package/lib/cli/scriptActions/PhasedScriptAction.d.ts +65 -0
  138. package/lib/cli/scriptActions/PhasedScriptAction.js +1 -0
  139. package/lib/index.d.ts +51 -1
  140. package/lib/index.js +1 -190
  141. package/lib/logic/Autoinstaller.d.ts +21 -0
  142. package/lib/logic/Autoinstaller.js +1 -0
  143. package/lib/logic/ChangeFiles.d.ts +33 -0
  144. package/lib/logic/ChangeFiles.js +1 -0
  145. package/lib/logic/ChangeManager.d.ts +39 -0
  146. package/lib/logic/ChangeManager.js +1 -0
  147. package/lib/logic/ChangelogGenerator.d.ts +46 -0
  148. package/lib/logic/ChangelogGenerator.js +1 -0
  149. package/lib/logic/CredentialCache.d.ts +36 -0
  150. package/lib/logic/CredentialCache.js +1 -0
  151. package/lib/logic/DependencyAnalyzer.d.ts +34 -0
  152. package/lib/logic/DependencyAnalyzer.js +1 -0
  153. package/lib/logic/DependencySpecifier.d.ts +70 -0
  154. package/lib/logic/DependencySpecifier.js +1 -0
  155. package/lib/logic/EventHooksManager.d.ts +10 -0
  156. package/lib/logic/EventHooksManager.js +1 -0
  157. package/lib/logic/Git.d.ts +103 -0
  158. package/lib/logic/Git.js +1 -0
  159. package/lib/logic/GitStatusParser.d.ts +42 -0
  160. package/lib/logic/GitStatusParser.js +1 -0
  161. package/lib/logic/JsonSchemaUrls.d.ts +8 -0
  162. package/lib/logic/JsonSchemaUrls.js +1 -0
  163. package/lib/logic/LookupByPath.d.ts +86 -0
  164. package/lib/logic/LookupByPath.js +1 -0
  165. package/lib/logic/NodeJsCompatibility.d.ts +42 -0
  166. package/lib/logic/NodeJsCompatibility.js +1 -0
  167. package/lib/logic/PackageJsonUpdaterTypes.d.ts +75 -0
  168. package/lib/logic/PackageJsonUpdaterTypes.js +1 -0
  169. package/lib/logic/PrereleaseToken.d.ts +12 -0
  170. package/lib/logic/PrereleaseToken.js +1 -0
  171. package/lib/logic/ProjectChangeAnalyzer.d.ts +81 -0
  172. package/lib/logic/ProjectChangeAnalyzer.js +1 -0
  173. package/lib/logic/ProjectCommandSet.d.ts +13 -0
  174. package/lib/logic/ProjectCommandSet.js +1 -0
  175. package/lib/logic/PublishGit.d.ts +19 -0
  176. package/lib/logic/PublishGit.js +1 -0
  177. package/lib/logic/PublishUtilities.d.ts +71 -0
  178. package/lib/logic/PublishUtilities.js +1 -0
  179. package/lib/logic/PurgeManager.d.ts +29 -0
  180. package/lib/logic/PurgeManager.js +1 -0
  181. package/lib/logic/RepoStateFile.d.ts +55 -0
  182. package/lib/logic/RepoStateFile.js +1 -0
  183. package/lib/logic/RushConstants.d.ts +219 -0
  184. package/lib/logic/RushConstants.js +1 -0
  185. package/lib/logic/Selection.d.ts +39 -0
  186. package/lib/logic/Selection.js +1 -0
  187. package/lib/logic/SetupChecks.d.ts +22 -0
  188. package/lib/logic/SetupChecks.js +1 -0
  189. package/lib/logic/ShrinkwrapFileFactory.d.ts +8 -0
  190. package/lib/logic/ShrinkwrapFileFactory.js +1 -0
  191. package/lib/logic/StandardScriptUpdater.d.ts +26 -0
  192. package/lib/logic/StandardScriptUpdater.js +1 -0
  193. package/lib/logic/Telemetry.d.ts +123 -0
  194. package/lib/logic/Telemetry.js +1 -0
  195. package/lib/logic/UnlinkManager.d.ts +24 -0
  196. package/lib/logic/UnlinkManager.js +1 -0
  197. package/lib/logic/base/BaseInstallManagerTypes.d.ts +65 -0
  198. package/lib/logic/base/BaseInstallManagerTypes.js +1 -0
  199. package/lib/logic/base/BasePackageManagerOptionsConfiguration.d.ts +50 -0
  200. package/lib/logic/base/BasePackageManagerOptionsConfiguration.js +1 -0
  201. package/lib/logic/base/BaseProjectShrinkwrapFile.d.ts +36 -0
  202. package/lib/logic/base/BaseProjectShrinkwrapFile.js +1 -0
  203. package/lib/logic/base/BaseShrinkwrapFile.d.ts +92 -0
  204. package/lib/logic/base/BaseShrinkwrapFile.js +1 -0
  205. package/lib/logic/buildCache/CacheEntryId.d.ts +28 -0
  206. package/lib/logic/buildCache/CacheEntryId.js +1 -0
  207. package/lib/logic/buildCache/FileSystemBuildCacheProvider.d.ts +40 -0
  208. package/lib/logic/buildCache/FileSystemBuildCacheProvider.js +1 -0
  209. package/lib/logic/buildCache/ICloudBuildCacheProvider.d.ts +14 -0
  210. package/lib/logic/buildCache/ICloudBuildCacheProvider.js +1 -0
  211. package/lib/logic/buildCache/ProjectBuildCache.d.ts +46 -0
  212. package/lib/logic/buildCache/ProjectBuildCache.js +1 -0
  213. package/lib/logic/buildCache/getHashesForGlobsAsync.d.ts +3 -0
  214. package/lib/logic/buildCache/getHashesForGlobsAsync.js +1 -0
  215. package/lib/logic/deploy/DeployScenarioConfiguration.d.ts +39 -0
  216. package/lib/logic/deploy/DeployScenarioConfiguration.js +1 -0
  217. package/lib/logic/installManager/InstallHelpers.d.ts +16 -0
  218. package/lib/logic/installManager/InstallHelpers.js +1 -0
  219. package/lib/logic/npm/NpmOptionsConfiguration.d.ts +21 -0
  220. package/lib/logic/npm/NpmOptionsConfiguration.js +1 -0
  221. package/lib/logic/npm/NpmShrinkwrapFile.d.ts +29 -0
  222. package/lib/logic/npm/NpmShrinkwrapFile.js +1 -0
  223. package/lib/logic/operations/AsyncOperationQueue.d.ts +47 -0
  224. package/lib/logic/operations/AsyncOperationQueue.js +1 -0
  225. package/lib/logic/operations/IOperationExecutionResult.d.ts +49 -0
  226. package/lib/logic/operations/IOperationExecutionResult.js +1 -0
  227. package/lib/logic/operations/IOperationRunner.d.ts +77 -0
  228. package/lib/logic/operations/IOperationRunner.js +1 -0
  229. package/lib/logic/operations/NullOperationRunner.d.ts +35 -0
  230. package/lib/logic/operations/NullOperationRunner.js +1 -0
  231. package/lib/logic/operations/Operation.d.ts +80 -0
  232. package/lib/logic/operations/Operation.js +1 -0
  233. package/lib/logic/operations/OperationError.d.ts +11 -0
  234. package/lib/logic/operations/OperationError.js +1 -0
  235. package/lib/logic/operations/OperationExecutionManager.d.ts +42 -0
  236. package/lib/logic/operations/OperationExecutionManager.js +1 -0
  237. package/lib/logic/operations/OperationExecutionRecord.d.ts +82 -0
  238. package/lib/logic/operations/OperationExecutionRecord.js +1 -0
  239. package/lib/logic/operations/OperationMetadataManager.d.ts +48 -0
  240. package/lib/logic/operations/OperationMetadataManager.js +1 -0
  241. package/lib/logic/operations/OperationResultSummarizerPlugin.d.ts +17 -0
  242. package/lib/logic/operations/OperationResultSummarizerPlugin.js +1 -0
  243. package/lib/logic/operations/OperationStateFile.d.ts +39 -0
  244. package/lib/logic/operations/OperationStateFile.js +1 -0
  245. package/lib/logic/operations/OperationStatus.d.ts +43 -0
  246. package/lib/logic/operations/OperationStatus.js +1 -0
  247. package/lib/logic/operations/PhasedOperationPlugin.d.ts +9 -0
  248. package/lib/logic/operations/PhasedOperationPlugin.js +1 -0
  249. package/lib/logic/operations/ProjectLogWritable.d.ts +17 -0
  250. package/lib/logic/operations/ProjectLogWritable.js +1 -0
  251. package/lib/logic/operations/ShellOperationRunner.d.ts +87 -0
  252. package/lib/logic/operations/ShellOperationRunner.js +1 -0
  253. package/lib/logic/operations/ShellOperationRunnerPlugin.d.ts +8 -0
  254. package/lib/logic/operations/ShellOperationRunnerPlugin.js +1 -0
  255. package/lib/logic/pnpm/IPnpmfile.d.ts +54 -0
  256. package/lib/logic/pnpm/IPnpmfile.js +1 -0
  257. package/lib/logic/pnpm/PnpmOptionsConfiguration.d.ts +242 -0
  258. package/lib/logic/pnpm/PnpmOptionsConfiguration.js +1 -0
  259. package/lib/logic/pnpm/PnpmProjectShrinkwrapFile.d.ts +26 -0
  260. package/lib/logic/pnpm/PnpmProjectShrinkwrapFile.js +1 -0
  261. package/lib/logic/pnpm/PnpmShrinkwrapFile.d.ts +207 -0
  262. package/lib/logic/pnpm/PnpmShrinkwrapFile.js +1 -0
  263. package/lib/logic/pnpm/PnpmYamlCommon.d.ts +8 -0
  264. package/lib/logic/pnpm/PnpmYamlCommon.js +1 -0
  265. package/lib/logic/pnpm/PnpmfileConfiguration.d.ts +28 -0
  266. package/lib/logic/pnpm/PnpmfileConfiguration.js +1 -0
  267. package/lib/logic/pnpm/PnpmfileShim.d.ts +3 -0
  268. package/lib/logic/pnpm/PnpmfileShim.js +1 -0
  269. package/lib/logic/policy/GitEmailPolicy.d.ts +6 -0
  270. package/lib/logic/policy/GitEmailPolicy.js +1 -0
  271. package/lib/logic/policy/PolicyValidator.d.ts +10 -0
  272. package/lib/logic/policy/PolicyValidator.js +1 -0
  273. package/lib/logic/policy/ShrinkwrapFilePolicy.d.ts +13 -0
  274. package/lib/logic/policy/ShrinkwrapFilePolicy.js +1 -0
  275. package/lib/logic/selectors/GitChangedProjectSelectorParser.d.ts +23 -0
  276. package/lib/logic/selectors/GitChangedProjectSelectorParser.js +1 -0
  277. package/lib/logic/selectors/ISelectorParser.d.ts +11 -0
  278. package/lib/logic/selectors/ISelectorParser.js +1 -0
  279. package/lib/logic/selectors/NamedProjectSelectorParser.d.ts +10 -0
  280. package/lib/logic/selectors/NamedProjectSelectorParser.js +1 -0
  281. package/lib/logic/selectors/TagProjectSelectorParser.d.ts +10 -0
  282. package/lib/logic/selectors/TagProjectSelectorParser.js +1 -0
  283. package/lib/logic/selectors/VersionPolicyProjectSelectorParser.d.ts +10 -0
  284. package/lib/logic/selectors/VersionPolicyProjectSelectorParser.js +1 -0
  285. package/lib/logic/setup/ArtifactoryConfiguration.d.ts +38 -0
  286. package/lib/logic/setup/ArtifactoryConfiguration.js +1 -0
  287. package/lib/logic/setup/KeyboardLoop.d.ts +27 -0
  288. package/lib/logic/setup/KeyboardLoop.js +1 -0
  289. package/lib/logic/setup/SetupPackageRegistry.d.ts +72 -0
  290. package/lib/logic/setup/SetupPackageRegistry.js +1 -0
  291. package/lib/logic/setup/TerminalInput.d.ts +22 -0
  292. package/lib/logic/setup/TerminalInput.js +1 -0
  293. package/lib/logic/versionMismatch/VersionMismatchFinder.d.ts +49 -0
  294. package/lib/logic/versionMismatch/VersionMismatchFinder.js +1 -0
  295. package/lib/logic/versionMismatch/VersionMismatchFinderCommonVersions.d.ts +16 -0
  296. package/lib/logic/versionMismatch/VersionMismatchFinderCommonVersions.js +1 -0
  297. package/lib/logic/versionMismatch/VersionMismatchFinderEntity.d.ts +20 -0
  298. package/lib/logic/versionMismatch/VersionMismatchFinderEntity.js +1 -0
  299. package/lib/logic/versionMismatch/VersionMismatchFinderProject.d.ts +16 -0
  300. package/lib/logic/versionMismatch/VersionMismatchFinderProject.js +1 -0
  301. package/lib/logic/yarn/YarnOptionsConfiguration.d.ts +37 -0
  302. package/lib/logic/yarn/YarnOptionsConfiguration.js +1 -0
  303. package/lib/logic/yarn/YarnShrinkwrapFile.d.ts +55 -0
  304. package/lib/logic/yarn/YarnShrinkwrapFile.js +1 -0
  305. package/lib/pluginFramework/IRushPlugin.d.ts +9 -0
  306. package/lib/pluginFramework/IRushPlugin.js +1 -0
  307. package/lib/pluginFramework/PhasedCommandHooks.d.ts +93 -0
  308. package/lib/pluginFramework/PhasedCommandHooks.js +1 -0
  309. package/lib/pluginFramework/PluginLoader/AutoinstallerPluginLoader.d.ts +27 -0
  310. package/lib/pluginFramework/PluginLoader/AutoinstallerPluginLoader.js +1 -0
  311. package/lib/pluginFramework/PluginLoader/BuiltInPluginLoader.d.ts +17 -0
  312. package/lib/pluginFramework/PluginLoader/BuiltInPluginLoader.js +1 -0
  313. package/lib/pluginFramework/PluginLoader/PluginLoaderBase.d.ts +47 -0
  314. package/lib/pluginFramework/PluginLoader/PluginLoaderBase.js +1 -0
  315. package/lib/pluginFramework/PluginLoader/RushSdk.d.ts +5 -0
  316. package/lib/pluginFramework/PluginLoader/RushSdk.js +1 -0
  317. package/lib/pluginFramework/PluginManager.d.ts +47 -0
  318. package/lib/pluginFramework/PluginManager.js +1 -0
  319. package/lib/pluginFramework/RushLifeCycle.d.ts +66 -0
  320. package/lib/pluginFramework/RushLifeCycle.js +1 -0
  321. package/lib/pluginFramework/RushSession.d.ts +30 -0
  322. package/lib/pluginFramework/RushSession.js +1 -0
  323. package/lib/pluginFramework/logging/Logger.d.ts +40 -0
  324. package/lib/pluginFramework/logging/Logger.js +1 -0
  325. package/lib/start-pnpm.d.ts +2 -0
  326. package/lib/start-pnpm.js +1 -0
  327. package/lib/start.d.ts +2 -0
  328. package/lib/start.js +1 -0
  329. package/lib/startx.d.ts +2 -0
  330. package/lib/startx.js +1 -0
  331. package/lib/utilities/AsyncRecycler.d.ts +38 -0
  332. package/lib/utilities/AsyncRecycler.js +1 -0
  333. package/lib/utilities/CollatedTerminalProvider.d.ts +18 -0
  334. package/lib/utilities/CollatedTerminalProvider.js +1 -0
  335. package/lib/utilities/Npm.d.ts +6 -0
  336. package/lib/utilities/Npm.js +1 -0
  337. package/lib/utilities/OverlappingPathAnalyzer.d.ts +9 -0
  338. package/lib/utilities/OverlappingPathAnalyzer.js +1 -0
  339. package/lib/utilities/PathConstants.d.ts +23 -0
  340. package/lib/utilities/PathConstants.js +1 -0
  341. package/lib/utilities/Stopwatch.d.ts +75 -0
  342. package/lib/utilities/Stopwatch.js +1 -0
  343. package/lib/utilities/TarExecutable.d.ts +32 -0
  344. package/lib/utilities/TarExecutable.js +1 -0
  345. package/lib/utilities/Utilities.d.ts +189 -0
  346. package/lib/utilities/Utilities.js +1 -0
  347. package/lib/utilities/WebClient.d.ts +49 -0
  348. package/lib/utilities/WebClient.js +1 -0
  349. package/lib/utilities/npmrcUtilities.d.ts +15 -0
  350. package/lib/utilities/npmrcUtilities.js +1 -0
  351. package/lib-shim/generate-stubs.d.ts +2 -0
  352. package/lib-shim/generate-stubs.d.ts.map +1 -0
  353. package/lib-shim/generate-stubs.js +82 -0
  354. package/lib-shim/generate-stubs.js.map +1 -0
  355. package/lib-shim/index.d.ts +5 -0
  356. package/lib-shim/index.d.ts.map +1 -0
  357. package/lib-shim/index.js +201 -0
  358. package/lib-shim/index.js.map +1 -0
  359. package/package.json +4 -4
  360. package/lib/index.d.ts.map +0 -1
  361. package/lib/index.js.map +0 -1
@@ -0,0 +1,217 @@
1
+ import { IPackageJson } from '@rushstack/node-core-library';
2
+ import { RushConfiguration } from '../api/RushConfiguration';
3
+ import { VersionPolicy } from './VersionPolicy';
4
+ import type { PackageJsonEditor } from './PackageJsonEditor';
5
+ /**
6
+ * This represents the JSON data object for a project entry in the rush.json configuration file.
7
+ */
8
+ export interface IRushConfigurationProjectJson {
9
+ packageName: string;
10
+ projectFolder: string;
11
+ reviewCategory?: string;
12
+ decoupledLocalDependencies: string[];
13
+ cyclicDependencyProjects?: string[];
14
+ versionPolicyName?: string;
15
+ shouldPublish?: boolean;
16
+ skipRushCheck?: boolean;
17
+ publishFolder?: string;
18
+ tags?: string[];
19
+ }
20
+ /**
21
+ * @internal
22
+ */
23
+ export interface IRushConfigurationProjectOptions {
24
+ /**
25
+ * The raw JSON representation from rush.json
26
+ */
27
+ projectJson: IRushConfigurationProjectJson;
28
+ /**
29
+ * The enclosing configuration
30
+ */
31
+ rushConfiguration: RushConfiguration;
32
+ /**
33
+ * A unique string name for this project
34
+ */
35
+ tempProjectName: string;
36
+ /**
37
+ * If specified, validate project tags against this list.
38
+ */
39
+ allowedProjectTags: Set<string> | undefined;
40
+ }
41
+ /**
42
+ * This represents the configuration of a project that is built by Rush, based on
43
+ * the Rush.json configuration file.
44
+ * @public
45
+ */
46
+ export declare class RushConfigurationProject {
47
+ private readonly _shouldPublish;
48
+ private _versionPolicy;
49
+ private _dependencyProjects;
50
+ private _consumingProjects;
51
+ private _packageJson;
52
+ /**
53
+ * The name of the NPM package. An error is reported if this name is not
54
+ * identical to packageJson.name.
55
+ *
56
+ * Example: `@scope/MyProject`
57
+ */
58
+ readonly packageName: string;
59
+ /**
60
+ * The full path of the folder that contains the project to be built by Rush.
61
+ *
62
+ * Example: `C:\MyRepo\libraries\my-project`
63
+ */
64
+ readonly projectFolder: string;
65
+ /**
66
+ * The relative path of the folder that contains the project to be built by Rush.
67
+ *
68
+ * Example: `libraries/my-project`
69
+ */
70
+ readonly projectRelativeFolder: string;
71
+ /**
72
+ * The project-specific Rush configuration folder.
73
+ *
74
+ * Example: `C:\MyRepo\libraries\my-project\config\rush`
75
+ */
76
+ readonly projectRushConfigFolder: string;
77
+ /**
78
+ * The project-specific Rush temp folder. This folder is used to store Rush-specific temporary files.
79
+ *
80
+ * Example: `C:\MyRepo\libraries\my-project\.rush\temp`
81
+ */
82
+ readonly projectRushTempFolder: string;
83
+ /**
84
+ * The Rush configuration for the monorepo that the project belongs to.
85
+ */
86
+ readonly rushConfiguration: RushConfiguration;
87
+ /**
88
+ * The review category name, or undefined if no category was assigned.
89
+ * This name must be one of the valid choices listed in RushConfiguration.reviewCategories.
90
+ */
91
+ readonly reviewCategory: string | undefined;
92
+ /**
93
+ * A list of local projects that appear as devDependencies for this project, but cannot be
94
+ * locally linked because it would create a cyclic dependency; instead, the last published
95
+ * version will be installed in the Common folder.
96
+ *
97
+ * These are package names that would be found by RushConfiguration.getProjectByName().
98
+ */
99
+ readonly decoupledLocalDependencies: Set<string>;
100
+ /**
101
+ * The parsed NPM "package.json" file from projectFolder.
102
+ */
103
+ get packageJson(): IPackageJson;
104
+ /**
105
+ * A useful wrapper around the package.json file for making modifications
106
+ * @beta
107
+ */
108
+ readonly packageJsonEditor: PackageJsonEditor;
109
+ /**
110
+ * The unique name for the temporary project that will be generated in the Common folder.
111
+ * For example, if the project name is `@scope/MyProject`, the temporary project name
112
+ * might be `@rush-temp/MyProject-2`.
113
+ *
114
+ * Example: `@rush-temp/MyProject-2`
115
+ */
116
+ readonly tempProjectName: string;
117
+ /**
118
+ * The unscoped temporary project name
119
+ *
120
+ * Example: `my-project-2`
121
+ */
122
+ readonly unscopedTempProjectName: string;
123
+ /**
124
+ * If true, then this project will be ignored by the "rush check" command.
125
+ * The default value is false.
126
+ */
127
+ readonly skipRushCheck: boolean;
128
+ /**
129
+ * Name of the version policy used by this project.
130
+ * @beta
131
+ */
132
+ readonly versionPolicyName: string | undefined;
133
+ /**
134
+ * The full path of the folder that will get published by Rush.
135
+ *
136
+ * @remarks
137
+ * By default this is the same as the project folder, but a custom folder can be specified
138
+ * using the the "publishFolder" setting in rush.json.
139
+ *
140
+ * Example: `C:\MyRepo\libraries\my-project\temp\publish`
141
+ */
142
+ readonly publishFolder: string;
143
+ /**
144
+ * An optional set of custom tags that can be used to select this project.
145
+ *
146
+ * @remarks
147
+ * For example, adding `my-custom-tag` will allow this project to be selected by the
148
+ * command `rush list --only tag:my-custom-tag`. The tag name must be one or more words separated
149
+ * by hyphens, where a word may contain lowercase letters, digits, and the period character.
150
+ *
151
+ * @beta
152
+ */
153
+ readonly tags: ReadonlySet<string>;
154
+ /** @internal */
155
+ constructor(options: IRushConfigurationProjectOptions);
156
+ /**
157
+ * A list of local projects that appear as devDependencies for this project, but cannot be
158
+ * locally linked because it would create a cyclic dependency; instead, the last published
159
+ * version will be installed in the Common folder.
160
+ *
161
+ * These are package names that would be found by RushConfiguration.getProjectByName().
162
+ *
163
+ * @deprecated Use `decoupledLocalDependencies` instead, as it better describes the purpose of the data.
164
+ */
165
+ get cyclicDependencyProjects(): Set<string>;
166
+ /**
167
+ * An array of projects within the Rush configuration which directly depend on this package.
168
+ * @deprecated Use `consumingProjectNames` instead, as it has Set semantics, which better reflect the nature
169
+ * of the data.
170
+ */
171
+ get downstreamDependencyProjects(): string[];
172
+ /**
173
+ * An array of projects within the Rush configuration which this project declares as dependencies.
174
+ * @deprecated Use `dependencyProjects` instead, as it has Set semantics, which better reflect the nature
175
+ * of the data.
176
+ */
177
+ get localDependencyProjects(): ReadonlyArray<RushConfigurationProject>;
178
+ /**
179
+ * The set of projects within the Rush configuration which this project declares as dependencies.
180
+ *
181
+ * @remarks
182
+ * Can be used recursively to walk the project dependency graph to find all projects that are directly or indirectly
183
+ * referenced from this project.
184
+ */
185
+ get dependencyProjects(): ReadonlySet<RushConfigurationProject>;
186
+ /**
187
+ * The set of projects within the Rush configuration which declare this project as a dependency.
188
+ * Excludes those that declare this project as a `cyclicDependencyProject`.
189
+ *
190
+ * @remarks
191
+ * This field is the counterpart to `dependencyProjects`, and can be used recursively to walk the project dependency
192
+ * graph to find all projects which will be impacted by changes to this project.
193
+ */
194
+ get consumingProjects(): ReadonlySet<RushConfigurationProject>;
195
+ /**
196
+ * A flag which indicates whether changes to this project should be published. This controls
197
+ * whether or not the project would show up when running `rush change`, and whether or not it
198
+ * should be published during `rush publish`.
199
+ */
200
+ get shouldPublish(): boolean;
201
+ /**
202
+ * Version policy of the project
203
+ * @beta
204
+ */
205
+ get versionPolicy(): VersionPolicy | undefined;
206
+ /**
207
+ * Indicate whether this project is the main project for the related version policy.
208
+ *
209
+ * False if the project is not for publishing.
210
+ * True if the project is individually versioned or if its lockstep version policy does not specify main project.
211
+ * False if the project is lockstepped and is not the main project for its version policy.
212
+ *
213
+ * @beta
214
+ */
215
+ get isMainProject(): boolean;
216
+ }
217
+ //# sourceMappingURL=RushConfigurationProject.d.ts.map
@@ -0,0 +1 @@
1
+ module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/RushConfigurationProject");
@@ -0,0 +1,32 @@
1
+ /**
2
+ * This class provides global folders that are used for rush's internal install locations.
3
+ *
4
+ * @internal
5
+ */
6
+ export declare class RushGlobalFolder {
7
+ /**
8
+ * The global folder where Rush stores temporary files.
9
+ *
10
+ * @remarks
11
+ *
12
+ * Most of the temporary files created by Rush are stored separately for each monorepo working folder,
13
+ * to avoid issues of concurrency and compatibility between tool versions. However, a small set
14
+ * of files (e.g. installations of the `@microsoft/rush-lib` engine and the package manager) are stored
15
+ * in a global folder to speed up installations. The default location is `~/.rush` on POSIX-like
16
+ * operating systems or `C:\Users\YourName` on Windows.
17
+ *
18
+ * You can use the {@link EnvironmentVariableNames.RUSH_GLOBAL_FOLDER} environment variable to specify
19
+ * a different folder path. This is useful for example if a Windows group policy forbids executing scripts
20
+ * installed in a user's home directory.
21
+ *
22
+ * POSIX is a registered trademark of the Institute of Electrical and Electronic Engineers, Inc.
23
+ */
24
+ readonly path: string;
25
+ /**
26
+ * The absolute path to Rush's storage in the home directory for the current user and node version.
27
+ * On Windows, it would be something like `C:\Users\YourName\.rush\node-v3.4.5`.
28
+ */
29
+ readonly nodeSpecificPath: string;
30
+ constructor();
31
+ }
32
+ //# sourceMappingURL=RushGlobalFolder.d.ts.map
@@ -0,0 +1 @@
1
+ module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/RushGlobalFolder");
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Used by rush-sdk to access internals of rush-lib.
3
+ * @internal
4
+ */
5
+ export declare class RushInternals {
6
+ /**
7
+ * Used by rush-sdk to load an internal API specified by its module path.
8
+ *
9
+ * @param srcImportPath - The module path to load. For example, to refer to `src/api/ChangeFile.ts`,
10
+ * the `srcImportPath` would be `"api/ChangeFile"`.
11
+ * @returns the module object as would be returned by `require()`
12
+ */
13
+ static loadModule(srcImportPath: string): unknown;
14
+ }
15
+ //# sourceMappingURL=RushInternals.d.ts.map
@@ -0,0 +1 @@
1
+ module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/RushInternals");
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @internal
3
+ */
4
+ export interface IRushPluginConfigurationBase {
5
+ packageName: string;
6
+ pluginName: string;
7
+ }
8
+ export interface IRushPluginConfiguration extends IRushPluginConfigurationBase {
9
+ autoinstallerName: string;
10
+ }
11
+ interface IRushPluginsConfigurationJson {
12
+ plugins: IRushPluginConfiguration[];
13
+ }
14
+ export declare class RushPluginsConfiguration {
15
+ private static _jsonSchema;
16
+ private _jsonFilename;
17
+ readonly configuration: Readonly<IRushPluginsConfigurationJson>;
18
+ constructor(jsonFilename: string);
19
+ }
20
+ export {};
21
+ //# sourceMappingURL=RushPluginsConfiguration.d.ts.map
@@ -0,0 +1 @@
1
+ module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/RushPluginsConfiguration");
@@ -0,0 +1,117 @@
1
+ import { ITerminal } from '@rushstack/node-core-library';
2
+ import { RushConfigurationProject } from './RushConfigurationProject';
3
+ import type { IPhase } from './CommandLineConfiguration';
4
+ /**
5
+ * Describes the file structure for the "<project root>/config/rush-project.json" config file.
6
+ */
7
+ export interface IRushProjectJson {
8
+ /**
9
+ * The incremental analyzer can skip Rush commands for projects whose input files have
10
+ * not changed since the last build. Normally, every Git-tracked file under the project
11
+ * folder is assumed to be an input. Set incrementalBuildIgnoredGlobs to ignore specific
12
+ * files, specified as globs relative to the project folder. The list of file globs will
13
+ * be interpreted the same way your .gitignore file is.
14
+ */
15
+ incrementalBuildIgnoredGlobs?: string[];
16
+ /**
17
+ * Disable caching for this project. The project will never be restored from cache.
18
+ * This may be useful if this project affects state outside of its folder.
19
+ *
20
+ * This option is only used when the build cache is enabled for the repo. You can set
21
+ * disableBuildCacheForProject=true to disable caching for a specific project. This is a useful workaround
22
+ * if that project's build scripts violate the assumptions of the cache, for example by writing
23
+ * files outside the project folder. Where possible, a better solution is to improve the build scripts
24
+ * to be compatible with caching.
25
+ */
26
+ disableBuildCacheForProject?: boolean;
27
+ operationSettings?: IOperationSettings[];
28
+ }
29
+ export interface IOperationSettings {
30
+ /**
31
+ * The name of the operation. This should be a key in the `package.json`'s `scripts` object.
32
+ */
33
+ operationName: string;
34
+ /**
35
+ * Specify the folders where this operation writes its output files. If enabled, the Rush build
36
+ * cache will restore these folders from the cache. The strings are folder names under the project
37
+ * root folder.
38
+ *
39
+ * These folders should not be tracked by Git. They must not contain symlinks.
40
+ */
41
+ outputFolderNames?: string[];
42
+ /**
43
+ * Disable caching for this operation. The operation will never be restored from cache.
44
+ * This may be useful if this operation affects state outside of its folder.
45
+ *
46
+ * This option is only used when the build cache is enabled for the repo. You can set
47
+ * disableBuildCacheForOperation=true to disable caching for a specific project operation.
48
+ * This is a useful workaround if that project's build scripts violate the assumptions of the cache,
49
+ * for example by writing files outside the project folder. Where possible, a better solution is to improve
50
+ * the build scripts to be compatible with caching.
51
+ */
52
+ disableBuildCacheForOperation?: boolean;
53
+ /**
54
+ * An optional list of environment variables that can affect this operation. The values of
55
+ * these environment variables will become part of the hash when reading and writing the build cache.
56
+ *
57
+ * Note: generally speaking, all environment variables available to Rush are also available to any
58
+ * operations performed -- Rush assumes that environment variables do not affect build outputs unless
59
+ * you list them here.
60
+ */
61
+ dependsOnEnvVars?: string[];
62
+ /**
63
+ * An optional list of glob (minimatch) patterns pointing to files that can affect this operation.
64
+ * The hash values of the contents of these files will become part of the final hash when reading
65
+ * and writing the build cache.
66
+ *
67
+ * Note: if a particular file will be matched by patterns provided by both `incrementalBuildIgnoredGlobs` and
68
+ * `dependsOnAdditionalFiles` options - `dependsOnAdditionalFiles` will win and the file will be included
69
+ * calculating final hash value when reading and writing the build cache
70
+ */
71
+ dependsOnAdditionalFiles?: string[];
72
+ }
73
+ /**
74
+ * Use this class to load the "config/rush-project.json" config file.
75
+ *
76
+ * This file provides project-specific configuration options.
77
+ * @public
78
+ */
79
+ export declare class RushProjectConfiguration {
80
+ private static readonly _configCache;
81
+ readonly project: RushConfigurationProject;
82
+ /**
83
+ * {@inheritdoc IRushProjectJson.incrementalBuildIgnoredGlobs}
84
+ */
85
+ readonly incrementalBuildIgnoredGlobs: ReadonlyArray<string>;
86
+ /**
87
+ * {@inheritdoc IRushProjectJson.disableBuildCacheForProject}
88
+ */
89
+ readonly disableBuildCacheForProject: boolean;
90
+ readonly operationSettingsByOperationName: ReadonlyMap<string, Readonly<IOperationSettings>>;
91
+ private readonly _validationCache;
92
+ private constructor();
93
+ /**
94
+ * Validates that the requested phases are compatible.
95
+ * Deferral of this logic to its own method means that Rush no longer eagerly validates
96
+ * all defined commands in command-line.json. As such, while validation will be run for a given
97
+ * command upon invoking that command, defining overlapping phases in "rush custom-command"
98
+ * that are not used by "rush build" will not cause "rush build" to exit with an error.
99
+ */
100
+ validatePhaseConfiguration(phases: Iterable<IPhase>, terminal: ITerminal): void;
101
+ /**
102
+ * Loads the rush-project.json data for the specified project.
103
+ */
104
+ static tryLoadForProjectAsync(project: RushConfigurationProject, terminal: ITerminal): Promise<RushProjectConfiguration | undefined>;
105
+ /**
106
+ * Load only the `incrementalBuildIgnoredGlobs` property from the rush-project.json file, skipping
107
+ * validation of other parts of the config file.
108
+ *
109
+ * @remarks
110
+ * This function exists to allow the ProjectChangeAnalyzer to load just the ignore globs without
111
+ * having to validate the rest of the `rush-project.json` file against the repo's command-line configuration.
112
+ */
113
+ static tryLoadIgnoreGlobsForProjectAsync(project: RushConfigurationProject, terminal: ITerminal): Promise<ReadonlyArray<string> | undefined>;
114
+ private static _tryLoadJsonForProjectAsync;
115
+ private static _getRushProjectConfiguration;
116
+ }
117
+ //# sourceMappingURL=RushProjectConfiguration.d.ts.map
@@ -0,0 +1 @@
1
+ module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/RushProjectConfiguration");
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Rush per-user configuration data.
3
+ *
4
+ * @beta
5
+ */
6
+ export declare class RushUserConfiguration {
7
+ private static _schema;
8
+ /**
9
+ * If provided, store build cache in the specified folder. Must be an absolute path.
10
+ */
11
+ readonly buildCacheFolder: string | undefined;
12
+ private constructor();
13
+ static initializeAsync(): Promise<RushUserConfiguration>;
14
+ static getRushUserFolderPath(): string;
15
+ }
16
+ //# sourceMappingURL=RushUserConfiguration.d.ts.map
@@ -0,0 +1 @@
1
+ module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/RushUserConfiguration");
@@ -0,0 +1,14 @@
1
+ import { IPackageJson } from '@rushstack/node-core-library';
2
+ import { PackageJsonEditor } from './PackageJsonEditor';
3
+ export interface IFromObjectOptions {
4
+ object: IPackageJson;
5
+ filename: string;
6
+ onSaved?: (newObject: IPackageJson) => void;
7
+ }
8
+ export declare class SaveCallbackPackageJsonEditor extends PackageJsonEditor {
9
+ private readonly _onSaved;
10
+ private constructor();
11
+ static fromObjectWithCallback(options: IFromObjectOptions): SaveCallbackPackageJsonEditor;
12
+ saveIfModified(): boolean;
13
+ }
14
+ //# sourceMappingURL=SaveCallbackPackageJsonEditor.d.ts.map
@@ -0,0 +1 @@
1
+ module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/SaveCallbackPackageJsonEditor");
@@ -0,0 +1,11 @@
1
+ import { ICommandLineStringDefinition } from '@rushstack/ts-command-line';
2
+ /**
3
+ * Namespace for utilities relating to the Variants feature.
4
+ */
5
+ export declare class Variants {
6
+ /**
7
+ * Provides the parameter configuration for '--variant'.
8
+ */
9
+ static readonly VARIANT_PARAMETER: ICommandLineStringDefinition;
10
+ }
11
+ //# sourceMappingURL=Variants.d.ts.map
@@ -0,0 +1 @@
1
+ module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/Variants");
@@ -0,0 +1,203 @@
1
+ import { IPackageJson } from '@rushstack/node-core-library';
2
+ import { IVersionPolicyJson, ILockStepVersionJson, IIndividualVersionJson } from './VersionPolicyConfiguration';
3
+ import { RushConfiguration } from './RushConfiguration';
4
+ /**
5
+ * Type of version bumps
6
+ * @public
7
+ */
8
+ export declare enum BumpType {
9
+ 'none' = 0,
10
+ 'prerelease' = 1,
11
+ 'patch' = 2,
12
+ 'preminor' = 3,
13
+ 'minor' = 4,
14
+ 'major' = 5
15
+ }
16
+ /**
17
+ * Version policy base type names
18
+ * @public
19
+ */
20
+ export declare enum VersionPolicyDefinitionName {
21
+ 'lockStepVersion' = 0,
22
+ 'individualVersion' = 1
23
+ }
24
+ /**
25
+ * This is the base class for version policy which controls how versions get bumped.
26
+ * @public
27
+ */
28
+ export declare abstract class VersionPolicy {
29
+ private _versionFormatForCommit;
30
+ private _versionFormatForPublish;
31
+ /**
32
+ * Version policy name
33
+ */
34
+ readonly policyName: string;
35
+ /**
36
+ * Version policy definition name
37
+ */
38
+ readonly definitionName: VersionPolicyDefinitionName;
39
+ /**
40
+ * Determines if a version policy wants to opt out of changelog files.
41
+ */
42
+ readonly exemptFromRushChange: boolean;
43
+ /**
44
+ * Determines if a version policy wants to opt in to including email.
45
+ */
46
+ readonly includeEmailInChangeFile: boolean;
47
+ /**
48
+ * @internal
49
+ */
50
+ constructor(versionPolicyJson: IVersionPolicyJson);
51
+ /**
52
+ * Loads from version policy json
53
+ *
54
+ * @param versionPolicyJson - version policy Json
55
+ *
56
+ * @internal
57
+ */
58
+ static load(versionPolicyJson: IVersionPolicyJson): VersionPolicy | undefined;
59
+ /**
60
+ * Whether it is a lockstepped version policy
61
+ */
62
+ get isLockstepped(): boolean;
63
+ /**
64
+ * Returns an updated package json that satisfies the policy.
65
+ *
66
+ * @param project - package json
67
+ * @param force - force update even when the project version is higher than the policy version.
68
+ */
69
+ abstract ensure(project: IPackageJson, force?: boolean): IPackageJson | undefined;
70
+ /**
71
+ * Bumps version based on the policy
72
+ *
73
+ * @param bumpType - (optional) override bump type
74
+ * @param identifier - (optional) override prerelease Id
75
+ */
76
+ abstract bump(bumpType?: BumpType, identifier?: string): void;
77
+ /**
78
+ * Serialized json for the policy
79
+ *
80
+ * @internal
81
+ */
82
+ abstract get _json(): IVersionPolicyJson;
83
+ /**
84
+ * Validates the specified version and throws if the version does not satisfy the policy.
85
+ *
86
+ * @param versionString - version string
87
+ * @param packageName - package name
88
+ */
89
+ abstract validate(versionString: string, packageName: string): void;
90
+ /**
91
+ * Tells the version policy to modify any dependencies in the target package
92
+ * to values used for publishing.
93
+ */
94
+ setDependenciesBeforePublish(packageName: string, configuration: RushConfiguration): void;
95
+ /**
96
+ * Tells the version policy to modify any dependencies in the target package
97
+ * to values used for checked-in source.
98
+ */
99
+ setDependenciesBeforeCommit(packageName: string, configuration: RushConfiguration): void;
100
+ }
101
+ /**
102
+ * This policy indicates all related projects should use the same version.
103
+ * @public
104
+ */
105
+ export declare class LockStepVersionPolicy extends VersionPolicy {
106
+ private _version;
107
+ /**
108
+ * The type of bump for next bump.
109
+ */
110
+ readonly nextBump: BumpType | undefined;
111
+ /**
112
+ * The main project for the version policy.
113
+ *
114
+ * If the value is provided, change logs will only be generated in that project.
115
+ * If the value is not provided, change logs will be hosted in each project associated with the policy.
116
+ */
117
+ readonly mainProject: string | undefined;
118
+ /**
119
+ * @internal
120
+ */
121
+ constructor(versionPolicyJson: ILockStepVersionJson);
122
+ /**
123
+ * The value of the lockstep version
124
+ */
125
+ get version(): string;
126
+ /**
127
+ * Serialized json for this policy
128
+ *
129
+ * @internal
130
+ */
131
+ get _json(): ILockStepVersionJson;
132
+ /**
133
+ * Returns an updated package json that satisfies the version policy.
134
+ *
135
+ * @param project - input package json
136
+ * @param force - force update even when the project version is higher than the policy version.
137
+ */
138
+ ensure(project: IPackageJson, force?: boolean): IPackageJson | undefined;
139
+ /**
140
+ * Bumps the version of the lockstep policy
141
+ *
142
+ * @param bumpType - Overwrite bump type in version-policy.json with the provided value.
143
+ * @param identifier - Prerelease identifier if bump type is prerelease.
144
+ */
145
+ bump(bumpType?: BumpType, identifier?: string): void;
146
+ /**
147
+ * Updates the version of the policy directly with a new value
148
+ * @param newVersionString - New version
149
+ */
150
+ update(newVersionString: string): boolean;
151
+ /**
152
+ * Validates the specified version and throws if the version does not satisfy lockstep version.
153
+ *
154
+ * @param versionString - version string
155
+ * @param packageName - package name
156
+ */
157
+ validate(versionString: string, packageName: string): void;
158
+ private _updatePackageVersion;
159
+ private _getReleaseType;
160
+ }
161
+ /**
162
+ * This policy indicates all related projects get version bump driven by their own changes.
163
+ * @public
164
+ */
165
+ export declare class IndividualVersionPolicy extends VersionPolicy {
166
+ /**
167
+ * The major version that has been locked
168
+ */
169
+ readonly lockedMajor: number | undefined;
170
+ /**
171
+ * @internal
172
+ */
173
+ constructor(versionPolicyJson: IIndividualVersionJson);
174
+ /**
175
+ * Serialized json for this policy
176
+ *
177
+ * @internal
178
+ */
179
+ get _json(): IIndividualVersionJson;
180
+ /**
181
+ * Returns an updated package json that satisfies the version policy.
182
+ *
183
+ * @param project - input package json
184
+ * @param force - force update even when the project version is higher than the policy version.
185
+ */
186
+ ensure(project: IPackageJson, force?: boolean): IPackageJson | undefined;
187
+ /**
188
+ * Bumps version.
189
+ * Individual version policy lets change files drive version bump. This method currently does not do anything.
190
+ *
191
+ * @param bumpType - bump type
192
+ * @param identifier - prerelease id
193
+ */
194
+ bump(bumpType?: BumpType, identifier?: string): void;
195
+ /**
196
+ * Validates the specified version and throws if the version does not satisfy the policy.
197
+ *
198
+ * @param versionString - version string
199
+ * @param packageName - package name
200
+ */
201
+ validate(versionString: string, packageName: string): void;
202
+ }
203
+ //# sourceMappingURL=VersionPolicy.d.ts.map