@hubspot/cli 7.5.11-experimental.0 → 7.6.0-beta.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 (352) hide show
  1. package/bin/cli.js +102 -95
  2. package/commands/account/auth.d.ts +5 -7
  3. package/commands/account/auth.js +74 -87
  4. package/commands/account/clean.d.ts +3 -7
  5. package/commands/account/clean.js +16 -9
  6. package/commands/account/createOverride.d.ts +3 -7
  7. package/commands/account/createOverride.js +23 -6
  8. package/commands/account/info.d.ts +3 -7
  9. package/commands/account/info.js +13 -5
  10. package/commands/account/list.d.ts +3 -7
  11. package/commands/account/list.js +15 -8
  12. package/commands/account/remove.d.ts +3 -7
  13. package/commands/account/remove.js +21 -9
  14. package/commands/account/removeOverride.d.ts +3 -7
  15. package/commands/account/removeOverride.js +23 -6
  16. package/commands/account/rename.d.ts +3 -7
  17. package/commands/account/rename.js +16 -9
  18. package/commands/account/use.d.ts +5 -9
  19. package/commands/account/use.js +14 -6
  20. package/commands/account.d.ts +3 -4
  21. package/commands/account.js +33 -58
  22. package/commands/app/migrate.d.ts +1 -2
  23. package/commands/app/migrate.js +7 -8
  24. package/commands/app/secret/add.d.ts +7 -0
  25. package/commands/app/secret/add.js +64 -0
  26. package/commands/app/secret/delete.d.ts +8 -0
  27. package/commands/app/secret/delete.js +87 -0
  28. package/commands/app/secret/list.d.ts +6 -0
  29. package/commands/app/secret/list.js +64 -0
  30. package/commands/app/secret/update.d.ts +7 -0
  31. package/commands/app/secret/update.js +77 -0
  32. package/commands/app/secret.d.ts +3 -0
  33. package/commands/app/secret.js +30 -0
  34. package/commands/app.d.ts +2 -5
  35. package/commands/app.js +10 -8
  36. package/commands/auth.d.ts +5 -7
  37. package/commands/auth.js +29 -28
  38. package/commands/cms/convertFields.d.ts +7 -1
  39. package/commands/cms/convertFields.js +57 -41
  40. package/commands/cms/getReactModule.d.ts +7 -1
  41. package/commands/cms/getReactModule.js +52 -34
  42. package/commands/cms/lighthouseScore.d.ts +8 -1
  43. package/commands/cms/lighthouseScore.js +129 -100
  44. package/commands/cms.d.ts +3 -1
  45. package/commands/cms.js +22 -15
  46. package/commands/completion.d.ts +3 -1
  47. package/commands/completion.js +23 -12
  48. package/commands/config/migrate.d.ts +3 -7
  49. package/commands/config/migrate.js +37 -46
  50. package/commands/config/set.d.ts +5 -6
  51. package/commands/config/set.js +38 -14
  52. package/commands/config.d.ts +3 -4
  53. package/commands/config.js +18 -44
  54. package/commands/create/api-sample.d.ts +3 -1
  55. package/commands/create/api-sample.js +34 -38
  56. package/commands/create/app.d.ts +3 -1
  57. package/commands/create/app.js +9 -7
  58. package/commands/create/function.d.ts +3 -1
  59. package/commands/create/function.js +11 -10
  60. package/commands/create/index.d.ts +5 -1
  61. package/commands/create/index.js +23 -11
  62. package/commands/create/module.d.ts +3 -1
  63. package/commands/create/module.js +14 -13
  64. package/commands/create/react-app.d.ts +3 -1
  65. package/commands/create/react-app.js +10 -7
  66. package/commands/create/template.d.ts +3 -1
  67. package/commands/create/template.js +14 -14
  68. package/commands/create/vue-app.d.ts +3 -1
  69. package/commands/create/vue-app.js +10 -7
  70. package/commands/create/webpack-serverless.d.ts +3 -1
  71. package/commands/create/webpack-serverless.js +10 -7
  72. package/commands/create/website-theme.d.ts +3 -1
  73. package/commands/create/website-theme.js +10 -9
  74. package/commands/create.d.ts +4 -24
  75. package/commands/create.js +62 -74
  76. package/commands/customObject/create.d.ts +4 -9
  77. package/commands/customObject/create.js +17 -10
  78. package/commands/customObject/schema/create.d.ts +4 -9
  79. package/commands/customObject/schema/create.js +18 -11
  80. package/commands/customObject/schema/delete.d.ts +4 -9
  81. package/commands/customObject/schema/delete.js +17 -10
  82. package/commands/customObject/schema/fetch-all.d.ts +4 -9
  83. package/commands/customObject/schema/fetch-all.js +17 -10
  84. package/commands/customObject/schema/fetch.d.ts +4 -9
  85. package/commands/customObject/schema/fetch.js +17 -10
  86. package/commands/customObject/schema/list.d.ts +4 -8
  87. package/commands/customObject/schema/list.js +17 -10
  88. package/commands/customObject/schema/update.d.ts +4 -9
  89. package/commands/customObject/schema/update.js +18 -11
  90. package/commands/customObject/schema.d.ts +3 -5
  91. package/commands/customObject/schema.js +27 -54
  92. package/commands/customObject.d.ts +3 -4
  93. package/commands/customObject.js +18 -45
  94. package/commands/doctor.d.ts +6 -8
  95. package/commands/doctor.js +30 -21
  96. package/commands/feedback.d.ts +4 -1
  97. package/commands/feedback.js +38 -47
  98. package/commands/fetch.d.ts +12 -1
  99. package/commands/fetch.js +49 -33
  100. package/commands/filemanager/fetch.d.ts +4 -9
  101. package/commands/filemanager/fetch.js +18 -11
  102. package/commands/filemanager/upload.d.ts +4 -9
  103. package/commands/filemanager/upload.js +17 -11
  104. package/commands/filemanager.d.ts +3 -4
  105. package/commands/filemanager.js +18 -41
  106. package/commands/function/deploy.d.ts +6 -1
  107. package/commands/function/deploy.js +70 -50
  108. package/commands/function/list.d.ts +6 -1
  109. package/commands/function/list.js +44 -32
  110. package/commands/function/server.d.ts +10 -1
  111. package/commands/function/server.js +49 -38
  112. package/commands/function.d.ts +5 -1
  113. package/commands/function.js +22 -10
  114. package/commands/getStarted.d.ts +9 -0
  115. package/commands/getStarted.js +227 -0
  116. package/commands/hubdb/clear.d.ts +4 -9
  117. package/commands/hubdb/clear.js +17 -10
  118. package/commands/hubdb/create.d.ts +4 -9
  119. package/commands/hubdb/create.js +17 -10
  120. package/commands/hubdb/delete.d.ts +4 -9
  121. package/commands/hubdb/delete.js +17 -10
  122. package/commands/hubdb/fetch.d.ts +4 -9
  123. package/commands/hubdb/fetch.js +17 -10
  124. package/commands/hubdb/list.d.ts +4 -0
  125. package/commands/hubdb/list.js +83 -0
  126. package/commands/hubdb.d.ts +3 -2
  127. package/commands/hubdb.js +23 -45
  128. package/commands/init.d.ts +3 -7
  129. package/commands/init.js +17 -8
  130. package/commands/lint.d.ts +6 -4
  131. package/commands/lint.js +42 -43
  132. package/commands/list.d.ts +3 -7
  133. package/commands/list.js +17 -11
  134. package/commands/logs.d.ts +10 -1
  135. package/commands/logs.js +53 -44
  136. package/commands/mcp/setup.d.ts +7 -0
  137. package/commands/mcp/setup.js +52 -0
  138. package/commands/mcp/start.d.ts +3 -0
  139. package/commands/mcp/start.js +77 -0
  140. package/commands/mcp.d.ts +3 -0
  141. package/commands/mcp.js +26 -0
  142. package/commands/module/marketplace-validate.d.ts +6 -1
  143. package/commands/module/marketplace-validate.js +39 -29
  144. package/commands/module.d.ts +3 -1
  145. package/commands/module.js +23 -10
  146. package/commands/mv.d.ts +3 -7
  147. package/commands/mv.js +17 -11
  148. package/commands/open.d.ts +3 -7
  149. package/commands/open.js +17 -11
  150. package/commands/project/add.d.ts +5 -2
  151. package/commands/project/add.js +43 -80
  152. package/commands/project/cloneApp.d.ts +1 -1
  153. package/commands/project/cloneApp.js +2 -2
  154. package/commands/project/create.d.ts +2 -8
  155. package/commands/project/create.js +84 -55
  156. package/commands/project/deploy.d.ts +2 -0
  157. package/commands/project/deploy.js +67 -13
  158. package/commands/project/dev/deprecatedFlow.d.ts +8 -2
  159. package/commands/project/dev/deprecatedFlow.js +9 -1
  160. package/commands/project/dev/index.d.ts +1 -4
  161. package/commands/project/dev/index.js +88 -31
  162. package/commands/project/dev/unifiedFlow.d.ts +11 -2
  163. package/commands/project/dev/unifiedFlow.js +81 -41
  164. package/commands/project/listBuilds.js +2 -5
  165. package/commands/project/migrate.d.ts +1 -0
  166. package/commands/project/profile/add.d.ts +7 -0
  167. package/commands/project/profile/add.js +209 -0
  168. package/commands/project/profile/delete.d.ts +6 -0
  169. package/commands/project/profile/delete.js +123 -0
  170. package/commands/project/profile.d.ts +3 -0
  171. package/commands/project/profile.js +25 -0
  172. package/commands/project/upload.d.ts +1 -0
  173. package/commands/project/upload.js +22 -8
  174. package/commands/project/validate.d.ts +6 -0
  175. package/commands/project/validate.js +82 -0
  176. package/commands/project.js +4 -2
  177. package/commands/remove.d.ts +3 -7
  178. package/commands/remove.js +22 -22
  179. package/commands/sandbox/create.d.ts +4 -9
  180. package/commands/sandbox/create.js +18 -11
  181. package/commands/sandbox/delete.d.ts +4 -9
  182. package/commands/sandbox/delete.js +18 -11
  183. package/commands/sandbox.d.ts +3 -4
  184. package/commands/sandbox.js +18 -43
  185. package/commands/secret/addSecret.d.ts +4 -9
  186. package/commands/secret/addSecret.js +17 -10
  187. package/commands/secret/deleteSecret.d.ts +4 -9
  188. package/commands/secret/deleteSecret.js +17 -10
  189. package/commands/secret/listSecret.d.ts +4 -9
  190. package/commands/secret/listSecret.js +17 -10
  191. package/commands/secret/updateSecret.d.ts +4 -9
  192. package/commands/secret/updateSecret.js +17 -10
  193. package/commands/secret.d.ts +3 -4
  194. package/commands/secret.js +23 -48
  195. package/commands/testAccount/create.d.ts +6 -0
  196. package/commands/testAccount/create.js +100 -0
  197. package/commands/testAccount/createConfig.d.ts +10 -0
  198. package/commands/testAccount/createConfig.js +98 -0
  199. package/commands/testAccount/delete.d.ts +6 -0
  200. package/commands/testAccount/delete.js +48 -0
  201. package/commands/testAccount.d.ts +3 -0
  202. package/commands/testAccount.js +28 -0
  203. package/commands/theme/generate-selectors.d.ts +3 -7
  204. package/commands/theme/generate-selectors.js +20 -15
  205. package/commands/theme/marketplace-validate.d.ts +4 -9
  206. package/commands/theme/marketplace-validate.js +22 -17
  207. package/commands/theme/preview.d.ts +4 -9
  208. package/commands/theme/preview.js +32 -26
  209. package/commands/theme.d.ts +3 -4
  210. package/commands/theme.js +22 -47
  211. package/commands/upload.d.ts +12 -1
  212. package/commands/upload.js +116 -134
  213. package/commands/watch.d.ts +14 -1
  214. package/commands/watch.js +74 -75
  215. package/lang/en.d.ts +1135 -660
  216. package/lang/en.js +935 -471
  217. package/lang/en.lyaml +30 -213
  218. package/lib/accountTypes.js +1 -2
  219. package/lib/app/migrate.d.ts +23 -0
  220. package/lib/app/migrate.js +29 -6
  221. package/lib/app/migrate_legacy.js +7 -7
  222. package/lib/app/urls.d.ts +16 -0
  223. package/lib/app/urls.js +16 -0
  224. package/lib/commonOpts.d.ts +1 -3
  225. package/lib/commonOpts.js +1 -1
  226. package/lib/configMigrate.d.ts +2 -2
  227. package/lib/configMigrate.js +34 -55
  228. package/lib/configOptions.d.ts +4 -0
  229. package/lib/configOptions.js +41 -46
  230. package/lib/constants.d.ts +29 -0
  231. package/lib/constants.js +30 -1
  232. package/lib/dependencyManagement.d.ts +0 -5
  233. package/lib/dependencyManagement.js +13 -39
  234. package/lib/doctor/Doctor.js +3 -2
  235. package/lib/errorHandlers/index.js +7 -0
  236. package/lib/filesystem.d.ts +1 -1
  237. package/lib/generateSelectors.js +3 -5
  238. package/lib/interpolation.d.ts +2 -3
  239. package/lib/lang.d.ts +2 -3
  240. package/lib/marketplaceValidate.d.ts +12 -2
  241. package/lib/marketplaceValidate.js +22 -29
  242. package/lib/mcp/setup.d.ts +21 -0
  243. package/lib/mcp/setup.js +218 -0
  244. package/lib/middleware/autoUpdateMiddleware.d.ts +1 -0
  245. package/lib/middleware/autoUpdateMiddleware.js +89 -0
  246. package/lib/middleware/configMiddleware.js +23 -0
  247. package/lib/middleware/fireAlarmMiddleware.d.ts +2 -2
  248. package/lib/middleware/fireAlarmMiddleware.js +5 -3
  249. package/lib/npm.d.ts +9 -0
  250. package/lib/npm.js +36 -0
  251. package/lib/projectProfiles.d.ts +7 -0
  252. package/lib/projectProfiles.js +83 -0
  253. package/lib/projects/add/legacyAddComponent.d.ts +5 -0
  254. package/lib/projects/add/legacyAddComponent.js +48 -0
  255. package/lib/projects/add/v3AddComponent.d.ts +8 -0
  256. package/lib/projects/add/v3AddComponent.js +85 -0
  257. package/lib/projects/buildAndDeploy.js +18 -3
  258. package/lib/projects/components.d.ts +2 -0
  259. package/lib/projects/components.js +82 -0
  260. package/lib/projects/create/index.d.ts +23 -0
  261. package/lib/projects/create/index.js +33 -0
  262. package/lib/projects/create/legacy.d.ts +6 -0
  263. package/lib/projects/{create.js → create/legacy.js} +20 -11
  264. package/lib/projects/create/v3.d.ts +27 -0
  265. package/lib/projects/create/v3.js +158 -0
  266. package/lib/projects/localDev/AppDevModeInterface.d.ts +30 -0
  267. package/lib/projects/localDev/AppDevModeInterface.js +215 -0
  268. package/lib/projects/localDev/DevServerManagerV2.d.ts +11 -22
  269. package/lib/projects/localDev/DevServerManagerV2.js +19 -15
  270. package/lib/projects/localDev/LocalDevLogger.d.ts +30 -0
  271. package/lib/projects/localDev/LocalDevLogger.js +159 -0
  272. package/lib/projects/localDev/LocalDevManager.js +12 -5
  273. package/lib/projects/localDev/LocalDevProcess.d.ts +34 -0
  274. package/lib/projects/localDev/LocalDevProcess.js +201 -0
  275. package/lib/projects/localDev/LocalDevState.d.ts +50 -0
  276. package/lib/projects/localDev/LocalDevState.js +119 -0
  277. package/lib/projects/localDev/LocalDevWatcher.d.ts +10 -0
  278. package/lib/projects/localDev/LocalDevWatcher.js +53 -0
  279. package/lib/projects/localDev/LocalDevWebsocketServer.d.ts +20 -0
  280. package/lib/projects/localDev/LocalDevWebsocketServer.js +131 -0
  281. package/lib/projects/localDev/helpers.d.ts +3 -2
  282. package/lib/projects/localDev/helpers.js +32 -2
  283. package/lib/projects/upload.d.ts +5 -1
  284. package/lib/projects/upload.js +60 -20
  285. package/lib/projects/urls.d.ts +3 -0
  286. package/lib/projects/urls.js +17 -1
  287. package/lib/prompts/createApiSamplePrompt.d.ts +2 -10
  288. package/lib/prompts/createDeveloperTestAccountConfigPrompt.d.ts +17 -0
  289. package/lib/prompts/createDeveloperTestAccountConfigPrompt.js +96 -0
  290. package/lib/prompts/createProjectPrompt.d.ts +14 -5
  291. package/lib/prompts/createProjectPrompt.js +38 -13
  292. package/lib/prompts/createTemplatePrompt.d.ts +22 -4
  293. package/lib/prompts/installAppPrompt.d.ts +2 -0
  294. package/lib/prompts/installAppPrompt.js +45 -0
  295. package/lib/prompts/personalAccessKeyPrompt.js +35 -24
  296. package/lib/prompts/projectAddPrompt.d.ts +5 -1
  297. package/lib/prompts/projectAddPrompt.js +35 -7
  298. package/lib/prompts/projectDevTargetAccountPrompt.d.ts +6 -1
  299. package/lib/prompts/projectDevTargetAccountPrompt.js +6 -6
  300. package/lib/prompts/promptUtils.d.ts +4 -1
  301. package/lib/prompts/promptUtils.js +5 -1
  302. package/lib/prompts/selectAppPrompt.d.ts +2 -0
  303. package/lib/prompts/selectAppPrompt.js +40 -0
  304. package/lib/prompts/{selectPublicAppPrompt.d.ts → selectPublicAppForMigrationPrompt.d.ts} +1 -1
  305. package/lib/prompts/{selectPublicAppPrompt.js → selectPublicAppForMigrationPrompt.js} +8 -8
  306. package/lib/prompts/setAsDefaultAccountPrompt.js +10 -0
  307. package/lib/testUtils.d.ts +3 -3
  308. package/lib/testUtils.js +8 -9
  309. package/lib/ui/index.js +4 -1
  310. package/lib/upload.d.ts +1 -1
  311. package/lib/validation.js +4 -5
  312. package/lib/yargsUtils.d.ts +4 -0
  313. package/lib/yargsUtils.js +6 -0
  314. package/mcp-server/server.d.ts +1 -0
  315. package/mcp-server/server.js +18 -0
  316. package/mcp-server/tools/index.d.ts +2 -0
  317. package/mcp-server/tools/index.js +19 -0
  318. package/mcp-server/tools/project/AddFeatureToProject.d.ts +29 -0
  319. package/mcp-server/tools/project/AddFeatureToProject.js +85 -0
  320. package/mcp-server/tools/project/CreateProjectTool.d.ts +35 -0
  321. package/mcp-server/tools/project/CreateProjectTool.js +104 -0
  322. package/mcp-server/tools/project/DeployProject.d.ts +20 -0
  323. package/mcp-server/tools/project/DeployProject.js +50 -0
  324. package/mcp-server/tools/project/GuidedWalkthroughTool.d.ts +17 -0
  325. package/mcp-server/tools/project/GuidedWalkthroughTool.js +58 -0
  326. package/mcp-server/tools/project/UploadProjectTools.d.ts +17 -0
  327. package/mcp-server/tools/project/UploadProjectTools.js +35 -0
  328. package/mcp-server/tools/project/ValidateProjectTool.d.ts +17 -0
  329. package/mcp-server/tools/project/ValidateProjectTool.js +35 -0
  330. package/mcp-server/tools/project/constants.d.ts +3 -0
  331. package/mcp-server/tools/project/constants.js +13 -0
  332. package/mcp-server/types.d.ts +14 -0
  333. package/mcp-server/types.js +17 -0
  334. package/mcp-server/utils/command.d.ts +3 -0
  335. package/mcp-server/utils/command.js +16 -0
  336. package/mcp-server/utils/content.d.ts +3 -0
  337. package/mcp-server/utils/content.js +21 -0
  338. package/mcp-server/utils/project.d.ts +5 -0
  339. package/mcp-server/utils/project.js +17 -0
  340. package/package.json +24 -16
  341. package/types/Cms.d.ts +30 -0
  342. package/types/Cms.js +2 -0
  343. package/types/LocalDev.d.ts +35 -0
  344. package/types/LocalDev.js +2 -0
  345. package/types/Projects.d.ts +19 -2
  346. package/types/Prompts.d.ts +0 -7
  347. package/types/Yargs.d.ts +10 -1
  348. package/lib/projects/create.d.ts +0 -5
  349. package/lib/projects/localDev/LocalDevManagerV2.d.ts +0 -64
  350. package/lib/projects/localDev/LocalDevManagerV2.js +0 -345
  351. package/lib/prompts/installPublicAppPrompt.d.ts +0 -1
  352. package/lib/prompts/installPublicAppPrompt.js +0 -41
package/lang/en.d.ts CHANGED
@@ -1,16 +1,59 @@
1
1
  export declare const commands: {
2
2
  readonly generalErrors: {
3
- readonly updateNotify: {
4
- readonly notifyTitle: "Update available";
5
- readonly cmsUpdateNotification: (packageName: string | number, updateCommand: string | number) => string;
6
- readonly cliUpdateNotification: (currentVersion: string | number, latestVersion: string | number, updateCommand: string | number) => string;
7
- };
8
- readonly srcIsProject: (src: string | number, command: string | number) => string;
3
+ readonly srcIsProject: (src: string, command: string) => string;
9
4
  readonly handleDeprecatedEnvVariables: {
10
5
  readonly portalEnvVarDeprecated: "The HUBSPOT_PORTAL_ID environment variable is deprecated. Please use HUBSPOT_ACCOUNT_ID instead.";
11
6
  };
12
7
  readonly loadConfigMiddleware: {
13
- readonly configFileExists: (configPath: string | number) => string;
8
+ readonly configFileExists: (configPath: string) => string;
9
+ };
10
+ };
11
+ readonly getStarted: {
12
+ readonly options: {
13
+ readonly dest: {
14
+ readonly describe: "Directory where the project should be created";
15
+ };
16
+ readonly name: {
17
+ readonly describe: "Project name (cannot be changed)";
18
+ };
19
+ readonly templateSource: {
20
+ readonly describe: "Path to custom GitHub repository from which to create project template";
21
+ };
22
+ };
23
+ readonly startTitle: "Welcome to HubSpot Development!";
24
+ readonly verboseDescribe: "A step-by-step command to get you started with a HubSpot project.";
25
+ readonly startDescription: "You can use the HubSpot CLI to build apps, CMS themes, and more.";
26
+ readonly designManager: "To onboard with CMS, please visit the HubSpot Design Manager in your account and follow the checklist items.";
27
+ readonly openDesignManager: "Click here to go to the HubSpot Design Manager";
28
+ readonly openDesignManagerPrompt: "Open Design Manager in your browser?";
29
+ readonly openedDesignManager: "Redirected to Design Manager!";
30
+ readonly developerOverviewBrowserOpenPrep: "We'll take you to your HubSpot account and walk you through installing and previewing your new app.";
31
+ readonly openDeveloperOverviewPrompt: "Open HubSpot to go to your account?";
32
+ readonly openedDeveloperOverview: "HubSpot opened!";
33
+ readonly prompts: {
34
+ readonly selectOption: "Are you looking to build apps or CMS?";
35
+ readonly options: {
36
+ readonly app: "App";
37
+ readonly cms: "CMS";
38
+ };
39
+ readonly uploadProject: "Would you like to upload your project to HubSpot now?";
40
+ readonly appSelected: `We'll create a new project with a sample app for you.
41
+ Projects are what you can use to create apps, themes, and more at HubSpot.
42
+ Usually you'll use the ${string} command, but we'll go ahead and make one now.`;
43
+ readonly projectCreated: {
44
+ readonly title: string;
45
+ readonly description: `Upload your project to HubSpot - typically, you'll use the command ${string} for this.
46
+ We'll start the process now.`;
47
+ };
48
+ };
49
+ readonly logs: {
50
+ readonly uploadingProject: "Uploading your project to HubSpot...";
51
+ readonly uploadSuccess: "Project uploaded successfully!";
52
+ readonly developerOverviewLink: "Open this link to navigate to your HubSpot developer portal";
53
+ };
54
+ readonly errors: {
55
+ readonly uploadFailed: "Failed to upload project to HubSpot.";
56
+ readonly configFileNotFound: "Could not find project configuration for upload.";
14
57
  };
15
58
  };
16
59
  readonly completion: {
@@ -22,11 +65,32 @@ export declare const commands: {
22
65
  readonly account: {
23
66
  readonly describe: "Commands for managing configured accounts.";
24
67
  readonly subcommands: {
68
+ readonly auth: {
69
+ readonly describe: "Configure authentication for your HubSpot account.";
70
+ readonly verboseDescribe: `Configure authentication for a HubSpot account. This will create or update the global config file at ${string} that stores your account information.
71
+
72
+ The authentication method is ${string}, which is an access token tied to a specific user account.
73
+
74
+ Global configuration replaces hubspot.config.yml, and you will be prompted to migrate your existing config if one exists.`;
75
+ readonly options: {
76
+ readonly account: "HubSpot account to authenticate";
77
+ readonly personalAccessKey: "Enter existing personal access key";
78
+ };
79
+ readonly errors: {
80
+ readonly failedToUpdateConfig: "Failed to update the configuration file. Please try again.";
81
+ readonly migrationNotConfirmed: `Did not migrate your configuration file. Run ${string} to update your existing config, or use ${string} to switch to the new global configuration.`;
82
+ readonly mergeNotConfirmed: `Did not merge configuration files. When you are ready to merge the deprecated config file with the global config file, run ${string}.`;
83
+ };
84
+ readonly success: {
85
+ readonly configFileCreated: (configPath: string) => string;
86
+ readonly configFileUpdated: (accountId: number) => string;
87
+ };
88
+ };
25
89
  readonly list: {
26
90
  readonly accounts: `${string}:`;
27
- readonly defaultAccount: (account: string | number) => string;
91
+ readonly defaultAccount: (account: string) => string;
28
92
  readonly describe: "List names of accounts defined in config.";
29
- readonly configPath: (configPath: string | number) => string;
93
+ readonly configPath: (configPath: string) => string;
30
94
  readonly labels: {
31
95
  readonly accountId: "Account ID";
32
96
  readonly authType: "Auth Type";
@@ -44,13 +108,13 @@ export declare const commands: {
44
108
  };
45
109
  };
46
110
  readonly success: {
47
- readonly renamed: (name: string | number, newName: string | number) => string;
111
+ readonly renamed: (name: string, newName: string) => string;
48
112
  };
49
113
  };
50
114
  readonly use: {
51
115
  readonly describe: "Set the Hubspot account to use as the default account. The default account can be overridden with the \"--account\" option.";
52
116
  readonly errors: {
53
- readonly accountNotFound: (specifiedAccount: string | number, configPath: string | number) => string;
117
+ readonly accountNotFound: (specifiedAccount: string, configPath: string) => string;
54
118
  };
55
119
  readonly examples: {
56
120
  readonly default: "Select a HubSpot account to use as the default account";
@@ -64,7 +128,7 @@ export declare const commands: {
64
128
  };
65
129
  readonly promptMessage: "Select an account to use as the default";
66
130
  readonly success: {
67
- readonly defaultAccountUpdated: (accountName: string | number) => string;
131
+ readonly defaultAccountUpdated: (accountName: string) => string;
68
132
  };
69
133
  };
70
134
  readonly remove: {
@@ -76,7 +140,7 @@ export declare const commands: {
76
140
  readonly selectAccountToRemove: "Select an account to remove from the config";
77
141
  };
78
142
  readonly errors: {
79
- readonly accountNotFound: (specifiedAccount: string | number, configPath: string | number) => string;
143
+ readonly accountNotFound: (specifiedAccount: string, configPath: string) => string;
80
144
  };
81
145
  readonly examples: {
82
146
  readonly default: "Select a HubSpot account to remove from the config";
@@ -89,11 +153,11 @@ export declare const commands: {
89
153
  };
90
154
  readonly promptMessage: "Select an account to remove";
91
155
  readonly success: {
92
- readonly accountRemoved: (accountName: string | number) => string;
156
+ readonly accountRemoved: (accountName: string) => string;
93
157
  };
94
158
  };
95
159
  readonly info: {
96
- readonly accountId: (accountId: string | number) => string;
160
+ readonly accountId: (accountId: string) => string;
97
161
  readonly describe: "Print information about the default account, or about the account specified with the \"account\" option.";
98
162
  readonly errors: {
99
163
  readonly notUsingPersonalAccessKey: "This command currently only supports fetching scopes for the personal access key auth type.";
@@ -103,7 +167,7 @@ export declare const commands: {
103
167
  readonly idBased: "Print information for the account with accountId equal to \"1234567\"";
104
168
  readonly nameBased: "Print information for the account in the config with name equal to \"MyAccount\"";
105
169
  };
106
- readonly name: (name: string | number) => string;
170
+ readonly name: (name: string) => string;
107
171
  readonly scopeGroups: `${string}:`;
108
172
  };
109
173
  readonly clean: {
@@ -114,40 +178,58 @@ export declare const commands: {
114
178
  };
115
179
  readonly inactiveAccountsFound: {
116
180
  readonly one: "1 inactive account found:";
117
- readonly other: (count: string | number) => string;
181
+ readonly other: (count: string) => string;
118
182
  };
119
183
  readonly confirm: {
120
184
  readonly one: "Remove 1 inactive account from the CLI config?";
121
- readonly other: (count: string | number) => string;
185
+ readonly other: (count: string) => string;
122
186
  };
123
- readonly removeSuccess: (accountName: string | number) => string;
187
+ readonly removeSuccess: (accountName: string) => string;
124
188
  };
125
189
  };
126
190
  };
127
191
  readonly auth: {
128
- readonly describe: (configName: string | number) => string;
192
+ readonly describe: (configName: string) => string;
129
193
  readonly errors: {
130
194
  readonly noConfigFileFound: "No config file was found. To create a new config file, use the \"hs init\" command.";
131
- readonly unsupportedAuthType: (type: string | number, supportedProtocols: string | number) => string;
195
+ readonly unsupportedAuthType: (type: string, supportedProtocols: string) => string;
132
196
  };
133
197
  readonly options: {
134
198
  readonly authType: {
135
199
  readonly describe: "Authentication mechanism";
136
- readonly defaultDescription: (authMethod: string | number) => string;
200
+ readonly defaultDescription: (authMethod: string) => string;
137
201
  };
138
202
  readonly account: {
139
203
  readonly describe: "HubSpot account to authenticate";
140
204
  };
205
+ readonly personalAccessKey: {
206
+ readonly describe: "Enter existing personal access key";
207
+ };
141
208
  };
142
209
  readonly success: {
143
- readonly configFileUpdated: (accountName: string | number, configFilename: string | number, authType: string | number) => string;
210
+ readonly configFileUpdated: (accountName: string, configFilename: string, authType: string) => string;
144
211
  };
145
212
  };
146
213
  readonly config: {
147
214
  readonly describe: "Commands for managing the CLI config file.";
148
215
  readonly subcommands: {
216
+ readonly migrate: {
217
+ readonly describe: `Migrate from the deprecated hubspot.config.yml file to the new global config file at ${string}.`;
218
+ readonly verboseDescribe: "This command will create or update the global configuration file in your root directory. It will archive the current config as archived.hubspot.config.yml.";
219
+ readonly errors: {
220
+ readonly noConfigToMigrate: "No hubspot.config.yml was found. There is nothing to migrate.";
221
+ readonly configNotFound: (configPath: string) => string;
222
+ };
223
+ readonly options: {
224
+ readonly force: "Bypass prompts and overwrite any conflicting values in the global config with the deprecated config values.";
225
+ };
226
+ readonly examples: {
227
+ readonly default: `Migrate from the deprecated hubspot.config.yml file to the new global config file at ${string}`;
228
+ readonly configFlag: `Migrate a specific config file (specified with the config flag) to the new global config file at ${string}`;
229
+ };
230
+ };
149
231
  readonly set: {
150
- readonly describe: "Set various configuration options within the hubspot.config.yml file.";
232
+ readonly describe: "Set various configuration options within the hubspot CLI config file.";
151
233
  readonly promptMessage: "Select a config option to update";
152
234
  readonly examples: {
153
235
  readonly default: "Opens a prompt to select a config item to modify";
@@ -155,23 +237,15 @@ export declare const commands: {
155
237
  readonly options: {
156
238
  readonly defaultMode: {
157
239
  readonly describe: "Set the default CMS publish mode";
158
- readonly promptMessage: "Select CMS publish mode to be used as the default";
159
- readonly error: (validModes: string | number) => string;
160
- readonly success: (mode: string | number) => string;
161
240
  };
162
241
  readonly allowUsageTracking: {
163
242
  readonly describe: "Enable or disable usage tracking";
164
- readonly promptMessage: "Choose to enable or disable usage tracking";
165
- readonly success: (isEnabled: string | number) => string;
166
- readonly labels: {
167
- readonly enabled: "Enabled";
168
- readonly disabled: "Disabled";
169
- };
170
243
  };
171
244
  readonly httpTimeout: {
172
245
  readonly describe: "Set the http timeout duration";
173
- readonly promptMessage: "Enter http timeout duration";
174
- readonly success: (timeout: string | number) => string;
246
+ };
247
+ readonly allowAutoUpdates: {
248
+ readonly describe: "Enable or disable auto updates";
175
249
  };
176
250
  };
177
251
  };
@@ -188,8 +262,8 @@ export declare const commands: {
188
262
  readonly info: {
189
263
  readonly promptMessage: "Select a theme to score";
190
264
  readonly fetchingThemes: "Fetching available themes";
191
- readonly generatingScore: (theme: string | number) => string;
192
- readonly targetDeviceNote: (target: string | number) => string;
265
+ readonly generatingScore: (theme: string) => string;
266
+ readonly targetDeviceNote: (target: string) => string;
193
267
  readonly verboseOptionNote: "Theme scores are averages of all theme templates. Use the [--verbose] option to include individual template scores.";
194
268
  readonly pageTemplateScoreTitle: "Page template scores";
195
269
  readonly lighthouseLinksTitle: "Lighthouse links";
@@ -198,7 +272,7 @@ export declare const commands: {
198
272
  readonly errors: {
199
273
  readonly targetOptionRequired: "[--target] is required for detailed view";
200
274
  readonly invalidTargetOption: "[--target] can only be used for detailed view";
201
- readonly themeNotFound: (theme: string | number) => string;
275
+ readonly themeNotFound: (theme: string) => string;
202
276
  readonly failedToFetchThemes: "Failed to fetch available themes. Try running again with the [--theme] option";
203
277
  readonly failedToGetLighthouseScore: "Failed to generate a Google Lighthouse score";
204
278
  };
@@ -226,21 +300,21 @@ export declare const commands: {
226
300
  };
227
301
  };
228
302
  readonly success: {
229
- readonly moduleDownloaded: (moduleName: string | number, path: string | number) => string;
303
+ readonly moduleDownloaded: (moduleName: string, path: string) => string;
230
304
  };
231
305
  readonly errors: {
232
- readonly pathExists: (path: string | number) => string;
306
+ readonly pathExists: (path: string) => string;
233
307
  readonly invalidName: "Module not found with that name, please check the spelling of the module you are trying to download.";
234
308
  };
235
309
  };
236
310
  };
237
311
  };
238
312
  readonly create: {
239
- readonly describe: (supportedAssetTypes: string | number) => string;
313
+ readonly describe: (supportedAssetTypes: string) => string;
240
314
  readonly errors: {
241
- readonly deprecatedAssetType: (assetType: string | number, newCommand: string | number, type: string | number) => string;
242
- readonly unsupportedAssetType: (assetType: string | number, supportedAssetTypes: string | number) => string;
243
- readonly unusablePath: (path: string | number) => string;
315
+ readonly deprecatedAssetType: (assetType: string, newCommand: string, type: string) => string;
316
+ readonly unsupportedAssetType: (assetType: string, supportedAssetTypes: string) => string;
317
+ readonly unusablePath: (path: string) => string;
244
318
  };
245
319
  readonly positionals: {
246
320
  readonly dest: {
@@ -255,16 +329,16 @@ export declare const commands: {
255
329
  };
256
330
  readonly subcommands: {
257
331
  readonly apiSample: {
258
- readonly folderOverwritePrompt: (folderName: string | number) => string;
332
+ readonly folderOverwritePrompt: (folderName: string) => string;
259
333
  readonly errors: {
260
334
  readonly nameRequired: "The \"name\" argument is required when creating an API Sample.";
261
335
  readonly noSamples: "Currently there are no samples available. Please try again later.";
262
336
  };
263
337
  readonly info: {
264
- readonly sampleChosen: (sampleType: string | number, sampleLanguage: string | number) => string;
338
+ readonly sampleChosen: (sampleType: string, sampleLanguage: string) => string;
265
339
  };
266
340
  readonly success: {
267
- readonly sampleCreated: (filePath: string | number) => string;
341
+ readonly sampleCreated: (filePath: string) => string;
268
342
  };
269
343
  };
270
344
  readonly module: {
@@ -288,7 +362,7 @@ export declare const commands: {
288
362
  readonly describe: "Create custom object instances.";
289
363
  readonly errors: {
290
364
  readonly invalidObjectDefinition: "The object definition is invalid. Please check the schema and try again.";
291
- readonly creationFailed: (definition: string | number) => string;
365
+ readonly creationFailed: (definition: string) => string;
292
366
  };
293
367
  readonly options: {
294
368
  readonly path: {
@@ -313,7 +387,7 @@ export declare const commands: {
313
387
  readonly describe: "Create a custom object schema.";
314
388
  readonly errors: {
315
389
  readonly invalidSchema: "The schema definition is invalid. Please check the schema and try again.";
316
- readonly creationFailed: (definition: string | number) => string;
390
+ readonly creationFailed: (definition: string) => string;
317
391
  };
318
392
  readonly options: {
319
393
  readonly definition: {
@@ -321,14 +395,14 @@ export declare const commands: {
321
395
  };
322
396
  };
323
397
  readonly success: {
324
- readonly schemaCreated: (accountId: string | number) => string;
325
- readonly schemaViewable: (url: string | number) => string;
398
+ readonly schemaCreated: (accountId: string) => string;
399
+ readonly schemaViewable: (url: string) => string;
326
400
  };
327
401
  };
328
402
  readonly delete: {
329
403
  readonly describe: "Delete a custom object schema.";
330
404
  readonly errors: {
331
- readonly delete: (name: string | number) => string;
405
+ readonly delete: (name: string) => string;
332
406
  };
333
407
  readonly examples: {
334
408
  readonly default: "Delete \"schemaName\" schema";
@@ -344,10 +418,10 @@ export declare const commands: {
344
418
  };
345
419
  };
346
420
  readonly success: {
347
- readonly delete: (name: string | number) => string;
421
+ readonly delete: (name: string) => string;
348
422
  };
349
- readonly confirmDelete: (name: string | number) => string;
350
- readonly deleteCancelled: (name: string | number) => string;
423
+ readonly confirmDelete: (name: string) => string;
424
+ readonly deleteCancelled: (name: string) => string;
351
425
  readonly selectSchema: "Which schema would you like to delete?";
352
426
  };
353
427
  readonly fetchAll: {
@@ -365,14 +439,14 @@ export declare const commands: {
365
439
  };
366
440
  };
367
441
  readonly success: {
368
- readonly fetch: (path: string | number) => string;
442
+ readonly fetch: (path: string) => string;
369
443
  };
370
444
  readonly inputDest: "Where would you like to save the schemas?";
371
445
  };
372
446
  readonly fetch: {
373
447
  readonly describe: "Fetch a custom object schema.";
374
448
  readonly errors: {
375
- readonly fetch: (name: string | number) => string;
449
+ readonly fetch: (name: string) => string;
376
450
  };
377
451
  readonly examples: {
378
452
  readonly default: "Fetch \"schemaId\" schema and put it in the current working directory";
@@ -389,8 +463,8 @@ export declare const commands: {
389
463
  readonly selectSchema: "Which schema would you like to fetch?";
390
464
  readonly inputDest: "What would you like to name the destination file?";
391
465
  readonly success: {
392
- readonly save: (name: string | number, path: string | number) => string;
393
- readonly savedToPath: (path: string | number) => string;
466
+ readonly save: (name: string, path: string) => string;
467
+ readonly savedToPath: (path: string) => string;
394
468
  };
395
469
  };
396
470
  readonly list: {
@@ -403,7 +477,7 @@ export declare const commands: {
403
477
  readonly describe: "Update an existing custom object schema.";
404
478
  readonly errors: {
405
479
  readonly invalidSchema: "The schema definition is invalid. Please check the schema and try again.";
406
- readonly update: (definition: string | number) => string;
480
+ readonly update: (definition: string) => string;
407
481
  };
408
482
  readonly options: {
409
483
  readonly path: {
@@ -416,8 +490,8 @@ export declare const commands: {
416
490
  };
417
491
  };
418
492
  readonly success: {
419
- readonly update: (accountId: string | number) => string;
420
- readonly viewAtUrl: (url: string | number) => string;
493
+ readonly update: (accountId: string) => string;
494
+ readonly viewAtUrl: (url: string) => string;
421
495
  };
422
496
  readonly selectSchema: "Which schema would you like to update?";
423
497
  };
@@ -432,9 +506,9 @@ export declare const commands: {
432
506
  };
433
507
  readonly errors: {
434
508
  readonly generatingDiagnosis: "Error generating diagnosis";
435
- readonly unableToWriteOutputFile: (file: string | number, errorMessage: string | number) => string;
509
+ readonly unableToWriteOutputFile: (file: string, errorMessage: string) => string;
436
510
  };
437
- readonly outputWritten: (filename: string | number) => string;
511
+ readonly outputWritten: (filename: string) => string;
438
512
  };
439
513
  readonly fetch: {
440
514
  readonly describe: "Fetch a file, directory or module from HubSpot and write to a path on your computer.";
@@ -484,13 +558,13 @@ export declare const commands: {
484
558
  readonly describe: "Upload a folder or file to the File Manager.";
485
559
  readonly errors: {
486
560
  readonly destinationRequired: "A destination path needs to be passed";
487
- readonly fileIgnored: (path: string | number) => string;
488
- readonly invalidPath: (path: string | number) => string;
489
- readonly upload: (src: string | number, dest: string | number) => string;
561
+ readonly fileIgnored: (path: string) => string;
562
+ readonly invalidPath: (path: string) => string;
563
+ readonly upload: (src: string, dest: string) => string;
490
564
  readonly uploadingFailed: "Uploading failed";
491
565
  };
492
566
  readonly logs: {
493
- readonly uploading: (src: string | number, dest: string | number, accountId: string | number) => string;
567
+ readonly uploading: (src: string, dest: string, accountId: string) => string;
494
568
  };
495
569
  readonly positionals: {
496
570
  readonly dest: {
@@ -501,8 +575,8 @@ export declare const commands: {
501
575
  };
502
576
  };
503
577
  readonly success: {
504
- readonly upload: (src: string | number, dest: string | number, accountId: string | number) => string;
505
- readonly uploadComplete: (dest: string | number) => string;
578
+ readonly upload: (src: string, dest: string, accountId: string) => string;
579
+ readonly uploadComplete: (dest: string) => string;
506
580
  };
507
581
  };
508
582
  };
@@ -512,25 +586,25 @@ export declare const commands: {
512
586
  readonly subcommands: {
513
587
  readonly deploy: {
514
588
  readonly debug: {
515
- readonly startingBuildAndDeploy: (functionPath: string | number) => string;
589
+ readonly startingBuildAndDeploy: (functionPath: string) => string;
516
590
  };
517
591
  readonly errors: {
518
- readonly buildError: (details: string | number) => string;
519
- readonly noPackageJson: (functionPath: string | number) => string;
520
- readonly notFunctionsFolder: (functionPath: string | number) => string;
592
+ readonly buildError: (details: string) => string;
593
+ readonly noPackageJson: (functionPath: string) => string;
594
+ readonly notFunctionsFolder: (functionPath: string) => string;
521
595
  };
522
596
  readonly examples: {
523
597
  readonly default: "Build and deploy a new bundle for all functions within the myFunctionFolder.functions folder";
524
598
  };
525
- readonly loading: (functionPath: string | number, account: string | number) => string;
526
- readonly loadingFailed: (functionPath: string | number, account: string | number) => string;
599
+ readonly loading: (functionPath: string, account: string) => string;
600
+ readonly loadingFailed: (functionPath: string, account: string) => string;
527
601
  readonly positionals: {
528
602
  readonly path: {
529
603
  readonly describe: "Path to the \".functions\" folder";
530
604
  };
531
605
  };
532
606
  readonly success: {
533
- readonly deployed: (functionPath: string | number, accountId: string | number, buildTimeSeconds: string | number) => string;
607
+ readonly deployed: (functionPath: string, accountId: string, buildTimeSeconds: string) => string;
534
608
  };
535
609
  };
536
610
  readonly list: {
@@ -549,7 +623,7 @@ export declare const commands: {
549
623
  };
550
624
  readonly server: {
551
625
  readonly debug: {
552
- readonly startingServer: (functionPath: string | number) => string;
626
+ readonly startingServer: (functionPath: string) => string;
553
627
  };
554
628
  readonly examples: {
555
629
  readonly default: "Run a local function test server.";
@@ -582,9 +656,9 @@ export declare const commands: {
582
656
  readonly clear: {
583
657
  readonly describe: "Clear all rows in a HubDB table.";
584
658
  readonly logs: {
585
- readonly removedRows: (deletedRowCount: string | number, tableId: string | number) => string;
586
- readonly rowCount: (tableId: string | number, rowCount: string | number) => string;
587
- readonly tableEmpty: (tableId: string | number) => string;
659
+ readonly removedRows: (deletedRowCount: string, tableId: string) => string;
660
+ readonly rowCount: (tableId: string, rowCount: string) => string;
661
+ readonly tableEmpty: (tableId: string) => string;
588
662
  };
589
663
  readonly positionals: {
590
664
  readonly tableId: {
@@ -596,7 +670,7 @@ export declare const commands: {
596
670
  readonly describe: "Create a HubDB table.";
597
671
  readonly enterPath: "[--path] Enter the local path to the file used for import:";
598
672
  readonly errors: {
599
- readonly create: (filePath: string | number) => string;
673
+ readonly create: (filePath: string) => string;
600
674
  readonly pathRequired: "A path to a local file with a HubDB schema is required to create a HubDB table";
601
675
  readonly invalidCharacters: "The selected file path contains invalid characters. Please provide a new path and try again.";
602
676
  };
@@ -606,14 +680,14 @@ export declare const commands: {
606
680
  };
607
681
  };
608
682
  readonly success: {
609
- readonly create: (tableId: string | number, accountId: string | number, rowCount: string | number) => string;
683
+ readonly create: (tableId: string, accountId: string, rowCount: string) => string;
610
684
  };
611
685
  };
612
686
  readonly delete: {
613
687
  readonly describe: "Delete a HubDB table.";
614
- readonly shouldDeleteTable: (tableId: string | number) => string;
688
+ readonly shouldDeleteTable: (tableId: string) => string;
615
689
  readonly errors: {
616
- readonly delete: (tableId: string | number) => string;
690
+ readonly delete: (tableId: string) => string;
617
691
  };
618
692
  readonly positionals: {
619
693
  readonly tableId: {
@@ -626,7 +700,7 @@ export declare const commands: {
626
700
  };
627
701
  };
628
702
  readonly success: {
629
- readonly delete: (tableId: string | number, accountId: string | number) => string;
703
+ readonly delete: (tableId: string, accountId: string) => string;
630
704
  };
631
705
  };
632
706
  readonly fetch: {
@@ -640,17 +714,32 @@ export declare const commands: {
640
714
  };
641
715
  };
642
716
  readonly success: {
643
- readonly fetch: (tableId: string | number, path: string | number) => string;
717
+ readonly fetch: (tableId: string, path: string) => string;
718
+ };
719
+ };
720
+ readonly list: {
721
+ readonly tables: `${string}:`;
722
+ readonly describe: "List HubDB tables.";
723
+ readonly labels: {
724
+ readonly label: "Label";
725
+ readonly id: "ID";
726
+ readonly name: "Name";
727
+ readonly columns: "Columns";
728
+ readonly rows: "Rows";
644
729
  };
730
+ readonly success: (accountId: number) => string;
731
+ readonly noTables: (accountId: number) => string;
732
+ readonly tablesDisplayed: (displayed: number, total: number, truncated?: number) => string;
733
+ readonly viewTablesLink: (baseUrl: string, accountId: number) => string;
645
734
  };
646
735
  };
647
736
  };
648
737
  readonly init: {
649
- readonly describe: (configName: string | number) => string;
738
+ readonly describe: (configName: string) => string;
650
739
  readonly options: {
651
740
  readonly authType: {
652
741
  readonly describe: "Authentication mechanism";
653
- readonly defaultDescription: (authMethod: string | number) => string;
742
+ readonly defaultDescription: (authMethod: string) => string;
654
743
  };
655
744
  readonly account: {
656
745
  readonly describe: "HubSpot account to authenticate";
@@ -660,20 +749,20 @@ export declare const commands: {
660
749
  };
661
750
  };
662
751
  readonly success: {
663
- readonly configFileCreated: (configPath: string | number) => string;
664
- readonly configFileUpdated: (account: string | number, authType: string | number) => string;
752
+ readonly configFileCreated: (configPath: string) => string;
753
+ readonly configFileUpdated: (account: string, authType: string) => string;
665
754
  };
666
755
  readonly logs: {
667
756
  readonly updateConfig: "To update an existing config file, use the \"hs auth\" command.";
668
757
  };
669
758
  readonly errors: {
670
- readonly configFileExists: (configPath: string | number) => string;
671
- readonly bothConfigFilesNotAllowed: (path: string | number) => string;
759
+ readonly configFileExists: (configPath: string) => string;
760
+ readonly bothConfigFilesNotAllowed: (path: string) => string;
672
761
  };
673
762
  };
674
763
  readonly lint: {
675
- readonly issuesFound: (count: string | number) => string;
676
- readonly groupName: (path: string | number) => string;
764
+ readonly issuesFound: (count: string) => string;
765
+ readonly groupName: (path: string) => string;
677
766
  readonly positionals: {
678
767
  readonly path: {
679
768
  readonly describe: "Local folder to lint";
@@ -682,8 +771,8 @@ export declare const commands: {
682
771
  };
683
772
  readonly list: {
684
773
  readonly describe: "List remote contents of a directory.";
685
- readonly gettingPathContents: (path: string | number) => string;
686
- readonly noFilesFoundAtPath: (path: string | number) => string;
774
+ readonly gettingPathContents: (path: string) => string;
775
+ readonly noFilesFoundAtPath: (path: string) => string;
687
776
  readonly positionals: {
688
777
  readonly path: {
689
778
  readonly describe: "Remote directory to list contents";
@@ -693,7 +782,7 @@ export declare const commands: {
693
782
  readonly logs: {
694
783
  readonly describe: "View logs for a CMS serverless function.";
695
784
  readonly errors: {
696
- readonly noLogsFound: (functionPath: string | number, accountId: string | number) => string;
785
+ readonly noLogsFound: (functionPath: string, accountId: string) => string;
697
786
  };
698
787
  readonly examples: {
699
788
  readonly default: "Get 5 most recent logs for function residing at /_hcms/api/my-endpoint";
@@ -701,7 +790,7 @@ export declare const commands: {
701
790
  readonly limit: "Get 10 most recent logs for function residing at /_hcms/api/my-endpoint";
702
791
  };
703
792
  readonly endpointPrompt: "Enter a serverless function endpoint:";
704
- readonly gettingLogs: (latest: string | number, functionPath: string | number) => string;
793
+ readonly gettingLogs: (latest: string, functionPath: string) => string;
705
794
  readonly options: {
706
795
  readonly compact: {
707
796
  readonly describe: "output compact logs";
@@ -721,15 +810,65 @@ export declare const commands: {
721
810
  readonly describe: "Serverless function endpoint";
722
811
  };
723
812
  };
724
- readonly tailLogs: (functionPath: string | number, accountId: string | number) => string;
813
+ readonly tailLogs: (functionPath: string, accountId: string) => string;
814
+ };
815
+ readonly mcp: {
816
+ readonly describe: "Commands for managing HubSpot MCP servers";
817
+ readonly setup: {
818
+ readonly installingDocSearch: "Adding the docs-search mcp server";
819
+ readonly claudeCode: "Claude Code";
820
+ readonly claudeDesktop: "Claude Desktop";
821
+ readonly cursor: "Cursor";
822
+ readonly windsurf: "Windsurf";
823
+ readonly args: {
824
+ readonly client: "Target applications to configure";
825
+ readonly docsSearch: "Should the docs search mcp server be installed";
826
+ };
827
+ readonly success: (derivedTargets: string[]) => string;
828
+ readonly errors: {
829
+ readonly needsNode20: "This feature requires node >=20";
830
+ };
831
+ readonly spinners: {
832
+ readonly failedToConfigure: "Failed to configure the HubSpot mcp server.";
833
+ readonly configuringClaudeDesktop: "Configuring Claude Desktop...";
834
+ readonly configuredClaudeDesktop: "Configured Claude Desktop";
835
+ readonly configuringClaudeCode: "Configuring Claude Code...";
836
+ readonly configuredClaudeCode: "Configured Claude Code";
837
+ readonly claudeCodeNotFound: "Claude Code not found - skipping configuration";
838
+ readonly claudeCodeInstallFailed: "Claude Code CLI not working - skipping configuration";
839
+ readonly failedToConfigureClaudeDesktop: "Failed to configure Claude Desktop";
840
+ readonly configuringCursor: "Configuring Cursor...";
841
+ readonly failedToConfigureCursor: "Failed to configure Cursor";
842
+ readonly configuredCursor: "Configured Cursor";
843
+ readonly alreadyInstalled: "HubSpot CLI mcp server already installed, reinstalling";
844
+ readonly configuringWindsurf: "Configuring Windsurf...";
845
+ readonly failedToConfigureWindsurf: "Failed to configure Windsurf";
846
+ readonly configuredWindsurf: "Configured Windsurf";
847
+ };
848
+ readonly prompts: {
849
+ readonly targets: "[--client] Which tools would you like to add the HubSpot CLI MCP server to?";
850
+ readonly targetsRequired: "Must choose at least one application to configure.";
851
+ };
852
+ };
853
+ readonly start: {
854
+ readonly errors: {
855
+ readonly needsNode20: "This feature requires node >=20";
856
+ readonly serverFileNotFound: (serverPath: string) => string;
857
+ readonly failedToStart: "Failed to start MCP server";
858
+ };
859
+ readonly startingServer: "Starting HubSpot CLI MCP server...";
860
+ readonly stopInstructions: "Press Ctrl+C to stop the server";
861
+ readonly stoppedSuccessfully: "Stopped successfully.";
862
+ readonly shuttingDown: "Shutting down MCP server...";
863
+ };
725
864
  };
726
865
  readonly mv: {
727
866
  readonly describe: "Move a remote file or folder in HubSpot. This feature is currently in beta and the CLI contract is subject to change.";
728
867
  readonly errors: {
729
- readonly sourcePathExists: (srcPath: string | number, destPath: string | number) => string;
730
- readonly moveFailed: (srcPath: string | number, destPath: string | number, accountId: string | number) => string;
868
+ readonly sourcePathExists: (srcPath: string, destPath: string) => string;
869
+ readonly moveFailed: (srcPath: string, destPath: string, accountId: string) => string;
731
870
  };
732
- readonly move: (srcPath: string | number, destPath: string | number, accountId: string | number) => string;
871
+ readonly move: (srcPath: string, destPath: string, accountId: string) => string;
733
872
  };
734
873
  readonly open: {
735
874
  readonly describe: "Open a HubSpot page in your browser.";
@@ -746,23 +885,105 @@ export declare const commands: {
746
885
  readonly selectLink: "Select a link to open";
747
886
  };
748
887
  readonly project: {
888
+ readonly profile: {
889
+ readonly describe: "Commands for managing project profiles";
890
+ readonly verboseDescribe: `Commands for managing project profiles
891
+
892
+ Profiles are stored at the root of your project's source directory and they make configuration dynamic. Use them to couple specialized configurations of your project to specific HubSpot accounts.
893
+
894
+ Run ${string} to get started!`;
895
+ readonly add: {
896
+ readonly describe: "Add a new project profile";
897
+ readonly verboseDescribe: `Add a new project profile
898
+
899
+ Profiles enable you to reference variables in your component configuration files. Use the syntax ${string} to reference profile variables in your component configuration files. Then target the profile using the ${string} flag when you upload your project.`;
900
+ readonly example: "Add a new project profile named hsprofile.qa.json";
901
+ readonly logs: {
902
+ readonly copyExistingProfile: (profileName: string) => string;
903
+ readonly copyExistingProfiles: "We can copy the variables from one of your existing profiles into your new profile.";
904
+ readonly profileAdded: (profileName: string) => string;
905
+ };
906
+ readonly prompts: {
907
+ readonly namePrompt: "Enter a name for the new project profile: ";
908
+ readonly emptyName: "Profile name cannot be empty";
909
+ readonly targetAccountPrompt: "[target-account] Select a target account for this profile";
910
+ readonly copyExistingProfilePrompt: "Select a profile to copy variables from";
911
+ readonly copyExistingProfilePromptEmpty: "Skip (don't copy any variables)";
912
+ readonly invalidProfileName: "Profile name cannot contain special characters or spaces";
913
+ };
914
+ readonly warnings: {
915
+ readonly duplicateTargetAccount: (targetAccountId: number) => string;
916
+ };
917
+ readonly errors: {
918
+ readonly noProjectConfig: "No project config found. Please run this command from a project directory.";
919
+ readonly profileExists: (profileName: string) => string;
920
+ readonly invalidTargetAccount: "Target account is not configured in the CLI";
921
+ readonly noAccountsConfigured: "No accounts configured in the CLI";
922
+ readonly failedToLoadProfile: (profileName: string) => string;
923
+ readonly failedToCreateProfile: "Failed to create profile";
924
+ };
925
+ readonly positionals: {
926
+ readonly name: "The name of the project profile";
927
+ };
928
+ readonly options: {
929
+ readonly targetAccount: "The target account ID for this profile";
930
+ };
931
+ };
932
+ readonly delete: {
933
+ readonly describe: "Delete an existing project profile";
934
+ readonly example: "Delete a project profile named hsprofile.qa.json";
935
+ readonly logs: {
936
+ readonly profileDeleted: (profileName: string) => string;
937
+ readonly deletedProject: (accountId: number) => string;
938
+ readonly didNotDeleteProject: (accountId: number) => string;
939
+ };
940
+ readonly debug: {
941
+ readonly failedToLoadProfile: (profileName: string) => string;
942
+ };
943
+ readonly prompts: {
944
+ readonly deleteProfilePrompt: "Select a profile to delete from your project";
945
+ readonly deleteProjectPrompt: (accountId: number) => string;
946
+ };
947
+ readonly errors: {
948
+ readonly noProjectConfig: "No project config found. Please run this command from a project directory.";
949
+ readonly noProfileFound: (profileName: string) => string;
950
+ readonly noProfilesFound: "No profiles found in your project.";
951
+ readonly failedToDeleteProfile: (profileName: string) => string;
952
+ };
953
+ readonly positionals: {
954
+ readonly name: "The name of the project profile";
955
+ };
956
+ };
957
+ };
749
958
  readonly dev: {
750
959
  readonly describe: "Start local dev for the current project.";
751
960
  readonly logs: {
752
961
  readonly betaMessage: "HubSpot projects local development";
753
962
  readonly placeholderAccountSelection: "Using default account as target account (for now)";
754
963
  readonly learnMoreLocalDevServer: "Learn more about the projects local dev server";
964
+ 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.";
965
+ readonly learnMoreMessage: `
966
+ Visit our ${string} to learn more.`;
755
967
  };
756
968
  readonly errors: {
757
969
  readonly noProjectConfig: "No project detected. Please run this command again from a project directory.";
758
- readonly noAccount: (accountId: string | number, authCommand: string | number) => string;
759
- readonly noAccountsInConfig: (authCommand: string | number) => string;
970
+ readonly noAccount: (accountId: number) => string;
971
+ readonly noAccountsInConfig: (authCommand: string) => string;
760
972
  readonly invalidProjectComponents: "Projects cannot contain both private and public apps. Move your apps to separate projects before attempting local development.";
761
- readonly noRunnableComponents: (command: string | number) => string;
973
+ 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.`;
974
+ readonly accountNotCombined: `
975
+ Local development of unified apps is currently only compatible with accounts that are opted into the unified apps beta. Make sure that this account is opted in or switch accounts using ${string}.`;
976
+ readonly unsupportedAccountFlagLegacy: "The --projectAccount and --testingAccount flags are not supported for projects with platform versions earlier than 2025.2.";
977
+ readonly unsupportedAccountFlagV3: "The --account flag is is not supported supported for projects with platform versions 2025.2 and newer. Use --testingAccount and --projectAccount flags to specify accounts to use for local dev";
762
978
  };
763
979
  readonly examples: {
764
980
  readonly default: "Start local dev for the current project";
765
981
  };
982
+ readonly options: {
983
+ readonly profile: "The profile to target during local dev";
984
+ readonly projectAccount: "The id of the account to upload your project to. Only compatible with platform versions 2025.2 and above.";
985
+ readonly testingAccount: "The id of the account to install apps and test on. Only compatible with platform versions 2025.2 and above.";
986
+ };
766
987
  };
767
988
  readonly create: {
768
989
  readonly describe: "Create a new project.";
@@ -770,11 +991,17 @@ export declare const commands: {
770
991
  readonly failedToDownloadProject: "Failed to download project. Please try again later.";
771
992
  readonly invalidTemplateSource: "Invalid template source provided. Use the format <Owner>/<Repo> and try again.";
772
993
  readonly failedToFetchProjectList: "Failed to fetch the list of available project templates. Please try again later.";
773
- readonly cannotNestProjects: (projectDir: string | number) => string;
994
+ readonly cannotNestProjects: (projectDir: string) => string;
774
995
  };
775
996
  readonly logs: {
776
- readonly success: (projectName: string | number, projectDest: string | number) => string;
777
- readonly welcomeMessage: "Welcome to HubSpot Developer Projects!";
997
+ readonly success: (projectName: string, projectDest: string) => string;
998
+ readonly welcomeMessage: `
999
+ ${string}`;
1000
+ };
1001
+ readonly prompts: {
1002
+ readonly parentComponents: "[--project-base] What would you like in your project?";
1003
+ readonly emptyProject: "Empty Project";
1004
+ readonly app: "App";
778
1005
  };
779
1006
  readonly examples: {
780
1007
  readonly default: "Create a new project";
@@ -793,6 +1020,21 @@ export declare const commands: {
793
1020
  readonly templateSource: {
794
1021
  readonly describe: "Path to custom GitHub repository from which to create project template";
795
1022
  };
1023
+ readonly platformVersion: {
1024
+ readonly describe: "The target platform version for the new project.";
1025
+ };
1026
+ readonly projectBase: {
1027
+ readonly describe: "The top level component to include in the project.";
1028
+ };
1029
+ readonly distribution: {
1030
+ readonly describe: "How the app will be distributed.";
1031
+ };
1032
+ readonly auth: {
1033
+ readonly describe: "Authentication model for the application.";
1034
+ };
1035
+ readonly features: {
1036
+ readonly describe: "Features to include in the project. Only valid if project-base is app";
1037
+ };
796
1038
  };
797
1039
  };
798
1040
  readonly migrateApp: {
@@ -815,7 +1057,7 @@ export declare const commands: {
815
1057
  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.";
816
1058
  readonly link: "Learn more about migrating apps to the projects framework";
817
1059
  };
818
- readonly deprecationWarning: (oldCommand: string | number, newCommand: string | number) => string;
1060
+ readonly deprecationWarning: (oldCommand: string, newCommand: string) => string;
819
1061
  readonly migrationStatus: {
820
1062
  readonly inProgress: () => string;
821
1063
  readonly success: () => string;
@@ -838,7 +1080,7 @@ export declare const commands: {
838
1080
  readonly preamble: (platformVersion: string) => string;
839
1081
  readonly describe: "Migrate an existing project to the new version of the projects framework.";
840
1082
  readonly errors: {
841
- readonly noProjectConfig: (command: string | number) => string;
1083
+ readonly noProjectConfig: (command: string) => string;
842
1084
  };
843
1085
  readonly examples: {
844
1086
  readonly default: "Migrate an existing project to the new version of the projects framework.";
@@ -860,13 +1102,13 @@ export declare const commands: {
860
1102
  readonly cloneStatus: {
861
1103
  readonly inProgress: () => string;
862
1104
  readonly done: "Cloning app configuration to public-app.json component definition ... DONE";
863
- readonly success: (dest: string | number) => string;
1105
+ readonly success: (dest: string) => string;
864
1106
  readonly failure: "Cloning app configuration to public-app.json component definition ... FAILED";
865
1107
  };
866
1108
  readonly errors: {
867
1109
  readonly invalidAccountTypeTitle: () => string;
868
- readonly invalidAccountTypeDescription: (useCommand: string | number, authCommand: string | number) => string;
869
- readonly couldNotWriteConfigPath: (configPath: string | number) => string;
1110
+ readonly invalidAccountTypeDescription: (useCommand: string, authCommand: string) => string;
1111
+ readonly couldNotWriteConfigPath: (configPath: string) => string;
870
1112
  };
871
1113
  };
872
1114
  readonly add: {
@@ -878,11 +1120,23 @@ export declare const commands: {
878
1120
  readonly type: {
879
1121
  readonly describe: "The path to the component type's location within the hubspot-project-components Github repo: https://github.com/HubSpot/hubspot-project-components";
880
1122
  };
1123
+ readonly distribution: {
1124
+ readonly describe: "The distribution method for the application.";
1125
+ };
1126
+ readonly auth: {
1127
+ readonly describe: "The authentication type for the application.";
1128
+ };
1129
+ readonly features: {
1130
+ readonly describe: "Which features to include with the application.";
1131
+ };
881
1132
  };
882
- readonly creatingComponent: (projectName: string | number) => string;
883
- readonly success: (componentName: string | number) => string;
1133
+ readonly creatingComponent: (projectName: string) => string;
1134
+ readonly success: (componentName: string, multiple?: boolean) => string;
884
1135
  readonly error: {
885
1136
  readonly failedToDownloadComponent: "Failed to download project component. Please try again later.";
1137
+ readonly maxExceeded: (maxCount: number) => string;
1138
+ readonly authTypeNotAllowed: (authType: string) => string;
1139
+ readonly distributionNotAllowed: (dist: string) => string;
886
1140
  readonly locationInProject: "This command must be run from within a project directory.";
887
1141
  readonly failedToFetchComponentList: "Failed to fetch the list of available components. Please try again later.";
888
1142
  readonly projectContainsPublicApp: "This project contains a public app. This command is currently only compatible with projects that contain private apps.";
@@ -896,15 +1150,15 @@ export declare const commands: {
896
1150
  readonly describe: "Deploy a project build.";
897
1151
  readonly deployBuildIdPrompt: "[--build] Deploy which build?";
898
1152
  readonly debug: {
899
- readonly deploying: (path: string | number) => string;
1153
+ readonly deploying: (path: string) => string;
900
1154
  };
901
1155
  readonly errors: {
902
- readonly deploy: (details: string | number) => string;
1156
+ readonly deploy: (details: string) => string;
903
1157
  readonly noBuilds: "Deploy error: no builds for this project were found.";
904
1158
  readonly noBuildId: "You must specify a build to deploy";
905
- readonly projectNotFound: (projectName: string | number, accountIdentifier: string | number, command: string | number) => string;
906
- readonly buildIdDoesNotExist: (buildId: string | number, projectName: string | number, linkToProject: string | number) => string;
907
- readonly buildAlreadyDeployed: (buildId: string | number, linkToProject: string | number) => string;
1159
+ readonly projectNotFound: (projectName: string, accountIdentifier: string, command: string) => string;
1160
+ readonly buildIdDoesNotExist: (buildId: string, projectName: string, linkToProject: string) => string;
1161
+ readonly buildAlreadyDeployed: (buildId: string, linkToProject: string) => string;
908
1162
  readonly viewProjectsBuilds: "View project builds in HubSpot";
909
1163
  };
910
1164
  readonly examples: {
@@ -924,11 +1178,11 @@ export declare const commands: {
924
1178
  readonly describe: "List the project's builds.";
925
1179
  readonly continueOrExitPrompt: "Press <enter> to load more, or ctrl+c to exit";
926
1180
  readonly viewAllBuildsLink: "View all builds";
927
- readonly showingNextBuilds: (count: string | number, projectName: string | number) => string;
928
- readonly showingRecentBuilds: (count: string | number, projectName: string | number, viewAllBuildsLink: string | number) => string;
1181
+ readonly showingNextBuilds: (count: string, projectName: string) => string;
1182
+ readonly showingRecentBuilds: (count: number, projectName: string, viewAllBuildsLink: string) => string;
929
1183
  readonly errors: {
930
1184
  readonly noBuilds: "No builds for this project were found.";
931
- readonly projectNotFound: (projectName: string | number) => string;
1185
+ readonly projectNotFound: (projectName: string) => string;
932
1186
  };
933
1187
  readonly options: {
934
1188
  readonly project: {
@@ -951,15 +1205,15 @@ export declare const commands: {
951
1205
  readonly noFunctionsInProject: `There aren't any functions in this project
952
1206
  \t- Run ${string} to learn more about logs
953
1207
  \t- ${string} to learn more about serverless functions`;
954
- readonly noFunctionWithName: (name: string | number) => string;
955
- readonly functionNotDeployed: (name: string | number) => string;
1208
+ readonly noFunctionWithName: (name: string) => string;
1209
+ readonly functionNotDeployed: (name: string) => string;
956
1210
  readonly projectLogsManagerNotInitialized: "Function called on ProjectLogsManager before initialization";
957
1211
  readonly generic: "Error fetching logs";
958
1212
  };
959
1213
  readonly logs: {
960
1214
  readonly showingLogs: "Showing logs for:";
961
1215
  readonly hubspotLogsDirectLink: "View function logs in HubSpot";
962
- readonly noLogsFound: (name: string | number) => string;
1216
+ readonly noLogsFound: (name: string) => string;
963
1217
  };
964
1218
  readonly table: {
965
1219
  readonly accountHeader: "Account";
@@ -997,10 +1251,10 @@ export declare const commands: {
997
1251
  readonly default: "Upload a project into your HubSpot account";
998
1252
  };
999
1253
  readonly logs: {
1000
- readonly buildSucceeded: (buildId: string | number) => string;
1254
+ readonly buildSucceeded: (buildId: string) => string;
1001
1255
  readonly readyToGoLive: "🚀 Ready to take your project live?";
1002
- readonly runCommand: (command: string | number) => string;
1003
- readonly autoDeployDisabled: (deployCommand: string | number) => string;
1256
+ readonly runCommand: (command: string) => string;
1257
+ readonly autoDeployDisabled: (deployCommand: string) => string;
1004
1258
  };
1005
1259
  readonly errors: {
1006
1260
  readonly projectLockedError: () => string;
@@ -1023,10 +1277,10 @@ export declare const commands: {
1023
1277
  readonly processExited: "Stopping watcher...";
1024
1278
  readonly watchCancelledFromUi: `The watch process has been cancelled from the UI. Any changes made since cancelling have not been uploaded. To resume watching, rerun ${string}.`;
1025
1279
  readonly resuming: "Resuming watcher...";
1026
- readonly uploadSucceeded: (remotePath: string | number, filePath: string | number) => string;
1027
- readonly deleteFileSucceeded: (remotePath: string | number) => string;
1028
- readonly deleteFolderSucceeded: (remotePath: string | number) => string;
1029
- readonly watching: (projectDir: string | number) => string;
1280
+ readonly uploadSucceeded: (remotePath: string, filePath: string) => string;
1281
+ readonly deleteFileSucceeded: (remotePath: string) => string;
1282
+ readonly deleteFolderSucceeded: (remotePath: string) => string;
1283
+ readonly watching: (projectDir: string) => string;
1030
1284
  readonly previousStagingBuildCancelled: "Killed the previous watch process. Please try running `hs project watch` again";
1031
1285
  };
1032
1286
  readonly options: {
@@ -1037,18 +1291,18 @@ export declare const commands: {
1037
1291
  readonly debug: {
1038
1292
  readonly pause: "Pausing watcher, attempting to queue build";
1039
1293
  readonly buildStarted: "Build queued.";
1040
- readonly extensionNotAllowed: (filePath: string | number) => string;
1041
- readonly ignored: (filePath: string | number) => string;
1042
- readonly uploading: (filePath: string | number, remotePath: string | number) => string;
1294
+ readonly extensionNotAllowed: (filePath: string) => string;
1295
+ readonly ignored: (filePath: string) => string;
1296
+ readonly uploading: (filePath: string, remotePath: string) => string;
1043
1297
  readonly attemptNewBuild: "Attempting to create a new build";
1044
- readonly fileAlreadyQueued: (filePath: string | number) => string;
1298
+ readonly fileAlreadyQueued: (filePath: string) => string;
1045
1299
  };
1046
1300
  readonly errors: {
1047
1301
  readonly projectConfigNotFound: "No project config found. Please ensure that you are in a project directory.";
1048
1302
  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.`;
1049
- readonly uploadFailed: (remotePath: string | number, filePath: string | number) => string;
1050
- readonly deleteFileFailed: (remotePath: string | number) => string;
1051
- readonly deleteFolderFailed: (remotePath: string | number) => string;
1303
+ readonly uploadFailed: (remotePath: string, filePath: string) => string;
1304
+ readonly deleteFileFailed: (remotePath: string) => string;
1305
+ readonly deleteFolderFailed: (remotePath: string) => string;
1052
1306
  };
1053
1307
  };
1054
1308
  readonly download: {
@@ -1058,11 +1312,11 @@ export declare const commands: {
1058
1312
  };
1059
1313
  readonly logs: {
1060
1314
  readonly downloadCancelled: "Cancelling project download";
1061
- readonly downloadSucceeded: (buildId: string | number, projectName: string | number) => string;
1315
+ readonly downloadSucceeded: (buildId: string, projectName: string) => string;
1062
1316
  };
1063
1317
  readonly errors: {
1064
1318
  readonly downloadFailed: "Something went wrong downloading the project";
1065
- readonly projectNotFound: (projectName: string | number, accountId: string | number) => string;
1319
+ readonly projectNotFound: (projectName: string, accountId: string) => string;
1066
1320
  };
1067
1321
  readonly warnings: {
1068
1322
  readonly cannotDownloadWithinProject: "Cancelling project download. Please run the command again outside the context of an existing project.";
@@ -1089,25 +1343,13 @@ export declare const commands: {
1089
1343
  readonly examples: {
1090
1344
  readonly default: "Opens the projects page for the specified account";
1091
1345
  };
1092
- readonly success: (projectName: string | number) => string;
1346
+ readonly success: (projectName: string) => string;
1093
1347
  };
1094
1348
  readonly feedback: {
1095
- readonly describe: "Leave feedback on HubSpot projects or file a bug report.";
1096
- readonly feedbackType: {
1097
- readonly prompt: "What type of feedback would you like to leave?";
1098
- readonly bug: "[--bug] Report a bug";
1099
- readonly general: "[--general] Tell us about your experience with HubSpot's developer tools";
1100
- };
1101
- readonly openPrompt: "Create a Github issue in your browser?";
1102
- readonly success: (url: string | number) => string;
1103
- readonly options: {
1104
- readonly bug: {
1105
- readonly describe: "Open Github issues in your browser to report a bug.";
1106
- };
1107
- readonly general: {
1108
- readonly describe: "Open Github issues in your browser to give feedback.";
1109
- };
1110
- };
1349
+ readonly describe: "Leave feedback or file a bug report.";
1350
+ readonly openPrompt: "Open the feedback form in your browser?";
1351
+ readonly success: (url: string) => string;
1352
+ readonly error: (url: string) => string;
1111
1353
  };
1112
1354
  readonly installDeps: {
1113
1355
  readonly help: {
@@ -1117,25 +1359,37 @@ export declare const commands: {
1117
1359
  };
1118
1360
  readonly installLocationPrompt: "Choose the project components to install the dependencies:";
1119
1361
  readonly installLocationPromptRequired: "You must choose at least one subcomponent";
1120
- readonly installingDependencies: (directory: string | number) => string;
1121
- readonly installationSuccessful: (directory: string | number) => string;
1122
- readonly addingDependenciesToLocation: (dependencies: string | number, directory: string | number) => string;
1123
- readonly installingDependenciesFailed: (directory: string | number) => string;
1362
+ readonly installingDependencies: (directory: string) => string;
1363
+ readonly installationSuccessful: (directory: string) => string;
1364
+ readonly addingDependenciesToLocation: (dependencies: string, directory: string) => string;
1365
+ readonly installingDependenciesFailed: (directory: string) => string;
1124
1366
  readonly noProjectConfig: "No project detected. Run this command from a project directory.";
1125
- readonly noPackageJsonInProject: (projectName: string | number, link: string | number) => string;
1126
- readonly packageManagerNotInstalled: (packageManager: string | number, link: string | number) => string;
1367
+ readonly noPackageJsonInProject: (projectName: string, link: string) => string;
1368
+ readonly packageManagerNotInstalled: (packageManager: string, link: string) => string;
1369
+ };
1370
+ readonly validate: {
1371
+ readonly describe: "Validate the project before uploading";
1372
+ readonly mustBeRanWithinAProject: "This command must be run from within a project directory.";
1373
+ readonly badVersion: "This command is only available for projects 2025.2 and later.";
1374
+ readonly examples: {
1375
+ readonly default: "Validate the project before uploading";
1376
+ };
1377
+ readonly success: (projectName: string) => string;
1378
+ readonly options: {
1379
+ readonly profile: {
1380
+ readonly describe: "The profile to target for this validation";
1381
+ };
1382
+ };
1127
1383
  };
1128
1384
  };
1129
1385
  readonly remove: {
1130
- readonly describe: "Delete a file or folder from HubSpot.";
1131
- readonly deleted: (path: string | number, accountId: string | number) => string;
1386
+ readonly describe: "Delete a file or folder from the HubSpot CMS.";
1387
+ readonly deleted: (path: string, accountId: number) => string;
1132
1388
  readonly errors: {
1133
- readonly deleteFailed: (path: string | number, accountId: string | number) => string;
1389
+ readonly deleteFailed: (path: string, accountId: number) => string;
1134
1390
  };
1135
1391
  readonly positionals: {
1136
- readonly path: {
1137
- readonly describe: "Remote hubspot path";
1138
- };
1392
+ readonly path: "Remote hubspot path";
1139
1393
  };
1140
1394
  };
1141
1395
  readonly sandbox: {
@@ -1144,39 +1398,39 @@ export declare const commands: {
1144
1398
  readonly create: {
1145
1399
  readonly developer: {
1146
1400
  readonly loading: {
1147
- readonly add: (accountName: string | number) => string;
1148
- readonly fail: (accountName: string | number) => string;
1149
- readonly succeed: (accountName: string | number, accountId: string | number) => string;
1401
+ readonly add: (accountName: string) => string;
1402
+ readonly fail: (accountName: string) => string;
1403
+ readonly succeed: (accountName: string, accountId: string) => string;
1150
1404
  };
1151
1405
  readonly success: {
1152
- readonly configFileUpdated: (accountName: string | number, authType: string | number) => string;
1406
+ readonly configFileUpdated: (accountName: string, authType: string) => string;
1153
1407
  };
1154
1408
  readonly failure: {
1155
- readonly invalidUser: (accountName: string | number, parentAccountName: string | number) => string;
1156
- readonly limit: (accountName: string | number, limit: string | number) => string;
1157
- readonly alreadyInConfig: (accountName: string | number, limit: string | number) => string;
1409
+ readonly invalidUser: (accountName: string, parentAccountName: string) => string;
1410
+ readonly limit: (accountName: string, limit: string) => string;
1411
+ readonly alreadyInConfig: (accountName: string, limit: string) => string;
1158
1412
  readonly scopes: {
1159
1413
  readonly message: "The personal access key you provided doesn't include developer sandbox permissions.";
1160
- readonly instructions: (accountName: string | number, url: string | number) => string;
1414
+ readonly instructions: (accountName: string, url: string) => string;
1161
1415
  };
1162
1416
  };
1163
1417
  };
1164
1418
  readonly standard: {
1165
1419
  readonly loading: {
1166
- readonly add: (accountName: string | number) => string;
1167
- readonly fail: (accountName: string | number) => string;
1168
- readonly succeed: (accountName: string | number, accountId: string | number) => string;
1420
+ readonly add: (accountName: string) => string;
1421
+ readonly fail: (accountName: string) => string;
1422
+ readonly succeed: (accountName: string, accountId: string) => string;
1169
1423
  };
1170
1424
  readonly success: {
1171
- readonly configFileUpdated: (accountName: string | number, authType: string | number) => string;
1425
+ readonly configFileUpdated: (accountName: string, authType: string) => string;
1172
1426
  };
1173
1427
  readonly failure: {
1174
- readonly invalidUser: (accountName: string | number, parentAccountName: string | number) => string;
1175
- readonly limit: (accountName: string | number, limit: string | number) => string;
1176
- readonly alreadyInConfig: (accountName: string | number, limit: string | number) => string;
1428
+ readonly invalidUser: (accountName: string, parentAccountName: string) => string;
1429
+ readonly limit: (accountName: string, limit: string) => string;
1430
+ readonly alreadyInConfig: (accountName: string, limit: string) => string;
1177
1431
  readonly scopes: {
1178
1432
  readonly message: "The personal access key you provided doesn't include standard sandbox permissions.";
1179
- readonly instructions: (accountName: string | number, url: string | number) => string;
1433
+ readonly instructions: (accountName: string, url: string) => string;
1180
1434
  };
1181
1435
  };
1182
1436
  };
@@ -1184,28 +1438,28 @@ export declare const commands: {
1184
1438
  readonly delete: {
1185
1439
  readonly describe: "Delete a sandbox account.";
1186
1440
  readonly debug: {
1187
- readonly deleting: (account: string | number) => string;
1441
+ readonly deleting: (account: string) => string;
1188
1442
  readonly error: "Error deleting sandbox account:";
1189
1443
  };
1190
1444
  readonly examples: {
1191
1445
  readonly default: "Deletes the sandbox account named MySandboxAccount.";
1192
1446
  };
1193
- readonly confirm: (account: string | number) => string;
1194
- readonly defaultAccountWarning: (account: string | number) => string;
1447
+ readonly confirm: (account: string) => string;
1448
+ readonly defaultAccountWarning: (account: string) => string;
1195
1449
  readonly success: {
1196
- readonly delete: (account: string | number, sandboxHubId: string | number) => string;
1197
- readonly deleteDefault: (account: string | number, sandboxHubId: string | number) => string;
1198
- readonly configFileUpdated: (account: string | number, configFilename: string | number) => string;
1450
+ readonly delete: (account: string, sandboxHubId: string) => string;
1451
+ readonly deleteDefault: (account: string, sandboxHubId: string) => string;
1452
+ readonly configFileUpdated: (account: string, configFilename: string) => string;
1199
1453
  };
1200
1454
  readonly failure: {
1201
- readonly invalidUser: (accountName: string | number, parentAccountName: string | number) => string;
1455
+ readonly invalidUser: (accountName: string, parentAccountName: string) => string;
1202
1456
  readonly noAccount: "No account specified. Specify an account by using the --account flag.";
1203
- readonly noSandboxAccounts: (authCommand: string | number) => string;
1457
+ readonly noSandboxAccounts: (authCommand: string) => string;
1204
1458
  readonly noSandboxAccountId: "This sandbox can't be deleted from the CLI because we could not find the associated sandbox account.";
1205
- readonly noParentAccount: (authCommand: string | number) => string;
1206
- readonly objectNotFound: (account: string | number) => string;
1207
- readonly noParentPortalAvailable: (command: string | number, url: string | number) => string;
1208
- readonly invalidKey: (account: string | number, authCommand: string | number) => string;
1459
+ readonly noParentAccount: (authCommand: string) => string;
1460
+ readonly objectNotFound: (account: string) => string;
1461
+ readonly noParentPortalAvailable: (command: string, url: string) => string;
1462
+ readonly invalidKey: (account: string, authCommand: string) => string;
1209
1463
  };
1210
1464
  readonly options: {
1211
1465
  readonly force: {
@@ -1219,18 +1473,86 @@ export declare const commands: {
1219
1473
  };
1220
1474
  readonly sync: {
1221
1475
  readonly loading: {
1222
- readonly add: (accountName: string | number) => string;
1223
- readonly fail: (accountName: string | number) => string;
1224
- readonly succeed: (accountName: string | number) => string;
1476
+ readonly add: (accountName: string) => string;
1477
+ readonly fail: (accountName: string) => string;
1478
+ readonly succeed: (accountName: string) => string;
1225
1479
  };
1226
1480
  readonly success: {
1227
- readonly configFileUpdated: (accountName: string | number, authType: string | number) => string;
1481
+ readonly configFileUpdated: (accountName: string, authType: string) => string;
1228
1482
  };
1229
1483
  readonly failure: {
1230
- readonly invalidUser: (accountName: string | number, parentAccountName: string | number) => string;
1484
+ readonly invalidUser: (accountName: string, parentAccountName: string) => string;
1231
1485
  readonly scopes: {
1232
1486
  readonly message: "The personal access key you provided doesn't include sandbox sync permissions.";
1233
- readonly instructions: (accountName: string | number, url: string | number) => string;
1487
+ readonly instructions: (accountName: string, url: string) => string;
1488
+ };
1489
+ };
1490
+ };
1491
+ };
1492
+ readonly app: {
1493
+ readonly describe: "Commands for managing apps.";
1494
+ readonly subcommands: {
1495
+ readonly secret: {
1496
+ readonly describe: "Commands for managing secrets.";
1497
+ readonly subcommands: {
1498
+ readonly add: {
1499
+ readonly describe: "Create a new app secret.";
1500
+ readonly positionals: {
1501
+ readonly name: "Name of the secret";
1502
+ };
1503
+ readonly errors: {
1504
+ readonly noApps: `Please create a new app to add an app secret. Use ${string} to create a new project and begin the app creation process.`;
1505
+ };
1506
+ readonly options: {
1507
+ readonly app: "The app id to set the secret for";
1508
+ };
1509
+ readonly example: "Add a secret named \"my-secret\" to the app with ID 1234567890";
1510
+ readonly success: (appName: string, secretName: string) => string;
1511
+ };
1512
+ readonly delete: {
1513
+ readonly describe: "Delete an app secret.";
1514
+ readonly confirmDelete: (appName: string, secretName: string) => string;
1515
+ readonly deleteCanceled: "Delete canceled";
1516
+ readonly selectSecret: "Select the secret you want to delete";
1517
+ readonly errors: {
1518
+ readonly noSecrets: "No secrets found for the given app";
1519
+ };
1520
+ readonly positionals: {
1521
+ readonly name: "Name of the secret";
1522
+ };
1523
+ readonly options: {
1524
+ readonly app: "The app id to delete the secret for";
1525
+ readonly force: "Force the deletion without confirmation";
1526
+ };
1527
+ readonly example: "Delete a secret named \"my-secret\" from the app with ID 1234567890";
1528
+ readonly success: (appName: string, secretName: string) => string;
1529
+ };
1530
+ readonly list: {
1531
+ readonly describe: "List all app secrets.";
1532
+ readonly example: "List all secrets for the app with ID 1234567890";
1533
+ readonly options: {
1534
+ readonly app: "The app id to list the secrets for";
1535
+ };
1536
+ readonly errors: {
1537
+ readonly noSecrets: "No secrets found for the given app";
1538
+ };
1539
+ readonly success: (appName: string) => string;
1540
+ };
1541
+ readonly update: {
1542
+ readonly describe: "Update an app secret.";
1543
+ readonly selectSecret: "Select the secret you want to update";
1544
+ readonly errors: {
1545
+ readonly noSecrets: "No secrets found for the given app";
1546
+ };
1547
+ readonly positionals: {
1548
+ readonly name: "Name of the secret";
1549
+ };
1550
+ readonly options: {
1551
+ readonly app: "The app id to update the secret for";
1552
+ };
1553
+ readonly example: "Update a secret named \"my-secret\" for the app with ID 1234567890";
1554
+ readonly success: (appName: string, secretName: string) => string;
1555
+ };
1234
1556
  };
1235
1557
  };
1236
1558
  };
@@ -1241,8 +1563,8 @@ export declare const commands: {
1241
1563
  readonly add: {
1242
1564
  readonly describe: "Create a new secret.";
1243
1565
  readonly errors: {
1244
- readonly add: (secretName: string | number) => string;
1245
- readonly alreadyExists: (secretName: string | number, command: string | number) => string;
1566
+ readonly add: (secretName: string) => string;
1567
+ readonly alreadyExists: (secretName: string, command: string) => string;
1246
1568
  };
1247
1569
  readonly positionals: {
1248
1570
  readonly name: {
@@ -1250,17 +1572,17 @@ export declare const commands: {
1250
1572
  };
1251
1573
  };
1252
1574
  readonly success: {
1253
- readonly add: (secretName: string | number, accountIdentifier: string | number) => string;
1575
+ readonly add: (secretName: string, accountIdentifier: string) => string;
1254
1576
  };
1255
1577
  };
1256
1578
  readonly delete: {
1257
1579
  readonly describe: "Delete a secret.";
1258
1580
  readonly selectSecret: "Select the secret you want to delete";
1259
1581
  readonly deleteCanceled: "Delete canceled";
1260
- readonly confirmDelete: (secretName: string | number) => string;
1582
+ readonly confirmDelete: (secretName: string) => string;
1261
1583
  readonly errors: {
1262
- readonly delete: (secretName: string | number) => string;
1263
- readonly noSecret: (secretName: string | number) => string;
1584
+ readonly delete: (secretName: string) => string;
1585
+ readonly noSecret: (secretName: string) => string;
1264
1586
  };
1265
1587
  readonly positionals: {
1266
1588
  readonly name: {
@@ -1268,7 +1590,7 @@ export declare const commands: {
1268
1590
  };
1269
1591
  };
1270
1592
  readonly success: {
1271
- readonly delete: (secretName: string | number, accountIdentifier: string | number) => string;
1593
+ readonly delete: (secretName: string, accountIdentifier: string) => string;
1272
1594
  };
1273
1595
  };
1274
1596
  readonly list: {
@@ -1276,14 +1598,14 @@ export declare const commands: {
1276
1598
  readonly errors: {
1277
1599
  readonly list: "The secrets could not be listed";
1278
1600
  };
1279
- readonly groupLabel: (accountIdentifier: string | number) => string;
1601
+ readonly groupLabel: (accountIdentifier: string) => string;
1280
1602
  };
1281
1603
  readonly update: {
1282
1604
  readonly describe: "Update an existing secret.";
1283
1605
  readonly selectSecret: "Select the secret you want to update";
1284
1606
  readonly errors: {
1285
- readonly update: (secretName: string | number) => string;
1286
- readonly noSecret: (secretName: string | number) => string;
1607
+ readonly update: (secretName: string) => string;
1608
+ readonly noSecret: (secretName: string) => string;
1287
1609
  };
1288
1610
  readonly positionals: {
1289
1611
  readonly name: {
@@ -1291,7 +1613,7 @@ export declare const commands: {
1291
1613
  };
1292
1614
  };
1293
1615
  readonly success: {
1294
- readonly update: (secretName: string | number, accountIdentifier: string | number) => string;
1616
+ readonly update: (secretName: string, accountIdentifier: string) => string;
1295
1617
  readonly updateExplanation: "Existing serverless functions will start using this new value within 10 seconds.";
1296
1618
  };
1297
1619
  };
@@ -1303,31 +1625,29 @@ export declare const commands: {
1303
1625
  readonly generateSelectors: {
1304
1626
  readonly describe: "Automatically generates an editor-preview.json file for the given theme. The selectors this command generates are not perfect, so please edit editor-preview.json after running.";
1305
1627
  readonly errors: {
1306
- readonly invalidPath: (themePath: string | number) => string;
1628
+ readonly invalidPath: (themePath: string) => string;
1307
1629
  readonly fieldsNotFound: "Unable to find theme's fields.json.";
1308
1630
  readonly noSelectorsFound: "No selectors found.";
1309
1631
  };
1310
- readonly success: (themePath: string | number, selectorsPath: string | number) => string;
1632
+ readonly success: (themePath: string, selectorsPath: string) => string;
1311
1633
  readonly positionals: {
1312
- readonly path: {
1313
- readonly describe: "The path of the theme you'd like to generate an editor-preview.json for.";
1314
- };
1634
+ readonly path: "The path of the theme you'd like to generate an editor-preview.json for.";
1315
1635
  };
1316
1636
  };
1317
1637
  readonly marketplaceValidate: {
1318
1638
  readonly describe: "Validate a theme for the marketplace.";
1319
1639
  readonly errors: {
1320
- readonly invalidPath: (path: string | number) => string;
1640
+ readonly invalidPath: (path: string) => string;
1321
1641
  };
1322
1642
  readonly logs: {
1323
- readonly validatingTheme: (path: string | number) => string;
1643
+ readonly validatingTheme: (path: string) => string;
1324
1644
  };
1325
1645
  readonly results: {
1326
1646
  readonly required: "Required validation results:";
1327
1647
  readonly recommended: "Recommended validation results:";
1328
1648
  readonly warnings: {
1329
- readonly file: (file: string | number) => string;
1330
- readonly lineNumber: (line: string | number) => string;
1649
+ readonly file: (file: string) => string;
1650
+ readonly lineNumber: (line: string) => string;
1331
1651
  };
1332
1652
  readonly noErrors: "No errors";
1333
1653
  };
@@ -1340,27 +1660,18 @@ export declare const commands: {
1340
1660
  readonly preview: {
1341
1661
  readonly describe: "Upload and watch a theme directory on your computer for changes and start a local development server to preview theme changes on a site.";
1342
1662
  readonly errors: {
1343
- readonly invalidPath: (path: string | number) => string;
1663
+ readonly invalidPath: (path: string) => string;
1344
1664
  readonly noThemeComponents: "Your project has no theme components available to preview.";
1665
+ readonly uploadFailed: (src: string, dest: string) => string;
1345
1666
  };
1346
1667
  readonly positionals: {
1347
- readonly src: {
1348
- readonly describe: "Path to the local directory your theme is in, relative to your current working directory";
1349
- };
1350
- readonly dest: {
1351
- readonly describe: "Path in HubSpot Design Tools. Can be a net new path. If you wish to preview a site page using your theme changes it must match the path of the theme used by the site.";
1352
- };
1668
+ readonly src: "Path to the local directory your theme is in, relative to your current working directory";
1669
+ readonly dest: "Path in HubSpot Design Tools. Can be a net new path. If you wish to preview a site page using your theme changes it must match the path of the theme used by the site.";
1353
1670
  };
1354
1671
  readonly options: {
1355
- readonly notify: {
1356
- readonly describe: "Log to specified file when a watch task is triggered and after workers have gone idle. Ex. --notify path/to/file";
1357
- };
1358
- readonly noSsl: {
1359
- readonly describe: "Disable HTTPS";
1360
- };
1361
- readonly port: {
1362
- readonly describe: "The port on which to start the local server";
1363
- };
1672
+ readonly notify: "Log to specified file when a watch task is triggered and after workers have gone idle. Ex. --notify path/to/file";
1673
+ readonly noSsl: "Disable HTTPS";
1674
+ readonly port: "The port on which to start the local server";
1364
1675
  };
1365
1676
  readonly initialUploadProgressBar: {
1366
1677
  readonly start: "Starting...";
@@ -1379,29 +1690,22 @@ export declare const commands: {
1379
1690
  readonly marketplaceValidate: {
1380
1691
  readonly describe: "Validate a module for the marketplace. Make sure to include the suffix .module in the path to the module within the Design Manager.";
1381
1692
  readonly errors: {
1382
- readonly invalidPath: (path: string | number) => string;
1693
+ readonly invalidPath: (path: string) => string;
1383
1694
  };
1384
1695
  readonly logs: {
1385
- readonly validatingModule: (path: string | number) => string;
1386
- };
1387
- readonly options: {
1388
- readonly json: {
1389
- readonly describe: "Output raw json data";
1390
- };
1696
+ readonly validatingModule: (path: string) => string;
1391
1697
  };
1392
1698
  readonly results: {
1393
1699
  readonly required: "Required validation results:";
1394
1700
  readonly recommended: "Recommended validation results:";
1395
1701
  readonly warnings: {
1396
- readonly file: (file: string | number) => string;
1397
- readonly lineNumber: (line: string | number) => string;
1702
+ readonly file: (file: string) => string;
1703
+ readonly lineNumber: (line: string) => string;
1398
1704
  };
1399
1705
  readonly noErrors: "No errors";
1400
1706
  };
1401
1707
  readonly positionals: {
1402
- readonly src: {
1403
- readonly describe: "Path to the module within the Design Manager.";
1404
- };
1708
+ readonly src: "Path to the module within the Design Manager.";
1405
1709
  };
1406
1710
  };
1407
1711
  };
@@ -1410,90 +1714,58 @@ export declare const commands: {
1410
1714
  readonly describe: "Upload a folder or file from your computer to the HubSpot CMS.";
1411
1715
  readonly errors: {
1412
1716
  readonly destinationRequired: "A destination path needs to be passed";
1413
- readonly fileIgnored: (path: string | number) => string;
1414
- readonly invalidPath: (path: string | number) => string;
1415
- readonly uploadFailed: (src: string | number, dest: string | number) => string;
1416
- readonly someFilesFailed: (dest: string | number) => string;
1417
- readonly deleteFailed: (path: string | number, accountId: string | number) => string;
1717
+ readonly fileIgnored: (path: string) => string;
1718
+ readonly invalidPath: (path: string) => string;
1719
+ readonly uploadFailed: (src: string, dest: string) => string;
1720
+ readonly someFilesFailed: (dest: string) => string;
1721
+ readonly deleteFailed: (path: string, accountId: number) => string;
1418
1722
  };
1419
1723
  readonly options: {
1420
- readonly options: {
1421
- readonly describe: "Options to pass to javascript fields files";
1422
- };
1423
- readonly saveOutput: {
1424
- readonly describe: "If true, saves all output from javascript fields files as 'fields.output.json'.";
1425
- };
1426
- readonly convertFields: {
1427
- readonly describe: "If true, converts any javascript fields files contained in module folder or project root.";
1428
- };
1429
- readonly clean: {
1430
- readonly describe: "Will delete the destination directory and its contents before uploading. This will also clear the global content associated with any global partial templates and modules.";
1431
- };
1432
- readonly force: {
1433
- readonly describe: "Skips confirmation prompts when doing a clean upload.";
1434
- };
1724
+ readonly options: "Options to pass to javascript fields files";
1725
+ readonly saveOutput: "If true, saves all output from javascript fields files as 'fields.output.json'.";
1726
+ readonly convertFields: "If true, converts any javascript fields files contained in module folder or project root.";
1727
+ readonly clean: "Will delete the destination directory and its contents before uploading. This will also clear the global content associated with any global partial templates and modules.";
1728
+ readonly force: "Skips confirmation prompts when doing a clean upload.";
1435
1729
  };
1436
- readonly previewUrl: (previewUrl: string | number) => string;
1730
+ readonly previewUrl: (previewUrl: string) => string;
1437
1731
  readonly positionals: {
1438
- readonly src: {
1439
- readonly describe: "Path to the local file, relative to your current working directory.";
1440
- };
1441
- readonly dest: {
1442
- readonly describe: "Path in HubSpot Design Tools, can be a net new path.";
1443
- };
1732
+ readonly src: "Path to the local file, relative to your current working directory.";
1733
+ readonly dest: "Path in HubSpot Design Tools, can be a net new path.";
1444
1734
  };
1445
1735
  readonly success: {
1446
- readonly fileUploaded: (src: string | number, dest: string | number, accountId: string | number) => string;
1447
- readonly uploadComplete: (dest: string | number) => string;
1736
+ readonly fileUploaded: (src: string, dest: string, accountId: number) => string;
1737
+ readonly uploadComplete: (dest: string) => string;
1448
1738
  };
1449
- readonly uploading: (src: string | number, dest: string | number, accountId: string | number) => string;
1450
- readonly notUploaded: (src: string | number) => string;
1451
- readonly cleaning: (filePath: string | number, accountId: string | number) => string;
1452
- readonly confirmCleanUpload: (filePath: string | number, accountId: string | number) => string;
1739
+ readonly uploading: (src: string, dest: string, accountId: number) => string;
1740
+ readonly notUploaded: (src: string) => string;
1741
+ readonly cleaning: (filePath: string, accountId: number) => string;
1742
+ readonly confirmCleanUpload: (filePath: string, accountId: number) => string;
1453
1743
  };
1454
1744
  readonly watch: {
1455
1745
  readonly describe: "Watch a directory on your computer for changes and upload the changed files to the HubSpot CMS.";
1456
1746
  readonly errors: {
1457
- readonly folderFailed: (src: string | number, dest: string | number, accountId: string | number) => string;
1458
- readonly fileFailed: (file: string | number, dest: string | number, accountId: string | number) => string;
1747
+ readonly folderFailed: (src: string, dest: string, accountId: number) => string;
1748
+ readonly fileFailed: (file: string, dest: string, accountId: number) => string;
1459
1749
  readonly destinationRequired: "A destination directory needs to be passed";
1460
- readonly invalidPath: (path: string | number) => string;
1750
+ readonly invalidPath: (path: string) => string;
1461
1751
  };
1462
1752
  readonly options: {
1463
- readonly disableInitial: {
1464
- readonly describe: "Disable the initial upload when watching a directory (default)";
1465
- };
1466
- readonly initialUpload: {
1467
- readonly describe: "Upload directory before watching for updates";
1468
- };
1469
- readonly notify: {
1470
- readonly describe: "Log to specified file when a watch task is triggered and after workers have gone idle. Ex. --notify path/to/file";
1471
- };
1472
- readonly remove: {
1473
- readonly describe: "Will cause watch to delete files in your HubSpot account that are not found locally.";
1474
- };
1475
- readonly convertFields: {
1476
- readonly describe: "If true, converts any javascript fields files contained in module folder or project root.";
1477
- };
1478
- readonly saveOutput: {
1479
- readonly describe: "If true, saves all output from javascript fields files as 'fields.output.json'.";
1480
- };
1481
- readonly options: {
1482
- readonly describe: "Options to pass to javascript fields files";
1483
- };
1753
+ readonly disableInitial: "Disable the initial upload when watching a directory (default)";
1754
+ readonly initialUpload: "Upload directory before watching for updates";
1755
+ readonly notify: "Log to specified file when a watch task is triggered and after workers have gone idle. Ex. --notify path/to/file";
1756
+ readonly remove: "Will cause watch to delete files in your HubSpot account that are not found locally.";
1757
+ readonly convertFields: "If true, converts any javascript fields files contained in module folder or project root.";
1758
+ readonly saveOutput: "If true, saves all output from javascript fields files as 'fields.output.json'.";
1759
+ readonly options: "Options to pass to javascript fields files";
1484
1760
  };
1485
1761
  readonly positionals: {
1486
- readonly src: {
1487
- readonly describe: "Path to the local directory your files are in, relative to your current working directory";
1488
- };
1489
- readonly dest: {
1490
- readonly describe: "Path in HubSpot Design Tools. Can be a net new path";
1491
- };
1762
+ readonly src: "Path to the local directory your files are in, relative to your current working directory";
1763
+ readonly dest: "Path in HubSpot Design Tools. Can be a net new path";
1492
1764
  };
1493
1765
  readonly warnings: {
1494
- readonly disableInitial: () => string;
1495
- readonly initialUpload: () => string;
1496
- readonly notUploaded: (path: string | number) => string;
1766
+ readonly disableInitial: `Passing the "${string}" option is no longer necessary. Running "${string}" no longer uploads the watched directory by default.`;
1767
+ readonly initialUpload: `To upload the directory run "${string}" beforehand or add the "${string}" option when running "${string}".`;
1768
+ readonly notUploaded: (path: string) => string;
1497
1769
  };
1498
1770
  };
1499
1771
  readonly convertFields: {
@@ -1509,42 +1781,98 @@ export declare const commands: {
1509
1781
  };
1510
1782
  };
1511
1783
  readonly errors: {
1512
- readonly invalidPath: (path: string | number) => string;
1784
+ readonly invalidPath: (path: string) => string;
1513
1785
  readonly missingSrc: "Please specify the path to your javascript fields file or directory with the --src flag.";
1514
1786
  };
1515
1787
  };
1788
+ readonly testAccount: {
1789
+ readonly describe: "Commands for working with test accounts.";
1790
+ readonly create: {
1791
+ readonly describe: "Create a test account from a config file";
1792
+ readonly configPathPrompt: "[--config-path] Enter the path to the test account config: ";
1793
+ readonly createTestAccountFromConfigPrompt: "How would you like to create your test account?";
1794
+ readonly createFromConfigOption: "Create test account from config file";
1795
+ readonly createFromScratchOption: "Create test account from scratch";
1796
+ readonly errors: {
1797
+ readonly configFileNotFound: (configPath: string) => string;
1798
+ readonly configFileParseFailed: (configPath: string) => string;
1799
+ readonly failedToCreate: "Failed to create test account";
1800
+ };
1801
+ readonly success: {
1802
+ readonly configFileUpdated: (testAccountName: string, testAccountId: number) => string;
1803
+ };
1804
+ readonly options: {
1805
+ readonly configPath: "The path to the test account config";
1806
+ };
1807
+ readonly example: (configPath: string) => string;
1808
+ };
1809
+ readonly createConfig: {
1810
+ readonly describe: "Create a test account config file.";
1811
+ readonly pathPrompt: "[--path] What is the path to the test account config?";
1812
+ readonly errors: {
1813
+ readonly pathError: "Path is required";
1814
+ readonly pathFormatError: "Path must end with .json";
1815
+ readonly failedToCreate: "Failed to create test account config";
1816
+ readonly pathExistsError: "A file already exists at this path. Please try again with a different path.";
1817
+ };
1818
+ readonly success: {
1819
+ readonly configFileCreated: (path: string) => string;
1820
+ };
1821
+ readonly options: {
1822
+ readonly name: "The name of the test account";
1823
+ readonly description: "The description of the test account";
1824
+ readonly tiers: "The tiers of the test account";
1825
+ readonly path: "The path to the test account config";
1826
+ };
1827
+ readonly example: (name: string) => string;
1828
+ };
1829
+ readonly delete: {
1830
+ readonly describe: "Delete a test account config file.";
1831
+ readonly pathPrompt: "[--path] What is the path to the test account config?";
1832
+ readonly errors: {
1833
+ readonly failedToDelete: "Failed to delete test account";
1834
+ };
1835
+ readonly success: {
1836
+ readonly testAccountDeleted: (testAccountId: number) => string;
1837
+ };
1838
+ readonly positionals: {
1839
+ readonly testAccountId: "The id of the test account";
1840
+ };
1841
+ readonly example: (testAccountId: number) => string;
1842
+ };
1843
+ };
1516
1844
  readonly secrets: {
1517
1845
  readonly add: {
1518
1846
  readonly loading: {
1519
- readonly add: (secretName: string | number) => string;
1520
- readonly fail: (secretName: string | number) => string;
1521
- readonly succeed: (secretName: string | number) => string;
1847
+ readonly add: (secretName: string) => string;
1848
+ readonly fail: (secretName: string) => string;
1849
+ readonly succeed: (secretName: string) => string;
1522
1850
  };
1523
1851
  readonly success: {
1524
- readonly configFileUpdated: (secretName: string | number, authType: string | number) => string;
1852
+ readonly configFileUpdated: (secretName: string, authType: string) => string;
1525
1853
  };
1526
1854
  readonly failure: {
1527
- readonly invalidUser: (secretName: string | number, parentAccountName: string | number) => string;
1855
+ readonly invalidUser: (secretName: string, parentAccountName: string) => string;
1528
1856
  readonly scopes: {
1529
1857
  readonly message: "The personal access key you provided doesn't include secrets permissions.";
1530
- readonly instructions: (secretName: string | number, url: string | number) => string;
1858
+ readonly instructions: (secretName: string, url: string) => string;
1531
1859
  };
1532
1860
  };
1533
1861
  };
1534
1862
  readonly delete: {
1535
1863
  readonly loading: {
1536
- readonly add: (secretName: string | number) => string;
1537
- readonly fail: (secretName: string | number) => string;
1538
- readonly succeed: (secretName: string | number) => string;
1864
+ readonly add: (secretName: string) => string;
1865
+ readonly fail: (secretName: string) => string;
1866
+ readonly succeed: (secretName: string) => string;
1539
1867
  };
1540
1868
  readonly success: {
1541
- readonly configFileUpdated: (secretName: string | number, authType: string | number) => string;
1869
+ readonly configFileUpdated: (secretName: string, authType: string) => string;
1542
1870
  };
1543
1871
  readonly failure: {
1544
- readonly invalidUser: (secretName: string | number, parentAccountName: string | number) => string;
1872
+ readonly invalidUser: (secretName: string, parentAccountName: string) => string;
1545
1873
  readonly scopes: {
1546
1874
  readonly message: "The personal access key you provided doesn't include secrets permissions.";
1547
- readonly instructions: (secretName: string | number, url: string | number) => string;
1875
+ readonly instructions: (secretName: string, url: string) => string;
1548
1876
  };
1549
1877
  };
1550
1878
  };
@@ -1555,13 +1883,13 @@ export declare const commands: {
1555
1883
  readonly succeed: () => string;
1556
1884
  };
1557
1885
  readonly success: {
1558
- readonly configFileUpdated: (authType: string | number) => string;
1886
+ readonly configFileUpdated: (authType: string) => string;
1559
1887
  };
1560
1888
  readonly failure: {
1561
- readonly invalidUser: (parentAccountName: string | number) => string;
1889
+ readonly invalidUser: (parentAccountName: string) => string;
1562
1890
  readonly scopes: {
1563
1891
  readonly message: "The personal access key you provided doesn't include secrets permissions.";
1564
- readonly instructions: (url: string | number) => string;
1892
+ readonly instructions: (url: string) => string;
1565
1893
  };
1566
1894
  };
1567
1895
  };
@@ -1569,35 +1897,35 @@ export declare const commands: {
1569
1897
  readonly serverless: {
1570
1898
  readonly add: {
1571
1899
  readonly loading: {
1572
- readonly add: (functionName: string | number) => string;
1573
- readonly fail: (functionName: string | number) => string;
1574
- readonly succeed: (functionName: string | number) => string;
1900
+ readonly add: (functionName: string) => string;
1901
+ readonly fail: (functionName: string) => string;
1902
+ readonly succeed: (functionName: string) => string;
1575
1903
  };
1576
1904
  readonly success: {
1577
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
1905
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1578
1906
  };
1579
1907
  readonly failure: {
1580
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
1908
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1581
1909
  readonly scopes: {
1582
1910
  readonly message: "The personal access key you provided doesn't include serverless function permissions.";
1583
- readonly instructions: (functionName: string | number, url: string | number) => string;
1911
+ readonly instructions: (functionName: string, url: string) => string;
1584
1912
  };
1585
1913
  };
1586
1914
  };
1587
1915
  readonly delete: {
1588
1916
  readonly loading: {
1589
- readonly add: (functionName: string | number) => string;
1590
- readonly fail: (functionName: string | number) => string;
1591
- readonly succeed: (functionName: string | number) => string;
1917
+ readonly add: (functionName: string) => string;
1918
+ readonly fail: (functionName: string) => string;
1919
+ readonly succeed: (functionName: string) => string;
1592
1920
  };
1593
1921
  readonly success: {
1594
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
1922
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1595
1923
  };
1596
1924
  readonly failure: {
1597
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
1925
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1598
1926
  readonly scopes: {
1599
1927
  readonly message: "The personal access key you provided doesn't include serverless function permissions.";
1600
- readonly instructions: (functionName: string | number, url: string | number) => string;
1928
+ readonly instructions: (functionName: string, url: string) => string;
1601
1929
  };
1602
1930
  };
1603
1931
  };
@@ -1608,13 +1936,13 @@ export declare const commands: {
1608
1936
  readonly succeed: () => string;
1609
1937
  };
1610
1938
  readonly success: {
1611
- readonly configFileUpdated: (authType: string | number) => string;
1939
+ readonly configFileUpdated: (authType: string) => string;
1612
1940
  };
1613
1941
  readonly failure: {
1614
- readonly invalidUser: (parentAccountName: string | number) => string;
1942
+ readonly invalidUser: (parentAccountName: string) => string;
1615
1943
  readonly scopes: {
1616
1944
  readonly message: "The personal access key you provided doesn't include serverless function permissions.";
1617
- readonly instructions: (url: string | number) => string;
1945
+ readonly instructions: (url: string) => string;
1618
1946
  };
1619
1947
  };
1620
1948
  };
@@ -1622,35 +1950,35 @@ export declare const commands: {
1622
1950
  readonly serverlessFunctionLogs: {
1623
1951
  readonly add: {
1624
1952
  readonly loading: {
1625
- readonly add: (functionName: string | number) => string;
1626
- readonly fail: (functionName: string | number) => string;
1627
- readonly succeed: (functionName: string | number) => string;
1953
+ readonly add: (functionName: string) => string;
1954
+ readonly fail: (functionName: string) => string;
1955
+ readonly succeed: (functionName: string) => string;
1628
1956
  };
1629
1957
  readonly success: {
1630
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
1958
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1631
1959
  };
1632
1960
  readonly failure: {
1633
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
1961
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1634
1962
  readonly scopes: {
1635
1963
  readonly message: "The personal access key you provided doesn't include serverless function log permissions.";
1636
- readonly instructions: (functionName: string | number, url: string | number) => string;
1964
+ readonly instructions: (functionName: string, url: string) => string;
1637
1965
  };
1638
1966
  };
1639
1967
  };
1640
1968
  readonly delete: {
1641
1969
  readonly loading: {
1642
- readonly add: (functionName: string | number) => string;
1643
- readonly fail: (functionName: string | number) => string;
1644
- readonly succeed: (functionName: string | number) => string;
1970
+ readonly add: (functionName: string) => string;
1971
+ readonly fail: (functionName: string) => string;
1972
+ readonly succeed: (functionName: string) => string;
1645
1973
  };
1646
1974
  readonly success: {
1647
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
1975
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1648
1976
  };
1649
1977
  readonly failure: {
1650
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
1978
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1651
1979
  readonly scopes: {
1652
1980
  readonly message: "The personal access key you provided doesn't include serverless function log permissions.";
1653
- readonly instructions: (functionName: string | number, url: string | number) => string;
1981
+ readonly instructions: (functionName: string, url: string) => string;
1654
1982
  };
1655
1983
  };
1656
1984
  };
@@ -1661,13 +1989,13 @@ export declare const commands: {
1661
1989
  readonly succeed: () => string;
1662
1990
  };
1663
1991
  readonly success: {
1664
- readonly configFileUpdated: (authType: string | number) => string;
1992
+ readonly configFileUpdated: (authType: string) => string;
1665
1993
  };
1666
1994
  readonly failure: {
1667
- readonly invalidUser: (parentAccountName: string | number) => string;
1995
+ readonly invalidUser: (parentAccountName: string) => string;
1668
1996
  readonly scopes: {
1669
1997
  readonly message: "The personal access key you provided doesn't include serverless function log permissions.";
1670
- readonly instructions: (url: string | number) => string;
1998
+ readonly instructions: (url: string) => string;
1671
1999
  };
1672
2000
  };
1673
2001
  };
@@ -1675,35 +2003,35 @@ export declare const commands: {
1675
2003
  readonly serverlessFunctionMetrics: {
1676
2004
  readonly add: {
1677
2005
  readonly loading: {
1678
- readonly add: (functionName: string | number) => string;
1679
- readonly fail: (functionName: string | number) => string;
1680
- readonly succeed: (functionName: string | number) => string;
2006
+ readonly add: (functionName: string) => string;
2007
+ readonly fail: (functionName: string) => string;
2008
+ readonly succeed: (functionName: string) => string;
1681
2009
  };
1682
2010
  readonly success: {
1683
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2011
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1684
2012
  };
1685
2013
  readonly failure: {
1686
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2014
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1687
2015
  readonly scopes: {
1688
2016
  readonly message: "The personal access key you provided doesn't include serverless function metric permissions.";
1689
- readonly instructions: (functionName: string | number, url: string | number) => string;
2017
+ readonly instructions: (functionName: string, url: string) => string;
1690
2018
  };
1691
2019
  };
1692
2020
  };
1693
2021
  readonly delete: {
1694
2022
  readonly loading: {
1695
- readonly add: (functionName: string | number) => string;
1696
- readonly fail: (functionName: string | number) => string;
1697
- readonly succeed: (functionName: string | number) => string;
2023
+ readonly add: (functionName: string) => string;
2024
+ readonly fail: (functionName: string) => string;
2025
+ readonly succeed: (functionName: string) => string;
1698
2026
  };
1699
2027
  readonly success: {
1700
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2028
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1701
2029
  };
1702
2030
  readonly failure: {
1703
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2031
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1704
2032
  readonly scopes: {
1705
2033
  readonly message: "The personal access key you provided doesn't include serverless function metric permissions.";
1706
- readonly instructions: (functionName: string | number, url: string | number) => string;
2034
+ readonly instructions: (functionName: string, url: string) => string;
1707
2035
  };
1708
2036
  };
1709
2037
  };
@@ -1714,13 +2042,13 @@ export declare const commands: {
1714
2042
  readonly succeed: () => string;
1715
2043
  };
1716
2044
  readonly success: {
1717
- readonly configFileUpdated: (authType: string | number) => string;
2045
+ readonly configFileUpdated: (authType: string) => string;
1718
2046
  };
1719
2047
  readonly failure: {
1720
- readonly invalidUser: (parentAccountName: string | number) => string;
2048
+ readonly invalidUser: (parentAccountName: string) => string;
1721
2049
  readonly scopes: {
1722
2050
  readonly message: "The personal access key you provided doesn't include serverless function metric permissions.";
1723
- readonly instructions: (url: string | number) => string;
2051
+ readonly instructions: (url: string) => string;
1724
2052
  };
1725
2053
  };
1726
2054
  };
@@ -1728,35 +2056,35 @@ export declare const commands: {
1728
2056
  readonly serverlessFunctionSettings: {
1729
2057
  readonly add: {
1730
2058
  readonly loading: {
1731
- readonly add: (functionName: string | number) => string;
1732
- readonly fail: (functionName: string | number) => string;
1733
- readonly succeed: (functionName: string | number) => string;
2059
+ readonly add: (functionName: string) => string;
2060
+ readonly fail: (functionName: string) => string;
2061
+ readonly succeed: (functionName: string) => string;
1734
2062
  };
1735
2063
  readonly success: {
1736
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2064
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1737
2065
  };
1738
2066
  readonly failure: {
1739
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2067
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1740
2068
  readonly scopes: {
1741
2069
  readonly message: "The personal access key you provided doesn't include serverless function setting permissions.";
1742
- readonly instructions: (functionName: string | number, url: string | number) => string;
2070
+ readonly instructions: (functionName: string, url: string) => string;
1743
2071
  };
1744
2072
  };
1745
2073
  };
1746
2074
  readonly delete: {
1747
2075
  readonly loading: {
1748
- readonly add: (functionName: string | number) => string;
1749
- readonly fail: (functionName: string | number) => string;
1750
- readonly succeed: (functionName: string | number) => string;
2076
+ readonly add: (functionName: string) => string;
2077
+ readonly fail: (functionName: string) => string;
2078
+ readonly succeed: (functionName: string) => string;
1751
2079
  };
1752
2080
  readonly success: {
1753
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2081
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1754
2082
  };
1755
2083
  readonly failure: {
1756
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2084
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1757
2085
  readonly scopes: {
1758
2086
  readonly message: "The personal access key you provided doesn't include serverless function setting permissions.";
1759
- readonly instructions: (functionName: string | number, url: string | number) => string;
2087
+ readonly instructions: (functionName: string, url: string) => string;
1760
2088
  };
1761
2089
  };
1762
2090
  };
@@ -1767,13 +2095,13 @@ export declare const commands: {
1767
2095
  readonly succeed: () => string;
1768
2096
  };
1769
2097
  readonly success: {
1770
- readonly configFileUpdated: (authType: string | number) => string;
2098
+ readonly configFileUpdated: (authType: string) => string;
1771
2099
  };
1772
2100
  readonly failure: {
1773
- readonly invalidUser: (parentAccountName: string | number) => string;
2101
+ readonly invalidUser: (parentAccountName: string) => string;
1774
2102
  readonly scopes: {
1775
2103
  readonly message: "The personal access key you provided doesn't include serverless function setting permissions.";
1776
- readonly instructions: (url: string | number) => string;
2104
+ readonly instructions: (url: string) => string;
1777
2105
  };
1778
2106
  };
1779
2107
  };
@@ -1781,35 +2109,35 @@ export declare const commands: {
1781
2109
  readonly serverlessFunctionVersions: {
1782
2110
  readonly add: {
1783
2111
  readonly loading: {
1784
- readonly add: (functionName: string | number) => string;
1785
- readonly fail: (functionName: string | number) => string;
1786
- readonly succeed: (functionName: string | number) => string;
2112
+ readonly add: (functionName: string) => string;
2113
+ readonly fail: (functionName: string) => string;
2114
+ readonly succeed: (functionName: string) => string;
1787
2115
  };
1788
2116
  readonly success: {
1789
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2117
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1790
2118
  };
1791
2119
  readonly failure: {
1792
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2120
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1793
2121
  readonly scopes: {
1794
2122
  readonly message: "The personal access key you provided doesn't include serverless function version permissions.";
1795
- readonly instructions: (functionName: string | number, url: string | number) => string;
2123
+ readonly instructions: (functionName: string, url: string) => string;
1796
2124
  };
1797
2125
  };
1798
2126
  };
1799
2127
  readonly delete: {
1800
2128
  readonly loading: {
1801
- readonly add: (functionName: string | number) => string;
1802
- readonly fail: (functionName: string | number) => string;
1803
- readonly succeed: (functionName: string | number) => string;
2129
+ readonly add: (functionName: string) => string;
2130
+ readonly fail: (functionName: string) => string;
2131
+ readonly succeed: (functionName: string) => string;
1804
2132
  };
1805
2133
  readonly success: {
1806
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2134
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1807
2135
  };
1808
2136
  readonly failure: {
1809
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2137
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1810
2138
  readonly scopes: {
1811
2139
  readonly message: "The personal access key you provided doesn't include serverless function version permissions.";
1812
- readonly instructions: (functionName: string | number, url: string | number) => string;
2140
+ readonly instructions: (functionName: string, url: string) => string;
1813
2141
  };
1814
2142
  };
1815
2143
  };
@@ -1820,13 +2148,13 @@ export declare const commands: {
1820
2148
  readonly succeed: () => string;
1821
2149
  };
1822
2150
  readonly success: {
1823
- readonly configFileUpdated: (authType: string | number) => string;
2151
+ readonly configFileUpdated: (authType: string) => string;
1824
2152
  };
1825
2153
  readonly failure: {
1826
- readonly invalidUser: (parentAccountName: string | number) => string;
2154
+ readonly invalidUser: (parentAccountName: string) => string;
1827
2155
  readonly scopes: {
1828
2156
  readonly message: "The personal access key you provided doesn't include serverless function version permissions.";
1829
- readonly instructions: (url: string | number) => string;
2157
+ readonly instructions: (url: string) => string;
1830
2158
  };
1831
2159
  };
1832
2160
  };
@@ -1834,35 +2162,35 @@ export declare const commands: {
1834
2162
  readonly serverlessFunctionWebhooks: {
1835
2163
  readonly add: {
1836
2164
  readonly loading: {
1837
- readonly add: (functionName: string | number) => string;
1838
- readonly fail: (functionName: string | number) => string;
1839
- readonly succeed: (functionName: string | number) => string;
2165
+ readonly add: (functionName: string) => string;
2166
+ readonly fail: (functionName: string) => string;
2167
+ readonly succeed: (functionName: string) => string;
1840
2168
  };
1841
2169
  readonly success: {
1842
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2170
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1843
2171
  };
1844
2172
  readonly failure: {
1845
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2173
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1846
2174
  readonly scopes: {
1847
2175
  readonly message: "The personal access key you provided doesn't include serverless function webhook permissions.";
1848
- readonly instructions: (functionName: string | number, url: string | number) => string;
2176
+ readonly instructions: (functionName: string, url: string) => string;
1849
2177
  };
1850
2178
  };
1851
2179
  };
1852
2180
  readonly delete: {
1853
2181
  readonly loading: {
1854
- readonly add: (functionName: string | number) => string;
1855
- readonly fail: (functionName: string | number) => string;
1856
- readonly succeed: (functionName: string | number) => string;
2182
+ readonly add: (functionName: string) => string;
2183
+ readonly fail: (functionName: string) => string;
2184
+ readonly succeed: (functionName: string) => string;
1857
2185
  };
1858
2186
  readonly success: {
1859
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2187
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1860
2188
  };
1861
2189
  readonly failure: {
1862
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2190
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1863
2191
  readonly scopes: {
1864
2192
  readonly message: "The personal access key you provided doesn't include serverless function webhook permissions.";
1865
- readonly instructions: (functionName: string | number, url: string | number) => string;
2193
+ readonly instructions: (functionName: string, url: string) => string;
1866
2194
  };
1867
2195
  };
1868
2196
  };
@@ -1873,13 +2201,13 @@ export declare const commands: {
1873
2201
  readonly succeed: () => string;
1874
2202
  };
1875
2203
  readonly success: {
1876
- readonly configFileUpdated: (authType: string | number) => string;
2204
+ readonly configFileUpdated: (authType: string) => string;
1877
2205
  };
1878
2206
  readonly failure: {
1879
- readonly invalidUser: (parentAccountName: string | number) => string;
2207
+ readonly invalidUser: (parentAccountName: string) => string;
1880
2208
  readonly scopes: {
1881
2209
  readonly message: "The personal access key you provided doesn't include serverless function webhook permissions.";
1882
- readonly instructions: (url: string | number) => string;
2210
+ readonly instructions: (url: string) => string;
1883
2211
  };
1884
2212
  };
1885
2213
  };
@@ -1887,35 +2215,35 @@ export declare const commands: {
1887
2215
  readonly serverlessFunctionWebhookSubscriptions: {
1888
2216
  readonly add: {
1889
2217
  readonly loading: {
1890
- readonly add: (functionName: string | number) => string;
1891
- readonly fail: (functionName: string | number) => string;
1892
- readonly succeed: (functionName: string | number) => string;
2218
+ readonly add: (functionName: string) => string;
2219
+ readonly fail: (functionName: string) => string;
2220
+ readonly succeed: (functionName: string) => string;
1893
2221
  };
1894
2222
  readonly success: {
1895
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2223
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1896
2224
  };
1897
2225
  readonly failure: {
1898
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2226
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1899
2227
  readonly scopes: {
1900
2228
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription permissions.";
1901
- readonly instructions: (functionName: string | number, url: string | number) => string;
2229
+ readonly instructions: (functionName: string, url: string) => string;
1902
2230
  };
1903
2231
  };
1904
2232
  };
1905
2233
  readonly delete: {
1906
2234
  readonly loading: {
1907
- readonly add: (functionName: string | number) => string;
1908
- readonly fail: (functionName: string | number) => string;
1909
- readonly succeed: (functionName: string | number) => string;
2235
+ readonly add: (functionName: string) => string;
2236
+ readonly fail: (functionName: string) => string;
2237
+ readonly succeed: (functionName: string) => string;
1910
2238
  };
1911
2239
  readonly success: {
1912
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2240
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1913
2241
  };
1914
2242
  readonly failure: {
1915
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2243
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1916
2244
  readonly scopes: {
1917
2245
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription permissions.";
1918
- readonly instructions: (functionName: string | number, url: string | number) => string;
2246
+ readonly instructions: (functionName: string, url: string) => string;
1919
2247
  };
1920
2248
  };
1921
2249
  };
@@ -1926,13 +2254,13 @@ export declare const commands: {
1926
2254
  readonly succeed: () => string;
1927
2255
  };
1928
2256
  readonly success: {
1929
- readonly configFileUpdated: (authType: string | number) => string;
2257
+ readonly configFileUpdated: (authType: string) => string;
1930
2258
  };
1931
2259
  readonly failure: {
1932
- readonly invalidUser: (parentAccountName: string | number) => string;
2260
+ readonly invalidUser: (parentAccountName: string) => string;
1933
2261
  readonly scopes: {
1934
2262
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription permissions.";
1935
- readonly instructions: (url: string | number) => string;
2263
+ readonly instructions: (url: string) => string;
1936
2264
  };
1937
2265
  };
1938
2266
  };
@@ -1940,35 +2268,35 @@ export declare const commands: {
1940
2268
  readonly serverlessFunctionWebhookSubscriptionEvents: {
1941
2269
  readonly add: {
1942
2270
  readonly loading: {
1943
- readonly add: (functionName: string | number) => string;
1944
- readonly fail: (functionName: string | number) => string;
1945
- readonly succeed: (functionName: string | number) => string;
2271
+ readonly add: (functionName: string) => string;
2272
+ readonly fail: (functionName: string) => string;
2273
+ readonly succeed: (functionName: string) => string;
1946
2274
  };
1947
2275
  readonly success: {
1948
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2276
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1949
2277
  };
1950
2278
  readonly failure: {
1951
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2279
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1952
2280
  readonly scopes: {
1953
2281
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription event permissions.";
1954
- readonly instructions: (functionName: string | number, url: string | number) => string;
2282
+ readonly instructions: (functionName: string, url: string) => string;
1955
2283
  };
1956
2284
  };
1957
2285
  };
1958
2286
  readonly delete: {
1959
2287
  readonly loading: {
1960
- readonly add: (functionName: string | number) => string;
1961
- readonly fail: (functionName: string | number) => string;
1962
- readonly succeed: (functionName: string | number) => string;
2288
+ readonly add: (functionName: string) => string;
2289
+ readonly fail: (functionName: string) => string;
2290
+ readonly succeed: (functionName: string) => string;
1963
2291
  };
1964
2292
  readonly success: {
1965
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2293
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
1966
2294
  };
1967
2295
  readonly failure: {
1968
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2296
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
1969
2297
  readonly scopes: {
1970
2298
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription event permissions.";
1971
- readonly instructions: (functionName: string | number, url: string | number) => string;
2299
+ readonly instructions: (functionName: string, url: string) => string;
1972
2300
  };
1973
2301
  };
1974
2302
  };
@@ -1979,13 +2307,13 @@ export declare const commands: {
1979
2307
  readonly succeed: () => string;
1980
2308
  };
1981
2309
  readonly success: {
1982
- readonly configFileUpdated: (authType: string | number) => string;
2310
+ readonly configFileUpdated: (authType: string) => string;
1983
2311
  };
1984
2312
  readonly failure: {
1985
- readonly invalidUser: (parentAccountName: string | number) => string;
2313
+ readonly invalidUser: (parentAccountName: string) => string;
1986
2314
  readonly scopes: {
1987
2315
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription event permissions.";
1988
- readonly instructions: (url: string | number) => string;
2316
+ readonly instructions: (url: string) => string;
1989
2317
  };
1990
2318
  };
1991
2319
  };
@@ -1993,35 +2321,35 @@ export declare const commands: {
1993
2321
  readonly serverlessFunctionWebhookSubscriptionEventTypes: {
1994
2322
  readonly add: {
1995
2323
  readonly loading: {
1996
- readonly add: (functionName: string | number) => string;
1997
- readonly fail: (functionName: string | number) => string;
1998
- readonly succeed: (functionName: string | number) => string;
2324
+ readonly add: (functionName: string) => string;
2325
+ readonly fail: (functionName: string) => string;
2326
+ readonly succeed: (functionName: string) => string;
1999
2327
  };
2000
2328
  readonly success: {
2001
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2329
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
2002
2330
  };
2003
2331
  readonly failure: {
2004
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2332
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
2005
2333
  readonly scopes: {
2006
2334
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription event type permissions.";
2007
- readonly instructions: (functionName: string | number, url: string | number) => string;
2335
+ readonly instructions: (functionName: string, url: string) => string;
2008
2336
  };
2009
2337
  };
2010
2338
  };
2011
2339
  readonly delete: {
2012
2340
  readonly loading: {
2013
- readonly add: (functionName: string | number) => string;
2014
- readonly fail: (functionName: string | number) => string;
2015
- readonly succeed: (functionName: string | number) => string;
2341
+ readonly add: (functionName: string) => string;
2342
+ readonly fail: (functionName: string) => string;
2343
+ readonly succeed: (functionName: string) => string;
2016
2344
  };
2017
2345
  readonly success: {
2018
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2346
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
2019
2347
  };
2020
2348
  readonly failure: {
2021
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2349
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
2022
2350
  readonly scopes: {
2023
2351
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription event type permissions.";
2024
- readonly instructions: (functionName: string | number, url: string | number) => string;
2352
+ readonly instructions: (functionName: string, url: string) => string;
2025
2353
  };
2026
2354
  };
2027
2355
  };
@@ -2032,13 +2360,13 @@ export declare const commands: {
2032
2360
  readonly succeed: () => string;
2033
2361
  };
2034
2362
  readonly success: {
2035
- readonly configFileUpdated: (authType: string | number) => string;
2363
+ readonly configFileUpdated: (authType: string) => string;
2036
2364
  };
2037
2365
  readonly failure: {
2038
- readonly invalidUser: (parentAccountName: string | number) => string;
2366
+ readonly invalidUser: (parentAccountName: string) => string;
2039
2367
  readonly scopes: {
2040
2368
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription event type permissions.";
2041
- readonly instructions: (url: string | number) => string;
2369
+ readonly instructions: (url: string) => string;
2042
2370
  };
2043
2371
  };
2044
2372
  };
@@ -2046,35 +2374,35 @@ export declare const commands: {
2046
2374
  readonly serverlessFunctionWebhookSubscriptionEventTypeOptions: {
2047
2375
  readonly add: {
2048
2376
  readonly loading: {
2049
- readonly add: (functionName: string | number) => string;
2050
- readonly fail: (functionName: string | number) => string;
2051
- readonly succeed: (functionName: string | number) => string;
2377
+ readonly add: (functionName: string) => string;
2378
+ readonly fail: (functionName: string) => string;
2379
+ readonly succeed: (functionName: string) => string;
2052
2380
  };
2053
2381
  readonly success: {
2054
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2382
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
2055
2383
  };
2056
2384
  readonly failure: {
2057
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2385
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
2058
2386
  readonly scopes: {
2059
2387
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription event type option permissions.";
2060
- readonly instructions: (functionName: string | number, url: string | number) => string;
2388
+ readonly instructions: (functionName: string, url: string) => string;
2061
2389
  };
2062
2390
  };
2063
2391
  };
2064
2392
  readonly delete: {
2065
2393
  readonly loading: {
2066
- readonly add: (functionName: string | number) => string;
2067
- readonly fail: (functionName: string | number) => string;
2068
- readonly succeed: (functionName: string | number) => string;
2394
+ readonly add: (functionName: string) => string;
2395
+ readonly fail: (functionName: string) => string;
2396
+ readonly succeed: (functionName: string) => string;
2069
2397
  };
2070
2398
  readonly success: {
2071
- readonly configFileUpdated: (functionName: string | number, authType: string | number) => string;
2399
+ readonly configFileUpdated: (functionName: string, authType: string) => string;
2072
2400
  };
2073
2401
  readonly failure: {
2074
- readonly invalidUser: (functionName: string | number, parentAccountName: string | number) => string;
2402
+ readonly invalidUser: (functionName: string, parentAccountName: string) => string;
2075
2403
  readonly scopes: {
2076
2404
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription event type option permissions.";
2077
- readonly instructions: (functionName: string | number, url: string | number) => string;
2405
+ readonly instructions: (functionName: string, url: string) => string;
2078
2406
  };
2079
2407
  };
2080
2408
  };
@@ -2085,13 +2413,13 @@ export declare const commands: {
2085
2413
  readonly succeed: () => string;
2086
2414
  };
2087
2415
  readonly success: {
2088
- readonly configFileUpdated: (authType: string | number) => string;
2416
+ readonly configFileUpdated: (authType: string) => string;
2089
2417
  };
2090
2418
  readonly failure: {
2091
- readonly invalidUser: (parentAccountName: string | number) => string;
2419
+ readonly invalidUser: (parentAccountName: string) => string;
2092
2420
  readonly scopes: {
2093
2421
  readonly message: "The personal access key you provided doesn't include serverless function webhook subscription event type option permissions.";
2094
- readonly instructions: (url: string | number) => string;
2422
+ readonly instructions: (url: string) => string;
2095
2423
  };
2096
2424
  };
2097
2425
  };
@@ -2099,22 +2427,24 @@ export declare const commands: {
2099
2427
  };
2100
2428
  export declare const lib: {
2101
2429
  readonly process: {
2102
- readonly exitDebug: (signal: string | number) => string;
2430
+ readonly exitDebug: (signal: string) => string;
2103
2431
  };
2104
2432
  readonly DevServerManager: {
2105
- readonly portConflict: (port: string | number) => string;
2433
+ readonly portConflict: (port: string) => string;
2106
2434
  readonly notInitialized: "The Dev Server Manager must be initialized before it is started.";
2107
- readonly noCompatibleComponents: (serverKey: string | number) => string;
2435
+ readonly noCompatibleComponents: (serverKey: string) => string;
2108
2436
  };
2109
2437
  readonly LocalDevManager: {
2438
+ readonly appNotFound: (accountId: number, appUid: string | undefined) => string;
2110
2439
  readonly failedToInitialize: "Missing required arguments to initialize Local Dev";
2111
- readonly noDeployedBuild: (projectName: string | number, accountIdentifier: string | number, uploadCommand: string | number) => string;
2440
+ readonly noDeployedBuild: (projectName: string, accountIdentifier: string, uploadCommand: string) => string;
2112
2441
  readonly noComponents: "There are no components in this project.";
2113
2442
  readonly betaMessage: "HubSpot projects local development";
2114
- readonly learnMoreLocalDevServer: "Learn more about the projects local dev server";
2115
- readonly running: (projectName: string | number, accountIdentifier: string | number) => string;
2443
+ readonly learnMoreLocalDevServer: string;
2444
+ readonly running: (projectName: string, accountIdentifier: string) => string;
2116
2445
  readonly quitHelper: `Press ${string} to stop the local dev server`;
2117
- readonly viewProjectLink: "View project in HubSpot";
2446
+ readonly viewProjectLink: (name: string, accountId: number) => string;
2447
+ readonly viewLocalDevUILink: (accountId: number) => string;
2118
2448
  readonly viewTestAccountLink: "View developer test account in HubSpot";
2119
2449
  readonly exitingStart: "Stopping local dev server ...";
2120
2450
  readonly exitingSucceed: "Successfully exited";
@@ -2123,28 +2453,54 @@ export declare const lib: {
2123
2453
  readonly uploadWarning: {
2124
2454
  readonly appLabel: "[App]";
2125
2455
  readonly uiExtensionLabel: "[UI Extension]";
2126
- readonly missingComponents: (missingComponents: string | number) => string;
2456
+ readonly missingComponents: (missingComponents: string) => string;
2127
2457
  readonly defaultWarning: string;
2128
- readonly defaultPublicAppWarning: (installCount: string | number, installText: string | number) => string;
2129
- readonly header: (warning: string | number) => string;
2458
+ readonly defaultPublicAppWarning: (installCount: number, installText: string) => string;
2459
+ readonly header: (warning: string) => string;
2460
+ readonly instructionsHeader: "To reflect these changes and continue testing:";
2130
2461
  readonly stopDev: ` * Stop ${string}`;
2131
- readonly runUpload: (command: string | number) => string;
2462
+ readonly runUpload: (command: string) => string;
2132
2463
  readonly restartDev: ` * Re-run ${string}`;
2133
2464
  readonly pushToGithub: " * Commit and push your changes to GitHub";
2134
- readonly defaultMarketplaceAppWarning: (installCount: string | number, accountText: string | number) => string;
2465
+ readonly defaultMarketplaceAppWarning: (installCount: number, accountText: string) => string;
2135
2466
  };
2136
2467
  readonly activeInstallWarning: {
2137
- readonly installCount: (appName: string | number, installCount: string | number, installText: string | number) => string;
2468
+ readonly installCount: (appName: string, installCount: number) => string;
2138
2469
  readonly explanation: "Some changes made during local development may need to be synced to HubSpot, which will impact those existing installs. We strongly recommend creating a copy of this app to use instead.";
2139
2470
  readonly confirmation: "You will always be asked to confirm any permanent changes to your app's configuration before uploading them.";
2140
2471
  readonly confirmationPrompt: `Proceed with local development of this ${string} app?`;
2141
2472
  };
2142
2473
  readonly devServer: {
2143
- readonly cleanupError: (message: string | number) => string;
2144
- readonly setupError: (message: string | number) => string;
2145
- readonly startError: (message: string | number) => string;
2146
- readonly fileChangeError: (message: string | number) => string;
2474
+ readonly cleanupError: (message: string) => string;
2475
+ readonly setupError: (message: string) => string;
2476
+ readonly startError: (message: string) => string;
2477
+ readonly fileChangeError: (message: string) => string;
2478
+ };
2479
+ };
2480
+ readonly AppDevModeInterface: {
2481
+ readonly defaultMarketplaceAppWarning: (installCount: number) => string;
2482
+ readonly autoInstallDeclined: "You must install your app on your target test account to proceed with local development.";
2483
+ readonly autoInstallSuccess: (appName: string, targetTestAccountId: number) => string;
2484
+ readonly autoInstallError: (appName: string, targetTestAccountId: number) => string;
2485
+ };
2486
+ readonly LocalDevWebsocketServer: {
2487
+ readonly errors: {
2488
+ readonly notInitialized: (prefix: string) => string;
2489
+ readonly missingTypeField: (data: string) => string;
2490
+ readonly unknownMessageType: (type: string) => string;
2491
+ readonly invalidJSON: (data: string) => string;
2492
+ readonly portManagerNotRunning: (prefix: string) => string;
2493
+ readonly originNotAllowed: (origin?: string) => string;
2147
2494
  };
2495
+ readonly logs: {
2496
+ readonly startup: (port: number) => string;
2497
+ };
2498
+ };
2499
+ readonly LocalDevProcess: {
2500
+ readonly projectConfigMismatch: `Unable to upload project. The project config has been modified since starting ${string}.`;
2501
+ readonly uploadInitiated: "Project upload initiated from Local Dev UI.";
2502
+ readonly uploadFailed: "Project upload failed. To proceed with local development, fix any necessary errors, then re-upload your project.";
2503
+ readonly uploadSuccess: "Project upload completed successfully. Resuming local dev...";
2148
2504
  };
2149
2505
  readonly localDevHelpers: {
2150
2506
  readonly confirmDefaultAccountIsTarget: {
@@ -2162,12 +2518,12 @@ export declare const lib: {
2162
2518
  readonly publicAppNonDeveloperTestAccountWarning: `Local development of public apps is only supported in ${string}.`;
2163
2519
  };
2164
2520
  readonly createNewProjectForLocalDev: {
2165
- readonly projectMustExistExplanation: (projectName: string | number, accountIdentifier: string | number) => string;
2166
- readonly publicAppProjectMustExistExplanation: (projectName: string | number, accountIdentifier: string | number) => string;
2167
- readonly createProject: (projectName: string | number, accountIdentifier: string | number) => string;
2521
+ readonly projectMustExistExplanation: (projectName: string, accountId: number) => string;
2522
+ readonly publicAppProjectMustExistExplanation: (projectName: string, accountId: number) => string;
2523
+ readonly createProject: (projectName: string, accountIdentifier: string) => string;
2168
2524
  readonly choseNotToCreateProject: "Exiting because this command requires the project to exist in the target account.";
2169
- readonly creatingProject: (projectName: string | number, accountIdentifier: string | number) => string;
2170
- readonly createdProject: (projectName: string | number, accountIdentifier: string | number) => string;
2525
+ readonly creatingProject: (projectName: string, accountIdentifier: string) => string;
2526
+ readonly createdProject: (projectName: string, accountIdentifier: string) => string;
2171
2527
  readonly failedToCreateProject: "Failed to create project in the target account.";
2172
2528
  };
2173
2529
  readonly createInitialBuildForNewProject: {
@@ -2176,34 +2532,86 @@ export declare const lib: {
2176
2532
  readonly genericError: `An error occurred while creating the initial build for this project. Run ${string} to try again.`;
2177
2533
  };
2178
2534
  readonly checkIfParentAccountIsAuthed: {
2179
- readonly notAuthedError: (parentAccountId: string | number, accountIdentifier: string | number) => string;
2535
+ readonly notAuthedError: (parentAccountId: number | string, accountIdentifier: string) => string;
2536
+ };
2537
+ readonly selectAccountTypePrompt: {
2538
+ readonly message: "[--account] Choose the type of account to test on";
2539
+ readonly developerTestAccountOption: "Test on a developer test account";
2540
+ readonly sandboxAccountOption: "Test on a sandbox account";
2541
+ readonly sandboxAccountOptionDisabled: "Disabled - requires access to sandbox accounts";
2542
+ readonly productionAccountOption: `<${string} Test on this account ${string}>`;
2543
+ };
2544
+ };
2545
+ readonly middleware: {
2546
+ readonly updateNotification: {
2547
+ readonly notifyTitle: string;
2548
+ readonly cmsUpdateNotification: (packageName: string) => string;
2549
+ readonly cliUpdateNotification: `HubSpot CLI version ${string} is outdated.
2550
+ Run ${string} to upgrade to version ${string}`;
2551
+ };
2552
+ readonly autoUpdateCLI: {
2553
+ readonly updateAvailable: (latestVersion: string) => string;
2554
+ readonly updateSucceeded: (latestVersion: string) => string;
2555
+ readonly notInstalledGlobally: "Cannot auto-update the HubSpot CLI because NPM is not installed globally";
2556
+ readonly updateFailed: (latestVersion: string) => string;
2557
+ };
2558
+ };
2559
+ readonly projectProfiles: {
2560
+ readonly logs: {
2561
+ readonly usingProfile: (profileName: string) => string;
2562
+ readonly profileTargetAccount: (accountId: number) => string;
2563
+ readonly profileVariables: "Profile variables";
2564
+ };
2565
+ readonly exitIfUsingProfiles: {
2566
+ readonly errors: {
2567
+ readonly noProfileSpecified: `This project is configured to use profiles, but no profile was specified. Target a profile using the ${string} flag.`;
2568
+ };
2569
+ };
2570
+ readonly loadProfile: {
2571
+ readonly errors: {
2572
+ readonly noProjectConfig: "No project config found. Please run this command from a project directory.";
2573
+ readonly profileNotFound: (profileName: string) => string;
2574
+ readonly missingAccountId: (profileName: string) => string;
2575
+ readonly failedToLoadProfile: (profileName: string) => string;
2576
+ };
2180
2577
  };
2181
2578
  };
2182
2579
  readonly projects: {
2183
2580
  readonly create: {
2581
+ readonly prompt: {
2582
+ readonly marketPlaceDistribution: "On the HubSpot marketplace";
2583
+ readonly privateDistribution: "Privately";
2584
+ readonly distribution: "[--distribution] How would you like to distribute your application?";
2585
+ readonly auth: "[--auth] What type of authentication would you like your application to use";
2586
+ readonly staticAuth: "Static Auth";
2587
+ readonly oauth: "OAuth";
2588
+ };
2184
2589
  readonly errors: {
2185
2590
  readonly noProjectsInConfig: "Unable to find any projects in the target repository's config.json file. Please ensure that there is a \"projects\" array in the config file.";
2186
2591
  readonly missingConfigFileTemplateSource: "Failed to fetch the config.json file from the target repository. Please ensure that there is a valid config.json file at the root of the repository and try again.";
2187
- readonly missingPropertiesInConfig: "Found misconfigured projects in the target repository's config.json file. Please ensure that each project in the target repository's config.json file contains the following properties: [\"name\", \"label\", \"path\", \"insertPath\"].";
2592
+ readonly missingPropertiesInConfig: "Found misconfigured projects in the target repository's config.json file. Please ensure that each project in the target repository's config.json file contains the following properties: [\"name\", \"label\", \"path\"].";
2593
+ readonly exceededMaxNumberOfApps: (max: number) => string;
2594
+ readonly unableToParseAppConfig: (file: string) => string;
2595
+ readonly invalidAuthDistCombo: (authType: string, distribution: string) => string;
2188
2596
  };
2189
2597
  };
2190
2598
  readonly validateProjectConfig: {
2191
2599
  readonly configNotFound: `Unable to locate a project configuration file. Try running again from a project directory, or run ${string} to create a new project.`;
2192
2600
  readonly configMissingFields: "The project configuration file is missing required fields.";
2193
- readonly srcDirNotFound: (srcDir: string | number, projectDir: string | number) => string;
2194
- readonly srcOutsideProjectDir: (projectConfig: string | number, srcDir: string | number) => string;
2601
+ readonly srcDirNotFound: (srcDir: string, projectDir: string) => string;
2602
+ readonly srcOutsideProjectDir: (projectConfig: string, srcDir: string) => string;
2195
2603
  };
2196
2604
  readonly getProjectConfig: {
2197
2605
  readonly error: "Could not read from project config";
2198
2606
  };
2199
2607
  readonly ensureProjectExists: {
2200
- readonly createPrompt: (projectName: string | number, accountIdentifier: string | number) => string;
2201
- readonly createPromptUpload: (projectName: string | number, accountIdentifier: string | number) => string;
2202
- readonly createSuccess: (projectName: string | number, accountIdentifier: string | number) => string;
2203
- readonly notFound: (projectName: string | number, accountIdentifier: string | number) => string;
2608
+ readonly createPrompt: (projectName: string, accountIdentifier: string) => string;
2609
+ readonly createPromptUpload: (projectName: string, accountIdentifier: string) => string;
2610
+ readonly createSuccess: (projectName: string, accountIdentifier: string) => string;
2611
+ readonly notFound: (projectName: string, accountIdentifier: string) => string;
2204
2612
  };
2205
2613
  readonly pollFetchProject: {
2206
- readonly checkingProject: (accountIdentifier: string | number) => string;
2614
+ readonly checkingProject: (accountIdentifier: string) => string;
2207
2615
  };
2208
2616
  readonly logFeedbackMessage: {
2209
2617
  readonly feedbackHeader: "We'd love to hear your feedback!";
@@ -2216,31 +2624,32 @@ export declare const lib: {
2216
2624
  readonly makePollTaskStatusFunc: {
2217
2625
  readonly errorSummary: "See below for a summary of errors.";
2218
2626
  readonly componentCountSingular: "Found 1 component in this project\n";
2219
- readonly componentCount: (numComponents: string | number) => string;
2627
+ readonly componentCount: (numComponents: number) => string;
2220
2628
  readonly successStatusText: "DONE";
2221
2629
  readonly failedStatusText: "FAILED";
2222
- readonly errorFetchingTaskStatus: (taskType: string | number) => string;
2630
+ readonly errorFetchingTaskStatus: (taskType: string) => string;
2223
2631
  };
2224
- readonly pollBuildAutodeployStatusError: (buildId: string | number) => string;
2632
+ readonly pollBuildAutodeployStatusError: (buildId: number) => string;
2225
2633
  readonly pollProjectBuildAndDeploy: {
2226
- readonly buildSucceededAutomaticallyDeploying: (buildId: string | number, accountIdentifier: string | number) => string;
2227
- readonly cleanedUpTempFile: (path: string | number) => string;
2228
- readonly viewDeploys: "View all deploys for this project in HubSpot";
2229
- readonly unableToFindAutodeployStatus: (buildId: string | number, viewDeploysLink: string | number) => string;
2634
+ readonly buildSucceededAutomaticallyDeploying: (buildId: number, accountIdentifier: string) => string;
2635
+ readonly cleanedUpTempFile: (path: string) => string;
2636
+ readonly viewDeploys: "view all deploys for this project in HubSpot";
2637
+ readonly unableToFindAutodeployStatus: (buildId: number, viewDeploysLink: string) => string;
2230
2638
  };
2231
2639
  };
2232
2640
  readonly projectUpload: {
2641
+ readonly wrongPlatformVersionMetaFiles: `Detected components that require a minimum platform version of ${string}. You need to update your platform version in your hsproject.json and run ${string}`;
2233
2642
  readonly uploadProjectFiles: {
2234
- readonly add: (projectName: string | number, accountIdentifier: string | number) => string;
2235
- readonly fail: (projectName: string | number, accountIdentifier: string | number) => string;
2236
- readonly succeed: (projectName: string | number, accountIdentifier: string | number) => string;
2237
- readonly buildCreated: (projectName: string | number, buildId: string | number) => string;
2643
+ readonly add: (projectName: string, accountIdentifier: string) => string;
2644
+ readonly fail: (projectName: string, accountIdentifier: string) => string;
2645
+ readonly succeed: (projectName: string, accountIdentifier: string) => string;
2646
+ readonly buildCreated: (projectName: string, buildId: number) => string;
2238
2647
  };
2239
2648
  readonly handleProjectUpload: {
2240
- readonly emptySource: (srcDir: string | number) => string;
2241
- readonly compressed: (byteCount: string | number) => string;
2242
- readonly compressing: (path: string | number) => string;
2243
- readonly fileFiltered: (filename: string | number) => string;
2649
+ readonly emptySource: (srcDir: string) => string;
2650
+ readonly compressed: (byteCount: number) => string;
2651
+ readonly compressing: (path: string) => string;
2652
+ readonly fileFiltered: (filename: string) => string;
2244
2653
  };
2245
2654
  };
2246
2655
  readonly boxen: {
@@ -2255,84 +2664,110 @@ export declare const lib: {
2255
2664
  readonly infoTag: string;
2256
2665
  readonly deprecatedTag: string;
2257
2666
  readonly errorTag: string;
2258
- readonly deprecatedMessage: (command: string | number, url: string | number) => string;
2259
- readonly deprecatedDescription: (message: string | number, command: string | number, url: string | number) => string;
2667
+ readonly deprecatedMessage: (command: string, url: string) => string;
2668
+ readonly deprecatedDescription: (message: string, command: string, url: string) => string;
2260
2669
  readonly deprecatedUrlText: "Learn more.";
2261
- readonly disabledMessage: (command: string | number, npmCommand: string | number, url: string | number) => string;
2670
+ readonly disabledMessage: (command: string, npmCommand: string, url: string) => string;
2262
2671
  readonly disabledUrlText: "See all HubSpot CLI commands here.";
2263
2672
  readonly featureHighlight: {
2264
2673
  readonly defaultTitle: "What's next?";
2265
2674
  readonly featureKeys: {
2266
2675
  readonly accountOption: {
2267
2676
  readonly command: "--account";
2268
- readonly message: (command: string | number) => string;
2677
+ readonly message: (command: string) => string;
2269
2678
  };
2270
2679
  readonly accountsListCommand: {
2271
2680
  readonly command: "hs accounts list";
2272
- readonly message: (command: string | number) => string;
2681
+ readonly message: (command: string) => string;
2273
2682
  };
2274
2683
  readonly accountsUseCommand: {
2275
2684
  readonly command: "hs accounts use";
2276
- readonly message: (command: string | number) => string;
2685
+ readonly message: (command: string) => string;
2277
2686
  };
2278
2687
  readonly authCommand: {
2279
2688
  readonly command: "hs auth";
2280
- readonly message: (command: string | number) => string;
2689
+ readonly message: (command: string) => string;
2281
2690
  };
2282
2691
  readonly feedbackCommand: {
2283
2692
  readonly command: "hs feedback";
2284
- readonly message: (command: string | number) => string;
2693
+ readonly message: (command: string) => string;
2285
2694
  };
2286
2695
  readonly helpCommand: {
2287
2696
  readonly command: "hs help";
2288
- readonly message: (command: string | number) => string;
2697
+ readonly message: (command: string) => string;
2289
2698
  };
2290
2699
  readonly projectCreateCommand: {
2291
2700
  readonly command: "hs project create";
2292
- readonly message: (command: string | number) => string;
2701
+ readonly message: (command: string) => string;
2293
2702
  };
2294
2703
  readonly projectDeployCommand: {
2295
2704
  readonly command: "hs project deploy";
2296
- readonly message: (command: string | number) => string;
2705
+ readonly message: (command: string) => string;
2297
2706
  };
2298
2707
  readonly projectHelpCommand: {
2299
2708
  readonly command: "hs project --help";
2300
- readonly message: (command: string | number) => string;
2709
+ readonly message: (command: string) => string;
2301
2710
  };
2302
2711
  readonly projectUploadCommand: {
2303
2712
  readonly command: "hs project upload";
2304
- readonly message: (command: string | number) => string;
2713
+ readonly message: (command: string) => string;
2305
2714
  };
2306
2715
  readonly projectDevCommand: {
2307
2716
  readonly command: "hs project dev";
2308
- readonly message: (command: string | number) => string;
2717
+ readonly message: (command: string) => string;
2309
2718
  };
2310
2719
  readonly projectInstallDepsCommand: {
2311
2720
  readonly command: "hs project install-deps";
2312
- readonly message: (command: string | number) => string;
2721
+ readonly message: (command: string) => string;
2313
2722
  };
2314
2723
  readonly sampleProjects: {
2315
2724
  readonly linkText: "HubSpot's sample projects";
2316
2725
  readonly url: "https://developers.hubspot.com/docs/platform/sample-projects?utm_source=cli&utm_content=project_create_whats_next";
2317
- readonly message: (link: string | number) => string;
2726
+ readonly message: (link: string) => string;
2318
2727
  };
2319
2728
  };
2320
2729
  };
2321
2730
  readonly git: {
2322
2731
  readonly securityIssue: "Security Issue Detected";
2323
2732
  readonly configFileTracked: "The HubSpot config file can be tracked by git.";
2324
- readonly fileName: (configPath: string | number) => string;
2733
+ readonly fileName: (configPath: string) => string;
2325
2734
  readonly remediate: "To remediate:";
2326
- readonly moveConfig: (homeDir: string | number) => string;
2327
- readonly addGitignore: (configPath: string | number) => string;
2735
+ readonly moveConfig: (homeDir: string) => string;
2736
+ readonly addGitignore: (configPath: string) => string;
2328
2737
  readonly noRemote: "- Ensure that the config file has not already been pushed to a remote repository.";
2329
2738
  readonly checkFailed: "Unable to determine if config file is properly ignored by git.";
2330
2739
  };
2331
2740
  readonly serverlessFunctionLogs: {
2332
- readonly unableToProcessLog: (log: string | number) => string;
2741
+ readonly unableToProcessLog: (log: string) => string;
2333
2742
  readonly noLogsFound: "No logs found.";
2334
2743
  };
2335
2744
  };
2745
+ readonly configOptions: {
2746
+ readonly enableOrDisableBooleanFieldPrompt: {
2747
+ readonly message: (fieldName: string) => string;
2748
+ readonly labels: {
2749
+ readonly enabled: "Enabled";
2750
+ readonly disabled: "Disabled";
2751
+ };
2752
+ };
2753
+ readonly setAllowUsageTracking: {
2754
+ readonly fieldName: "usage tracking";
2755
+ readonly success: (isEnabled: string) => string;
2756
+ };
2757
+ readonly setAllowAutoUpdates: {
2758
+ readonly fieldName: "auto updates";
2759
+ readonly success: (isEnabled: string) => string;
2760
+ };
2761
+ readonly setDefaultCmsPublishMode: {
2762
+ readonly promptMessage: "Select CMS publish mode to be used as the default";
2763
+ readonly error: (validModes: string) => string;
2764
+ readonly success: (mode: string) => string;
2765
+ };
2766
+ readonly setHttpTimeout: {
2767
+ readonly promptMessage: "Enter http timeout duration";
2768
+ readonly success: (timeout: string) => string;
2769
+ };
2770
+ };
2336
2771
  readonly commonOpts: {
2337
2772
  readonly options: {
2338
2773
  readonly account: {
@@ -2346,9 +2781,9 @@ export declare const lib: {
2346
2781
  };
2347
2782
  readonly modes: {
2348
2783
  readonly describe: {
2349
- readonly default: (modes: string | number) => string;
2350
- readonly read: (modes: string | number) => string;
2351
- readonly write: (modes: string | number) => string;
2784
+ readonly default: (modes: string) => string;
2785
+ readonly read: (modes: string) => string;
2786
+ readonly write: (modes: string) => string;
2352
2787
  };
2353
2788
  };
2354
2789
  readonly qa: {
@@ -2362,52 +2797,81 @@ export declare const lib: {
2362
2797
  };
2363
2798
  };
2364
2799
  };
2800
+ readonly configMigrate: {
2801
+ readonly deprecatedConfigWarning: (deprecatedConfigPath: string) => string;
2802
+ readonly handleMigration: {
2803
+ readonly description: (archivedConfigName: string) => string;
2804
+ readonly confirmPrompt: "Migrate the deprecated config to the global location?";
2805
+ readonly success: "Your deprecated config file has been successfully migrated.";
2806
+ };
2807
+ readonly handleMergeConfigProperties: {
2808
+ readonly mergeConflictMessage: (count: number, propertyList: string) => string;
2809
+ readonly mergeConfigConflictPrompt: (property: string, newValue: string, oldValue: string) => string;
2810
+ };
2811
+ readonly handleMerge: {
2812
+ readonly description: (archivedConfigName: string) => string;
2813
+ readonly confirmPrompt: "Merge the deprecated config into your global config?";
2814
+ readonly skippedExistingAccounts: (accountIds: (string | number)[]) => string;
2815
+ readonly success: "Your deprecated config file has been successfully merged with the global config file.";
2816
+ };
2817
+ };
2365
2818
  readonly prompts: {
2366
2819
  readonly projectDevTargetAccountPrompt: {
2367
2820
  readonly createNewSandboxOption: "<Test on a new development sandbox>";
2368
2821
  readonly createNewDeveloperTestAccountOption: "<Test on a new developer test account>";
2369
2822
  readonly chooseDefaultAccountOption: () => string;
2370
- readonly promptMessage: (accountType: string | number, accountIdentifier: string | number) => string;
2371
- readonly sandboxLimit: (limit: string | number) => string;
2372
- readonly sandboxLimitWithSuggestion: (limit: string | number, authCommand: string | number) => string;
2373
- readonly developerTestAccountLimit: (limit: string | number) => string;
2374
- readonly confirmDefaultAccount: (accountName: string | number, accountType: string | number) => string;
2375
- readonly confirmUseExistingDeveloperTestAccount: (accountName: string | number) => string;
2823
+ readonly promptMessage: (accountType: string, accountIdentifier: string) => string;
2824
+ readonly sandboxLimit: (limit: string) => string;
2825
+ readonly sandboxLimitWithSuggestion: (limit: string, authCommand: string) => string;
2826
+ readonly developerTestAccountLimit: (limit: string) => string;
2827
+ readonly confirmDefaultAccount: (accountName: string, accountType: string) => string;
2828
+ readonly confirmUseExistingDeveloperTestAccount: (accountName: string) => string;
2376
2829
  readonly noAccountId: "No account ID found for the selected account. Please try again.";
2377
2830
  };
2378
2831
  readonly projectLogsPrompt: {
2379
- readonly functionName: (projectName: string | number) => string;
2832
+ readonly functionName: (projectName: string) => string;
2380
2833
  };
2381
2834
  readonly setAsDefaultAccountPrompt: {
2382
2835
  readonly setAsDefaultAccountMessage: "Set this account as the default?";
2383
- readonly setAsDefaultAccount: (accountName: string | number) => string;
2384
- readonly keepingCurrentDefault: (accountName: string | number) => string;
2836
+ readonly setAsDefaultAccount: (accountName: string) => string;
2837
+ readonly keepingCurrentDefault: (accountName: string) => string;
2838
+ };
2839
+ readonly createDeveloperTestAccountConfigPrompt: {
2840
+ readonly namePrompt: "[--name] What is the name of the test account?";
2841
+ readonly descriptionPrompt: "[--description] What is the description of the test account?";
2842
+ readonly tiersPrompt: "[--tiers] Which product tiers should the test account have?";
2843
+ readonly errors: {
2844
+ readonly tiersError: "Cannot have more than one tier per hub";
2845
+ };
2385
2846
  };
2386
2847
  readonly accountNamePrompt: {
2387
2848
  readonly enterAccountName: "Enter a unique name to reference this account in the CLI:";
2388
2849
  readonly enterDeveloperTestAccountName: "Name your developer test account:";
2389
2850
  readonly enterStandardSandboxName: "Name your standard sandbox:";
2390
2851
  readonly enterDevelopmentSandboxName: "Name your development sandbox:";
2391
- readonly sandboxDefaultName: (sandboxType: string | number) => string;
2392
- readonly developerTestAccountDefaultName: (count: string | number) => string;
2852
+ readonly sandboxDefaultName: (sandboxType: string) => string;
2853
+ readonly developerTestAccountDefaultName: (count: string) => string;
2393
2854
  readonly errors: {
2394
2855
  readonly invalidName: "You entered an invalid name. Please try again.";
2395
2856
  readonly nameRequired: "The name may not be blank. Please try again.";
2396
2857
  readonly spacesInName: "The name may not contain spaces. Please try again.";
2397
- readonly accountNameExists: (name: string | number) => string;
2858
+ readonly accountNameExists: (name: string) => string;
2398
2859
  };
2399
2860
  };
2400
2861
  readonly personalAccessKeyPrompt: {
2401
2862
  readonly enterAccountId: "Enter the account ID for your account (the number under the DOMAIN column at https://app.hubspot.com/myaccounts-beta ): ";
2402
2863
  readonly enterClientId: "Enter your OAuth2 client ID: ";
2403
2864
  readonly enterClientSecret: "Enter your OAuth2 client secret: ";
2404
- readonly enterPersonalAccessKey: "Enter your personal access key: ";
2865
+ readonly enterPersonalAccessKey: "[--personal-access-key] Enter your personal access key: ";
2405
2866
  readonly selectScopes: "Select access scopes (see https://developers.hubspot.com/docs/methods/oauth2/initiate-oauth-integration#scopes)";
2406
2867
  readonly personalAccessKeySetupTitle: "HubSpot Personal Access Key Setup";
2407
- readonly personalAccessKeyBrowserOpenPrep: "A personal access key is required to authenticate the CLI to interact with your HubSpot account. We'll open a secure page in your default browser where you can view and copy your personal access key.";
2408
- readonly personalAccessKeyBrowserOpenPrompt: "Open HubSpot to copy your personal access key?";
2868
+ readonly personalAccessKeyBrowserOpenPrep: "A personal access key is required to authenticate the CLI to interact with your HubSpot account.";
2869
+ readonly personalAccessKeyPromptChoices: {
2870
+ readonly OPEN_BROWSER: "Open HubSpot to copy your personal access key";
2871
+ readonly PASTE_EXISTING: "Enter existing personal access key";
2872
+ };
2409
2873
  readonly logs: {
2410
- readonly openingWebBrowser: (url: string | number) => string;
2874
+ readonly openingWebBrowser: (url: string) => string;
2411
2875
  };
2412
2876
  readonly errors: {
2413
2877
  readonly invalidAccountId: "You did not enter a valid account ID. Please try again.";
@@ -2458,24 +2922,32 @@ export declare const lib: {
2458
2922
  readonly enterName: "[--name] Give your project a name: ";
2459
2923
  readonly enterDest: "[--dest] Enter the folder to create the project in:";
2460
2924
  readonly selectTemplate: "[--template] Choose a project template: ";
2925
+ readonly features: "[--features] Which features would you like your app to include?";
2461
2926
  readonly errors: {
2462
2927
  readonly nameRequired: "A project name is required";
2463
2928
  readonly destRequired: "A project dest is required";
2464
2929
  readonly invalidDest: "There is an existing project at this destination. Please provide a new path for this project.";
2465
2930
  readonly invalidCharacters: "The selected destination contains invalid characters. Please provide a new path and try again.";
2466
- readonly invalidTemplate: (template: string | number) => string;
2931
+ readonly invalidTemplate: (template: string) => string;
2467
2932
  readonly projectTemplateRequired: "Project template is required when projectTemplates is provided";
2468
2933
  };
2469
2934
  };
2470
- readonly selectPublicAppPrompt: {
2471
- readonly selectAppIdMigrate: (accountName: string | number) => string;
2472
- readonly selectAppIdClone: (accountName: string | number) => string;
2935
+ readonly selectAppPrompt: {
2936
+ readonly selectAppId: "[--app] Select an app:";
2937
+ readonly errors: {
2938
+ readonly noApps: "No apps were found for the given account.";
2939
+ readonly invalidAppId: "Invalid app id";
2940
+ };
2941
+ };
2942
+ readonly selectPublicAppForMigrationPrompt: {
2943
+ readonly selectAppIdMigrate: (accountName: string) => string;
2944
+ readonly selectAppIdClone: (accountName: string) => string;
2473
2945
  readonly errors: {
2474
2946
  readonly noAccountId: "An account ID is required to select an app.";
2475
2947
  readonly noAppsMigration: () => string;
2476
2948
  readonly noAppsClone: () => string;
2477
- readonly noAppsMigrationMessage: (accountName: string | number) => string;
2478
- readonly noAppsCloneMessage: (accountName: string | number) => string;
2949
+ readonly noAppsMigrationMessage: (accountName: string) => string;
2950
+ readonly noAppsCloneMessage: (accountName: string) => string;
2479
2951
  readonly errorFetchingApps: "There was an error fetching public apps.";
2480
2952
  readonly cannotBeMigrated: "Cannot be migrated";
2481
2953
  };
@@ -2483,7 +2955,7 @@ export declare const lib: {
2483
2955
  readonly downloadProjectPrompt: {
2484
2956
  readonly selectProject: "Select a project to download:";
2485
2957
  readonly errors: {
2486
- readonly projectNotFound: (projectName: string | number, accountId: string | number) => string;
2958
+ readonly projectNotFound: (projectName: string, accountId: string) => string;
2487
2959
  readonly accountIdRequired: "An account ID is required to download a project.";
2488
2960
  };
2489
2961
  };
@@ -2492,12 +2964,14 @@ export declare const lib: {
2492
2964
  readonly enterName: "[--name] Give your component a name: ";
2493
2965
  readonly errors: {
2494
2966
  readonly nameRequired: "A component name is required";
2495
- readonly invalidType: (type: string | number) => string;
2967
+ readonly componentRequired: "Must select a feature to add";
2968
+ readonly invalidType: (type: string) => string;
2969
+ readonly cannotAddFeature: (feature: string, reasons: string | boolean) => string;
2496
2970
  };
2497
2971
  };
2498
2972
  readonly secretPrompt: {
2499
- readonly enterValue: "Enter a value for your secret: ";
2500
- readonly enterName: "Enter a name for your secret: ";
2973
+ readonly enterValue: "Enter a value for the secret: ";
2974
+ readonly enterName: "Enter the name of the secret to add: ";
2501
2975
  readonly selectSecretUpdate: "Select the secret you want to update";
2502
2976
  readonly selectSecretDelete: "Select the secret you want to delete";
2503
2977
  readonly errors: {
@@ -2520,13 +2994,13 @@ export declare const lib: {
2520
2994
  readonly srcRequired: "You must specify a source directory.";
2521
2995
  readonly destRequired: "You must specify a destination directory.";
2522
2996
  };
2523
- readonly fieldsPrompt: (dir: string | number) => string;
2997
+ readonly fieldsPrompt: (dir: string) => string;
2524
2998
  };
2525
2999
  readonly projectNamePrompt: {
2526
3000
  readonly enterName: "[--project] Enter project name:";
2527
3001
  readonly errors: {
2528
3002
  readonly invalidName: "You entered an invalid name. Please try again.";
2529
- readonly projectDoesNotExist: (projectName: string | number, accountIdentifier: string | number) => string;
3003
+ readonly projectDoesNotExist: (projectName: string, accountIdentifier: string) => string;
2530
3004
  };
2531
3005
  };
2532
3006
  readonly previewPrompt: {
@@ -2538,19 +3012,20 @@ export declare const lib: {
2538
3012
  readonly destRequired: "You must specify a destination directory.";
2539
3013
  };
2540
3014
  };
2541
- readonly installPublicAppPrompt: {
3015
+ readonly installAppPrompt: {
2542
3016
  readonly explanation: "Local development requires this app to be installed in the target test account";
2543
3017
  readonly reinstallExplanation: "This app's required scopes have been updated since it was last installed on the target test account. To avoid issues with local development, we recommend reinstalling the app with the updated scopes.";
2544
3018
  readonly prompt: "Open HubSpot to install this app?";
3019
+ readonly autoPrompt: "Install this app in your target test account?";
2545
3020
  readonly reinstallPrompt: "Open HubSpot to reinstall this app?";
2546
- readonly decline: () => string;
3021
+ readonly decline: `To continue local development of this app, install it in your target test account and re-run ${string}`;
2547
3022
  };
2548
3023
  readonly selectHubDBTablePrompt: {
2549
3024
  readonly selectTable: "Select a HubDB table:";
2550
3025
  readonly enterDest: "Enter the destination path:";
2551
3026
  readonly errors: {
2552
- readonly noTables: (accountId: string | number) => string;
2553
- readonly errorFetchingTables: (accountId: string | number) => string;
3027
+ readonly noTables: (accountId: string) => string;
3028
+ readonly errorFetchingTables: (accountId: string) => string;
2554
3029
  readonly destRequired: "A destination is required";
2555
3030
  readonly invalidDest: "The selected destination already exists. Please provide a new path.";
2556
3031
  readonly invalidCharacters: "The selected destination contains invalid characters. Please provide a new path and try again.";
@@ -2572,20 +3047,20 @@ export declare const lib: {
2572
3047
  readonly developerTestAccount: {
2573
3048
  readonly create: {
2574
3049
  readonly loading: {
2575
- readonly add: (accountName: string | number) => string;
2576
- readonly fail: (accountName: string | number) => string;
2577
- readonly succeed: (accountName: string | number, accountId: string | number) => string;
3050
+ readonly add: (accountName: string) => string;
3051
+ readonly fail: (accountName: string) => string;
3052
+ readonly succeed: (accountName: string, accountId: string) => string;
2578
3053
  };
2579
3054
  readonly success: {
2580
- readonly configFileUpdated: (accountName: string | number, authType: string | number) => string;
3055
+ readonly configFileUpdated: (accountName: string, authType: string) => string;
2581
3056
  };
2582
3057
  readonly failure: {
2583
- readonly invalidUser: (accountName: string | number, parentAccountName: string | number) => string;
2584
- readonly limit: (accountName: string | number, limit: string | number) => string;
2585
- readonly alreadyInConfig: (accountName: string | number, limit: string | number) => string;
3058
+ readonly invalidUser: (accountName: string, parentAccountName: string) => string;
3059
+ readonly limit: (accountName: string, limit: string) => string;
3060
+ readonly alreadyInConfig: (accountName: string, limit: string) => string;
2586
3061
  readonly scopes: {
2587
3062
  readonly message: "The personal access key you provided doesn't include developer test account permissions.";
2588
- readonly instructions: (accountName: string | number, url: string | number) => string;
3063
+ readonly instructions: (accountName: string | number, url: string) => string;
2589
3064
  };
2590
3065
  };
2591
3066
  };
@@ -2594,85 +3069,85 @@ export declare const lib: {
2594
3069
  readonly create: {
2595
3070
  readonly developer: {
2596
3071
  readonly loading: {
2597
- readonly add: (accountName: string | number) => string;
2598
- readonly fail: (accountName: string | number) => string;
2599
- readonly succeed: (accountName: string | number, accountId: string | number) => string;
3072
+ readonly add: (accountName: string) => string;
3073
+ readonly fail: (accountName: string) => string;
3074
+ readonly succeed: (accountName: string, accountId: string) => string;
2600
3075
  };
2601
3076
  readonly success: {
2602
- readonly configFileUpdated: (accountName: string | number, authType: string | number) => string;
3077
+ readonly configFileUpdated: (accountName: string, authType: string) => string;
2603
3078
  };
2604
3079
  readonly failure: {
2605
- readonly invalidUser: (accountName: string | number, parentAccountName: string | number) => string;
2606
- readonly limit: (accountName: string | number, limit: string | number) => string;
2607
- readonly alreadyInConfig: (accountName: string | number, limit: string | number) => string;
3080
+ readonly invalidUser: (accountName: string, parentAccountName: string) => string;
3081
+ readonly limit: (accountName: string, limit: string) => string;
3082
+ readonly alreadyInConfig: (accountName: string, limit: string) => string;
2608
3083
  readonly scopes: {
2609
3084
  readonly message: "The personal access key you provided doesn't include developer sandbox permissions.";
2610
- readonly instructions: (accountName: string | number, url: string | number) => string;
3085
+ readonly instructions: (accountName: string | number, url: string) => string;
2611
3086
  };
2612
3087
  readonly generic: "An error occurred while creating a developer sandbox";
2613
3088
  };
2614
3089
  };
2615
3090
  readonly standard: {
2616
3091
  readonly loading: {
2617
- readonly add: (accountName: string | number) => string;
2618
- readonly fail: (accountName: string | number) => string;
2619
- readonly succeed: (accountName: string | number, accountId: string | number) => string;
3092
+ readonly add: (accountName: string) => string;
3093
+ readonly fail: (accountName: string) => string;
3094
+ readonly succeed: (accountName: string, accountId: string) => string;
2620
3095
  };
2621
3096
  readonly success: {
2622
- readonly configFileUpdated: (accountName: string | number, authType: string | number) => string;
3097
+ readonly configFileUpdated: (accountName: string, authType: string) => string;
2623
3098
  };
2624
3099
  readonly failure: {
2625
- readonly invalidUser: (accountName: string | number, parentAccountName: string | number) => string;
2626
- readonly limit: (accountName: string | number, limit: string | number) => string;
2627
- readonly alreadyInConfig: (accountName: string | number, limit: string | number) => string;
3100
+ readonly invalidUser: (accountName: string, parentAccountName: string) => string;
3101
+ readonly limit: (accountName: string, limit: string) => string;
3102
+ readonly alreadyInConfig: (accountName: string, limit: string) => string;
2628
3103
  readonly scopes: {
2629
3104
  readonly message: "The personal access key you provided doesn't include standard sandbox permissions.";
2630
- readonly instructions: (accountName: string | number, url: string | number) => string;
3105
+ readonly instructions: (accountName: string, url: string) => string;
2631
3106
  };
2632
3107
  };
2633
3108
  };
2634
3109
  };
2635
3110
  readonly sync: {
2636
3111
  readonly loading: {
2637
- readonly add: (accountName: string | number) => string;
2638
- readonly fail: (accountName: string | number) => string;
2639
- readonly succeed: (accountName: string | number) => string;
3112
+ readonly add: (accountName: string) => string;
3113
+ readonly fail: (accountName: string) => string;
3114
+ readonly succeed: (accountName: string) => string;
2640
3115
  };
2641
3116
  readonly success: {
2642
- readonly configFileUpdated: (accountName: string | number, authType: string | number) => string;
3117
+ readonly configFileUpdated: (accountName: string, authType: string) => string;
2643
3118
  };
2644
3119
  readonly failure: {
2645
- readonly invalidUser: (accountName: string | number, parentAccountName: string | number) => string;
3120
+ readonly invalidUser: (accountName: string, parentAccountName: string) => string;
2646
3121
  readonly scopes: {
2647
3122
  readonly message: "The personal access key you provided doesn't include sandbox sync permissions.";
2648
- readonly instructions: (accountName: string | number, url: string | number) => string;
3123
+ readonly instructions: (accountName: string, url: string) => string;
2649
3124
  };
2650
3125
  };
2651
3126
  };
2652
3127
  };
2653
3128
  readonly errorHandlers: {
2654
3129
  readonly index: {
2655
- readonly errorOccurred: (error: string | number) => string;
2656
- readonly errorContext: (context: string | number) => string;
2657
- readonly errorCause: (cause: string | number) => string;
3130
+ readonly errorOccurred: (error: string) => string;
3131
+ readonly errorContext: (context: string) => string;
3132
+ readonly errorCause: (cause: string) => string;
2658
3133
  readonly unknownErrorOccurred: "An unknown error has occurred.";
2659
3134
  };
2660
3135
  readonly suppressErrors: {
2661
3136
  readonly platformVersionErrors: {
2662
3137
  readonly header: "Platform version update required";
2663
- readonly unspecifiedPlatformVersion: (platformVersion: string | number) => string;
2664
- readonly platformVersionRetired: (platformVersion: string | number) => string;
2665
- readonly nonExistentPlatformVersion: (platformVersion: string | number) => string;
3138
+ readonly unspecifiedPlatformVersion: (platformVersion: string) => string;
3139
+ readonly platformVersionRetired: (platformVersion: string) => string;
3140
+ readonly nonExistentPlatformVersion: (platformVersion: string) => string;
2666
3141
  readonly updateProject: "Please update your project to the latest version and try again.";
2667
3142
  readonly docsLink: "Projects platform versioning (BETA)";
2668
- readonly betaLink: (docsLink: string | number) => string;
3143
+ readonly betaLink: (docsLink: string) => string;
2669
3144
  };
2670
- readonly missingScopeError: (request: string | number, accountName: string | number, authCommand: string | number) => string;
3145
+ readonly missingScopeError: (request: string, accountName: string, authCommand: string) => string;
2671
3146
  };
2672
3147
  };
2673
3148
  readonly serverless: {
2674
3149
  readonly verifyAccessKeyAndUserAccess: {
2675
- readonly fetchScopeDataError: (scopeGroup: string | number) => string;
3150
+ readonly fetchScopeDataError: (scopeGroup: string) => string;
2676
3151
  readonly portalMissingScope: "Your account does not have access to this action. Talk to an account admin to request it.";
2677
3152
  readonly userMissingScope: "You don't have access to this action. Ask an account admin to change your permissions in Users & Teams settings.";
2678
3153
  readonly genericMissingScope: "Your access key does not allow this action. Please generate a new access key by running `hs auth personalaccesskey`.";
@@ -2684,49 +3159,49 @@ export declare const lib: {
2684
3159
  readonly accountChecks: {
2685
3160
  readonly active: "Default account active";
2686
3161
  readonly inactive: "Default account isn't active";
2687
- readonly inactiveSecondary: (command: string | number) => string;
3162
+ readonly inactiveSecondary: (command: string) => string;
2688
3163
  readonly unableToDetermine: "Unable to determine if the portal is active";
2689
3164
  readonly pak: {
2690
3165
  readonly incomplete: "Personal access key is valid, but there are more scopes available to your user that are not included in your key.";
2691
- readonly incompleteSecondary: (command: string | number, link: string | number) => string;
3166
+ readonly incompleteSecondary: (command: string, link: string) => string;
2692
3167
  readonly invalid: "Personal access key is invalid";
2693
- readonly invalidSecondary: (command: string | number) => string;
2694
- readonly valid: (link: string | number) => string;
3168
+ readonly invalidSecondary: (command: string) => string;
3169
+ readonly valid: (link: string) => string;
2695
3170
  readonly viewScopes: "View selected scopes";
2696
3171
  };
2697
3172
  };
2698
3173
  readonly nodeChecks: {
2699
3174
  readonly unableToDetermine: "Unable to determine what version of node is installed";
2700
- readonly minimumNotMet: (nodeVersion: string | number) => string;
2701
- readonly success: (nodeVersion: string | number) => string;
3175
+ readonly minimumNotMet: (nodeVersion: string) => string;
3176
+ readonly success: (nodeVersion: string) => string;
2702
3177
  };
2703
3178
  readonly npmChecks: {
2704
3179
  readonly notInstalled: "npm is not installed";
2705
- readonly installed: (npmVersion: string | number) => string;
3180
+ readonly installed: (npmVersion: string) => string;
2706
3181
  readonly unableToDetermine: "Unable to determine if npm is installed";
2707
3182
  };
2708
3183
  readonly hsChecks: {
2709
- readonly notLatest: (hsVersion: string | number) => string;
2710
- readonly notLatestSecondary: (command: string | number, hsVersion: string | number) => string;
2711
- readonly latest: (hsVersion: string | number) => string;
3184
+ readonly notLatest: (hsVersion: string) => string;
3185
+ readonly notLatestSecondary: (command: string, hsVersion: string) => string;
3186
+ readonly latest: (hsVersion: string) => string;
2712
3187
  readonly unableToDetermine: "Unable to determine if HubSpot CLI is up to date.";
2713
- readonly unableToDetermineSecondary: (command: string | number, link: string | number) => string;
3188
+ readonly unableToDetermineSecondary: (command: string, link: string) => string;
2714
3189
  readonly unableToDetermineSecondaryLink: "npm HubSpot CLI version history";
2715
3190
  };
2716
3191
  readonly projectDependenciesChecks: {
2717
- readonly missingDependencies: (dir: string | number) => string;
2718
- readonly missingDependenciesSecondary: (command: string | number) => string;
2719
- readonly unableToDetermine: (dir: string | number) => string;
3192
+ readonly missingDependencies: (dir: string) => string;
3193
+ readonly missingDependenciesSecondary: (command: string) => string;
3194
+ readonly unableToDetermine: (dir: string) => string;
2720
3195
  readonly success: "App dependencies are installed and up to date";
2721
3196
  };
2722
3197
  readonly files: {
2723
- readonly invalidJson: (filename: string | number) => string;
3198
+ readonly invalidJson: (filename: string) => string;
2724
3199
  readonly validJson: "JSON files valid";
2725
3200
  };
2726
3201
  readonly port: {
2727
- readonly inUse: (port: string | number) => string;
2728
- readonly inUseSecondary: (command: string | number) => string;
2729
- readonly available: (port: string | number) => string;
3202
+ readonly inUse: (port: string) => string;
3203
+ readonly inUseSecondary: (command: string) => string;
3204
+ readonly available: (port: string) => string;
2730
3205
  };
2731
3206
  readonly diagnosis: {
2732
3207
  readonly cli: {
@@ -2734,19 +3209,19 @@ export declare const lib: {
2734
3209
  };
2735
3210
  readonly cliConfig: {
2736
3211
  readonly header: "CLI configuration";
2737
- readonly configFileSubHeader: (filename: string | number) => string;
2738
- readonly defaultAccountSubHeader: (accountDetails: string | number) => string;
3212
+ readonly configFileSubHeader: (filename: string) => string;
3213
+ readonly defaultAccountSubHeader: (accountDetails: string) => string;
2739
3214
  readonly noConfigFile: "CLI configuration not found";
2740
- readonly noConfigFileSecondary: (command: string | number) => string;
3215
+ readonly noConfigFileSecondary: (command: string) => string;
2741
3216
  };
2742
3217
  readonly projectConfig: {
2743
3218
  readonly header: "Project configuration";
2744
- readonly projectDirSubHeader: (projectDir: string | number) => string;
2745
- readonly projectNameSubHeader: (projectName: string | number) => string;
3219
+ readonly projectDirSubHeader: (projectDir: string) => string;
3220
+ readonly projectNameSubHeader: (projectName: string) => string;
2746
3221
  };
2747
3222
  readonly counts: {
2748
- readonly errors: (count: string | number) => string;
2749
- readonly warnings: (count: string | number) => string;
3223
+ readonly errors: (count: string) => string;
3224
+ readonly warnings: (count: string) => string;
2750
3225
  };
2751
3226
  };
2752
3227
  };
@@ -2754,8 +3229,8 @@ export declare const lib: {
2754
3229
  readonly missingClientId: "Error building oauth URL: missing client ID.";
2755
3230
  };
2756
3231
  readonly migrate: {
2757
- readonly componentsToBeMigrated: (components: string | number) => string;
2758
- readonly componentsThatWillNotBeMigrated: (components: string | number) => string;
3232
+ readonly componentsToBeMigrated: (components: string) => string;
3233
+ readonly componentsThatWillNotBeMigrated: (components: string) => string;
2759
3234
  readonly sourceContentsMoved: (newLocation: string) => string;
2760
3235
  readonly projectMigrationWarningTitle: "⚠️ Important: Migrating to platformVersion 2025.2 is irreversible ⚠️";
2761
3236
  readonly projectMigrationWarning: string;
@@ -2764,7 +3239,7 @@ export declare const lib: {
2764
3239
  readonly invalidConfig: "The project configuration file is invalid. Please check the config file and try again.";
2765
3240
  readonly doesNotExist: (account: number) => string;
2766
3241
  readonly multipleApps: "Multiple apps found in project, this is not allowed in 2025.2";
2767
- readonly alreadyExists: (projectName: string | number) => string;
3242
+ readonly alreadyExists: (projectName: string) => string;
2768
3243
  };
2769
3244
  readonly unmigratableReasons: {
2770
3245
  readonly upToDate: "App is already up to date";
@@ -2772,21 +3247,21 @@ export declare const lib: {
2772
3247
  readonly listedInMarketplace: "Listed apps are not currently migratable";
2773
3248
  readonly projectConnectedToGitHub: (projectName: string | undefined, accountId: number) => string;
2774
3249
  readonly partOfProjectAlready: `This app is part of a project, run ${string} from the project directory to migrate it`;
2775
- readonly generic: (reasonCode: string | number) => string;
3250
+ readonly generic: (reasonCode: string) => string;
2776
3251
  };
2777
- readonly noAppsEligible: (accountId: string | number, reasons: string[]) => string;
3252
+ readonly noAppsEligible: (accountId: string, reasons: string[]) => string;
2778
3253
  readonly invalidAccountTypeTitle: string;
2779
- readonly invalidAccountTypeDescription: (useCommand: string | number, authCommand: string | number) => string;
2780
- readonly appWithAppIdNotFound: (appId: string | number) => string;
3254
+ readonly invalidAccountTypeDescription: (useCommand: string, authCommand: string) => string;
3255
+ readonly appWithAppIdNotFound: (appId: number) => string;
2781
3256
  readonly noAppsForProject: (projectName: string) => string;
2782
3257
  readonly migrationFailed: "Migration Failed";
2783
- readonly notUngatedForUnifiedApps: (account: string | number) => string;
3258
+ readonly notUngatedForUnifiedApps: (account: string) => string;
2784
3259
  };
2785
3260
  readonly prompt: {
2786
3261
  readonly chooseApp: "Which app would you like to migrate?";
2787
3262
  readonly inputName: "[--name] What would you like to name the project?";
2788
3263
  readonly inputDest: "[--dest] Where would you like to save the project?";
2789
- readonly uidForComponent: (componentName: string | number) => string;
3264
+ readonly uidForComponent: (componentName: string) => string;
2790
3265
  readonly proceed: "Would you like to proceed?";
2791
3266
  };
2792
3267
  readonly spinners: {