@hubspot/cli 7.7.34-experimental.0 → 7.8.0-beta.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 (293) hide show
  1. package/bin/cli.js +31 -25
  2. package/commands/__tests__/auth.test.js +5 -0
  3. package/commands/__tests__/doctor.test.js +16 -16
  4. package/commands/__tests__/getStarted.test.js +2 -2
  5. package/commands/__tests__/mcp.test.js +1 -1
  6. package/commands/__tests__/project.test.js +0 -3
  7. package/commands/account/clean.js +18 -27
  8. package/commands/account/createOverride.js +13 -31
  9. package/commands/account/info.js +20 -31
  10. package/commands/account/list.js +16 -22
  11. package/commands/account/remove.js +12 -20
  12. package/commands/account/removeOverride.js +11 -21
  13. package/commands/account/rename.js +6 -9
  14. package/commands/account/use.js +12 -26
  15. package/commands/account.js +2 -2
  16. package/commands/app/__tests__/migrate.test.js +5 -6
  17. package/commands/app/migrate.js +13 -19
  18. package/commands/app/secret/add.js +2 -1
  19. package/commands/app/secret/delete.js +2 -1
  20. package/commands/app/secret/list.js +2 -1
  21. package/commands/app/secret/update.js +2 -1
  22. package/commands/app/secret.js +2 -1
  23. package/commands/app.js +3 -8
  24. package/commands/auth.d.ts +1 -0
  25. package/commands/auth.js +16 -7
  26. package/commands/cms/convertFields.js +7 -9
  27. package/commands/cms/getReactModule.js +9 -14
  28. package/commands/cms/lighthouseScore.js +33 -36
  29. package/commands/cms.js +2 -2
  30. package/commands/completion.js +3 -3
  31. package/commands/config/set.d.ts +1 -1
  32. package/commands/config/set.js +64 -37
  33. package/commands/config.js +2 -2
  34. package/commands/create.js +2 -2
  35. package/commands/customObject/create.js +10 -12
  36. package/commands/customObject/schema/create.js +9 -11
  37. package/commands/customObject/schema/delete.js +16 -16
  38. package/commands/customObject/schema/fetch-all.js +12 -11
  39. package/commands/customObject/schema/fetch.js +15 -15
  40. package/commands/customObject/schema/list.js +4 -4
  41. package/commands/customObject/schema/update.js +13 -13
  42. package/commands/customObject/schema.js +2 -2
  43. package/commands/customObject.js +6 -7
  44. package/commands/doctor.js +8 -11
  45. package/commands/feedback.js +7 -12
  46. package/commands/fetch.js +8 -8
  47. package/commands/filemanager/fetch.js +7 -7
  48. package/commands/filemanager/upload.js +15 -34
  49. package/commands/filemanager.js +2 -2
  50. package/commands/function/deploy.js +11 -29
  51. package/commands/function/list.js +8 -8
  52. package/commands/function/server.js +9 -11
  53. package/commands/function.d.ts +1 -1
  54. package/commands/function.js +2 -2
  55. package/commands/getStarted.d.ts +0 -2
  56. package/commands/getStarted.js +4 -4
  57. package/commands/hubdb/clear.js +7 -15
  58. package/commands/hubdb/create.js +9 -15
  59. package/commands/hubdb/delete.js +8 -15
  60. package/commands/hubdb/fetch.js +6 -9
  61. package/commands/hubdb.d.ts +1 -1
  62. package/commands/hubdb.js +2 -2
  63. package/commands/init.js +2 -3
  64. package/commands/lint.js +16 -16
  65. package/commands/list.js +8 -14
  66. package/commands/logs.js +14 -20
  67. package/commands/mcp/__tests__/setup.test.js +2 -2
  68. package/commands/mcp/setup.js +11 -2
  69. package/commands/mcp.js +3 -3
  70. package/commands/mv.js +6 -17
  71. package/commands/open.js +5 -5
  72. package/commands/project/__tests__/add.test.js +4 -2
  73. package/commands/project/__tests__/create.test.js +6 -6
  74. package/commands/project/__tests__/deploy.test.js +3 -7
  75. package/commands/project/__tests__/devUnifiedFlow.test.js +2 -4
  76. package/commands/project/__tests__/installDeps.test.js +8 -8
  77. package/commands/project/__tests__/logs.test.js +1 -4
  78. package/commands/project/__tests__/migrate.test.js +6 -7
  79. package/commands/project/__tests__/migrateApp.test.js +3 -7
  80. package/commands/project/__tests__/profile.test.js +1 -1
  81. package/commands/project/__tests__/validate.test.js +98 -0
  82. package/commands/project/add.js +4 -8
  83. package/commands/project/cloneApp.js +14 -19
  84. package/commands/project/create.js +3 -10
  85. package/commands/project/deploy.js +5 -5
  86. package/commands/project/dev/deprecatedFlow.js +7 -16
  87. package/commands/project/dev/index.js +16 -13
  88. package/commands/project/dev/unifiedFlow.js +8 -4
  89. package/commands/project/download.js +10 -14
  90. package/commands/project/installDeps.js +8 -9
  91. package/commands/project/listBuilds.js +12 -21
  92. package/commands/project/logs.js +21 -24
  93. package/commands/project/migrate.js +41 -13
  94. package/commands/project/migrateApp.js +10 -17
  95. package/commands/project/open.js +6 -14
  96. package/commands/project/profile/add.js +3 -3
  97. package/commands/project/profile/delete.js +1 -2
  98. package/commands/project/profile.js +2 -3
  99. package/commands/project/upload.d.ts +2 -2
  100. package/commands/project/upload.js +17 -26
  101. package/commands/project/validate.js +7 -7
  102. package/commands/project/watch.js +13 -22
  103. package/commands/project.js +2 -3
  104. package/commands/sandbox/__tests__/create.test.js +5 -5
  105. package/commands/sandbox/create.js +22 -32
  106. package/commands/sandbox/delete.js +35 -63
  107. package/commands/sandbox.js +2 -2
  108. package/commands/secret/addSecret.js +7 -17
  109. package/commands/secret/deleteSecret.js +10 -20
  110. package/commands/secret/listSecret.js +8 -10
  111. package/commands/secret/updateSecret.js +9 -17
  112. package/commands/secret.js +2 -2
  113. package/commands/testAccount/__tests__/delete.test.js +2 -4
  114. package/commands/testAccount/create.js +0 -3
  115. package/commands/testAccount/delete.d.ts +4 -3
  116. package/commands/testAccount/delete.js +155 -14
  117. package/commands/testAccount/importData.d.ts +1 -1
  118. package/commands/testAccount/importData.js +1 -1
  119. package/commands/testAccount.js +1 -1
  120. package/lang/en.d.ts +317 -120
  121. package/lang/en.js +312 -118
  122. package/lang/en.lyaml +2 -2
  123. package/lib/__tests__/buildAccount.test.js +2 -1
  124. package/lib/__tests__/commonOpts.test.js +1 -1
  125. package/lib/__tests__/dependencyManagement.test.js +1 -1
  126. package/lib/__tests__/developerTestAccounts.test.js +3 -3
  127. package/lib/__tests__/npm.test.js +1 -1
  128. package/lib/__tests__/oauth.test.js +4 -4
  129. package/lib/__tests__/process.test.js +10 -5
  130. package/lib/__tests__/sandboxSync.test.js +8 -8
  131. package/lib/__tests__/sandboxes.test.js +8 -8
  132. package/lib/__tests__/serverlessLogs.test.js +1 -1
  133. package/lib/__tests__/usageTracking.test.js +5 -5
  134. package/lib/__tests__/validation.test.js +2 -1
  135. package/lib/__tests__/yargsUtils.test.js +83 -9
  136. package/lib/app/__tests__/migrate.test.js +19 -56
  137. package/lib/app/__tests__/migrate_legacy.test.js +1 -1
  138. package/lib/app/migrate.d.ts +2 -8
  139. package/lib/app/migrate.js +5 -80
  140. package/lib/app/migrate_legacy.js +20 -24
  141. package/lib/buildAccount.js +25 -57
  142. package/lib/commonOpts.d.ts +1 -1
  143. package/lib/commonOpts.js +25 -22
  144. package/lib/configOptions.js +7 -0
  145. package/lib/constants.d.ts +13 -0
  146. package/lib/constants.js +17 -0
  147. package/lib/dependencyManagement.js +9 -27
  148. package/lib/developerTestAccounts.js +9 -23
  149. package/lib/doctor/Diagnosis.js +11 -23
  150. package/lib/doctor/DiagnosticInfoBuilder.js +12 -11
  151. package/lib/doctor/Doctor.js +42 -90
  152. package/lib/doctor/__tests__/Doctor.test.js +4 -4
  153. package/lib/errorHandlers/index.js +12 -20
  154. package/lib/errorHandlers/suppressError.js +10 -17
  155. package/lib/lang.js +6 -5
  156. package/lib/links.d.ts +1 -0
  157. package/lib/links.js +14 -7
  158. package/lib/mcp/setup.js +1 -1
  159. package/lib/middleware/__test__/commandTargetingUtils.test.js +99 -0
  160. package/lib/middleware/__test__/configMiddleware.test.js +11 -11
  161. package/lib/middleware/__test__/yargsChecksMiddleware.test.js +6 -8
  162. package/lib/middleware/commandTargetingUtils.d.ts +8 -0
  163. package/lib/middleware/commandTargetingUtils.js +78 -0
  164. package/lib/middleware/configMiddleware.d.ts +1 -1
  165. package/lib/middleware/configMiddleware.js +21 -81
  166. package/lib/middleware/fireAlarmMiddleware.js +15 -5
  167. package/lib/middleware/gitMiddleware.js +5 -1
  168. package/lib/middleware/notificationsMiddleware.js +5 -11
  169. package/lib/middleware/yargsChecksMiddleware.js +6 -9
  170. package/lib/npm.js +2 -2
  171. package/lib/oauth.js +5 -5
  172. package/lib/process.js +5 -4
  173. package/lib/projectProfiles.d.ts +1 -1
  174. package/lib/projectProfiles.js +2 -10
  175. package/lib/projects/__tests__/AppDevModeInterface.test.js +2 -0
  176. package/lib/projects/__tests__/LocalDevProcess.test.js +227 -16
  177. package/lib/projects/__tests__/LocalDevWebsocketServer.test.js +86 -60
  178. package/lib/projects/__tests__/deploy.test.js +71 -6
  179. package/lib/projects/__tests__/localDevProjectHelpers.test.js +6 -2
  180. package/lib/projects/__tests__/platformVersion.test.js +8 -8
  181. package/lib/projects/__tests__/projects.test.js +12 -12
  182. package/lib/projects/__tests__/structure.test.js +3 -3
  183. package/lib/projects/__tests__/upload.test.d.ts +1 -0
  184. package/lib/projects/__tests__/upload.test.js +82 -0
  185. package/lib/projects/add/__tests__/legacyAddComponent.test.js +6 -6
  186. package/lib/projects/add/__tests__/v3AddComponent.test.js +4 -4
  187. package/lib/projects/create/__tests__/legacy.test.js +5 -5
  188. package/lib/projects/create/__tests__/v3.test.js +80 -5
  189. package/lib/projects/create/index.js +2 -2
  190. package/lib/projects/create/legacy.js +2 -2
  191. package/lib/projects/create/v3.js +10 -8
  192. package/lib/projects/localDev/AppDevModeInterface.d.ts +2 -0
  193. package/lib/projects/localDev/AppDevModeInterface.js +21 -12
  194. package/lib/projects/localDev/LocalDevLogger.d.ts +4 -0
  195. package/lib/projects/localDev/LocalDevLogger.js +27 -6
  196. package/lib/projects/localDev/LocalDevManager.js +4 -5
  197. package/lib/projects/localDev/LocalDevProcess.d.ts +7 -5
  198. package/lib/projects/localDev/LocalDevProcess.js +90 -19
  199. package/lib/projects/localDev/LocalDevState.d.ts +9 -8
  200. package/lib/projects/localDev/LocalDevState.js +18 -17
  201. package/lib/projects/localDev/LocalDevWebsocketServer.d.ts +2 -1
  202. package/lib/projects/localDev/LocalDevWebsocketServer.js +62 -33
  203. package/lib/projects/localDev/helpers/project.d.ts +1 -0
  204. package/lib/projects/localDev/helpers/project.js +42 -1
  205. package/lib/projects/localDev/localDevWebsocketServerUtils.d.ts +4 -0
  206. package/lib/projects/localDev/localDevWebsocketServerUtils.js +10 -0
  207. package/lib/projects/platformVersion.d.ts +1 -1
  208. package/lib/projects/platformVersion.js +1 -1
  209. package/lib/projects/pollProjectBuildAndDeploy.js +4 -4
  210. package/lib/projects/structure.d.ts +2 -2
  211. package/lib/projects/structure.js +6 -6
  212. package/lib/projects/upload.d.ts +2 -3
  213. package/lib/projects/upload.js +17 -9
  214. package/lib/prompts/accountNamePrompt.js +14 -19
  215. package/lib/prompts/accountsPrompt.js +2 -2
  216. package/lib/prompts/cmsFieldPrompt.js +2 -2
  217. package/lib/prompts/createApiSamplePrompt.js +5 -5
  218. package/lib/prompts/createDeveloperTestAccountConfigPrompt.js +10 -1
  219. package/lib/prompts/createFunctionPrompt.js +14 -14
  220. package/lib/prompts/createModulePrompt.js +9 -9
  221. package/lib/prompts/createTemplatePrompt.js +2 -2
  222. package/lib/prompts/downloadProjectPrompt.js +5 -8
  223. package/lib/prompts/personalAccessKeyPrompt.js +3 -3
  224. package/lib/prompts/previewPrompt.js +6 -6
  225. package/lib/prompts/projectAddPrompt.js +8 -1
  226. package/lib/prompts/projectDevTargetAccountPrompt.js +20 -32
  227. package/lib/prompts/projectNamePrompt.js +4 -8
  228. package/lib/prompts/projectsLogsPrompt.js +2 -4
  229. package/lib/prompts/promptUtils.js +30 -9
  230. package/lib/prompts/sandboxesPrompt.js +7 -7
  231. package/lib/prompts/secretPrompt.js +3 -3
  232. package/lib/prompts/selectAppPrompt.js +3 -3
  233. package/lib/prompts/selectHubDBTablePrompt.js +9 -13
  234. package/lib/prompts/selectProjectTemplatePrompt.js +2 -0
  235. package/lib/prompts/selectPublicAppForMigrationPrompt.js +15 -19
  236. package/lib/prompts/setAsDefaultAccountPrompt.js +4 -8
  237. package/lib/prompts/uploadPrompt.js +5 -5
  238. package/lib/sandboxSync.js +24 -41
  239. package/lib/sandboxes.js +19 -47
  240. package/lib/schema.js +3 -3
  241. package/lib/serverlessLogs.js +11 -13
  242. package/lib/theme/__tests__/migrate.test.d.ts +1 -0
  243. package/lib/theme/__tests__/migrate.test.js +233 -0
  244. package/lib/theme/migrate.d.ts +13 -0
  245. package/lib/theme/migrate.js +90 -0
  246. package/lib/ui/SpinniesManager.d.ts +2 -0
  247. package/lib/ui/SpinniesManager.js +7 -0
  248. package/lib/ui/boxen.js +1 -2
  249. package/lib/ui/git.js +13 -10
  250. package/lib/ui/index.js +38 -37
  251. package/lib/ui/serverlessFunctionLogs.js +9 -7
  252. package/lib/ui/uiMessages.d.ts +68 -0
  253. package/lib/ui/uiMessages.js +71 -0
  254. package/lib/usageTracking.js +8 -8
  255. package/lib/validation.js +20 -23
  256. package/lib/yargsUtils.d.ts +1 -1
  257. package/lib/yargsUtils.js +12 -5
  258. package/mcp-server/tools/cms/HsCreateModuleTool.d.ts +2 -2
  259. package/mcp-server/tools/index.js +4 -0
  260. package/mcp-server/tools/project/AddFeatureToProjectTool.d.ts +2 -2
  261. package/mcp-server/tools/project/CreateProjectTool.d.ts +2 -2
  262. package/mcp-server/tools/project/DocsSearchTool.d.ts +4 -1
  263. package/mcp-server/tools/project/DocsSearchTool.js +5 -5
  264. package/mcp-server/tools/project/GetApiUsagePatternsByAppIdTool.d.ts +23 -0
  265. package/mcp-server/tools/project/GetApiUsagePatternsByAppIdTool.js +68 -0
  266. package/mcp-server/tools/project/GetApplicationInfoTool.d.ts +11 -0
  267. package/mcp-server/tools/project/GetApplicationInfoTool.js +49 -0
  268. package/mcp-server/tools/project/GetConfigValuesTool.d.ts +4 -1
  269. package/mcp-server/tools/project/GetConfigValuesTool.js +12 -6
  270. package/mcp-server/tools/project/GuidedWalkthroughTool.d.ts +2 -2
  271. package/mcp-server/tools/project/__tests__/DocsSearchTool.test.js +12 -10
  272. package/mcp-server/tools/project/__tests__/GetApiUsagePatternsByAppIdTool.test.d.ts +1 -0
  273. package/mcp-server/tools/project/__tests__/GetApiUsagePatternsByAppIdTool.test.js +169 -0
  274. package/mcp-server/tools/project/__tests__/GetApplicationInfoTool.test.d.ts +1 -0
  275. package/mcp-server/tools/project/__tests__/GetApplicationInfoTool.test.js +115 -0
  276. package/mcp-server/tools/project/__tests__/GetConfigValuesTool.test.js +8 -7
  277. package/mcp-server/utils/__tests__/cliConfig.test.d.ts +1 -0
  278. package/mcp-server/utils/__tests__/cliConfig.test.js +110 -0
  279. package/mcp-server/utils/cliConfig.d.ts +1 -0
  280. package/mcp-server/utils/cliConfig.js +12 -0
  281. package/mcp-server/utils/toolUsageTracking.js +2 -2
  282. package/package.json +4 -4
  283. package/types/LocalDev.d.ts +19 -3
  284. package/types/Yargs.d.ts +1 -1
  285. package/ui/index.js +1 -1
  286. package/commands/app/__tests__/install.test.js +0 -47
  287. package/commands/app/install.d.ts +0 -8
  288. package/commands/app/install.js +0 -122
  289. package/lib/middleware/__test__/utils.test.js +0 -51
  290. package/lib/middleware/utils.d.ts +0 -8
  291. package/lib/middleware/utils.js +0 -14
  292. /package/commands/{app/__tests__/install.test.d.ts → project/__tests__/validate.test.d.ts} +0 -0
  293. /package/lib/middleware/__test__/{utils.test.d.ts → commandTargetingUtils.test.d.ts} +0 -0
package/lang/en.d.ts CHANGED
@@ -10,6 +10,7 @@ export declare const commands: {
10
10
  };
11
11
  };
12
12
  readonly getStarted: {
13
+ readonly describe: "A step-by-step command to get you started with a HubSpot project.";
13
14
  readonly options: {
14
15
  readonly dest: {
15
16
  readonly describe: "Directory where the project should be created";
@@ -93,9 +94,13 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
93
94
  };
94
95
  readonly list: {
95
96
  readonly accounts: `${string}:`;
97
+ readonly defaultAccountTitle: string;
96
98
  readonly defaultAccount: (account: string) => string;
97
99
  readonly describe: "List names of accounts defined in config.";
98
100
  readonly configPath: (configPath: string) => string;
101
+ readonly overrideFilePathTitle: string;
102
+ readonly overrideFilePath: (overrideFilePath: string) => string;
103
+ readonly overrideAccount: (account: string) => string;
99
104
  readonly labels: {
100
105
  readonly accountId: "Account ID";
101
106
  readonly authType: "Auth Type";
@@ -121,6 +126,8 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
121
126
  readonly errors: {
122
127
  readonly accountNotFound: (specifiedAccount: string, configPath: string) => string;
123
128
  };
129
+ readonly accountOverride: (accountOverride: string) => string;
130
+ readonly accountOverrideCommands: `Use ${string} to change override accounts, or ${string} to remove the override and use your default account.`;
124
131
  readonly examples: {
125
132
  readonly default: "Select a HubSpot account to use as the default account";
126
133
  readonly idBased: "Set the default account to the account in the config with accountId equal to \"1234567\"";
@@ -142,6 +149,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
142
149
  readonly replaceDefaultAccount: "The removed account was the default account.";
143
150
  };
144
151
  readonly prompts: {
152
+ readonly deleteOverrideFile: (overrideFilePath: string, accountName: string) => string;
145
153
  readonly selectAccountToRemove: "Select an account to remove from the config";
146
154
  };
147
155
  readonly errors: {
@@ -161,12 +169,40 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
161
169
  readonly accountRemoved: (accountName: string) => string;
162
170
  };
163
171
  };
172
+ readonly removeOverride: {
173
+ readonly describe: (overrideFile: string) => string;
174
+ readonly accountOverride: (overrideFilePath: string, accountOverride: string) => string;
175
+ readonly prompts: {
176
+ readonly deleteOverrideFile: "Delete account override file?";
177
+ };
178
+ readonly success: "Removed the default account override file.";
179
+ readonly noOverrideFile: "No default account override file found in the current working directory. No action required.";
180
+ readonly errors: {
181
+ readonly globalConfigNotFound: `This command is only compatible with our new global config. Run ${string} to get started.`;
182
+ };
183
+ readonly options: {
184
+ readonly force: {
185
+ readonly describe: "Skip confirmation prompt when removing the override file";
186
+ };
187
+ };
188
+ };
164
189
  readonly info: {
165
- readonly accountId: (accountId: string) => string;
190
+ readonly accountId: (accountId: number) => string;
191
+ readonly defaultAccountTitle: string;
192
+ readonly configPath: (configPath: string) => string;
193
+ readonly defaultAccount: (accountName: string) => string;
194
+ readonly overrideFilePathTitle: string;
195
+ readonly overrideFilePath: (overrideFilePath: string) => string;
196
+ readonly overrideAccount: (accountName: string) => string;
166
197
  readonly describe: "Print information about the default account, or about the account specified with the \"account\" option.";
167
198
  readonly errors: {
168
199
  readonly notUsingPersonalAccessKey: "This command currently only supports fetching scopes for the personal access key auth type.";
169
200
  };
201
+ readonly options: {
202
+ readonly account: {
203
+ readonly describe: "Account name or id to show info for";
204
+ };
205
+ };
170
206
  readonly examples: {
171
207
  readonly default: "Print information for the default account";
172
208
  readonly idBased: "Print information for the account with accountId equal to \"1234567\"";
@@ -183,13 +219,37 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
183
219
  };
184
220
  readonly inactiveAccountsFound: {
185
221
  readonly one: "1 inactive account found:";
186
- readonly other: (count: string) => string;
222
+ readonly other: (count: number) => string;
187
223
  };
188
224
  readonly confirm: {
189
225
  readonly one: "Remove 1 inactive account from the CLI config?";
190
- readonly other: (count: string) => string;
226
+ readonly other: (count: number) => string;
191
227
  };
192
228
  readonly removeSuccess: (accountName: string) => string;
229
+ readonly replaceDefaultAccount: "The default account was removed.";
230
+ readonly defaultAccountOverride: (overrideFilePath: string) => string;
231
+ };
232
+ readonly createOverride: {
233
+ readonly describe: (hsAccountFileName: string) => string;
234
+ readonly success: (overrideFilePath: string) => string;
235
+ readonly accountOverride: (overrideFilePath: string, accountOverride: string) => string;
236
+ readonly prompts: {
237
+ readonly replaceOverrideFile: "Replace existing account override file?";
238
+ };
239
+ readonly errors: {
240
+ readonly globalConfigNotFound: `This command is only compatible with our new global config. Run ${string} to get started.`;
241
+ readonly accountNotFound: (configPath: string) => string;
242
+ };
243
+ readonly options: {
244
+ readonly account: {
245
+ readonly describe: "Name or ID of the account to create an override file for.";
246
+ };
247
+ };
248
+ readonly examples: {
249
+ readonly default: (hsAccountFileName: string) => string;
250
+ readonly idBased: (hsAccountFileName: string) => string;
251
+ readonly nameBased: (hsAccountFileName: string) => string;
252
+ };
193
253
  };
194
254
  };
195
255
  };
@@ -259,6 +319,10 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
259
319
  readonly describe: "Enable or disable automatic opening of the browser";
260
320
  };
261
321
  };
322
+ readonly errors: {
323
+ readonly invalidBoolean: (commandName: string, value: string) => string;
324
+ readonly invalidHTTPTimeout: "Invalid HTTP timeout value. Must be a number greater than 3000.";
325
+ };
262
326
  };
263
327
  };
264
328
  };
@@ -279,6 +343,9 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
279
343
  readonly pageTemplateScoreTitle: "Page template scores";
280
344
  readonly lighthouseLinksTitle: "Lighthouse links";
281
345
  readonly failedTemplatePathsTitle: "The following templates could not be scored";
346
+ readonly themeToCheckTitle: (themeToCheck: string, target: string) => string;
347
+ readonly themeTitle: (themeToCheck: string) => string;
348
+ readonly poweredByLink: `Powered by ${string}`;
282
349
  };
283
350
  readonly errors: {
284
351
  readonly targetOptionRequired: "[--target] is required for detailed view";
@@ -397,9 +464,9 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
397
464
  };
398
465
  };
399
466
  readonly customObject: {
400
- readonly betaMessage: `${string} The Custom Object CLI is currently in beta and is subject to change.`;
467
+ readonly betaMessage: "The Custom Object CLI is currently in beta and is subject to change.";
401
468
  readonly describe: "Commands for managing custom objects.";
402
- readonly seeMoreLink: "View our docs to find out more.";
469
+ readonly seeMoreLink: string;
403
470
  readonly subcommands: {
404
471
  readonly create: {
405
472
  readonly describe: "Create custom object instances.";
@@ -607,7 +674,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
607
674
  readonly uploadingFailed: "Uploading failed";
608
675
  };
609
676
  readonly logs: {
610
- readonly uploading: (src: string, dest: string, accountId: string) => string;
677
+ readonly uploading: (src: string, dest: string, accountId: number) => string;
611
678
  };
612
679
  readonly positionals: {
613
680
  readonly dest: {
@@ -618,7 +685,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
618
685
  };
619
686
  };
620
687
  readonly success: {
621
- readonly upload: (src: string, dest: string, accountId: string) => string;
688
+ readonly upload: (src: string, dest: string, accountId: number) => string;
622
689
  readonly uploadComplete: (dest: string) => string;
623
690
  };
624
691
  };
@@ -647,7 +714,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
647
714
  };
648
715
  };
649
716
  readonly success: {
650
- readonly deployed: (functionPath: string, accountId: string, buildTimeSeconds: string) => string;
717
+ readonly deployed: (functionPath: string, accountId: number, buildTimeSeconds: string | 0) => string;
651
718
  };
652
719
  };
653
720
  readonly list: {
@@ -699,9 +766,9 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
699
766
  readonly clear: {
700
767
  readonly describe: "Clear all rows in a HubDB table.";
701
768
  readonly logs: {
702
- readonly removedRows: (deletedRowCount: string, tableId: string) => string;
703
- readonly rowCount: (tableId: string, rowCount: string) => string;
704
- readonly tableEmpty: (tableId: string) => string;
769
+ readonly removedRows: (deletedRowCount: number, tableId: number) => string;
770
+ readonly rowCount: (tableId: number, rowCount: number) => string;
771
+ readonly tableEmpty: (tableId: number) => string;
705
772
  };
706
773
  readonly positionals: {
707
774
  readonly tableId: {
@@ -723,14 +790,14 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
723
790
  };
724
791
  };
725
792
  readonly success: {
726
- readonly create: (tableId: string, accountId: string, rowCount: string) => string;
793
+ readonly create: (tableId: string, accountId: number, rowCount: number) => string;
727
794
  };
728
795
  };
729
796
  readonly delete: {
730
797
  readonly describe: "Delete a HubDB table.";
731
- readonly shouldDeleteTable: (tableId: string) => string;
798
+ readonly shouldDeleteTable: (tableId: number) => string;
732
799
  readonly errors: {
733
- readonly delete: (tableId: string) => string;
800
+ readonly delete: (tableId: number | "") => string;
734
801
  };
735
802
  readonly positionals: {
736
803
  readonly tableId: {
@@ -743,7 +810,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
743
810
  };
744
811
  };
745
812
  readonly success: {
746
- readonly delete: (tableId: string, accountId: string) => string;
813
+ readonly delete: (tableId: string, accountId: number) => string;
747
814
  };
748
815
  };
749
816
  readonly fetch: {
@@ -757,7 +824,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
757
824
  };
758
825
  };
759
826
  readonly success: {
760
- readonly fetch: (tableId: string, path: string) => string;
827
+ readonly fetch: (tableId: number, path: string) => string;
761
828
  };
762
829
  };
763
830
  readonly list: {
@@ -807,7 +874,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
807
874
  };
808
875
  };
809
876
  readonly lint: {
810
- readonly issuesFound: (count: string) => string;
877
+ readonly issuesFound: (count: number) => string;
811
878
  readonly groupName: (path: string) => string;
812
879
  readonly positionals: {
813
880
  readonly path: {
@@ -828,7 +895,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
828
895
  readonly logs: {
829
896
  readonly describe: "View logs for a CMS serverless function.";
830
897
  readonly errors: {
831
- readonly noLogsFound: (functionPath: string, accountId: string) => string;
898
+ readonly noLogsFound: (functionPath: string, accountId: number) => string;
832
899
  };
833
900
  readonly examples: {
834
901
  readonly default: "Get 5 most recent logs for function residing at /_hcms/api/my-endpoint";
@@ -836,7 +903,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
836
903
  readonly limit: "Get 10 most recent logs for function residing at /_hcms/api/my-endpoint";
837
904
  };
838
905
  readonly endpointPrompt: "Enter a serverless function endpoint:";
839
- readonly gettingLogs: (latest: string, functionPath: string) => string;
906
+ readonly gettingLogs: (latest: boolean | undefined, functionPath: string) => string;
840
907
  readonly options: {
841
908
  readonly compact: {
842
909
  readonly describe: "output compact logs";
@@ -859,8 +926,9 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
859
926
  readonly tailLogs: (functionPath: string, accountId: string) => string;
860
927
  };
861
928
  readonly mcp: {
862
- readonly describe: "Commands for managing HubSpot MCP servers";
929
+ readonly describe: "Commands for managing HubSpot MCP servers.";
863
930
  readonly setup: {
931
+ readonly describe: "Setup the HubSpot development MCP servers.";
864
932
  readonly installingDocSearch: "Adding the docs-search mcp server";
865
933
  readonly claudeCode: "Claude Code";
866
934
  readonly cursor: "Cursor";
@@ -872,6 +940,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
872
940
  };
873
941
  readonly success: (derivedTargets: string[]) => string;
874
942
  readonly errors: {
943
+ readonly needsMcpAccess: (accountId?: number) => string;
875
944
  readonly needsNode20: "This feature requires node >=20";
876
945
  readonly errorParsingJsonFIle: (filename: string, errorMessage: string) => string;
877
946
  };
@@ -915,9 +984,9 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
915
984
  readonly describe: "Move a remote file or folder in HubSpot. This feature is currently in beta and the CLI contract is subject to change.";
916
985
  readonly errors: {
917
986
  readonly sourcePathExists: (srcPath: string, destPath: string) => string;
918
- readonly moveFailed: (srcPath: string, destPath: string, accountId: string) => string;
987
+ readonly moveFailed: (srcPath: string, destPath: string, accountId: number) => string;
919
988
  };
920
- readonly move: (srcPath: string, destPath: string, accountId: string) => string;
989
+ readonly move: (srcPath: string, destPath: string, accountId: number) => string;
921
990
  };
922
991
  readonly open: {
923
992
  readonly describe: "Open a HubSpot page in your browser.";
@@ -934,6 +1003,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
934
1003
  readonly selectLink: "Select a link to open";
935
1004
  };
936
1005
  readonly project: {
1006
+ readonly describe: "Commands for managing projects. For more information visit our documentation https://developers.hubspot.com/docs/getting-started/quickstart";
937
1007
  readonly profile: {
938
1008
  readonly describe: "Commands for managing project profiles";
939
1009
  readonly verboseDescribe: `Commands for managing project profiles
@@ -1008,7 +1078,7 @@ Profiles enable you to reference variables in your component configuration files
1008
1078
  readonly dev: {
1009
1079
  readonly describe: "Start local dev for the current project.";
1010
1080
  readonly logs: {
1011
- readonly betaMessage: "HubSpot projects local development";
1081
+ readonly header: "HubSpot projects local development";
1012
1082
  readonly placeholderAccountSelection: "Using default account as target account (for now)";
1013
1083
  readonly accountTypeInformation: "Testing in a developer test account is strongly recommended, but you can use a sandbox account if your plan allows you to create one.";
1014
1084
  readonly learnMoreMessageV3: `Learn more about ${string} | ${string}`;
@@ -1023,7 +1093,7 @@ Profiles enable you to reference variables in your component configuration files
1023
1093
  readonly errors: {
1024
1094
  readonly noProjectConfig: "No project detected. Please run this command again from a project directory.";
1025
1095
  readonly noAccount: (accountId: number) => string;
1026
- readonly noAccountsInConfig: (authCommand: string) => string;
1096
+ readonly noAccountsInConfig: `No accounts found in your config. Run ${string} to configure a HubSpot account with the CLI.`;
1027
1097
  readonly invalidProjectComponents: "Projects cannot contain both private and public apps. Move your apps to separate projects before attempting local development.";
1028
1098
  readonly noRunnableComponents: `No supported components were found in this project. Run ${string} to see a list of available components and add one to your project.`;
1029
1099
  readonly accountNotCombined: `
@@ -1036,8 +1106,9 @@ Local development of unified apps is currently only compatible with accounts tha
1036
1106
  };
1037
1107
  readonly options: {
1038
1108
  readonly profile: "The profile to target during local dev";
1039
- readonly projectAccount: "The id of the account to upload your project to. Only compatible with platform versions 2025.2 and above.";
1040
- readonly testingAccount: "The id of the account to install apps and test on. Only compatible with platform versions 2025.2 and above.";
1109
+ readonly projectAccount: "The id of the account to upload your project to. Must be used with --testing-account. Supported on platform versions 2025.2 and newer.";
1110
+ readonly testingAccount: "The id of the account to install apps and test on. Must be used with --project-account. Supported on platform versions 2025.2 and newer.";
1111
+ readonly account: "The id of the account to upload your project to. Unsupported on platform versions 2025.2 and newer.";
1041
1112
  };
1042
1113
  };
1043
1114
  readonly create: {
@@ -1070,7 +1141,7 @@ ${string}`;
1070
1141
  readonly describe: "Project name (cannot be changed)";
1071
1142
  };
1072
1143
  readonly template: {
1073
- readonly describe: "The starting template";
1144
+ readonly describe: "The starting template. Only applies when platform version is less than 2025.2.";
1074
1145
  };
1075
1146
  readonly templateSource: {
1076
1147
  readonly describe: "Path to custom GitHub repository from which to create project template";
@@ -1108,11 +1179,9 @@ ${string}`;
1108
1179
  readonly describe: "Project name (cannot be changed)";
1109
1180
  };
1110
1181
  };
1111
- readonly header: {
1112
- readonly text: "This command will migrate an app to the projects framework. It will walk you through the fields required to complete the migration and download the project source code into a directory of your choosing.";
1113
- readonly link: "Learn more about migrating apps to the projects framework";
1114
- };
1115
- readonly deprecationWarning: (oldCommand: string, newCommand: string) => string;
1182
+ readonly header: `This command will migrate an app to the projects framework. It will walk you through the fields required to complete the migration and download the project source code into a directory of your choosing.
1183
+ ${string}`;
1184
+ readonly deprecationWarning: (platformVersion: string) => string;
1116
1185
  readonly migrationStatus: {
1117
1186
  readonly inProgress: () => string;
1118
1187
  readonly success: () => string;
@@ -1120,22 +1189,34 @@ ${string}`;
1120
1189
  readonly failure: () => string;
1121
1190
  };
1122
1191
  readonly warning: {
1123
- readonly title: () => string;
1124
- readonly projectConversion: () => string;
1125
- readonly appConfig: () => string;
1126
- readonly buildAndDeploy: "This will create a new project with a single app component and immediately build and deploy it to your developer account (build #1).";
1127
- readonly existingApps: () => string;
1192
+ readonly title: `${string}
1193
+ `;
1194
+ readonly projectConversion: `${string}
1195
+ `;
1196
+ readonly appConfig: `All supported app configuration will be moved to the ${string} component definition file. Future updates to those features must be made through the project build and deploy pipeline, not the developer account UI.
1197
+ `;
1198
+ readonly buildAndDeploy: "This will create a new project with a single app component and immediately build and deploy it to your developer account (build #1).\n";
1199
+ readonly existingApps: string;
1128
1200
  readonly copyApp: "We strongly recommend making a copy of your app to test this process in a development app before replacing production.";
1129
1201
  };
1130
1202
  readonly migrationInterrupted: "\nThe command is terminated, but app migration is still in progress. Please check your account to ensure that the project and associated app have been created successfully.";
1131
1203
  readonly createAppPrompt: "Proceed with migrating this app to a project component (this process can't be aborted)?";
1132
1204
  readonly projectDetailsLink: "View project details in your developer account";
1205
+ readonly errors: {
1206
+ readonly noAppsForProject: (projectName: string) => string;
1207
+ readonly noAccountConfig: "No account configuration found. Please check your account settings.";
1208
+ readonly projectAlreadyExists: (projectName: string) => string;
1209
+ readonly invalidApp: (appId: number) => string;
1210
+ readonly migrationFailed: "Migration Failed";
1211
+ readonly notAllowedWithinProject: `This command cannot be run from within a project directory. Run the command again from outside a project directory. If you are trying to migrate a project, run ${string}`;
1212
+ };
1133
1213
  };
1134
1214
  readonly migrate: {
1135
1215
  readonly preamble: (platformVersion: string) => string;
1136
1216
  readonly describe: "Migrate an existing project to the new version of the projects framework.";
1137
1217
  readonly errors: {
1138
1218
  readonly noProjectConfig: (command: string) => string;
1219
+ readonly noThemeMigrationAccess: (accountId?: number) => string;
1139
1220
  };
1140
1221
  readonly examples: {
1141
1222
  readonly default: "Migrate an existing project to the new version of the projects framework.";
@@ -1155,7 +1236,7 @@ ${string}`;
1155
1236
  };
1156
1237
  };
1157
1238
  readonly cloneStatus: {
1158
- readonly inProgress: () => string;
1239
+ readonly inProgress: `Cloning app configuration to ${string} component definition ...`;
1159
1240
  readonly done: "Cloning app configuration to public-app.json component definition ... DONE";
1160
1241
  readonly success: (dest: string) => string;
1161
1242
  readonly failure: "Cloning app configuration to public-app.json component definition ... FAILED";
@@ -1164,6 +1245,7 @@ ${string}`;
1164
1245
  readonly invalidAccountTypeTitle: () => string;
1165
1246
  readonly invalidAccountTypeDescription: (useCommand: string, authCommand: string) => string;
1166
1247
  readonly couldNotWriteConfigPath: (configPath: string) => string;
1248
+ readonly noAccountConfig: (accountId: number) => string;
1167
1249
  };
1168
1250
  };
1169
1251
  readonly add: {
@@ -1238,7 +1320,7 @@ ${string}`;
1238
1320
  readonly describe: "List the project's builds.";
1239
1321
  readonly continueOrExitPrompt: "Press <enter> to load more, or ctrl+c to exit";
1240
1322
  readonly viewAllBuildsLink: "View all builds";
1241
- readonly showingNextBuilds: (count: string, projectName: string) => string;
1323
+ readonly showingNextBuilds: (count: number, projectName: string) => string;
1242
1324
  readonly showingRecentBuilds: (count: number, projectName: string, viewAllBuildsLink: string) => string;
1243
1325
  readonly errors: {
1244
1326
  readonly noBuilds: "No builds for this project were found.";
@@ -1272,7 +1354,7 @@ ${string}`;
1272
1354
  };
1273
1355
  readonly logs: {
1274
1356
  readonly showingLogs: "Showing logs for:";
1275
- readonly hubspotLogsDirectLink: "View function logs in HubSpot";
1357
+ readonly hubspotLogsDirectLink: (url: string) => string;
1276
1358
  readonly noLogsFound: (name: string) => string;
1277
1359
  };
1278
1360
  readonly table: {
@@ -1311,13 +1393,13 @@ ${string}`;
1311
1393
  readonly default: "Upload a project into your HubSpot account";
1312
1394
  };
1313
1395
  readonly logs: {
1314
- readonly buildSucceeded: (buildId: string) => string;
1396
+ readonly buildSucceeded: (buildId: number) => string;
1315
1397
  readonly readyToGoLive: "🚀 Ready to take your project live?";
1316
1398
  readonly runCommand: (command: string) => string;
1317
1399
  readonly autoDeployDisabled: (deployCommand: string) => string;
1318
1400
  };
1319
1401
  readonly errors: {
1320
- readonly projectLockedError: () => string;
1402
+ readonly projectLockedError: `Your project is locked. This may mean that another user is running the ${string} command for this project. If this is you, unlock the project in Projects UI.`;
1321
1403
  };
1322
1404
  readonly options: {
1323
1405
  readonly forceCreate: {
@@ -1326,6 +1408,9 @@ ${string}`;
1326
1408
  readonly message: {
1327
1409
  readonly describe: "Add a message when you upload your project and create a build";
1328
1410
  };
1411
+ readonly profile: {
1412
+ readonly describe: "Profile to target for this upload";
1413
+ };
1329
1414
  };
1330
1415
  };
1331
1416
  readonly watch: {
@@ -1363,6 +1448,7 @@ ${string}`;
1363
1448
  readonly uploadFailed: (remotePath: string, filePath: string) => string;
1364
1449
  readonly deleteFileFailed: (remotePath: string) => string;
1365
1450
  readonly deleteFolderFailed: (remotePath: string) => string;
1451
+ readonly v3ApiError: (platformVersion: string) => string;
1366
1452
  };
1367
1453
  };
1368
1454
  readonly download: {
@@ -1372,11 +1458,12 @@ ${string}`;
1372
1458
  };
1373
1459
  readonly logs: {
1374
1460
  readonly downloadCancelled: "Cancelling project download";
1375
- readonly downloadSucceeded: (buildId: string, projectName: string) => string;
1461
+ readonly downloadSucceeded: (buildId: number, projectName: string) => string;
1376
1462
  };
1377
1463
  readonly errors: {
1378
1464
  readonly downloadFailed: "Something went wrong downloading the project";
1379
1465
  readonly projectNotFound: (projectName: string, accountId: string) => string;
1466
+ readonly noBuildIdToDownload: "No build ID available for download";
1380
1467
  };
1381
1468
  readonly warnings: {
1382
1469
  readonly cannotDownloadWithinProject: "Cancelling project download. Please run the command again outside the context of an existing project.";
@@ -1424,8 +1511,8 @@ ${string}`;
1424
1511
  readonly addingDependenciesToLocation: (dependencies: string, directory: string) => string;
1425
1512
  readonly installingDependenciesFailed: (directory: string) => string;
1426
1513
  readonly noProjectConfig: "No project detected. Run this command from a project directory.";
1427
- readonly noPackageJsonInProject: (projectName: string, link: string) => string;
1428
- readonly packageManagerNotInstalled: (packageManager: string, link: string) => string;
1514
+ readonly noPackageJsonInProject: (projectName: string) => string;
1515
+ readonly packageManagerNotInstalled: (packageManager: string) => string;
1429
1516
  };
1430
1517
  readonly validate: {
1431
1518
  readonly describe: "Validate the project before uploading";
@@ -1457,6 +1544,30 @@ ${string}`;
1457
1544
  readonly describe: "Commands for managing sandboxes.";
1458
1545
  readonly subcommands: {
1459
1546
  readonly create: {
1547
+ readonly describe: "Create a sandbox account.";
1548
+ readonly failure: {
1549
+ readonly noAccountConfig: (accountId: number) => string;
1550
+ readonly invalidAccountType: (accountType: string, accountName: string) => string;
1551
+ readonly noSandboxAccountConfig: (accountId: number) => string;
1552
+ readonly optionMissing: {
1553
+ readonly type: "Type is required when using --force. Use --type=developer or --type=standard.";
1554
+ readonly name: "Name is required when using --force. Use --name=YourSandboxName.";
1555
+ };
1556
+ };
1557
+ readonly options: {
1558
+ readonly force: {
1559
+ readonly describe: "Skips all prompts and uses provided options.";
1560
+ };
1561
+ readonly name: {
1562
+ readonly describe: "Name of the sandbox account to create";
1563
+ };
1564
+ readonly type: {
1565
+ readonly describe: "Type of sandbox to create (developer or standard)";
1566
+ };
1567
+ };
1568
+ readonly examples: {
1569
+ readonly default: "Creates a standard sandbox named MySandboxAccount.";
1570
+ };
1460
1571
  readonly developer: {
1461
1572
  readonly loading: {
1462
1573
  readonly add: (accountName: string) => string;
@@ -1499,28 +1610,28 @@ ${string}`;
1499
1610
  readonly delete: {
1500
1611
  readonly describe: "Delete a sandbox account.";
1501
1612
  readonly debug: {
1502
- readonly deleting: (account: string) => string;
1613
+ readonly deleting: (account: number) => string;
1503
1614
  readonly error: "Error deleting sandbox account:";
1504
1615
  };
1505
1616
  readonly examples: {
1506
1617
  readonly default: "Deletes the sandbox account named MySandboxAccount.";
1507
1618
  };
1508
- readonly confirm: (account: string) => string;
1509
- readonly defaultAccountWarning: (account: string) => string;
1619
+ readonly confirm: (account: number) => string;
1620
+ readonly defaultAccountWarning: (account: number) => string;
1510
1621
  readonly success: {
1511
- readonly delete: (account: string, sandboxHubId: string) => string;
1512
- readonly deleteDefault: (account: string, sandboxHubId: string) => string;
1622
+ readonly delete: (account: string, sandboxHubId: number) => string;
1623
+ readonly deleteDefault: (account: string, sandboxHubId: number) => string;
1513
1624
  readonly configFileUpdated: (account: string, configFilename: string) => string;
1514
1625
  };
1515
1626
  readonly failure: {
1516
- readonly invalidUser: (accountName: string, parentAccountName: string) => string;
1627
+ readonly invalidUser: (account: number, parentAccount: number) => string;
1517
1628
  readonly noAccount: "No account specified. Specify an account by using the --account flag.";
1518
- readonly noSandboxAccounts: (authCommand: string) => string;
1629
+ readonly noSandboxAccounts: `There are no sandboxes connected to the CLI. To add a sandbox, run ${string}.`;
1519
1630
  readonly noSandboxAccountId: "This sandbox can't be deleted from the CLI because we could not find the associated sandbox account.";
1520
- readonly noParentAccount: (authCommand: string) => string;
1521
- readonly objectNotFound: (account: string) => string;
1631
+ readonly noParentAccount: `This sandbox can't be deleted from the CLI because you haven't given the CLI access to its parent account. To do this, run ${string} and add the parent account.`;
1632
+ readonly objectNotFound: (account: number) => string;
1522
1633
  readonly noParentPortalAvailable: (command: string, url: string) => string;
1523
- readonly invalidKey: (account: string, authCommand: string) => string;
1634
+ readonly invalidKey: (account: number | null | undefined) => string;
1524
1635
  };
1525
1636
  readonly options: {
1526
1637
  readonly force: {
@@ -1548,33 +1659,17 @@ ${string}`;
1548
1659
  readonly instructions: (accountName: string, url: string) => string;
1549
1660
  };
1550
1661
  };
1662
+ readonly confirm: {
1663
+ readonly syncContactRecords: {
1664
+ readonly standard: "Copy up to 5000 most recently updated contacts? This includes up to 100 of each of the following: associated deals, tickets, and companies.";
1665
+ readonly developer: "Include up to 100 most recently updated contacts? This includes up to 100 of each of the following: associated deals, tickets, and companies. This can be done once per sandbox.";
1666
+ };
1667
+ };
1551
1668
  };
1552
1669
  };
1553
1670
  readonly app: {
1554
1671
  readonly describe: "Commands for managing apps.";
1555
1672
  readonly subcommands: {
1556
- readonly install: {
1557
- readonly describe: "Install an OAuth app into a test account.";
1558
- readonly options: {
1559
- readonly appUid: "The uid of the app to install";
1560
- readonly projectName: "The name of the project that contains the app";
1561
- };
1562
- readonly positionals: {
1563
- readonly testAccountId: "The id of the test account to install the app into";
1564
- };
1565
- readonly errors: {
1566
- readonly mustSpecifyProjectName: `You must specify a project name. Use the ${string} flag to specify the project name or run this command from within a project directory.`;
1567
- readonly noAppUidFound: `No app uid found. Please specify the app uid with the ${string} flag or run this command from within a project that contains an app.`;
1568
- readonly appMustBeOauth: "This command only supports installing oauth apps. Please specify an app with oauth auth type.";
1569
- };
1570
- readonly polling: {
1571
- readonly start: "Installing app...";
1572
- readonly success: "App installed successfully";
1573
- readonly failure: "App installation failed";
1574
- readonly error: "Error installing app";
1575
- };
1576
- readonly example: "Install the app with uid my-app-uid from the project named \"my-project\" into the target account with id 1234567890";
1577
- };
1578
1673
  readonly secret: {
1579
1674
  readonly describe: "Commands for managing secrets.";
1580
1675
  readonly subcommands: {
@@ -1647,7 +1742,7 @@ ${string}`;
1647
1742
  readonly describe: "Create a new secret.";
1648
1743
  readonly errors: {
1649
1744
  readonly add: (secretName: string) => string;
1650
- readonly alreadyExists: (secretName: string, command: string) => string;
1745
+ readonly alreadyExists: (secretName: string) => string;
1651
1746
  };
1652
1747
  readonly positionals: {
1653
1748
  readonly name: {
@@ -1655,7 +1750,7 @@ ${string}`;
1655
1750
  };
1656
1751
  };
1657
1752
  readonly success: {
1658
- readonly add: (secretName: string, accountIdentifier: string) => string;
1753
+ readonly add: (secretName: string, accountId: number) => string;
1659
1754
  };
1660
1755
  };
1661
1756
  readonly delete: {
@@ -1673,7 +1768,7 @@ ${string}`;
1673
1768
  };
1674
1769
  };
1675
1770
  readonly success: {
1676
- readonly delete: (secretName: string, accountIdentifier: string) => string;
1771
+ readonly delete: (secretName: string, accountId: number) => string;
1677
1772
  };
1678
1773
  };
1679
1774
  readonly list: {
@@ -1696,7 +1791,7 @@ ${string}`;
1696
1791
  };
1697
1792
  };
1698
1793
  readonly success: {
1699
- readonly update: (secretName: string, accountIdentifier: string) => string;
1794
+ readonly update: (secretName: string, accountId: number) => string;
1700
1795
  readonly updateExplanation: "Existing serverless functions will start using this new value within 10 seconds.";
1701
1796
  };
1702
1797
  };
@@ -1925,18 +2020,41 @@ ${string}`;
1925
2020
  readonly example: (name: string) => string;
1926
2021
  };
1927
2022
  readonly delete: {
1928
- readonly describe: "Delete a test account config file.";
2023
+ readonly describe: "Delete a test account from your HubSpot account and CLI config";
1929
2024
  readonly pathPrompt: "[--path] What is the path to the test account config?";
2025
+ readonly info: {
2026
+ readonly deletionCanceled: "Deletion canceled by user";
2027
+ readonly accountNotFoundWithId: (id: number) => string;
2028
+ readonly replaceDefaultAccount: (testAccountId: number, parentAccountName: string) => string;
2029
+ };
2030
+ readonly prompts: {
2031
+ readonly selectTestAccounts: "Select test account(s) to delete";
2032
+ readonly confirmDeletion: "All data for the account will be permanently deleted. Any connected apps will have their access tokens revoked. Do you wish to proceed?";
2033
+ };
1930
2034
  readonly errors: {
1931
- readonly failedToDelete: "Failed to delete test account";
2035
+ readonly failedToDelete: (testAccountToDelete: number) => string;
2036
+ readonly failedToSelectAccount: "Failed to select a test account to delete";
2037
+ readonly noAccountsToDelete: (accountId: number) => string;
2038
+ readonly failedToDeleteFromConfig: (testAccountToDelete: number) => string;
2039
+ readonly failedToFetchTestAccounts: "Failed to fetch developer test accounts";
2040
+ readonly testAccountNotFound: (nameOrId: string | number | null) => string;
2041
+ readonly parentAccountNotFound: (testAccountId: number) => string;
1932
2042
  };
1933
2043
  readonly success: {
1934
- readonly testAccountDeleted: (testAccountId: number) => string;
2044
+ readonly testAccountDeletedFromHubSpot: (testAccountToDelete: number) => string;
2045
+ readonly testAccountDeletedFromConfig: (accountId: number) => string;
1935
2046
  };
1936
- readonly positionals: {
1937
- readonly testAccountId: "The id of the test account";
2047
+ readonly options: {
2048
+ readonly name: "The name of the test account (in your CLI config) to delete";
2049
+ readonly id: "The id of the test account";
2050
+ };
2051
+ readonly examples: {
2052
+ readonly withPositionalID: (testAccountToDelete: number) => string;
2053
+ readonly withPositionalName: (testAccountToDelete: string) => string;
2054
+ readonly withID: (testAccountToDelete: number) => string;
2055
+ readonly withName: (testAccountToDelete: string) => string;
2056
+ readonly withoutId: "Delete a test account via a prompt";
1938
2057
  };
1939
- readonly example: (testAccountId: number) => string;
1940
2058
  };
1941
2059
  };
1942
2060
  readonly secrets: {
@@ -2613,8 +2731,13 @@ export declare const lib: {
2613
2731
  readonly LocalDevProcess: {
2614
2732
  readonly projectConfigMismatch: `Unable to upload project. The project config has been modified since starting ${string}.`;
2615
2733
  readonly uploadInitiated: "Project upload initiated from Local Dev UI.";
2734
+ readonly deployInitiated: "Project deploy initiated from Local Dev UI.";
2616
2735
  readonly uploadFailed: "Project upload failed. To proceed with local development, fix any necessary errors, then re-upload your project.";
2736
+ readonly deployFailed: "Project deploy failed. To proceed with local development, fix any necessary errors, then re-deploy your project.";
2617
2737
  readonly uploadSuccess: "Project upload completed successfully. Resuming local dev...";
2738
+ readonly uploadSuccessAutoDeployDisabled: "Project upload completed successfully, but auto-deploy is disabled for this project. Deploy your latest build to proceed with local development.";
2739
+ readonly deploySuccess: "Project deploy completed successfully. Resuming local dev...";
2740
+ readonly noBuildToDeploy: "Error deploying project. No build was found to deploy.";
2618
2741
  };
2619
2742
  readonly localDevHelpers: {
2620
2743
  readonly project: {
@@ -2639,6 +2762,11 @@ export declare const lib: {
2639
2762
  readonly projectLockedError: "Your project is locked. This may mean that another user is running the `hs project watch` command for this project. If this is you, unlock the project in Projects UI.";
2640
2763
  readonly genericError: `An error occurred while creating the initial build for this project. Run ${string} to try again.`;
2641
2764
  };
2765
+ readonly checkAndInstallDependencies: {
2766
+ readonly checkingDependencies: "Checking for missing or updated dependencies...";
2767
+ readonly dependenciesUpToDate: "All dependencies are up to date";
2768
+ readonly dependenciesFailure: "Failed to check or install dependencies";
2769
+ };
2642
2770
  };
2643
2771
  readonly account: {
2644
2772
  readonly checkIfDefaultAccountIsSupported: {
@@ -2655,7 +2783,7 @@ export declare const lib: {
2655
2783
  readonly notAuthedError: (parentAccountId: number | string, accountIdentifier: string) => string;
2656
2784
  };
2657
2785
  readonly selectAccountTypePrompt: {
2658
- readonly message: "[--testing-account] Choose the type of account to test on";
2786
+ readonly message: "Choose the type of account to test on";
2659
2787
  readonly developerTestAccountOption: "Test on a developer test account (recommended)";
2660
2788
  readonly sandboxAccountOption: "Test on a sandbox account";
2661
2789
  readonly sandboxAccountOptionDisabled: "Disabled - requires access to sandbox accounts";
@@ -2783,6 +2911,7 @@ Run ${string} to upgrade to version ${string}`;
2783
2911
  readonly compressed: (byteCount: number) => string;
2784
2912
  readonly compressing: (path: string) => string;
2785
2913
  readonly fileFiltered: (filename: string) => string;
2914
+ readonly legacyFileDetected: (filename: string, platformVersion: string) => string;
2786
2915
  };
2787
2916
  };
2788
2917
  readonly boxen: {
@@ -2799,13 +2928,15 @@ Run ${string} to upgrade to version ${string}`;
2799
2928
  readonly viewImportLink: (baseUrl: string, accountId: number, importId: string) => string;
2800
2929
  };
2801
2930
  readonly ui: {
2802
- readonly betaTag: string;
2931
+ readonly betaTag: "[BETA]";
2932
+ readonly betaTagWithStyle: string;
2803
2933
  readonly betaWarning: {
2804
2934
  readonly header: string;
2805
2935
  readonly footer: string;
2806
2936
  };
2807
2937
  readonly infoTag: string;
2808
- readonly deprecatedTag: string;
2938
+ readonly deprecatedTag: "[DEPRECATED]";
2939
+ readonly deprecatedTagWithStyle: string;
2809
2940
  readonly errorTag: string;
2810
2941
  readonly deprecatedMessage: (command: string, url: string) => string;
2811
2942
  readonly deprecatedDescription: (message: string, command: string, url: string) => string;
@@ -2863,6 +2994,9 @@ Run ${string} to upgrade to version ${string}`;
2863
2994
  readonly command: "hs project install-deps";
2864
2995
  readonly message: (command: string) => string;
2865
2996
  };
2997
+ readonly projectCommandTip: {
2998
+ readonly message: "Tip: All project commands must be run from within a project directory";
2999
+ };
2866
3000
  readonly sampleProjects: {
2867
3001
  readonly linkText: "HubSpot's sample projects";
2868
3002
  readonly url: "https://developers.hubspot.com/docs/platform/sample-projects?utm_source=cli&utm_content=project_create_whats_next";
@@ -2915,11 +3049,12 @@ Run ${string} to upgrade to version ${string}`;
2915
3049
  readonly setHttpTimeout: {
2916
3050
  readonly promptMessage: "Enter http timeout duration";
2917
3051
  readonly success: (timeout: string) => string;
3052
+ readonly error: (timeout: string) => string;
2918
3053
  };
2919
3054
  readonly setAutoOpenBrowser: {
2920
3055
  readonly fieldName: "auto open browser";
2921
- readonly enabled: "Auto opening your browser has been enabled";
2922
- readonly disabled: "Auto opening your browser has been disabled";
3056
+ readonly enabled: `Successfully updated ${string} to ${string}`;
3057
+ readonly disabled: `Successfully updated ${string} to ${string}`;
2923
3058
  };
2924
3059
  };
2925
3060
  readonly commonOpts: {
@@ -2957,6 +3092,11 @@ Run ${string} to upgrade to version ${string}`;
2957
3092
  };
2958
3093
  };
2959
3094
  readonly prompts: {
3095
+ readonly promptUtils: {
3096
+ readonly errors: {
3097
+ readonly noSelectableChoices: "Exiting prompt because no selectable choices are available";
3098
+ };
3099
+ };
2960
3100
  readonly importDataFilePathPrompt: {
2961
3101
  readonly promptContext: `To view the JSON schema for data imports, visit ${string}`;
2962
3102
  readonly promptMessage: "[--file-path] Select the JSON file that will be used to import your data.";
@@ -2973,11 +3113,11 @@ Run ${string} to upgrade to version ${string}`;
2973
3113
  readonly projectDevTargetAccountPrompt: {
2974
3114
  readonly createNewSandboxOption: "<Test on a new development sandbox>";
2975
3115
  readonly createNewDeveloperTestAccountOption: "<Test on a new developer test account>";
2976
- readonly chooseDefaultAccountOption: () => string;
3116
+ readonly chooseDefaultAccountOption: `<${string} Test on this production account ${string}>`;
2977
3117
  readonly promptMessage: (accountType: string, accountIdentifier: string) => string;
2978
- readonly sandboxLimit: (limit: string) => string;
2979
- readonly sandboxLimitWithSuggestion: (limit: string, authCommand: string) => string;
2980
- readonly developerTestAccountLimit: (limit: string) => string;
3118
+ readonly sandboxLimit: (limit: number) => string;
3119
+ readonly sandboxLimitWithSuggestion: (limit: number, authCommand: string) => string;
3120
+ readonly developerTestAccountLimit: (limit: number) => string;
2981
3121
  readonly confirmDefaultAccount: (accountName: string, accountType: string) => string;
2982
3122
  readonly confirmUseExistingDeveloperTestAccount: (accountName: string) => string;
2983
3123
  readonly noAccountId: "No account ID found for the selected account. Please try again.";
@@ -2988,7 +3128,7 @@ Run ${string} to upgrade to version ${string}`;
2988
3128
  readonly setAsDefaultAccountPrompt: {
2989
3129
  readonly setAsDefaultAccountMessage: "Set this account as the default?";
2990
3130
  readonly setAsDefaultAccount: (accountName: string) => string;
2991
- readonly keepingCurrentDefault: (accountName: string) => string;
3131
+ readonly keepingCurrentDefault: (accountName: string | number) => string;
2992
3132
  };
2993
3133
  readonly createDeveloperTestAccountConfigPrompt: {
2994
3134
  readonly namePrompt: (withFlag?: boolean) => string;
@@ -3018,7 +3158,7 @@ Run ${string} to upgrade to version ${string}`;
3018
3158
  readonly enterStandardSandboxName: "Name your standard sandbox:";
3019
3159
  readonly enterDevelopmentSandboxName: "Name your development sandbox:";
3020
3160
  readonly sandboxDefaultName: (sandboxType: string) => string;
3021
- readonly developerTestAccountDefaultName: (count: string) => string;
3161
+ readonly developerTestAccountDefaultName: (count: number) => string;
3022
3162
  readonly errors: {
3023
3163
  readonly invalidName: "You entered an invalid name. Please try again.";
3024
3164
  readonly nameRequired: "The name may not be blank. Please try again.";
@@ -3116,8 +3256,8 @@ Run ${string} to upgrade to version ${string}`;
3116
3256
  readonly selectAppIdClone: (accountName: string) => string;
3117
3257
  readonly errors: {
3118
3258
  readonly noAccountId: "An account ID is required to select an app.";
3119
- readonly noAppsMigration: () => string;
3120
- readonly noAppsClone: () => string;
3259
+ readonly noAppsMigration: string;
3260
+ readonly noAppsClone: string;
3121
3261
  readonly noAppsMigrationMessage: (accountName: string) => string;
3122
3262
  readonly noAppsCloneMessage: (accountName: string) => string;
3123
3263
  readonly errorFetchingApps: "There was an error fetching public apps.";
@@ -3127,16 +3267,18 @@ Run ${string} to upgrade to version ${string}`;
3127
3267
  readonly downloadProjectPrompt: {
3128
3268
  readonly selectProject: "Select a project to download:";
3129
3269
  readonly errors: {
3130
- readonly projectNotFound: (projectName: string, accountId: string) => string;
3270
+ readonly projectNotFound: (projectName: string, accountId: number) => string;
3131
3271
  readonly accountIdRequired: "An account ID is required to download a project.";
3132
3272
  };
3133
3273
  };
3134
3274
  readonly projectAddPrompt: {
3135
3275
  readonly selectType: "[--type] Select an app feature to add: ";
3276
+ readonly selectFeatures: "[--features] Select an app feature to add: ";
3136
3277
  readonly enterName: "[--name] Give your component a name: ";
3137
3278
  readonly errors: {
3138
3279
  readonly nameRequired: "A component name is required";
3139
3280
  readonly componentRequired: "Must select a feature to add";
3281
+ readonly noSelectableChoices: "There are no available features that can be added to this project";
3140
3282
  readonly invalidType: (type: string) => string;
3141
3283
  readonly cannotAddFeature: (feature: string, reasons: string | boolean) => string;
3142
3284
  };
@@ -3172,7 +3314,7 @@ Run ${string} to upgrade to version ${string}`;
3172
3314
  readonly enterName: "[--project] Enter project name:";
3173
3315
  readonly errors: {
3174
3316
  readonly invalidName: "You entered an invalid name. Please try again.";
3175
- readonly projectDoesNotExist: (projectName: string, accountIdentifier: string) => string;
3317
+ readonly projectDoesNotExist: (projectName: string, accountId: number) => string;
3176
3318
  };
3177
3319
  };
3178
3320
  readonly previewPrompt: {
@@ -3232,8 +3374,8 @@ Run ${string} to upgrade to version ${string}`;
3232
3374
  };
3233
3375
  readonly failure: {
3234
3376
  readonly invalidUser: (accountName: string, parentAccountName: string) => string;
3235
- readonly limit: (accountName: string, limit: string) => string;
3236
- readonly alreadyInConfig: (accountName: string, limit: string) => string;
3377
+ readonly limit: (accountName: string | number, limit: number) => string;
3378
+ readonly alreadyInConfig: (accountName: string | number, limit: number) => string;
3237
3379
  readonly scopes: {
3238
3380
  readonly message: "The personal access key you provided doesn't include developer test account permissions.";
3239
3381
  readonly instructions: (accountName: string | number, url: string) => string;
@@ -3253,14 +3395,13 @@ Run ${string} to upgrade to version ${string}`;
3253
3395
  readonly configFileUpdated: (accountName: string, authType: string) => string;
3254
3396
  };
3255
3397
  readonly failure: {
3256
- readonly invalidUser: (accountName: string, parentAccountName: string) => string;
3257
- readonly limit: (accountName: string, limit: string) => string;
3258
- readonly alreadyInConfig: (accountName: string, limit: string) => string;
3398
+ readonly limit: (accountId: number, limit: number, link: string) => string;
3399
+ readonly alreadyInConfig: (accountId: number, limit: number) => string;
3400
+ readonly generic: "An error occurred while creating a developer sandbox";
3259
3401
  readonly scopes: {
3260
3402
  readonly message: "The personal access key you provided doesn't include developer sandbox permissions.";
3261
- readonly instructions: (accountName: string | number, url: string) => string;
3403
+ readonly instructions: (account: string | number, url: string) => string;
3262
3404
  };
3263
- readonly generic: "An error occurred while creating a developer sandbox";
3264
3405
  };
3265
3406
  };
3266
3407
  readonly standard: {
@@ -3273,27 +3414,51 @@ Run ${string} to upgrade to version ${string}`;
3273
3414
  readonly configFileUpdated: (accountName: string, authType: string) => string;
3274
3415
  };
3275
3416
  readonly failure: {
3276
- readonly invalidUser: (accountName: string, parentAccountName: string) => string;
3277
- readonly limit: (accountName: string, limit: string) => string;
3278
- readonly alreadyInConfig: (accountName: string, limit: string) => string;
3417
+ readonly limit: (accountId: number, limit: number, link: string) => string;
3418
+ readonly alreadyInConfig: (accountId: number, limit: number) => string;
3279
3419
  readonly scopes: {
3280
3420
  readonly message: "The personal access key you provided doesn't include standard sandbox permissions.";
3281
- readonly instructions: (accountName: string, url: string) => string;
3421
+ readonly instructions: (account: string | number, url: string) => string;
3282
3422
  };
3283
3423
  };
3284
3424
  };
3425
+ readonly failure: {
3426
+ readonly usageLimitsFetch: "Unable to fetch sandbox usage limits. Please try again.";
3427
+ readonly scopes: {
3428
+ readonly message: "The personal access key you provided doesn't include sandbox permissions.";
3429
+ readonly instructions: (account: string | number, url: string) => string;
3430
+ };
3431
+ readonly invalidUser: (accountName: string, parentAccountId: number) => string;
3432
+ readonly '403Gating': (accountName: string, parentAccountId: number) => string;
3433
+ };
3285
3434
  };
3286
3435
  readonly sync: {
3436
+ readonly info: {
3437
+ readonly syncMessage: (url: string) => string;
3438
+ readonly syncMessageDevSb: (url: string) => string;
3439
+ };
3440
+ readonly confirm: {
3441
+ readonly syncContactRecords: {
3442
+ readonly standard: "Do you want to sync contact records from your production account?";
3443
+ };
3444
+ };
3287
3445
  readonly loading: {
3288
3446
  readonly add: (accountName: string) => string;
3289
- readonly fail: (accountName: string) => string;
3290
- readonly succeed: (accountName: string) => string;
3447
+ readonly fail: (accountId: number) => string;
3448
+ readonly succeed: (accountId: number) => string;
3449
+ readonly startSync: "Initiating sync...";
3450
+ readonly succeedDevSb: (accountId: number) => string;
3451
+ readonly successDevSbInfo: (accountId: number, url: string) => string;
3291
3452
  };
3292
3453
  readonly success: {
3293
3454
  readonly configFileUpdated: (accountName: string, authType: string) => string;
3294
3455
  };
3295
3456
  readonly failure: {
3457
+ readonly syncTypeFetch: "Unable to fetch available sandbox sync types. Please try again.";
3296
3458
  readonly invalidUser: (accountName: string, parentAccountName: string) => string;
3459
+ readonly syncInProgress: (url: string) => string;
3460
+ readonly notSuperAdmin: (accountId: number) => string;
3461
+ readonly objectNotFound: (accountId: number) => string;
3297
3462
  readonly scopes: {
3298
3463
  readonly message: "The personal access key you provided doesn't include sandbox sync permissions.";
3299
3464
  readonly instructions: (accountName: string, url: string) => string;
@@ -3307,6 +3472,8 @@ Run ${string} to upgrade to version ${string}`;
3307
3472
  readonly errorContext: (context: string) => string;
3308
3473
  readonly errorCause: (cause: string) => string;
3309
3474
  readonly unknownErrorOccurred: "An unknown error has occurred.";
3475
+ readonly configTimeoutErrorOccurred: (timeout: number, configSetCommand: string) => string;
3476
+ readonly genericTimeoutErrorOccurred: "This error occurred because an HTTP request timed out. Re-running the command may resolve this issue.";
3310
3477
  };
3311
3478
  readonly suppressErrors: {
3312
3479
  readonly platformVersionErrors: {
@@ -3362,7 +3529,6 @@ Run ${string} to upgrade to version ${string}`;
3362
3529
  readonly latest: (hsVersion: string) => string;
3363
3530
  readonly unableToDetermine: "Unable to determine if HubSpot CLI is up to date.";
3364
3531
  readonly unableToDetermineSecondary: (command: string, link: string) => string;
3365
- readonly unableToDetermineSecondaryLink: "npm HubSpot CLI version history";
3366
3532
  };
3367
3533
  readonly projectDependenciesChecks: {
3368
3534
  readonly missingDependencies: (dir: string) => string;
@@ -3375,9 +3541,9 @@ Run ${string} to upgrade to version ${string}`;
3375
3541
  readonly validJson: "JSON files valid";
3376
3542
  };
3377
3543
  readonly port: {
3378
- readonly inUse: (port: string) => string;
3544
+ readonly inUse: (port: number) => string;
3379
3545
  readonly inUseSecondary: (command: string) => string;
3380
- readonly available: (port: string) => string;
3546
+ readonly available: (port: number) => string;
3381
3547
  };
3382
3548
  readonly diagnosis: {
3383
3549
  readonly cli: {
@@ -3389,27 +3555,58 @@ Run ${string} to upgrade to version ${string}`;
3389
3555
  readonly defaultAccountSubHeader: (accountDetails: string) => string;
3390
3556
  readonly noConfigFile: "CLI configuration not found";
3391
3557
  readonly noConfigFileSecondary: (command: string) => string;
3558
+ readonly settings: {
3559
+ readonly httpUseLocalhost: `The setting ${string} is enabled`;
3560
+ readonly httpUseLocalhostSecondary: "This setting causes all CLI requests to route to localhost";
3561
+ };
3392
3562
  };
3393
3563
  readonly projectConfig: {
3394
3564
  readonly header: "Project configuration";
3395
3565
  readonly projectDirSubHeader: (projectDir: string) => string;
3396
3566
  readonly projectNameSubHeader: (projectName: string) => string;
3397
3567
  };
3568
+ readonly defaultAccountOverrideFile: {
3569
+ readonly header: "Default account override file path:";
3570
+ };
3398
3571
  readonly counts: {
3399
- readonly errors: (count: string) => string;
3400
- readonly warnings: (count: string) => string;
3572
+ readonly errors: (count: number) => string;
3573
+ readonly warnings: (count: number) => string;
3401
3574
  };
3402
3575
  };
3576
+ readonly defaultAccountOverrideFileChecks: {
3577
+ readonly overrideActive: (defaultAccountOverrideFile: string) => string;
3578
+ readonly overrideAccountId: (overrideAccountId: number | string) => string;
3579
+ };
3403
3580
  };
3404
3581
  readonly oauth: {
3405
3582
  readonly missingClientId: "Error building oauth URL: missing client ID.";
3406
3583
  };
3584
+ readonly validation: {
3585
+ readonly accountNotFoundInConfig: (userProvidedAccount: string) => string;
3586
+ readonly accountRequired: "An account needs to be supplied either via \"--account\" or through setting a \"defaultPortal\"";
3587
+ readonly userProvidedAccount: "Cannot specify an account when environment variables are supplied. Please unset the environment variables or do not use the \"--account\" flag.";
3588
+ readonly accountNotConfigured: (accountId: number) => string;
3589
+ readonly invalidAuthType: (authType: string, accountId: number, configPath: string, validValues: string) => string;
3590
+ readonly oauth2ConfigMissing: (accountId: number) => string;
3591
+ readonly oauth2ConfigIncorrect: (accountId: number) => string;
3592
+ readonly oauth2AccessTokenNotFound: (accountId: number) => string;
3593
+ readonly personalAccessKeyMissing: (accountId: number) => string;
3594
+ readonly personalAccessKeyTokenRetrievalFailed: (accountId: number) => string;
3595
+ readonly authConfigurationMissing: (accountId: number) => string;
3596
+ readonly availableCMSModes: (modes: string) => string;
3597
+ readonly invalidCmsPublishMode: (cmsPublishMode: string, modesMessage: string) => string;
3598
+ readonly missingCmsPublishMode: (modesMessage: string) => string;
3599
+ readonly pathNotFile: (path: string) => string;
3600
+ readonly fileNotJson: (path: string) => string;
3601
+ readonly fileInvalidJson: (path: string) => string;
3602
+ };
3407
3603
  readonly migrate: {
3408
3604
  readonly componentsToBeMigrated: (components: string) => string;
3409
3605
  readonly componentsThatWillNotBeMigrated: (components: string) => string;
3410
3606
  readonly sourceContentsMoved: (newLocation: string) => string;
3411
3607
  readonly projectMigrationWarningTitle: "Important: Migrating to platformVersion 2025.2 is irreversible";
3412
3608
  readonly projectMigrationWarning: string;
3609
+ readonly exitWithoutMigrating: "Exiting without migrating";
3413
3610
  readonly success: {
3414
3611
  readonly downloadedProject: (projectName: string, projectDest: string) => string;
3415
3612
  readonly themesMigrationSuccess: (platformVersion: string) => string;