@hubspot/cli 7.8.11-experimental.0 → 7.8.12-experimental.1

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 (252) 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/account/clean.js +18 -27
  5. package/commands/account/createOverride.js +13 -31
  6. package/commands/account/info.js +20 -31
  7. package/commands/account/list.js +16 -22
  8. package/commands/account/remove.js +12 -20
  9. package/commands/account/removeOverride.js +11 -21
  10. package/commands/account/rename.js +6 -9
  11. package/commands/account/use.js +12 -26
  12. package/commands/account.js +2 -2
  13. package/commands/app/__tests__/migrate.test.js +5 -5
  14. package/commands/app/migrate.js +13 -18
  15. package/commands/auth.d.ts +1 -0
  16. package/commands/auth.js +16 -7
  17. package/commands/cms/convertFields.js +7 -9
  18. package/commands/cms/getReactModule.js +9 -14
  19. package/commands/cms/lighthouseScore.js +33 -36
  20. package/commands/cms.js +2 -2
  21. package/commands/completion.js +3 -3
  22. package/commands/config/set.d.ts +1 -1
  23. package/commands/config/set.js +64 -36
  24. package/commands/config.js +2 -2
  25. package/commands/create.js +2 -2
  26. package/commands/customObject/create.js +10 -12
  27. package/commands/customObject/schema/create.js +9 -11
  28. package/commands/customObject/schema/delete.js +16 -16
  29. package/commands/customObject/schema/fetch-all.js +12 -11
  30. package/commands/customObject/schema/fetch.js +15 -15
  31. package/commands/customObject/schema/list.js +4 -4
  32. package/commands/customObject/schema/update.js +13 -13
  33. package/commands/customObject/schema.js +2 -2
  34. package/commands/customObject.js +6 -7
  35. package/commands/doctor.js +8 -11
  36. package/commands/feedback.js +6 -11
  37. package/commands/fetch.js +8 -8
  38. package/commands/filemanager/fetch.js +7 -7
  39. package/commands/filemanager/upload.js +15 -34
  40. package/commands/filemanager.js +2 -2
  41. package/commands/function/deploy.js +11 -29
  42. package/commands/function/list.js +8 -8
  43. package/commands/function/server.js +9 -11
  44. package/commands/function.d.ts +1 -1
  45. package/commands/function.js +2 -2
  46. package/commands/getStarted.js +2 -2
  47. package/commands/hubdb/clear.js +7 -15
  48. package/commands/hubdb/create.js +9 -15
  49. package/commands/hubdb/delete.js +8 -15
  50. package/commands/hubdb/fetch.js +6 -9
  51. package/commands/hubdb.d.ts +1 -1
  52. package/commands/hubdb.js +2 -2
  53. package/commands/init.js +2 -3
  54. package/commands/lint.js +16 -16
  55. package/commands/list.js +8 -14
  56. package/commands/logs.js +14 -20
  57. package/commands/mv.js +6 -17
  58. package/commands/open.js +5 -5
  59. package/commands/project/__tests__/add.test.js +4 -2
  60. package/commands/project/__tests__/deploy.test.js +3 -4
  61. package/commands/project/__tests__/installDeps.test.js +8 -8
  62. package/commands/project/__tests__/logs.test.js +1 -1
  63. package/commands/project/__tests__/migrate.test.js +5 -5
  64. package/commands/project/__tests__/migrateApp.test.js +2 -5
  65. package/commands/project/__tests__/validate.test.js +98 -0
  66. package/commands/project/add.js +3 -3
  67. package/commands/project/cloneApp.js +14 -19
  68. package/commands/project/create.js +0 -1
  69. package/commands/project/deploy.js +3 -3
  70. package/commands/project/dev/deprecatedFlow.js +7 -16
  71. package/commands/project/dev/index.js +14 -12
  72. package/commands/project/dev/unifiedFlow.js +3 -1
  73. package/commands/project/download.js +10 -13
  74. package/commands/project/installDeps.js +8 -8
  75. package/commands/project/listBuilds.js +11 -20
  76. package/commands/project/logs.js +21 -24
  77. package/commands/project/migrate.js +14 -16
  78. package/commands/project/migrateApp.js +9 -15
  79. package/commands/project/open.js +6 -13
  80. package/commands/project/upload.js +16 -25
  81. package/commands/project/validate.js +6 -6
  82. package/commands/project/watch.js +13 -22
  83. package/commands/project.js +2 -2
  84. package/commands/sandbox/__tests__/create.test.js +5 -5
  85. package/commands/sandbox/create.js +22 -32
  86. package/commands/sandbox/delete.js +38 -63
  87. package/commands/sandbox.js +2 -2
  88. package/commands/secret/addSecret.js +7 -17
  89. package/commands/secret/deleteSecret.js +10 -20
  90. package/commands/secret/listSecret.js +8 -10
  91. package/commands/secret/updateSecret.js +9 -17
  92. package/commands/secret.js +2 -2
  93. package/commands/testAccount/__tests__/delete.test.js +2 -4
  94. package/commands/testAccount/delete.d.ts +4 -3
  95. package/commands/testAccount/delete.js +155 -14
  96. package/commands/theme/preview.js +1 -4
  97. package/lang/en.d.ts +310 -102
  98. package/lang/en.js +351 -147
  99. package/lang/en.lyaml +2 -2
  100. package/lib/__tests__/buildAccount.test.js +2 -1
  101. package/lib/__tests__/commonOpts.test.js +1 -1
  102. package/lib/__tests__/dependencyManagement.test.js +1 -1
  103. package/lib/__tests__/developerTestAccounts.test.js +3 -3
  104. package/lib/__tests__/npm.test.js +1 -1
  105. package/lib/__tests__/oauth.test.js +4 -4
  106. package/lib/__tests__/process.test.js +10 -5
  107. package/lib/__tests__/sandboxSync.test.js +8 -8
  108. package/lib/__tests__/sandboxes.test.js +8 -8
  109. package/lib/__tests__/serverlessLogs.test.js +1 -1
  110. package/lib/__tests__/usageTracking.test.js +5 -5
  111. package/lib/__tests__/validation.test.js +2 -1
  112. package/lib/__tests__/yargsUtils.test.js +83 -9
  113. package/lib/app/__tests__/migrate.test.js +5 -5
  114. package/lib/app/__tests__/migrate_legacy.test.js +1 -1
  115. package/lib/app/migrate.js +1 -1
  116. package/lib/app/migrate_legacy.js +20 -24
  117. package/lib/buildAccount.js +25 -57
  118. package/lib/commonOpts.d.ts +1 -1
  119. package/lib/commonOpts.js +25 -22
  120. package/lib/configOptions.js +7 -0
  121. package/lib/constants.d.ts +6 -1
  122. package/lib/constants.js +10 -1
  123. package/lib/dependencyManagement.js +9 -27
  124. package/lib/developerTestAccounts.js +9 -23
  125. package/lib/doctor/Diagnosis.js +11 -23
  126. package/lib/doctor/DiagnosticInfoBuilder.js +12 -11
  127. package/lib/doctor/Doctor.js +42 -90
  128. package/lib/doctor/__tests__/Doctor.test.js +4 -4
  129. package/lib/errorHandlers/index.js +12 -20
  130. package/lib/errorHandlers/suppressError.js +11 -18
  131. package/lib/lang.js +6 -5
  132. package/lib/links.js +4 -4
  133. package/lib/middleware/__test__/commandTargetingUtils.test.d.ts +1 -0
  134. package/lib/middleware/__test__/commandTargetingUtils.test.js +99 -0
  135. package/lib/middleware/__test__/configMiddleware.test.js +11 -11
  136. package/lib/middleware/__test__/yargsChecksMiddleware.test.js +6 -8
  137. package/lib/middleware/commandTargetingUtils.d.ts +8 -0
  138. package/lib/middleware/commandTargetingUtils.js +78 -0
  139. package/lib/middleware/configMiddleware.d.ts +1 -1
  140. package/lib/middleware/configMiddleware.js +21 -81
  141. package/lib/middleware/fireAlarmMiddleware.js +15 -17
  142. package/lib/middleware/gitMiddleware.js +5 -1
  143. package/lib/middleware/notificationsMiddleware.js +5 -11
  144. package/lib/middleware/yargsChecksMiddleware.js +6 -9
  145. package/lib/npm.js +2 -2
  146. package/lib/oauth.js +5 -5
  147. package/lib/process.js +5 -4
  148. package/lib/projects/__tests__/AppDevModeInterface.test.js +14 -34
  149. package/lib/projects/__tests__/LocalDevWebsocketServer.test.js +70 -39
  150. package/lib/projects/__tests__/localDevProjectHelpers.test.js +2 -0
  151. package/lib/projects/__tests__/platformVersion.test.js +8 -8
  152. package/lib/projects/__tests__/projects.test.js +12 -12
  153. package/lib/projects/__tests__/structure.test.js +3 -3
  154. package/lib/projects/__tests__/upload.test.d.ts +1 -0
  155. package/lib/projects/__tests__/upload.test.js +82 -0
  156. package/lib/projects/add/__tests__/legacyAddComponent.test.js +6 -6
  157. package/lib/projects/add/__tests__/v3AddComponent.test.js +4 -4
  158. package/lib/projects/create/__tests__/legacy.test.js +5 -5
  159. package/lib/projects/create/__tests__/v3.test.js +1 -1
  160. package/lib/projects/create/index.js +2 -2
  161. package/lib/projects/create/legacy.js +2 -2
  162. package/lib/projects/create/v3.js +2 -2
  163. package/lib/projects/localDev/AppDevModeInterface.d.ts +2 -0
  164. package/lib/projects/localDev/AppDevModeInterface.js +22 -20
  165. package/lib/projects/localDev/LocalDevLogger.js +10 -11
  166. package/lib/projects/localDev/LocalDevManager.js +4 -5
  167. package/lib/projects/localDev/LocalDevWebsocketServer.d.ts +0 -1
  168. package/lib/projects/localDev/LocalDevWebsocketServer.js +7 -10
  169. package/lib/projects/localDev/helpers/project.d.ts +1 -0
  170. package/lib/projects/localDev/helpers/project.js +37 -0
  171. package/lib/projects/platformVersion.d.ts +1 -1
  172. package/lib/projects/platformVersion.js +1 -1
  173. package/lib/projects/structure.js +6 -6
  174. package/lib/projects/upload.d.ts +1 -1
  175. package/lib/projects/upload.js +17 -8
  176. package/lib/prompts/__tests__/downloadProjectPrompt.test.js +1 -0
  177. package/lib/prompts/accountNamePrompt.js +14 -19
  178. package/lib/prompts/accountsPrompt.js +2 -2
  179. package/lib/prompts/cmsFieldPrompt.js +2 -2
  180. package/lib/prompts/createApiSamplePrompt.js +5 -5
  181. package/lib/prompts/createDeveloperTestAccountConfigPrompt.js +10 -1
  182. package/lib/prompts/createFunctionPrompt.js +14 -14
  183. package/lib/prompts/createModulePrompt.js +9 -9
  184. package/lib/prompts/createTemplatePrompt.js +2 -2
  185. package/lib/prompts/downloadProjectPrompt.js +5 -8
  186. package/lib/prompts/personalAccessKeyPrompt.js +3 -3
  187. package/lib/prompts/previewPrompt.js +6 -6
  188. package/lib/prompts/projectAddPrompt.js +6 -0
  189. package/lib/prompts/projectDevTargetAccountPrompt.js +20 -32
  190. package/lib/prompts/projectNamePrompt.js +4 -8
  191. package/lib/prompts/projectsLogsPrompt.js +2 -4
  192. package/lib/prompts/promptUtils.js +27 -9
  193. package/lib/prompts/sandboxesPrompt.js +7 -7
  194. package/lib/prompts/secretPrompt.js +3 -3
  195. package/lib/prompts/selectAppPrompt.js +3 -3
  196. package/lib/prompts/selectHubDBTablePrompt.js +9 -13
  197. package/lib/prompts/selectPublicAppForMigrationPrompt.js +15 -19
  198. package/lib/prompts/setAsDefaultAccountPrompt.js +4 -8
  199. package/lib/prompts/uploadPrompt.js +5 -5
  200. package/lib/sandboxSync.js +24 -41
  201. package/lib/sandboxes.js +19 -47
  202. package/lib/schema.js +3 -3
  203. package/lib/serverlessLogs.js +11 -13
  204. package/lib/theme/__tests__/migrate.test.js +3 -3
  205. package/lib/theme/migrate.js +2 -2
  206. package/lib/ui/SpinniesManager.d.ts +2 -0
  207. package/lib/ui/SpinniesManager.js +7 -0
  208. package/lib/ui/boxen.js +1 -2
  209. package/lib/ui/git.js +13 -10
  210. package/lib/ui/index.d.ts +4 -0
  211. package/lib/ui/index.js +47 -38
  212. package/lib/ui/serverlessFunctionLogs.js +9 -7
  213. package/lib/ui/uiMessages.d.ts +68 -0
  214. package/lib/ui/uiMessages.js +71 -0
  215. package/lib/usageTracking.js +7 -7
  216. package/lib/validation.js +20 -23
  217. package/lib/yargsUtils.d.ts +1 -1
  218. package/lib/yargsUtils.js +12 -5
  219. package/mcp-server/tools/cms/HsCreateModuleTool.d.ts +2 -2
  220. package/mcp-server/tools/index.js +4 -0
  221. package/mcp-server/tools/project/GetApiUsagePatternsByAppIdTool.d.ts +23 -0
  222. package/mcp-server/tools/project/GetApiUsagePatternsByAppIdTool.js +68 -0
  223. package/mcp-server/tools/project/GetApplicationInfoTool.d.ts +11 -0
  224. package/mcp-server/tools/project/GetApplicationInfoTool.js +49 -0
  225. package/mcp-server/tools/project/GetConfigValuesTool.js +2 -2
  226. package/mcp-server/tools/project/GuidedWalkthroughTool.d.ts +2 -2
  227. package/mcp-server/tools/project/__tests__/GetApiUsagePatternsByAppIdTool.test.d.ts +1 -0
  228. package/mcp-server/tools/project/__tests__/GetApiUsagePatternsByAppIdTool.test.js +169 -0
  229. package/mcp-server/tools/project/__tests__/GetApplicationInfoTool.test.d.ts +1 -0
  230. package/mcp-server/tools/project/__tests__/GetApplicationInfoTool.test.js +115 -0
  231. package/mcp-server/utils/toolUsageTracking.js +2 -2
  232. package/package.json +7 -7
  233. package/ui/components/BoxWithTitle.d.ts +8 -0
  234. package/ui/components/BoxWithTitle.js +9 -0
  235. package/ui/components/HorizontalSelectPrompt.d.ts +8 -0
  236. package/ui/components/HorizontalSelectPrompt.js +30 -0
  237. package/ui/components/StatusMessageBoxes.d.ts +12 -0
  238. package/ui/components/StatusMessageBoxes.js +31 -0
  239. package/ui/index.d.ts +1 -0
  240. package/ui/index.js +6 -0
  241. package/ui/lib/ui-testing-utils.d.ts +9 -0
  242. package/ui/lib/ui-testing-utils.js +47 -0
  243. package/ui/lib/useTerminalSize.d.ts +13 -0
  244. package/ui/lib/useTerminalSize.js +31 -0
  245. package/ui/styles.d.ts +18 -0
  246. package/ui/styles.js +18 -0
  247. package/ui/views/UiSandbox.d.ts +5 -0
  248. package/ui/views/UiSandbox.js +25 -0
  249. package/lib/middleware/__test__/utils.test.js +0 -51
  250. package/lib/middleware/utils.d.ts +0 -8
  251. package/lib/middleware/utils.js +0 -14
  252. /package/{lib/middleware/__test__/utils.test.d.ts → commands/project/__tests__/validate.test.d.ts} +0 -0
package/lang/en.d.ts CHANGED
@@ -94,9 +94,13 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
94
94
  };
95
95
  readonly list: {
96
96
  readonly accounts: `${string}:`;
97
+ readonly defaultAccountTitle: string;
97
98
  readonly defaultAccount: (account: string) => string;
98
99
  readonly describe: "List names of accounts defined in config.";
99
100
  readonly configPath: (configPath: string) => string;
101
+ readonly overrideFilePathTitle: string;
102
+ readonly overrideFilePath: (overrideFilePath: string) => string;
103
+ readonly overrideAccount: (account: string) => string;
100
104
  readonly labels: {
101
105
  readonly accountId: "Account ID";
102
106
  readonly authType: "Auth Type";
@@ -122,6 +126,8 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
122
126
  readonly errors: {
123
127
  readonly accountNotFound: (specifiedAccount: string, configPath: string) => string;
124
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.`;
125
131
  readonly examples: {
126
132
  readonly default: "Select a HubSpot account to use as the default account";
127
133
  readonly idBased: "Set the default account to the account in the config with accountId equal to \"1234567\"";
@@ -143,6 +149,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
143
149
  readonly replaceDefaultAccount: "The removed account was the default account.";
144
150
  };
145
151
  readonly prompts: {
152
+ readonly deleteOverrideFile: (overrideFilePath: string, accountName: string) => string;
146
153
  readonly selectAccountToRemove: "Select an account to remove from the config";
147
154
  };
148
155
  readonly errors: {
@@ -162,12 +169,40 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
162
169
  readonly accountRemoved: (accountName: string) => string;
163
170
  };
164
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
+ };
165
189
  readonly info: {
166
- 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;
167
197
  readonly describe: "Print information about the default account, or about the account specified with the \"account\" option.";
168
198
  readonly errors: {
169
199
  readonly notUsingPersonalAccessKey: "This command currently only supports fetching scopes for the personal access key auth type.";
170
200
  };
201
+ readonly options: {
202
+ readonly account: {
203
+ readonly describe: "Account name or id to show info for";
204
+ };
205
+ };
171
206
  readonly examples: {
172
207
  readonly default: "Print information for the default account";
173
208
  readonly idBased: "Print information for the account with accountId equal to \"1234567\"";
@@ -184,13 +219,37 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
184
219
  };
185
220
  readonly inactiveAccountsFound: {
186
221
  readonly one: "1 inactive account found:";
187
- readonly other: (count: string) => string;
222
+ readonly other: (count: number) => string;
188
223
  };
189
224
  readonly confirm: {
190
225
  readonly one: "Remove 1 inactive account from the CLI config?";
191
- readonly other: (count: string) => string;
226
+ readonly other: (count: number) => string;
192
227
  };
193
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
+ };
194
253
  };
195
254
  };
196
255
  };
@@ -260,6 +319,10 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
260
319
  readonly describe: "Enable or disable automatic opening of the browser";
261
320
  };
262
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
+ };
263
326
  };
264
327
  };
265
328
  };
@@ -280,6 +343,9 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
280
343
  readonly pageTemplateScoreTitle: "Page template scores";
281
344
  readonly lighthouseLinksTitle: "Lighthouse links";
282
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}`;
283
349
  };
284
350
  readonly errors: {
285
351
  readonly targetOptionRequired: "[--target] is required for detailed view";
@@ -398,9 +464,9 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
398
464
  };
399
465
  };
400
466
  readonly customObject: {
401
- 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.";
402
468
  readonly describe: "Commands for managing custom objects.";
403
- readonly seeMoreLink: "View our docs to find out more.";
469
+ readonly seeMoreLink: string;
404
470
  readonly subcommands: {
405
471
  readonly create: {
406
472
  readonly describe: "Create custom object instances.";
@@ -608,7 +674,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
608
674
  readonly uploadingFailed: "Uploading failed";
609
675
  };
610
676
  readonly logs: {
611
- readonly uploading: (src: string, dest: string, accountId: string) => string;
677
+ readonly uploading: (src: string, dest: string, accountId: number) => string;
612
678
  };
613
679
  readonly positionals: {
614
680
  readonly dest: {
@@ -619,7 +685,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
619
685
  };
620
686
  };
621
687
  readonly success: {
622
- readonly upload: (src: string, dest: string, accountId: string) => string;
688
+ readonly upload: (src: string, dest: string, accountId: number) => string;
623
689
  readonly uploadComplete: (dest: string) => string;
624
690
  };
625
691
  };
@@ -648,7 +714,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
648
714
  };
649
715
  };
650
716
  readonly success: {
651
- readonly deployed: (functionPath: string, accountId: string, buildTimeSeconds: string) => string;
717
+ readonly deployed: (functionPath: string, accountId: number, buildTimeSeconds: string | 0) => string;
652
718
  };
653
719
  };
654
720
  readonly list: {
@@ -700,9 +766,9 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
700
766
  readonly clear: {
701
767
  readonly describe: "Clear all rows in a HubDB table.";
702
768
  readonly logs: {
703
- readonly removedRows: (deletedRowCount: string, tableId: string) => string;
704
- readonly rowCount: (tableId: string, rowCount: string) => string;
705
- 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;
706
772
  };
707
773
  readonly positionals: {
708
774
  readonly tableId: {
@@ -724,14 +790,14 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
724
790
  };
725
791
  };
726
792
  readonly success: {
727
- readonly create: (tableId: string, accountId: string, rowCount: string) => string;
793
+ readonly create: (tableId: string, accountId: number, rowCount: number) => string;
728
794
  };
729
795
  };
730
796
  readonly delete: {
731
797
  readonly describe: "Delete a HubDB table.";
732
- readonly shouldDeleteTable: (tableId: string) => string;
798
+ readonly shouldDeleteTable: (tableId: number) => string;
733
799
  readonly errors: {
734
- readonly delete: (tableId: string) => string;
800
+ readonly delete: (tableId: number | "") => string;
735
801
  };
736
802
  readonly positionals: {
737
803
  readonly tableId: {
@@ -744,7 +810,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
744
810
  };
745
811
  };
746
812
  readonly success: {
747
- readonly delete: (tableId: string, accountId: string) => string;
813
+ readonly delete: (tableId: string, accountId: number) => string;
748
814
  };
749
815
  };
750
816
  readonly fetch: {
@@ -758,7 +824,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
758
824
  };
759
825
  };
760
826
  readonly success: {
761
- readonly fetch: (tableId: string, path: string) => string;
827
+ readonly fetch: (tableId: number, path: string) => string;
762
828
  };
763
829
  };
764
830
  readonly list: {
@@ -798,7 +864,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
798
864
  readonly configFileUpdated: (authType: string, account: string | number) => string;
799
865
  };
800
866
  readonly logs: {
801
- readonly updateConfig: "To update an existing config file, use the \"hs auth\" command.";
867
+ readonly updateConfig: `To update an existing config file, use the ${string} command.`;
802
868
  };
803
869
  readonly errors: {
804
870
  readonly invalidAccountIdProvided: "--account must be a number.";
@@ -808,7 +874,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
808
874
  };
809
875
  };
810
876
  readonly lint: {
811
- readonly issuesFound: (count: string) => string;
877
+ readonly issuesFound: (count: number) => string;
812
878
  readonly groupName: (path: string) => string;
813
879
  readonly positionals: {
814
880
  readonly path: {
@@ -829,7 +895,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
829
895
  readonly logs: {
830
896
  readonly describe: "View logs for a CMS serverless function.";
831
897
  readonly errors: {
832
- readonly noLogsFound: (functionPath: string, accountId: string) => string;
898
+ readonly noLogsFound: (functionPath: string, accountId: number) => string;
833
899
  };
834
900
  readonly examples: {
835
901
  readonly default: "Get 5 most recent logs for function residing at /_hcms/api/my-endpoint";
@@ -837,7 +903,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
837
903
  readonly limit: "Get 10 most recent logs for function residing at /_hcms/api/my-endpoint";
838
904
  };
839
905
  readonly endpointPrompt: "Enter a serverless function endpoint:";
840
- readonly gettingLogs: (latest: string, functionPath: string) => string;
906
+ readonly gettingLogs: (latest: boolean | undefined, functionPath: string) => string;
841
907
  readonly options: {
842
908
  readonly compact: {
843
909
  readonly describe: "output compact logs";
@@ -918,9 +984,9 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
918
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.";
919
985
  readonly errors: {
920
986
  readonly sourcePathExists: (srcPath: string, destPath: string) => string;
921
- readonly moveFailed: (srcPath: string, destPath: string, accountId: string) => string;
987
+ readonly moveFailed: (srcPath: string, destPath: string, accountId: number) => string;
922
988
  };
923
- readonly move: (srcPath: string, destPath: string, accountId: string) => string;
989
+ readonly move: (srcPath: string, destPath: string, accountId: number) => string;
924
990
  };
925
991
  readonly open: {
926
992
  readonly describe: "Open a HubSpot page in your browser.";
@@ -937,6 +1003,7 @@ Global configuration replaces hubspot.config.yml, and you will be prompted to mi
937
1003
  readonly selectLink: "Select a link to open";
938
1004
  };
939
1005
  readonly project: {
1006
+ readonly describe: "Commands for managing projects. For more information visit our documentation https://developers.hubspot.com/docs/getting-started/quickstart";
940
1007
  readonly profile: {
941
1008
  readonly describe: "Commands for managing project profiles";
942
1009
  readonly verboseDescribe: `Commands for managing project profiles
@@ -1026,7 +1093,7 @@ Profiles enable you to reference variables in your component configuration files
1026
1093
  readonly errors: {
1027
1094
  readonly noProjectConfig: "No project detected. Please run this command again from a project directory.";
1028
1095
  readonly noAccount: (accountId: number) => string;
1029
- readonly noAccountsInConfig: (authCommand: string) => string;
1096
+ readonly noAccountsInConfig: `No accounts found in your config. Run ${string} to configure a HubSpot account with the CLI.`;
1030
1097
  readonly invalidProjectComponents: "Projects cannot contain both private and public apps. Move your apps to separate projects before attempting local development.";
1031
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.`;
1032
1099
  readonly accountNotCombined: `
@@ -1039,8 +1106,9 @@ Local development of unified apps is currently only compatible with accounts tha
1039
1106
  };
1040
1107
  readonly options: {
1041
1108
  readonly profile: "The profile to target during local dev";
1042
- readonly projectAccount: "The id of the account to upload your project to. Only compatible with platform versions 2025.2 and above.";
1043
- 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.";
1044
1112
  };
1045
1113
  };
1046
1114
  readonly create: {
@@ -1111,11 +1179,9 @@ ${string}`;
1111
1179
  readonly describe: "Project name (cannot be changed)";
1112
1180
  };
1113
1181
  };
1114
- readonly header: {
1115
- 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.";
1116
- readonly link: "Learn more about migrating apps to the projects framework";
1117
- };
1118
- 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;
1119
1185
  readonly migrationStatus: {
1120
1186
  readonly inProgress: () => string;
1121
1187
  readonly success: () => string;
@@ -1123,16 +1189,27 @@ ${string}`;
1123
1189
  readonly failure: () => string;
1124
1190
  };
1125
1191
  readonly warning: {
1126
- readonly title: () => string;
1127
- readonly projectConversion: () => string;
1128
- readonly appConfig: () => string;
1129
- 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).";
1130
- 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;
1131
1200
  readonly copyApp: "We strongly recommend making a copy of your app to test this process in a development app before replacing production.";
1132
1201
  };
1133
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.";
1134
1203
  readonly createAppPrompt: "Proceed with migrating this app to a project component (this process can't be aborted)?";
1135
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
+ };
1136
1213
  };
1137
1214
  readonly migrate: {
1138
1215
  readonly preamble: (platformVersion: string) => string;
@@ -1159,7 +1236,7 @@ ${string}`;
1159
1236
  };
1160
1237
  };
1161
1238
  readonly cloneStatus: {
1162
- readonly inProgress: () => string;
1239
+ readonly inProgress: `Cloning app configuration to ${string} component definition ...`;
1163
1240
  readonly done: "Cloning app configuration to public-app.json component definition ... DONE";
1164
1241
  readonly success: (dest: string) => string;
1165
1242
  readonly failure: "Cloning app configuration to public-app.json component definition ... FAILED";
@@ -1168,6 +1245,7 @@ ${string}`;
1168
1245
  readonly invalidAccountTypeTitle: () => string;
1169
1246
  readonly invalidAccountTypeDescription: (useCommand: string, authCommand: string) => string;
1170
1247
  readonly couldNotWriteConfigPath: (configPath: string) => string;
1248
+ readonly noAccountConfig: (accountId: number) => string;
1171
1249
  };
1172
1250
  };
1173
1251
  readonly add: {
@@ -1242,7 +1320,7 @@ ${string}`;
1242
1320
  readonly describe: "List the project's builds.";
1243
1321
  readonly continueOrExitPrompt: "Press <enter> to load more, or ctrl+c to exit";
1244
1322
  readonly viewAllBuildsLink: "View all builds";
1245
- readonly showingNextBuilds: (count: string, projectName: string) => string;
1323
+ readonly showingNextBuilds: (count: number, projectName: string) => string;
1246
1324
  readonly showingRecentBuilds: (count: number, projectName: string, viewAllBuildsLink: string) => string;
1247
1325
  readonly errors: {
1248
1326
  readonly noBuilds: "No builds for this project were found.";
@@ -1276,7 +1354,7 @@ ${string}`;
1276
1354
  };
1277
1355
  readonly logs: {
1278
1356
  readonly showingLogs: "Showing logs for:";
1279
- readonly hubspotLogsDirectLink: "View function logs in HubSpot";
1357
+ readonly hubspotLogsDirectLink: (url: string) => string;
1280
1358
  readonly noLogsFound: (name: string) => string;
1281
1359
  };
1282
1360
  readonly table: {
@@ -1315,13 +1393,13 @@ ${string}`;
1315
1393
  readonly default: "Upload a project into your HubSpot account";
1316
1394
  };
1317
1395
  readonly logs: {
1318
- readonly buildSucceeded: (buildId: string) => string;
1396
+ readonly buildSucceeded: (buildId: number) => string;
1319
1397
  readonly readyToGoLive: "🚀 Ready to take your project live?";
1320
1398
  readonly runCommand: (command: string) => string;
1321
1399
  readonly autoDeployDisabled: (deployCommand: string) => string;
1322
1400
  };
1323
1401
  readonly errors: {
1324
- 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.`;
1325
1403
  };
1326
1404
  readonly options: {
1327
1405
  readonly forceCreate: {
@@ -1330,6 +1408,9 @@ ${string}`;
1330
1408
  readonly message: {
1331
1409
  readonly describe: "Add a message when you upload your project and create a build";
1332
1410
  };
1411
+ readonly profile: {
1412
+ readonly describe: "Profile to target for this upload";
1413
+ };
1333
1414
  };
1334
1415
  };
1335
1416
  readonly watch: {
@@ -1367,6 +1448,7 @@ ${string}`;
1367
1448
  readonly uploadFailed: (remotePath: string, filePath: string) => string;
1368
1449
  readonly deleteFileFailed: (remotePath: string) => string;
1369
1450
  readonly deleteFolderFailed: (remotePath: string) => string;
1451
+ readonly v3ApiError: (platformVersion: string) => string;
1370
1452
  };
1371
1453
  };
1372
1454
  readonly download: {
@@ -1376,11 +1458,12 @@ ${string}`;
1376
1458
  };
1377
1459
  readonly logs: {
1378
1460
  readonly downloadCancelled: "Cancelling project download";
1379
- readonly downloadSucceeded: (buildId: string, projectName: string) => string;
1461
+ readonly downloadSucceeded: (buildId: number, projectName: string) => string;
1380
1462
  };
1381
1463
  readonly errors: {
1382
1464
  readonly downloadFailed: "Something went wrong downloading the project";
1383
1465
  readonly projectNotFound: (projectName: string, accountId: string) => string;
1466
+ readonly noBuildIdToDownload: "No build ID available for download";
1384
1467
  };
1385
1468
  readonly warnings: {
1386
1469
  readonly cannotDownloadWithinProject: "Cancelling project download. Please run the command again outside the context of an existing project.";
@@ -1428,8 +1511,8 @@ ${string}`;
1428
1511
  readonly addingDependenciesToLocation: (dependencies: string, directory: string) => string;
1429
1512
  readonly installingDependenciesFailed: (directory: string) => string;
1430
1513
  readonly noProjectConfig: "No project detected. Run this command from a project directory.";
1431
- readonly noPackageJsonInProject: (projectName: string, link: string) => string;
1432
- readonly packageManagerNotInstalled: (packageManager: string, link: string) => string;
1514
+ readonly noPackageJsonInProject: (projectName: string) => string;
1515
+ readonly packageManagerNotInstalled: (packageManager: string) => string;
1433
1516
  };
1434
1517
  readonly validate: {
1435
1518
  readonly describe: "Validate the project before uploading";
@@ -1461,6 +1544,30 @@ ${string}`;
1461
1544
  readonly describe: "Commands for managing sandboxes.";
1462
1545
  readonly subcommands: {
1463
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
+ };
1464
1571
  readonly developer: {
1465
1572
  readonly loading: {
1466
1573
  readonly add: (accountName: string) => string;
@@ -1503,28 +1610,28 @@ ${string}`;
1503
1610
  readonly delete: {
1504
1611
  readonly describe: "Delete a sandbox account.";
1505
1612
  readonly debug: {
1506
- readonly deleting: (account: string) => string;
1613
+ readonly deleting: (account: number) => string;
1507
1614
  readonly error: "Error deleting sandbox account:";
1508
1615
  };
1509
1616
  readonly examples: {
1510
1617
  readonly default: "Deletes the sandbox account named MySandboxAccount.";
1511
1618
  };
1512
- readonly confirm: (account: string) => string;
1513
- readonly defaultAccountWarning: (account: string) => string;
1619
+ readonly confirm: (account: number) => string;
1620
+ readonly defaultAccountWarning: (account: number) => string;
1514
1621
  readonly success: {
1515
- readonly delete: (account: string, sandboxHubId: string) => string;
1516
- readonly deleteDefault: (account: string, sandboxHubId: string) => string;
1622
+ readonly delete: (account: string, sandboxHubId: number) => string;
1623
+ readonly deleteDefault: (account: string, sandboxHubId: number) => string;
1517
1624
  readonly configFileUpdated: (account: string, configFilename: string) => string;
1518
1625
  };
1519
1626
  readonly failure: {
1520
- readonly invalidUser: (accountName: string, parentAccountName: string) => string;
1627
+ readonly invalidUser: (account: number, parentAccount: number) => string;
1521
1628
  readonly noAccount: "No account specified. Specify an account by using the --account flag.";
1522
- readonly noSandboxAccounts: (authCommand: string) => string;
1629
+ readonly noSandboxAccounts: `There are no sandboxes connected to the CLI. To add a sandbox, run ${string}.`;
1523
1630
  readonly noSandboxAccountId: "This sandbox can't be deleted from the CLI because we could not find the associated sandbox account.";
1524
- readonly noParentAccount: (authCommand: string) => string;
1525
- 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;
1526
1633
  readonly noParentPortalAvailable: (command: string, url: string) => string;
1527
- readonly invalidKey: (account: string, authCommand: string) => string;
1634
+ readonly invalidKey: (account: number | null | undefined) => string;
1528
1635
  };
1529
1636
  readonly options: {
1530
1637
  readonly force: {
@@ -1552,6 +1659,12 @@ ${string}`;
1552
1659
  readonly instructions: (accountName: string, url: string) => string;
1553
1660
  };
1554
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
+ };
1555
1668
  };
1556
1669
  };
1557
1670
  readonly app: {
@@ -1629,7 +1742,7 @@ ${string}`;
1629
1742
  readonly describe: "Create a new secret.";
1630
1743
  readonly errors: {
1631
1744
  readonly add: (secretName: string) => string;
1632
- readonly alreadyExists: (secretName: string, command: string) => string;
1745
+ readonly alreadyExists: (secretName: string) => string;
1633
1746
  };
1634
1747
  readonly positionals: {
1635
1748
  readonly name: {
@@ -1637,7 +1750,7 @@ ${string}`;
1637
1750
  };
1638
1751
  };
1639
1752
  readonly success: {
1640
- readonly add: (secretName: string, accountIdentifier: string) => string;
1753
+ readonly add: (secretName: string, accountId: number) => string;
1641
1754
  };
1642
1755
  };
1643
1756
  readonly delete: {
@@ -1655,7 +1768,7 @@ ${string}`;
1655
1768
  };
1656
1769
  };
1657
1770
  readonly success: {
1658
- readonly delete: (secretName: string, accountIdentifier: string) => string;
1771
+ readonly delete: (secretName: string, accountId: number) => string;
1659
1772
  };
1660
1773
  };
1661
1774
  readonly list: {
@@ -1678,7 +1791,7 @@ ${string}`;
1678
1791
  };
1679
1792
  };
1680
1793
  readonly success: {
1681
- readonly update: (secretName: string, accountIdentifier: string) => string;
1794
+ readonly update: (secretName: string, accountId: number) => string;
1682
1795
  readonly updateExplanation: "Existing serverless functions will start using this new value within 10 seconds.";
1683
1796
  };
1684
1797
  };
@@ -1907,18 +2020,41 @@ ${string}`;
1907
2020
  readonly example: (name: string) => string;
1908
2021
  };
1909
2022
  readonly delete: {
1910
- readonly describe: "Delete a test account config file.";
2023
+ readonly describe: "Delete a test account from your HubSpot account and CLI config";
1911
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
+ };
1912
2034
  readonly errors: {
1913
- 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;
1914
2042
  };
1915
2043
  readonly success: {
1916
- readonly testAccountDeleted: (testAccountId: number) => string;
2044
+ readonly testAccountDeletedFromHubSpot: (testAccountToDelete: number) => string;
2045
+ readonly testAccountDeletedFromConfig: (accountId: number) => string;
1917
2046
  };
1918
- readonly positionals: {
1919
- 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";
1920
2057
  };
1921
- readonly example: (testAccountId: number) => string;
1922
2058
  };
1923
2059
  };
1924
2060
  readonly secrets: {
@@ -2626,6 +2762,11 @@ export declare const lib: {
2626
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.";
2627
2763
  readonly genericError: `An error occurred while creating the initial build for this project. Run ${string} to try again.`;
2628
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
+ };
2629
2770
  };
2630
2771
  readonly account: {
2631
2772
  readonly checkIfDefaultAccountIsSupported: {
@@ -2642,7 +2783,7 @@ export declare const lib: {
2642
2783
  readonly notAuthedError: (parentAccountId: number | string, accountIdentifier: string) => string;
2643
2784
  };
2644
2785
  readonly selectAccountTypePrompt: {
2645
- readonly message: "[--testing-account] Choose the type of account to test on";
2786
+ readonly message: "Choose the type of account to test on";
2646
2787
  readonly developerTestAccountOption: "Test on a developer test account (recommended)";
2647
2788
  readonly sandboxAccountOption: "Test on a sandbox account";
2648
2789
  readonly sandboxAccountOptionDisabled: "Disabled - requires access to sandbox accounts";
@@ -2770,6 +2911,7 @@ Run ${string} to upgrade to version ${string}`;
2770
2911
  readonly compressed: (byteCount: number) => string;
2771
2912
  readonly compressing: (path: string) => string;
2772
2913
  readonly fileFiltered: (filename: string) => string;
2914
+ readonly legacyFileDetected: (filename: string, platformVersion: string) => string;
2773
2915
  };
2774
2916
  };
2775
2917
  readonly boxen: {
@@ -2786,13 +2928,15 @@ Run ${string} to upgrade to version ${string}`;
2786
2928
  readonly viewImportLink: (baseUrl: string, accountId: number, importId: string) => string;
2787
2929
  };
2788
2930
  readonly ui: {
2789
- readonly betaTag: string;
2931
+ readonly betaTag: "[BETA]";
2932
+ readonly betaTagWithStyle: string;
2790
2933
  readonly betaWarning: {
2791
2934
  readonly header: string;
2792
2935
  readonly footer: string;
2793
2936
  };
2794
2937
  readonly infoTag: string;
2795
- readonly deprecatedTag: string;
2938
+ readonly deprecatedTag: "[DEPRECATED]";
2939
+ readonly deprecatedTagWithStyle: string;
2796
2940
  readonly errorTag: string;
2797
2941
  readonly deprecatedMessage: (command: string, url: string) => string;
2798
2942
  readonly deprecatedDescription: (message: string, command: string, url: string) => string;
@@ -2811,7 +2955,7 @@ Run ${string} to upgrade to version ${string}`;
2811
2955
  readonly message: (command: string) => string;
2812
2956
  };
2813
2957
  readonly accountsUseCommand: {
2814
- readonly command: "hs accounts use";
2958
+ readonly command: "hs account use";
2815
2959
  readonly message: (command: string) => string;
2816
2960
  };
2817
2961
  readonly authCommand: {
@@ -2850,6 +2994,9 @@ Run ${string} to upgrade to version ${string}`;
2850
2994
  readonly command: "hs project install-deps";
2851
2995
  readonly message: (command: string) => string;
2852
2996
  };
2997
+ readonly projectCommandTip: {
2998
+ readonly message: "Tip: All project commands must be run from within a project directory";
2999
+ };
2853
3000
  readonly sampleProjects: {
2854
3001
  readonly linkText: "HubSpot's sample projects";
2855
3002
  readonly url: "https://developers.hubspot.com/docs/platform/sample-projects?utm_source=cli&utm_content=project_create_whats_next";
@@ -2902,11 +3049,12 @@ Run ${string} to upgrade to version ${string}`;
2902
3049
  readonly setHttpTimeout: {
2903
3050
  readonly promptMessage: "Enter http timeout duration";
2904
3051
  readonly success: (timeout: string) => string;
3052
+ readonly error: (timeout: string) => string;
2905
3053
  };
2906
3054
  readonly setAutoOpenBrowser: {
2907
3055
  readonly fieldName: "auto open browser";
2908
- readonly enabled: "Auto opening your browser has been enabled";
2909
- 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}`;
2910
3058
  };
2911
3059
  };
2912
3060
  readonly commonOpts: {
@@ -2944,6 +3092,11 @@ Run ${string} to upgrade to version ${string}`;
2944
3092
  };
2945
3093
  };
2946
3094
  readonly prompts: {
3095
+ readonly promptUtils: {
3096
+ readonly errors: {
3097
+ readonly noSelectableChoices: "Exiting prompt because no selectable choices are available";
3098
+ };
3099
+ };
2947
3100
  readonly importDataFilePathPrompt: {
2948
3101
  readonly promptContext: `To view the JSON schema for data imports, visit ${string}`;
2949
3102
  readonly promptMessage: "[--file-path] Select the JSON file that will be used to import your data.";
@@ -2960,11 +3113,11 @@ Run ${string} to upgrade to version ${string}`;
2960
3113
  readonly projectDevTargetAccountPrompt: {
2961
3114
  readonly createNewSandboxOption: "<Test on a new development sandbox>";
2962
3115
  readonly createNewDeveloperTestAccountOption: "<Test on a new developer test account>";
2963
- readonly chooseDefaultAccountOption: () => string;
3116
+ readonly chooseDefaultAccountOption: `<${string} Test on this production account ${string}>`;
2964
3117
  readonly promptMessage: (accountType: string, accountIdentifier: string) => string;
2965
- readonly sandboxLimit: (limit: string) => string;
2966
- readonly sandboxLimitWithSuggestion: (limit: string, authCommand: string) => string;
2967
- readonly developerTestAccountLimit: (limit: string) => string;
3118
+ readonly sandboxLimit: (limit: number) => string;
3119
+ readonly sandboxLimitWithSuggestion: (limit: number) => string;
3120
+ readonly developerTestAccountLimit: (limit: number) => string;
2968
3121
  readonly confirmDefaultAccount: (accountName: string, accountType: string) => string;
2969
3122
  readonly confirmUseExistingDeveloperTestAccount: (accountName: string) => string;
2970
3123
  readonly noAccountId: "No account ID found for the selected account. Please try again.";
@@ -2975,7 +3128,7 @@ Run ${string} to upgrade to version ${string}`;
2975
3128
  readonly setAsDefaultAccountPrompt: {
2976
3129
  readonly setAsDefaultAccountMessage: "Set this account as the default?";
2977
3130
  readonly setAsDefaultAccount: (accountName: string) => string;
2978
- readonly keepingCurrentDefault: (accountName: string) => string;
3131
+ readonly keepingCurrentDefault: (accountName: string | number) => string;
2979
3132
  };
2980
3133
  readonly createDeveloperTestAccountConfigPrompt: {
2981
3134
  readonly namePrompt: (withFlag?: boolean) => string;
@@ -3005,7 +3158,7 @@ Run ${string} to upgrade to version ${string}`;
3005
3158
  readonly enterStandardSandboxName: "Name your standard sandbox:";
3006
3159
  readonly enterDevelopmentSandboxName: "Name your development sandbox:";
3007
3160
  readonly sandboxDefaultName: (sandboxType: string) => string;
3008
- readonly developerTestAccountDefaultName: (count: string) => string;
3161
+ readonly developerTestAccountDefaultName: (count: number) => string;
3009
3162
  readonly errors: {
3010
3163
  readonly invalidName: "You entered an invalid name. Please try again.";
3011
3164
  readonly nameRequired: "The name may not be blank. Please try again.";
@@ -3103,8 +3256,8 @@ Run ${string} to upgrade to version ${string}`;
3103
3256
  readonly selectAppIdClone: (accountName: string) => string;
3104
3257
  readonly errors: {
3105
3258
  readonly noAccountId: "An account ID is required to select an app.";
3106
- readonly noAppsMigration: () => string;
3107
- readonly noAppsClone: () => string;
3259
+ readonly noAppsMigration: string;
3260
+ readonly noAppsClone: string;
3108
3261
  readonly noAppsMigrationMessage: (accountName: string) => string;
3109
3262
  readonly noAppsCloneMessage: (accountName: string) => string;
3110
3263
  readonly errorFetchingApps: "There was an error fetching public apps.";
@@ -3114,7 +3267,7 @@ Run ${string} to upgrade to version ${string}`;
3114
3267
  readonly downloadProjectPrompt: {
3115
3268
  readonly selectProject: "Select a project to download:";
3116
3269
  readonly errors: {
3117
- readonly projectNotFound: (projectName: string, accountId: string) => string;
3270
+ readonly projectNotFound: (projectName: string, accountId: number) => string;
3118
3271
  readonly accountIdRequired: "An account ID is required to download a project.";
3119
3272
  };
3120
3273
  };
@@ -3125,6 +3278,7 @@ Run ${string} to upgrade to version ${string}`;
3125
3278
  readonly errors: {
3126
3279
  readonly nameRequired: "A component name is required";
3127
3280
  readonly componentRequired: "Must select a feature to add";
3281
+ readonly noSelectableChoices: "There are no available features that can be added to this project";
3128
3282
  readonly invalidType: (type: string) => string;
3129
3283
  readonly cannotAddFeature: (feature: string, reasons: string | boolean) => string;
3130
3284
  };
@@ -3160,7 +3314,7 @@ Run ${string} to upgrade to version ${string}`;
3160
3314
  readonly enterName: "[--project] Enter project name:";
3161
3315
  readonly errors: {
3162
3316
  readonly invalidName: "You entered an invalid name. Please try again.";
3163
- readonly projectDoesNotExist: (projectName: string, accountIdentifier: string) => string;
3317
+ readonly projectDoesNotExist: (projectName: string, accountId: number) => string;
3164
3318
  };
3165
3319
  };
3166
3320
  readonly previewPrompt: {
@@ -3220,8 +3374,8 @@ Run ${string} to upgrade to version ${string}`;
3220
3374
  };
3221
3375
  readonly failure: {
3222
3376
  readonly invalidUser: (accountName: string, parentAccountName: string) => string;
3223
- readonly limit: (accountName: string, limit: string) => string;
3224
- 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;
3225
3379
  readonly scopes: {
3226
3380
  readonly message: "The personal access key you provided doesn't include developer test account permissions.";
3227
3381
  readonly instructions: (accountName: string | number, url: string) => string;
@@ -3241,14 +3395,13 @@ Run ${string} to upgrade to version ${string}`;
3241
3395
  readonly configFileUpdated: (accountName: string, authType: string) => string;
3242
3396
  };
3243
3397
  readonly failure: {
3244
- readonly invalidUser: (accountName: string, parentAccountName: string) => string;
3245
- readonly limit: (accountName: string, limit: string) => string;
3246
- 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";
3247
3401
  readonly scopes: {
3248
3402
  readonly message: "The personal access key you provided doesn't include developer sandbox permissions.";
3249
- readonly instructions: (accountName: string | number, url: string) => string;
3403
+ readonly instructions: (account: string | number, url: string) => string;
3250
3404
  };
3251
- readonly generic: "An error occurred while creating a developer sandbox";
3252
3405
  };
3253
3406
  };
3254
3407
  readonly standard: {
@@ -3261,27 +3414,51 @@ Run ${string} to upgrade to version ${string}`;
3261
3414
  readonly configFileUpdated: (accountName: string, authType: string) => string;
3262
3415
  };
3263
3416
  readonly failure: {
3264
- readonly invalidUser: (accountName: string, parentAccountName: string) => string;
3265
- readonly limit: (accountName: string, limit: string) => string;
3266
- 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;
3267
3419
  readonly scopes: {
3268
3420
  readonly message: "The personal access key you provided doesn't include standard sandbox permissions.";
3269
- readonly instructions: (accountName: string, url: string) => string;
3421
+ readonly instructions: (account: string | number, url: string) => string;
3270
3422
  };
3271
3423
  };
3272
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
+ };
3273
3434
  };
3274
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
+ };
3275
3445
  readonly loading: {
3276
3446
  readonly add: (accountName: string) => string;
3277
- readonly fail: (accountName: string) => string;
3278
- 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;
3279
3452
  };
3280
3453
  readonly success: {
3281
3454
  readonly configFileUpdated: (accountName: string, authType: string) => string;
3282
3455
  };
3283
3456
  readonly failure: {
3457
+ readonly syncTypeFetch: "Unable to fetch available sandbox sync types. Please try again.";
3284
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;
3285
3462
  readonly scopes: {
3286
3463
  readonly message: "The personal access key you provided doesn't include sandbox sync permissions.";
3287
3464
  readonly instructions: (accountName: string, url: string) => string;
@@ -3295,6 +3472,8 @@ Run ${string} to upgrade to version ${string}`;
3295
3472
  readonly errorContext: (context: string) => string;
3296
3473
  readonly errorCause: (cause: string) => string;
3297
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.";
3298
3477
  };
3299
3478
  readonly suppressErrors: {
3300
3479
  readonly platformVersionErrors: {
@@ -3306,7 +3485,7 @@ Run ${string} to upgrade to version ${string}`;
3306
3485
  readonly docsLink: "Projects platform versioning (BETA)";
3307
3486
  readonly betaLink: (docsLink: string) => string;
3308
3487
  };
3309
- readonly missingScopeError: (request: string, accountName: string, authCommand: string) => string;
3488
+ readonly missingScopeError: (request: string, accountName: string) => string;
3310
3489
  };
3311
3490
  };
3312
3491
  readonly serverless: {
@@ -3314,7 +3493,7 @@ Run ${string} to upgrade to version ${string}`;
3314
3493
  readonly fetchScopeDataError: (scopeGroup: string) => string;
3315
3494
  readonly portalMissingScope: "Your account does not have access to this action. Talk to an account admin to request it.";
3316
3495
  readonly userMissingScope: "You don't have access to this action. Ask an account admin to change your permissions in Users & Teams settings.";
3317
- readonly genericMissingScope: "Your access key does not allow this action. Please generate a new access key by running `hs auth personalaccesskey`.";
3496
+ readonly genericMissingScope: `Your access key does not allow this action. Please generate a new access key by running ${string}.`;
3318
3497
  };
3319
3498
  };
3320
3499
  readonly doctor: {
@@ -3327,9 +3506,9 @@ Run ${string} to upgrade to version ${string}`;
3327
3506
  readonly unableToDetermine: "Unable to determine if the portal is active";
3328
3507
  readonly pak: {
3329
3508
  readonly incomplete: "Personal access key is valid, but there are more scopes available to your user that are not included in your key.";
3330
- readonly incompleteSecondary: (command: string, link: string) => string;
3509
+ readonly incompleteSecondary: (link: string) => string;
3331
3510
  readonly invalid: "Personal access key is invalid";
3332
- readonly invalidSecondary: (command: string) => string;
3511
+ readonly invalidSecondary: `To get a new key, run ${string}, deactivate your access key, and generate a new one. Then use that new key to authenticate your account.`;
3333
3512
  readonly valid: (link: string) => string;
3334
3513
  readonly viewScopes: "View selected scopes";
3335
3514
  };
@@ -3350,7 +3529,6 @@ Run ${string} to upgrade to version ${string}`;
3350
3529
  readonly latest: (hsVersion: string) => string;
3351
3530
  readonly unableToDetermine: "Unable to determine if HubSpot CLI is up to date.";
3352
3531
  readonly unableToDetermineSecondary: (command: string, link: string) => string;
3353
- readonly unableToDetermineSecondaryLink: "npm HubSpot CLI version history";
3354
3532
  };
3355
3533
  readonly projectDependenciesChecks: {
3356
3534
  readonly missingDependencies: (dir: string) => string;
@@ -3363,9 +3541,9 @@ Run ${string} to upgrade to version ${string}`;
3363
3541
  readonly validJson: "JSON files valid";
3364
3542
  };
3365
3543
  readonly port: {
3366
- readonly inUse: (port: string) => string;
3544
+ readonly inUse: (port: number) => string;
3367
3545
  readonly inUseSecondary: (command: string) => string;
3368
- readonly available: (port: string) => string;
3546
+ readonly available: (port: number) => string;
3369
3547
  };
3370
3548
  readonly diagnosis: {
3371
3549
  readonly cli: {
@@ -3377,21 +3555,51 @@ Run ${string} to upgrade to version ${string}`;
3377
3555
  readonly defaultAccountSubHeader: (accountDetails: string) => string;
3378
3556
  readonly noConfigFile: "CLI configuration not found";
3379
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
+ };
3380
3562
  };
3381
3563
  readonly projectConfig: {
3382
3564
  readonly header: "Project configuration";
3383
3565
  readonly projectDirSubHeader: (projectDir: string) => string;
3384
3566
  readonly projectNameSubHeader: (projectName: string) => string;
3385
3567
  };
3568
+ readonly defaultAccountOverrideFile: {
3569
+ readonly header: "Default account override file path:";
3570
+ };
3386
3571
  readonly counts: {
3387
- readonly errors: (count: string) => string;
3388
- readonly warnings: (count: string) => string;
3572
+ readonly errors: (count: number) => string;
3573
+ readonly warnings: (count: number) => string;
3389
3574
  };
3390
3575
  };
3576
+ readonly defaultAccountOverrideFileChecks: {
3577
+ readonly overrideActive: (defaultAccountOverrideFile: string) => string;
3578
+ readonly overrideAccountId: (overrideAccountId: number | string) => string;
3579
+ };
3391
3580
  };
3392
3581
  readonly oauth: {
3393
3582
  readonly missingClientId: "Error building oauth URL: missing client ID.";
3394
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
+ };
3395
3603
  readonly migrate: {
3396
3604
  readonly componentsToBeMigrated: (components: string) => string;
3397
3605
  readonly componentsThatWillNotBeMigrated: (components: string) => string;
@@ -3425,7 +3633,7 @@ Run ${string} to upgrade to version ${string}`;
3425
3633
  };
3426
3634
  readonly noAppsEligible: (accountId: string, reasons: string[]) => string;
3427
3635
  readonly invalidAccountTypeTitle: string;
3428
- readonly invalidAccountTypeDescription: (useCommand: string, authCommand: string) => string;
3636
+ readonly invalidAccountTypeDescription: (useCommand: string) => string;
3429
3637
  readonly appWithAppIdNotFound: (appId: number) => string;
3430
3638
  readonly noAppsForProject: (projectName: string) => string;
3431
3639
  readonly migrationFailed: "Migration Failed";