@salesforce/b2c-cli 0.2.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (522) hide show
  1. package/README.md +72 -3
  2. package/bin/dev.cmd +3 -0
  3. package/bin/dev.js +14 -1
  4. package/dist/commands/am/clients/create.d.ts +28 -0
  5. package/dist/commands/am/clients/create.js +156 -0
  6. package/dist/commands/am/clients/create.js.map +1 -0
  7. package/dist/commands/am/clients/delete.d.ts +13 -0
  8. package/dist/commands/am/clients/delete.js +29 -0
  9. package/dist/commands/am/clients/delete.js.map +1 -0
  10. package/dist/commands/am/clients/get.d.ts +26 -0
  11. package/dist/commands/am/clients/get.js +186 -0
  12. package/dist/commands/am/clients/get.js.map +1 -0
  13. package/dist/commands/am/clients/list.d.ts +18 -0
  14. package/dist/commands/am/clients/list.js +139 -0
  15. package/dist/commands/am/clients/list.js.map +1 -0
  16. package/dist/commands/am/clients/password.d.ts +16 -0
  17. package/dist/commands/am/clients/password.js +51 -0
  18. package/dist/commands/am/clients/password.js.map +1 -0
  19. package/dist/commands/am/clients/update.d.ts +34 -0
  20. package/dist/commands/am/clients/update.js +146 -0
  21. package/dist/commands/am/clients/update.js.map +1 -0
  22. package/dist/commands/am/orgs/get.d.ts +23 -0
  23. package/dist/commands/am/orgs/get.js +175 -0
  24. package/dist/commands/am/orgs/get.js.map +1 -0
  25. package/dist/commands/am/orgs/list.d.ts +18 -0
  26. package/dist/commands/am/orgs/list.js +149 -0
  27. package/dist/commands/am/orgs/list.js.map +1 -0
  28. package/dist/commands/am/roles/get.d.ts +15 -0
  29. package/dist/commands/am/roles/get.js +63 -0
  30. package/dist/commands/am/roles/get.js.map +1 -0
  31. package/dist/commands/am/roles/grant.d.ts +18 -0
  32. package/dist/commands/am/roles/grant.js +66 -0
  33. package/dist/commands/am/roles/grant.js.map +1 -0
  34. package/dist/commands/am/roles/list.d.ts +22 -0
  35. package/dist/commands/am/roles/list.js +142 -0
  36. package/dist/commands/am/roles/list.js.map +1 -0
  37. package/dist/commands/am/roles/revoke.d.ts +18 -0
  38. package/dist/commands/am/roles/revoke.js +66 -0
  39. package/dist/commands/am/roles/revoke.js.map +1 -0
  40. package/dist/commands/am/users/create.d.ts +17 -0
  41. package/dist/commands/am/users/create.js +56 -0
  42. package/dist/commands/am/users/create.js.map +1 -0
  43. package/dist/commands/am/users/delete.d.ts +16 -0
  44. package/dist/commands/am/users/delete.js +63 -0
  45. package/dist/commands/am/users/delete.js.map +1 -0
  46. package/dist/commands/am/users/get.d.ts +23 -0
  47. package/dist/commands/am/users/get.js +161 -0
  48. package/dist/commands/am/users/get.js.map +1 -0
  49. package/dist/commands/am/users/list.d.ts +21 -0
  50. package/dist/commands/am/users/list.js +162 -0
  51. package/dist/commands/am/users/list.js.map +1 -0
  52. package/dist/commands/am/users/reset.d.ts +13 -0
  53. package/dist/commands/am/users/reset.js +43 -0
  54. package/dist/commands/am/users/reset.js.map +1 -0
  55. package/dist/commands/am/users/update.d.ts +18 -0
  56. package/dist/commands/am/users/update.js +63 -0
  57. package/dist/commands/am/users/update.js.map +1 -0
  58. package/dist/commands/auth/token.js +2 -2
  59. package/dist/commands/auth/token.js.map +1 -1
  60. package/dist/commands/code/activate.d.ts +5 -0
  61. package/dist/commands/code/activate.js +2 -2
  62. package/dist/commands/code/activate.js.map +1 -1
  63. package/dist/commands/code/delete.d.ts +5 -0
  64. package/dist/commands/code/delete.js +2 -2
  65. package/dist/commands/code/delete.js.map +1 -1
  66. package/dist/commands/code/deploy.d.ts +5 -0
  67. package/dist/commands/code/deploy.js +12 -3
  68. package/dist/commands/code/deploy.js.map +1 -1
  69. package/dist/commands/code/list.js +2 -2
  70. package/dist/commands/code/list.js.map +1 -1
  71. package/dist/commands/code/watch.d.ts +5 -0
  72. package/dist/commands/code/watch.js +6 -3
  73. package/dist/commands/code/watch.js.map +1 -1
  74. package/dist/commands/content/export.d.ts +57 -0
  75. package/dist/commands/content/export.js +217 -0
  76. package/dist/commands/content/export.js.map +1 -0
  77. package/dist/commands/content/list.d.ts +56 -0
  78. package/dist/commands/content/list.js +133 -0
  79. package/dist/commands/content/list.js.map +1 -0
  80. package/dist/commands/docs/download.d.ts +6 -1
  81. package/dist/commands/docs/download.js +1 -1
  82. package/dist/commands/docs/download.js.map +1 -1
  83. package/dist/commands/docs/read.d.ts +1 -1
  84. package/dist/commands/docs/read.js +1 -1
  85. package/dist/commands/docs/read.js.map +1 -1
  86. package/dist/commands/docs/schema.d.ts +1 -1
  87. package/dist/commands/docs/schema.js +1 -1
  88. package/dist/commands/docs/schema.js.map +1 -1
  89. package/dist/commands/docs/search.d.ts +1 -1
  90. package/dist/commands/docs/search.js +1 -1
  91. package/dist/commands/docs/search.js.map +1 -1
  92. package/dist/commands/ecdn/cache/purge.d.ts +1 -0
  93. package/dist/commands/ecdn/cache/purge.js +2 -2
  94. package/dist/commands/ecdn/cache/purge.js.map +1 -1
  95. package/dist/commands/ecdn/certificates/add.d.ts +1 -0
  96. package/dist/commands/ecdn/certificates/add.js +2 -2
  97. package/dist/commands/ecdn/certificates/add.js.map +1 -1
  98. package/dist/commands/ecdn/certificates/delete.d.ts +1 -0
  99. package/dist/commands/ecdn/certificates/delete.js +2 -2
  100. package/dist/commands/ecdn/certificates/delete.js.map +1 -1
  101. package/dist/commands/ecdn/certificates/list.d.ts +1 -0
  102. package/dist/commands/ecdn/certificates/list.js +2 -2
  103. package/dist/commands/ecdn/certificates/list.js.map +1 -1
  104. package/dist/commands/ecdn/certificates/update.d.ts +1 -0
  105. package/dist/commands/ecdn/certificates/update.js +2 -2
  106. package/dist/commands/ecdn/certificates/update.js.map +1 -1
  107. package/dist/commands/ecdn/certificates/validate.d.ts +1 -0
  108. package/dist/commands/ecdn/certificates/validate.js +2 -2
  109. package/dist/commands/ecdn/certificates/validate.js.map +1 -1
  110. package/dist/commands/ecdn/cipher-suites/get.d.ts +1 -0
  111. package/dist/commands/ecdn/cipher-suites/get.js +2 -2
  112. package/dist/commands/ecdn/cipher-suites/get.js.map +1 -1
  113. package/dist/commands/ecdn/cipher-suites/update.d.ts +1 -0
  114. package/dist/commands/ecdn/cipher-suites/update.js +2 -2
  115. package/dist/commands/ecdn/cipher-suites/update.js.map +1 -1
  116. package/dist/commands/ecdn/logpush/jobs/create.d.ts +1 -0
  117. package/dist/commands/ecdn/logpush/jobs/create.js +2 -2
  118. package/dist/commands/ecdn/logpush/jobs/create.js.map +1 -1
  119. package/dist/commands/ecdn/logpush/jobs/delete.d.ts +1 -0
  120. package/dist/commands/ecdn/logpush/jobs/delete.js +2 -2
  121. package/dist/commands/ecdn/logpush/jobs/delete.js.map +1 -1
  122. package/dist/commands/ecdn/logpush/jobs/get.d.ts +1 -0
  123. package/dist/commands/ecdn/logpush/jobs/get.js +2 -2
  124. package/dist/commands/ecdn/logpush/jobs/get.js.map +1 -1
  125. package/dist/commands/ecdn/logpush/jobs/list.d.ts +1 -0
  126. package/dist/commands/ecdn/logpush/jobs/list.js +2 -2
  127. package/dist/commands/ecdn/logpush/jobs/list.js.map +1 -1
  128. package/dist/commands/ecdn/logpush/jobs/update.d.ts +1 -0
  129. package/dist/commands/ecdn/logpush/jobs/update.js +2 -2
  130. package/dist/commands/ecdn/logpush/jobs/update.js.map +1 -1
  131. package/dist/commands/ecdn/logpush/ownership.d.ts +1 -0
  132. package/dist/commands/ecdn/logpush/ownership.js +2 -2
  133. package/dist/commands/ecdn/logpush/ownership.js.map +1 -1
  134. package/dist/commands/ecdn/mrt-rules/create.d.ts +1 -0
  135. package/dist/commands/ecdn/mrt-rules/create.js +2 -2
  136. package/dist/commands/ecdn/mrt-rules/create.js.map +1 -1
  137. package/dist/commands/ecdn/mrt-rules/delete.d.ts +1 -0
  138. package/dist/commands/ecdn/mrt-rules/delete.js +2 -2
  139. package/dist/commands/ecdn/mrt-rules/delete.js.map +1 -1
  140. package/dist/commands/ecdn/mrt-rules/get.d.ts +1 -0
  141. package/dist/commands/ecdn/mrt-rules/get.js +2 -2
  142. package/dist/commands/ecdn/mrt-rules/get.js.map +1 -1
  143. package/dist/commands/ecdn/mrt-rules/rules/delete.d.ts +1 -0
  144. package/dist/commands/ecdn/mrt-rules/rules/delete.js +2 -2
  145. package/dist/commands/ecdn/mrt-rules/rules/delete.js.map +1 -1
  146. package/dist/commands/ecdn/mrt-rules/rules/update.d.ts +1 -0
  147. package/dist/commands/ecdn/mrt-rules/rules/update.js +2 -2
  148. package/dist/commands/ecdn/mrt-rules/rules/update.js.map +1 -1
  149. package/dist/commands/ecdn/mrt-rules/update.d.ts +1 -0
  150. package/dist/commands/ecdn/mrt-rules/update.js +2 -2
  151. package/dist/commands/ecdn/mrt-rules/update.js.map +1 -1
  152. package/dist/commands/ecdn/mtls/create.d.ts +1 -0
  153. package/dist/commands/ecdn/mtls/create.js +2 -2
  154. package/dist/commands/ecdn/mtls/create.js.map +1 -1
  155. package/dist/commands/ecdn/mtls/delete.d.ts +1 -0
  156. package/dist/commands/ecdn/mtls/delete.js +2 -2
  157. package/dist/commands/ecdn/mtls/delete.js.map +1 -1
  158. package/dist/commands/ecdn/mtls/get.d.ts +1 -0
  159. package/dist/commands/ecdn/mtls/get.js +2 -2
  160. package/dist/commands/ecdn/mtls/get.js.map +1 -1
  161. package/dist/commands/ecdn/mtls/list.d.ts +1 -0
  162. package/dist/commands/ecdn/mtls/list.js +2 -2
  163. package/dist/commands/ecdn/mtls/list.js.map +1 -1
  164. package/dist/commands/ecdn/origin-headers/delete.d.ts +1 -0
  165. package/dist/commands/ecdn/origin-headers/delete.js +2 -2
  166. package/dist/commands/ecdn/origin-headers/delete.js.map +1 -1
  167. package/dist/commands/ecdn/origin-headers/get.d.ts +1 -0
  168. package/dist/commands/ecdn/origin-headers/get.js +2 -2
  169. package/dist/commands/ecdn/origin-headers/get.js.map +1 -1
  170. package/dist/commands/ecdn/origin-headers/set.d.ts +1 -0
  171. package/dist/commands/ecdn/origin-headers/set.js +2 -2
  172. package/dist/commands/ecdn/origin-headers/set.js.map +1 -1
  173. package/dist/commands/ecdn/page-shield/notifications/create.d.ts +1 -0
  174. package/dist/commands/ecdn/page-shield/notifications/create.js +2 -2
  175. package/dist/commands/ecdn/page-shield/notifications/create.js.map +1 -1
  176. package/dist/commands/ecdn/page-shield/notifications/delete.d.ts +1 -0
  177. package/dist/commands/ecdn/page-shield/notifications/delete.js +2 -2
  178. package/dist/commands/ecdn/page-shield/notifications/delete.js.map +1 -1
  179. package/dist/commands/ecdn/page-shield/notifications/list.d.ts +1 -0
  180. package/dist/commands/ecdn/page-shield/notifications/list.js +2 -2
  181. package/dist/commands/ecdn/page-shield/notifications/list.js.map +1 -1
  182. package/dist/commands/ecdn/page-shield/policies/create.d.ts +1 -0
  183. package/dist/commands/ecdn/page-shield/policies/create.js +2 -2
  184. package/dist/commands/ecdn/page-shield/policies/create.js.map +1 -1
  185. package/dist/commands/ecdn/page-shield/policies/delete.d.ts +1 -0
  186. package/dist/commands/ecdn/page-shield/policies/delete.js +2 -2
  187. package/dist/commands/ecdn/page-shield/policies/delete.js.map +1 -1
  188. package/dist/commands/ecdn/page-shield/policies/get.d.ts +1 -0
  189. package/dist/commands/ecdn/page-shield/policies/get.js +2 -2
  190. package/dist/commands/ecdn/page-shield/policies/get.js.map +1 -1
  191. package/dist/commands/ecdn/page-shield/policies/list.d.ts +1 -0
  192. package/dist/commands/ecdn/page-shield/policies/list.js +2 -2
  193. package/dist/commands/ecdn/page-shield/policies/list.js.map +1 -1
  194. package/dist/commands/ecdn/page-shield/policies/update.d.ts +1 -0
  195. package/dist/commands/ecdn/page-shield/policies/update.js +2 -2
  196. package/dist/commands/ecdn/page-shield/policies/update.js.map +1 -1
  197. package/dist/commands/ecdn/page-shield/scripts/get.d.ts +1 -0
  198. package/dist/commands/ecdn/page-shield/scripts/get.js +2 -2
  199. package/dist/commands/ecdn/page-shield/scripts/get.js.map +1 -1
  200. package/dist/commands/ecdn/page-shield/scripts/list.d.ts +1 -0
  201. package/dist/commands/ecdn/page-shield/scripts/list.js +2 -2
  202. package/dist/commands/ecdn/page-shield/scripts/list.js.map +1 -1
  203. package/dist/commands/ecdn/security/get.d.ts +1 -0
  204. package/dist/commands/ecdn/security/get.js +2 -2
  205. package/dist/commands/ecdn/security/get.js.map +1 -1
  206. package/dist/commands/ecdn/security/update.d.ts +1 -0
  207. package/dist/commands/ecdn/security/update.js +2 -2
  208. package/dist/commands/ecdn/security/update.js.map +1 -1
  209. package/dist/commands/ecdn/speed/get.d.ts +1 -0
  210. package/dist/commands/ecdn/speed/get.js +2 -2
  211. package/dist/commands/ecdn/speed/get.js.map +1 -1
  212. package/dist/commands/ecdn/speed/update.d.ts +1 -0
  213. package/dist/commands/ecdn/speed/update.js +2 -2
  214. package/dist/commands/ecdn/speed/update.js.map +1 -1
  215. package/dist/commands/ecdn/waf/groups/list.d.ts +1 -0
  216. package/dist/commands/ecdn/waf/groups/list.js +2 -2
  217. package/dist/commands/ecdn/waf/groups/list.js.map +1 -1
  218. package/dist/commands/ecdn/waf/groups/update.d.ts +1 -0
  219. package/dist/commands/ecdn/waf/groups/update.js +2 -2
  220. package/dist/commands/ecdn/waf/groups/update.js.map +1 -1
  221. package/dist/commands/ecdn/waf/managed-rules/list.d.ts +1 -0
  222. package/dist/commands/ecdn/waf/managed-rules/list.js +2 -2
  223. package/dist/commands/ecdn/waf/managed-rules/list.js.map +1 -1
  224. package/dist/commands/ecdn/waf/managed-rules/update.d.ts +1 -0
  225. package/dist/commands/ecdn/waf/managed-rules/update.js +2 -2
  226. package/dist/commands/ecdn/waf/managed-rules/update.js.map +1 -1
  227. package/dist/commands/ecdn/waf/migrate.d.ts +1 -0
  228. package/dist/commands/ecdn/waf/migrate.js +2 -2
  229. package/dist/commands/ecdn/waf/migrate.js.map +1 -1
  230. package/dist/commands/ecdn/waf/owasp/get.d.ts +1 -0
  231. package/dist/commands/ecdn/waf/owasp/get.js +2 -2
  232. package/dist/commands/ecdn/waf/owasp/get.js.map +1 -1
  233. package/dist/commands/ecdn/waf/owasp/update.d.ts +1 -0
  234. package/dist/commands/ecdn/waf/owasp/update.js +2 -2
  235. package/dist/commands/ecdn/waf/owasp/update.js.map +1 -1
  236. package/dist/commands/ecdn/waf/rules/get.d.ts +1 -0
  237. package/dist/commands/ecdn/waf/rules/get.js +2 -2
  238. package/dist/commands/ecdn/waf/rules/get.js.map +1 -1
  239. package/dist/commands/ecdn/waf/rules/list.d.ts +1 -0
  240. package/dist/commands/ecdn/waf/rules/list.js +2 -2
  241. package/dist/commands/ecdn/waf/rules/list.js.map +1 -1
  242. package/dist/commands/ecdn/waf/rules/update.d.ts +1 -0
  243. package/dist/commands/ecdn/waf/rules/update.js +2 -2
  244. package/dist/commands/ecdn/waf/rules/update.js.map +1 -1
  245. package/dist/commands/ecdn/waf/rulesets/list.d.ts +1 -0
  246. package/dist/commands/ecdn/waf/rulesets/list.js +2 -2
  247. package/dist/commands/ecdn/waf/rulesets/list.js.map +1 -1
  248. package/dist/commands/ecdn/waf/rulesets/update.d.ts +1 -0
  249. package/dist/commands/ecdn/waf/rulesets/update.js +2 -2
  250. package/dist/commands/ecdn/waf/rulesets/update.js.map +1 -1
  251. package/dist/commands/ecdn/zones/create.d.ts +1 -0
  252. package/dist/commands/ecdn/zones/create.js +2 -2
  253. package/dist/commands/ecdn/zones/create.js.map +1 -1
  254. package/dist/commands/ecdn/zones/list.d.ts +1 -0
  255. package/dist/commands/ecdn/zones/list.js +2 -2
  256. package/dist/commands/ecdn/zones/list.js.map +1 -1
  257. package/dist/commands/job/export.d.ts +5 -0
  258. package/dist/commands/job/export.js +2 -2
  259. package/dist/commands/job/export.js.map +1 -1
  260. package/dist/commands/job/import.d.ts +5 -0
  261. package/dist/commands/job/import.js +2 -2
  262. package/dist/commands/job/import.js.map +1 -1
  263. package/dist/commands/job/run.d.ts +5 -0
  264. package/dist/commands/job/run.js +2 -2
  265. package/dist/commands/job/run.js.map +1 -1
  266. package/dist/commands/job/search.d.ts +5 -0
  267. package/dist/commands/job/search.js +2 -2
  268. package/dist/commands/job/search.js.map +1 -1
  269. package/dist/commands/job/wait.d.ts +5 -0
  270. package/dist/commands/job/wait.js +2 -2
  271. package/dist/commands/job/wait.js.map +1 -1
  272. package/dist/commands/logs/get.d.ts +50 -0
  273. package/dist/commands/logs/get.js +122 -0
  274. package/dist/commands/logs/get.js.map +1 -0
  275. package/dist/commands/logs/list.d.ts +45 -0
  276. package/dist/commands/logs/list.js +94 -0
  277. package/dist/commands/logs/list.js.map +1 -0
  278. package/dist/commands/logs/tail.d.ts +44 -0
  279. package/dist/commands/logs/tail.js +138 -0
  280. package/dist/commands/logs/tail.js.map +1 -0
  281. package/dist/commands/mrt/bundle/deploy.js +26 -6
  282. package/dist/commands/mrt/bundle/deploy.js.map +1 -1
  283. package/dist/commands/mrt/bundle/download.js +2 -2
  284. package/dist/commands/mrt/bundle/download.js.map +1 -1
  285. package/dist/commands/mrt/bundle/history.js +2 -2
  286. package/dist/commands/mrt/bundle/history.js.map +1 -1
  287. package/dist/commands/mrt/bundle/list.js +2 -2
  288. package/dist/commands/mrt/bundle/list.js.map +1 -1
  289. package/dist/commands/mrt/env/access-control/list.js +2 -2
  290. package/dist/commands/mrt/env/access-control/list.js.map +1 -1
  291. package/dist/commands/mrt/env/b2c.js +2 -2
  292. package/dist/commands/mrt/env/b2c.js.map +1 -1
  293. package/dist/commands/mrt/env/create.js +2 -2
  294. package/dist/commands/mrt/env/create.js.map +1 -1
  295. package/dist/commands/mrt/env/delete.js +2 -2
  296. package/dist/commands/mrt/env/delete.js.map +1 -1
  297. package/dist/commands/mrt/env/get.js +2 -2
  298. package/dist/commands/mrt/env/get.js.map +1 -1
  299. package/dist/commands/mrt/env/invalidate.js +2 -2
  300. package/dist/commands/mrt/env/invalidate.js.map +1 -1
  301. package/dist/commands/mrt/env/list.js +2 -2
  302. package/dist/commands/mrt/env/list.js.map +1 -1
  303. package/dist/commands/mrt/env/redirect/clone.js +2 -2
  304. package/dist/commands/mrt/env/redirect/clone.js.map +1 -1
  305. package/dist/commands/mrt/env/redirect/create.js +2 -2
  306. package/dist/commands/mrt/env/redirect/create.js.map +1 -1
  307. package/dist/commands/mrt/env/redirect/delete.js +2 -2
  308. package/dist/commands/mrt/env/redirect/delete.js.map +1 -1
  309. package/dist/commands/mrt/env/redirect/list.js +2 -2
  310. package/dist/commands/mrt/env/redirect/list.js.map +1 -1
  311. package/dist/commands/mrt/env/update.js +2 -2
  312. package/dist/commands/mrt/env/update.js.map +1 -1
  313. package/dist/commands/mrt/env/var/delete.js +2 -2
  314. package/dist/commands/mrt/env/var/delete.js.map +1 -1
  315. package/dist/commands/mrt/env/var/list.js +2 -2
  316. package/dist/commands/mrt/env/var/list.js.map +1 -1
  317. package/dist/commands/mrt/env/var/set.js +2 -2
  318. package/dist/commands/mrt/env/var/set.js.map +1 -1
  319. package/dist/commands/mrt/org/b2c.js +2 -2
  320. package/dist/commands/mrt/org/b2c.js.map +1 -1
  321. package/dist/commands/mrt/org/list.js +2 -2
  322. package/dist/commands/mrt/org/list.js.map +1 -1
  323. package/dist/commands/mrt/project/create.js +2 -2
  324. package/dist/commands/mrt/project/create.js.map +1 -1
  325. package/dist/commands/mrt/project/delete.js +2 -2
  326. package/dist/commands/mrt/project/delete.js.map +1 -1
  327. package/dist/commands/mrt/project/get.js +2 -2
  328. package/dist/commands/mrt/project/get.js.map +1 -1
  329. package/dist/commands/mrt/project/list.js +2 -2
  330. package/dist/commands/mrt/project/list.js.map +1 -1
  331. package/dist/commands/mrt/project/member/add.js +2 -2
  332. package/dist/commands/mrt/project/member/add.js.map +1 -1
  333. package/dist/commands/mrt/project/member/get.js +2 -2
  334. package/dist/commands/mrt/project/member/get.js.map +1 -1
  335. package/dist/commands/mrt/project/member/list.js +2 -2
  336. package/dist/commands/mrt/project/member/list.js.map +1 -1
  337. package/dist/commands/mrt/project/member/remove.js +2 -2
  338. package/dist/commands/mrt/project/member/remove.js.map +1 -1
  339. package/dist/commands/mrt/project/member/update.js +2 -2
  340. package/dist/commands/mrt/project/member/update.js.map +1 -1
  341. package/dist/commands/mrt/project/notification/create.js +2 -2
  342. package/dist/commands/mrt/project/notification/create.js.map +1 -1
  343. package/dist/commands/mrt/project/notification/delete.js +2 -2
  344. package/dist/commands/mrt/project/notification/delete.js.map +1 -1
  345. package/dist/commands/mrt/project/notification/get.js +2 -2
  346. package/dist/commands/mrt/project/notification/get.js.map +1 -1
  347. package/dist/commands/mrt/project/notification/list.js +2 -2
  348. package/dist/commands/mrt/project/notification/list.js.map +1 -1
  349. package/dist/commands/mrt/project/notification/update.js +2 -2
  350. package/dist/commands/mrt/project/notification/update.js.map +1 -1
  351. package/dist/commands/mrt/project/update.js +2 -2
  352. package/dist/commands/mrt/project/update.js.map +1 -1
  353. package/dist/commands/mrt/tail-logs.d.ts +27 -0
  354. package/dist/commands/mrt/tail-logs.js +137 -0
  355. package/dist/commands/mrt/tail-logs.js.map +1 -0
  356. package/dist/commands/mrt/user/api-key.js +2 -2
  357. package/dist/commands/mrt/user/api-key.js.map +1 -1
  358. package/dist/commands/mrt/user/email-prefs.js +2 -2
  359. package/dist/commands/mrt/user/email-prefs.js.map +1 -1
  360. package/dist/commands/mrt/user/profile.js +2 -2
  361. package/dist/commands/mrt/user/profile.js.map +1 -1
  362. package/dist/commands/{ods → sandbox}/create.d.ts +8 -14
  363. package/dist/commands/sandbox/create.js +264 -0
  364. package/dist/commands/sandbox/create.js.map +1 -0
  365. package/dist/commands/sandbox/delete.d.ts +19 -0
  366. package/dist/commands/sandbox/delete.js +141 -0
  367. package/dist/commands/sandbox/delete.js.map +1 -0
  368. package/dist/commands/{ods → sandbox}/get.d.ts +2 -1
  369. package/dist/commands/{ods → sandbox}/get.js +10 -8
  370. package/dist/commands/sandbox/get.js.map +1 -0
  371. package/dist/commands/{ods → sandbox}/info.d.ts +2 -1
  372. package/dist/commands/{ods → sandbox}/info.js +7 -6
  373. package/dist/commands/sandbox/info.js.map +1 -0
  374. package/dist/commands/{ods → sandbox}/list.d.ts +2 -1
  375. package/dist/commands/{ods → sandbox}/list.js +7 -6
  376. package/dist/commands/sandbox/list.js.map +1 -0
  377. package/dist/commands/{ods → sandbox}/restart.d.ts +7 -1
  378. package/dist/commands/sandbox/restart.js +107 -0
  379. package/dist/commands/sandbox/restart.js.map +1 -0
  380. package/dist/commands/{ods → sandbox}/start.d.ts +7 -1
  381. package/dist/commands/sandbox/start.js +108 -0
  382. package/dist/commands/sandbox/start.js.map +1 -0
  383. package/dist/commands/{ods → sandbox}/stop.d.ts +7 -1
  384. package/dist/commands/sandbox/stop.js +107 -0
  385. package/dist/commands/sandbox/stop.js.map +1 -0
  386. package/dist/commands/scaffold/generate.d.ts +22 -0
  387. package/dist/commands/scaffold/generate.js +74 -0
  388. package/dist/commands/scaffold/generate.js.map +1 -0
  389. package/dist/commands/scaffold/index.d.ts +24 -0
  390. package/dist/commands/scaffold/index.js +80 -0
  391. package/dist/commands/scaffold/index.js.map +1 -0
  392. package/dist/commands/scaffold/info.d.ts +24 -0
  393. package/dist/commands/scaffold/info.js +89 -0
  394. package/dist/commands/scaffold/info.js.map +1 -0
  395. package/dist/commands/scaffold/init.d.ts +29 -0
  396. package/dist/commands/scaffold/init.js +221 -0
  397. package/dist/commands/scaffold/init.js.map +1 -0
  398. package/dist/commands/scaffold/list.d.ts +38 -0
  399. package/dist/commands/scaffold/list.js +131 -0
  400. package/dist/commands/scaffold/list.js.map +1 -0
  401. package/dist/commands/scaffold/search.d.ts +32 -0
  402. package/dist/commands/scaffold/search.js +97 -0
  403. package/dist/commands/scaffold/search.js.map +1 -0
  404. package/dist/commands/scaffold/validate.d.ts +24 -0
  405. package/dist/commands/scaffold/validate.js +74 -0
  406. package/dist/commands/scaffold/validate.js.map +1 -0
  407. package/dist/commands/scapi/custom/status.d.ts +2 -20
  408. package/dist/commands/scapi/custom/status.js +4 -11
  409. package/dist/commands/scapi/custom/status.js.map +1 -1
  410. package/dist/commands/scapi/schemas/get.d.ts +1 -0
  411. package/dist/commands/scapi/schemas/get.js +3 -3
  412. package/dist/commands/scapi/schemas/get.js.map +1 -1
  413. package/dist/commands/scapi/schemas/list.d.ts +1 -0
  414. package/dist/commands/scapi/schemas/list.js +2 -2
  415. package/dist/commands/scapi/schemas/list.js.map +1 -1
  416. package/dist/commands/setup/index.d.ts +12 -0
  417. package/dist/commands/setup/index.js +34 -0
  418. package/dist/commands/setup/index.js.map +1 -0
  419. package/dist/commands/setup/{config.d.ts → inspect.d.ts} +5 -4
  420. package/dist/commands/setup/{config.js → inspect.js} +6 -3
  421. package/dist/commands/setup/inspect.js.map +1 -0
  422. package/dist/commands/setup/instance/create.d.ts +43 -0
  423. package/dist/commands/setup/instance/create.js +269 -0
  424. package/dist/commands/setup/instance/create.js.map +1 -0
  425. package/dist/commands/setup/instance/index.d.ts +9 -0
  426. package/dist/commands/setup/instance/index.js +22 -0
  427. package/dist/commands/setup/instance/index.js.map +1 -0
  428. package/dist/commands/setup/instance/list.d.ts +31 -0
  429. package/dist/commands/setup/instance/list.js +68 -0
  430. package/dist/commands/setup/instance/list.js.map +1 -0
  431. package/dist/commands/setup/instance/remove.d.ts +34 -0
  432. package/dist/commands/setup/instance/remove.js +75 -0
  433. package/dist/commands/setup/instance/remove.js.map +1 -0
  434. package/dist/commands/setup/instance/set-active.d.ts +33 -0
  435. package/dist/commands/setup/instance/set-active.js +78 -0
  436. package/dist/commands/setup/instance/set-active.js.map +1 -0
  437. package/dist/commands/setup/skills.js +2 -2
  438. package/dist/commands/setup/skills.js.map +1 -1
  439. package/dist/commands/sites/list.js +2 -2
  440. package/dist/commands/sites/list.js.map +1 -1
  441. package/dist/commands/slas/client/create.d.ts +1 -0
  442. package/dist/commands/slas/client/create.js +3 -2
  443. package/dist/commands/slas/client/create.js.map +1 -1
  444. package/dist/commands/slas/client/delete.d.ts +1 -0
  445. package/dist/commands/slas/client/delete.js +2 -2
  446. package/dist/commands/slas/client/delete.js.map +1 -1
  447. package/dist/commands/slas/client/get.d.ts +1 -0
  448. package/dist/commands/slas/client/get.js +2 -2
  449. package/dist/commands/slas/client/get.js.map +1 -1
  450. package/dist/commands/slas/client/list.d.ts +1 -0
  451. package/dist/commands/slas/client/list.js +10 -5
  452. package/dist/commands/slas/client/list.js.map +1 -1
  453. package/dist/commands/slas/client/open.js +2 -2
  454. package/dist/commands/slas/client/open.js.map +1 -1
  455. package/dist/commands/slas/client/update.d.ts +1 -0
  456. package/dist/commands/slas/client/update.js +2 -2
  457. package/dist/commands/slas/client/update.js.map +1 -1
  458. package/dist/commands/webdav/get.d.ts +5 -0
  459. package/dist/commands/webdav/get.js +2 -2
  460. package/dist/commands/webdav/get.js.map +1 -1
  461. package/dist/commands/webdav/ls.js +2 -2
  462. package/dist/commands/webdav/ls.js.map +1 -1
  463. package/dist/commands/webdav/mkdir.js +2 -2
  464. package/dist/commands/webdav/mkdir.js.map +1 -1
  465. package/dist/commands/webdav/put.js +2 -2
  466. package/dist/commands/webdav/put.js.map +1 -1
  467. package/dist/commands/webdav/rm.d.ts +5 -0
  468. package/dist/commands/webdav/rm.js +2 -2
  469. package/dist/commands/webdav/rm.js.map +1 -1
  470. package/dist/commands/webdav/unzip.js +2 -2
  471. package/dist/commands/webdav/unzip.js.map +1 -1
  472. package/dist/commands/webdav/zip.js +2 -2
  473. package/dist/commands/webdav/zip.js.map +1 -1
  474. package/dist/i18n/index.d.ts +12 -0
  475. package/dist/i18n/index.js +16 -0
  476. package/dist/i18n/index.js.map +1 -1
  477. package/dist/i18n/locales/en.d.ts +42 -0
  478. package/dist/i18n/locales/en.js +42 -0
  479. package/dist/i18n/locales/en.js.map +1 -1
  480. package/dist/i18n/locales/index.d.ts +42 -0
  481. package/dist/lib/scaffold/generate-helper.d.ts +47 -0
  482. package/dist/lib/scaffold/generate-helper.js +271 -0
  483. package/dist/lib/scaffold/generate-helper.js.map +1 -0
  484. package/dist/lib/scaffold/source-resolver.d.ts +25 -0
  485. package/dist/lib/scaffold/source-resolver.js +37 -0
  486. package/dist/lib/scaffold/source-resolver.js.map +1 -0
  487. package/dist/utils/ecdn/zone-command.d.ts +1 -0
  488. package/dist/utils/logs/filter.d.ts +40 -0
  489. package/dist/utils/logs/filter.js +112 -0
  490. package/dist/utils/logs/filter.js.map +1 -0
  491. package/dist/utils/logs/format.d.ts +18 -0
  492. package/dist/utils/logs/format.js +74 -0
  493. package/dist/utils/logs/format.js.map +1 -0
  494. package/dist/utils/logs/index.d.ts +2 -0
  495. package/dist/utils/logs/index.js +8 -0
  496. package/dist/utils/logs/index.js.map +1 -0
  497. package/dist/utils/mrt-logs/format.d.ts +28 -0
  498. package/dist/utils/mrt-logs/format.js +90 -0
  499. package/dist/utils/mrt-logs/format.js.map +1 -0
  500. package/dist/utils/mrt-logs/index.d.ts +1 -0
  501. package/dist/utils/mrt-logs/index.js +7 -0
  502. package/dist/utils/mrt-logs/index.js.map +1 -0
  503. package/dist/utils/slas/client.d.ts +7 -5
  504. package/dist/utils/slas/client.js +26 -24
  505. package/dist/utils/slas/client.js.map +1 -1
  506. package/oclif.manifest.json +15624 -5067
  507. package/package.json +115 -63
  508. package/dist/commands/ods/create.js +0 -254
  509. package/dist/commands/ods/create.js.map +0 -1
  510. package/dist/commands/ods/delete.d.ts +0 -15
  511. package/dist/commands/ods/delete.js +0 -85
  512. package/dist/commands/ods/delete.js.map +0 -1
  513. package/dist/commands/ods/get.js.map +0 -1
  514. package/dist/commands/ods/info.js.map +0 -1
  515. package/dist/commands/ods/list.js.map +0 -1
  516. package/dist/commands/ods/restart.js +0 -50
  517. package/dist/commands/ods/restart.js.map +0 -1
  518. package/dist/commands/ods/start.js +0 -50
  519. package/dist/commands/ods/start.js.map +0 -1
  520. package/dist/commands/ods/stop.js +0 -50
  521. package/dist/commands/ods/stop.js.map +0 -1
  522. package/dist/commands/setup/config.js.map +0 -1
@@ -0,0 +1,108 @@
1
+ /*
2
+ * Copyright (c) 2025, Salesforce, Inc.
3
+ * SPDX-License-Identifier: Apache-2
4
+ * For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ import { Args, Flags } from '@oclif/core';
7
+ import { OdsCommand } from '@salesforce/b2c-tooling-sdk/cli';
8
+ import { getApiErrorMessage, SandboxPollingError, SandboxPollingTimeoutError, SandboxTerminalStateError, waitForSandbox, } from '@salesforce/b2c-tooling-sdk';
9
+ import { t, withDocs } from '../../i18n/index.js';
10
+ /**
11
+ * Command to start an on-demand sandbox.
12
+ */
13
+ export default class SandboxStart extends OdsCommand {
14
+ static aliases = ['ods:start'];
15
+ static args = {
16
+ sandboxId: Args.string({
17
+ description: 'Sandbox ID (UUID or realm-instance, e.g., abcd-123)',
18
+ required: true,
19
+ }),
20
+ };
21
+ static description = withDocs(t('commands.sandbox.start.description', 'Start an on-demand sandbox'), '/cli/sandbox.html#b2c-sandbox-start');
22
+ static enableJsonFlag = true;
23
+ static examples = [
24
+ '<%= config.bin %> <%= command.id %> abc12345-1234-1234-1234-abc123456789',
25
+ '<%= config.bin %> <%= command.id %> zzzv-123',
26
+ '<%= config.bin %> <%= command.id %> zzzv-123 --wait',
27
+ '<%= config.bin %> <%= command.id %> zzzv-123 --wait --poll-interval 15',
28
+ '<%= config.bin %> <%= command.id %> zzzv_123 --json',
29
+ ];
30
+ static flags = {
31
+ wait: Flags.boolean({
32
+ char: 'w',
33
+ description: 'Wait for the sandbox to reach started or failed state before returning',
34
+ default: false,
35
+ }),
36
+ 'poll-interval': Flags.integer({
37
+ description: 'Polling interval in seconds when using --wait',
38
+ default: 10,
39
+ dependsOn: ['wait'],
40
+ }),
41
+ timeout: Flags.integer({
42
+ description: 'Maximum time to wait in seconds when using --wait (0 for no timeout)',
43
+ default: 600,
44
+ dependsOn: ['wait'],
45
+ }),
46
+ };
47
+ async run() {
48
+ const sandboxId = await this.resolveSandboxId(this.args.sandboxId);
49
+ const wait = this.flags.wait;
50
+ const pollInterval = this.flags['poll-interval'];
51
+ const timeout = this.flags.timeout;
52
+ this.log(t('commands.sandbox.start.starting', 'Starting sandbox {{sandboxId}}...', { sandboxId }));
53
+ const result = await this.odsClient.POST('/sandboxes/{sandboxId}/operations', {
54
+ params: {
55
+ path: { sandboxId },
56
+ },
57
+ body: {
58
+ operation: 'start',
59
+ },
60
+ });
61
+ if (!result.data?.data) {
62
+ this.error(t('commands.sandbox.start.error', 'Failed to start sandbox: {{message}}', {
63
+ message: getApiErrorMessage(result.error, result.response),
64
+ }));
65
+ }
66
+ const operation = result.data.data;
67
+ this.log(t('commands.sandbox.start.success', 'Start operation {{operationState}}. Sandbox state: {{sandboxState}}', {
68
+ operationState: operation.operationState,
69
+ sandboxState: operation.sandboxState || 'unknown',
70
+ }));
71
+ if (wait) {
72
+ this.log(t('commands.sandbox.start.waiting', 'Waiting for sandbox to reach state {{state}}...', { state: 'started' }));
73
+ try {
74
+ await waitForSandbox(this.odsClient, {
75
+ sandboxId,
76
+ targetState: 'started',
77
+ pollIntervalSeconds: pollInterval,
78
+ timeoutSeconds: timeout,
79
+ onPoll: ({ elapsedSeconds, state }) => {
80
+ this.logger.info({ sandboxId, elapsed: elapsedSeconds, state }, `[${elapsedSeconds}s] State: ${state}`);
81
+ },
82
+ });
83
+ }
84
+ catch (error) {
85
+ if (error instanceof SandboxPollingTimeoutError) {
86
+ this.error(t('commands.sandbox.start.timeout', 'Timeout waiting for sandbox after {{seconds}} seconds', {
87
+ seconds: String(error.timeoutSeconds),
88
+ }));
89
+ }
90
+ if (error instanceof SandboxTerminalStateError) {
91
+ this.error(t('commands.sandbox.start.failed', 'Sandbox did not reach the expected state. Current state: {{state}}', {
92
+ state: error.state || 'unknown',
93
+ }));
94
+ }
95
+ if (error instanceof SandboxPollingError) {
96
+ this.error(t('commands.sandbox.start.pollError', 'Failed to fetch sandbox status: {{message}}', {
97
+ message: error.message,
98
+ }));
99
+ }
100
+ throw error;
101
+ }
102
+ this.log('');
103
+ this.logger.info({ sandboxId }, t('commands.sandbox.start.ready', 'Sandbox is now ready'));
104
+ }
105
+ return operation;
106
+ }
107
+ }
108
+ //# sourceMappingURL=start.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/commands/sandbox/start.ts"],"names":[],"mappings":"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"}
@@ -4,13 +4,19 @@ type SandboxOperationModel = OdsComponents['schemas']['SandboxOperationModel'];
4
4
  /**
5
5
  * Command to stop an on-demand sandbox.
6
6
  */
7
- export default class OdsStop extends OdsCommand<typeof OdsStop> {
7
+ export default class SandboxStop extends OdsCommand<typeof SandboxStop> {
8
+ static aliases: string[];
8
9
  static args: {
9
10
  sandboxId: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
10
11
  };
11
12
  static description: string;
12
13
  static enableJsonFlag: boolean;
13
14
  static examples: string[];
15
+ static flags: {
16
+ wait: import("@oclif/core/interfaces").BooleanFlag<boolean>;
17
+ 'poll-interval': import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
18
+ timeout: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
19
+ };
14
20
  run(): Promise<SandboxOperationModel>;
15
21
  }
16
22
  export {};
@@ -0,0 +1,107 @@
1
+ /*
2
+ * Copyright (c) 2025, Salesforce, Inc.
3
+ * SPDX-License-Identifier: Apache-2
4
+ * For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ import { Args, Flags } from '@oclif/core';
7
+ import { OdsCommand } from '@salesforce/b2c-tooling-sdk/cli';
8
+ import { getApiErrorMessage, SandboxPollingError, SandboxPollingTimeoutError, SandboxTerminalStateError, waitForSandbox, } from '@salesforce/b2c-tooling-sdk';
9
+ import { t, withDocs } from '../../i18n/index.js';
10
+ /**
11
+ * Command to stop an on-demand sandbox.
12
+ */
13
+ export default class SandboxStop extends OdsCommand {
14
+ static aliases = ['ods:stop'];
15
+ static args = {
16
+ sandboxId: Args.string({
17
+ description: 'Sandbox ID (UUID or realm-instance, e.g., abcd-123)',
18
+ required: true,
19
+ }),
20
+ };
21
+ static description = withDocs(t('commands.sandbox.stop.description', 'Stop an on-demand sandbox'), '/cli/sandbox.html#b2c-sandbox-stop');
22
+ static enableJsonFlag = true;
23
+ static examples = [
24
+ '<%= config.bin %> <%= command.id %> abc12345-1234-1234-1234-abc123456789',
25
+ '<%= config.bin %> <%= command.id %> zzzv-123',
26
+ '<%= config.bin %> <%= command.id %> zzzv-123 --wait',
27
+ '<%= config.bin %> <%= command.id %> zzzv-123 --wait --poll-interval 15',
28
+ '<%= config.bin %> <%= command.id %> zzzv_123 --json',
29
+ ];
30
+ static flags = {
31
+ wait: Flags.boolean({
32
+ char: 'w',
33
+ description: 'Wait for the sandbox to reach stopped or failed state before returning',
34
+ default: false,
35
+ }),
36
+ 'poll-interval': Flags.integer({
37
+ description: 'Polling interval in seconds when using --wait',
38
+ default: 10,
39
+ dependsOn: ['wait'],
40
+ }),
41
+ timeout: Flags.integer({
42
+ description: 'Maximum time to wait in seconds when using --wait (0 for no timeout)',
43
+ default: 600,
44
+ dependsOn: ['wait'],
45
+ }),
46
+ };
47
+ async run() {
48
+ const sandboxId = await this.resolveSandboxId(this.args.sandboxId);
49
+ const wait = this.flags.wait;
50
+ const pollInterval = this.flags['poll-interval'];
51
+ const timeout = this.flags.timeout;
52
+ this.log(t('commands.sandbox.stop.stopping', 'Stopping sandbox {{sandboxId}}...', { sandboxId }));
53
+ const result = await this.odsClient.POST('/sandboxes/{sandboxId}/operations', {
54
+ params: {
55
+ path: { sandboxId },
56
+ },
57
+ body: {
58
+ operation: 'stop',
59
+ },
60
+ });
61
+ if (!result.data?.data) {
62
+ this.error(t('commands.sandbox.stop.error', 'Failed to stop sandbox: {{message}}', {
63
+ message: getApiErrorMessage(result.error, result.response),
64
+ }));
65
+ }
66
+ const operation = result.data.data;
67
+ this.log(t('commands.sandbox.stop.success', 'Stop operation {{operationState}}. Sandbox state: {{sandboxState}}', {
68
+ operationState: operation.operationState,
69
+ sandboxState: operation.sandboxState || 'unknown',
70
+ }));
71
+ if (wait) {
72
+ try {
73
+ await waitForSandbox(this.odsClient, {
74
+ sandboxId,
75
+ targetState: 'stopped',
76
+ pollIntervalSeconds: pollInterval,
77
+ timeoutSeconds: timeout,
78
+ onPoll: ({ elapsedSeconds, state }) => {
79
+ this.logger.info({ sandboxId, elapsed: elapsedSeconds, state }, `[${elapsedSeconds}s] State: ${state}`);
80
+ },
81
+ });
82
+ }
83
+ catch (error) {
84
+ if (error instanceof SandboxPollingTimeoutError) {
85
+ this.error(t('commands.sandbox.stop.timeout', 'Timeout waiting for sandbox after {{seconds}} seconds', {
86
+ seconds: String(error.timeoutSeconds),
87
+ }));
88
+ }
89
+ if (error instanceof SandboxTerminalStateError) {
90
+ this.error(t('commands.sandbox.stop.failed', 'Sandbox did not reach the expected state. Current state: {{state}}', {
91
+ state: error.state || 'unknown',
92
+ }));
93
+ }
94
+ if (error instanceof SandboxPollingError) {
95
+ this.error(t('commands.sandbox.stop.pollError', 'Failed to fetch sandbox status: {{message}}', {
96
+ message: error.message,
97
+ }));
98
+ }
99
+ throw error;
100
+ }
101
+ this.log('');
102
+ this.logger.info({ sandboxId }, t('commands.sandbox.stop.ready', 'Sandbox is now stopped'));
103
+ }
104
+ return operation;
105
+ }
106
+ }
107
+ //# sourceMappingURL=stop.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stop.js","sourceRoot":"","sources":["../../../src/commands/sandbox/stop.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { BaseCommand } from '@salesforce/b2c-tooling-sdk/cli';
2
+ import { type GenerateResponse } from '../../lib/scaffold/generate-helper.js';
3
+ export type { GenerateResponse } from '../../lib/scaffold/generate-helper.js';
4
+ /**
5
+ * Command to generate a project from a scaffold.
6
+ */
7
+ export default class ScaffoldGenerate extends BaseCommand<typeof ScaffoldGenerate> {
8
+ static args: {
9
+ scaffoldId: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
10
+ };
11
+ static description: string;
12
+ static enableJsonFlag: boolean;
13
+ static examples: string[];
14
+ static flags: {
15
+ name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
16
+ output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
17
+ option: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
18
+ 'dry-run': import("@oclif/core/interfaces").BooleanFlag<boolean>;
19
+ force: import("@oclif/core/interfaces").BooleanFlag<boolean>;
20
+ };
21
+ run(): Promise<GenerateResponse | void>;
22
+ }
@@ -0,0 +1,74 @@
1
+ /*
2
+ * Copyright (c) 2025, Salesforce, Inc.
3
+ * SPDX-License-Identifier: Apache-2
4
+ * For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ import { Args, Flags } from '@oclif/core';
7
+ import { BaseCommand } from '@salesforce/b2c-tooling-sdk/cli';
8
+ import { executeScaffoldGenerate } from '../../lib/scaffold/generate-helper.js';
9
+ import { t, withDocs } from '../../i18n/index.js';
10
+ /**
11
+ * Command to generate a project from a scaffold.
12
+ */
13
+ export default class ScaffoldGenerate extends BaseCommand {
14
+ static args = {
15
+ scaffoldId: Args.string({
16
+ description: 'Scaffold ID to generate',
17
+ required: true,
18
+ }),
19
+ };
20
+ static description = withDocs(t('commands.scaffold.generate.description', 'Generate files from a scaffold template'), '/cli/scaffold.html#b2c-scaffold-generate');
21
+ static enableJsonFlag = true;
22
+ static examples = [
23
+ '<%= config.bin %> <%= command.id %> cartridge',
24
+ '<%= config.bin %> <%= command.id %> cartridge --name app_custom',
25
+ '<%= config.bin %> <%= command.id %> custom-api --option apiName=my-api --option cartridgeName=app_custom',
26
+ '<%= config.bin %> <%= command.id %> cartridge --dry-run',
27
+ '<%= config.bin %> <%= command.id %> cartridge --force',
28
+ '<%= config.bin %> <%= command.id %> cartridge --output ./src',
29
+ ];
30
+ static flags = {
31
+ name: Flags.string({
32
+ char: 'n',
33
+ description: 'Primary name parameter (shorthand for --option name=VALUE)',
34
+ }),
35
+ output: Flags.string({
36
+ char: 'o',
37
+ description: 'Output directory (defaults to scaffold default or current directory)',
38
+ }),
39
+ option: Flags.string({
40
+ description: 'Parameter value in key=value format (can be repeated)',
41
+ multiple: true,
42
+ }),
43
+ 'dry-run': Flags.boolean({
44
+ description: 'Preview files without writing them',
45
+ default: false,
46
+ }),
47
+ force: Flags.boolean({
48
+ char: 'f',
49
+ description: 'Skip prompts, use defaults, and overwrite existing files',
50
+ default: false,
51
+ }),
52
+ };
53
+ async run() {
54
+ const projectRoot = this.flags['working-directory'] || process.cwd();
55
+ const response = await executeScaffoldGenerate({
56
+ scaffoldId: this.args.scaffoldId,
57
+ name: this.flags.name,
58
+ output: this.flags.output,
59
+ options: this.flags.option,
60
+ dryRun: this.flags['dry-run'],
61
+ force: this.flags.force,
62
+ projectRoot,
63
+ }, {
64
+ logger: this.logger,
65
+ log: (msg) => this.log(msg),
66
+ warn: (msg) => this.warn(msg),
67
+ error: (msg) => this.error(msg),
68
+ });
69
+ if (this.jsonEnabled()) {
70
+ return response;
71
+ }
72
+ }
73
+ }
74
+ //# sourceMappingURL=generate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/commands/scaffold/generate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,IAAI,EAAE,KAAK,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,EAAC,WAAW,EAAC,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EAAC,uBAAuB,EAAwB,MAAM,uCAAuC,CAAC;AACrG,OAAO,EAAC,CAAC,EAAE,QAAQ,EAAC,MAAM,qBAAqB,CAAC;AAIhD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,WAAoC;IAChF,MAAM,CAAC,IAAI,GAAG;QACZ,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;YACtB,WAAW,EAAE,yBAAyB;YACtC,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAC;IAEF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAC3B,CAAC,CAAC,wCAAwC,EAAE,yCAAyC,CAAC,EACtF,0CAA0C,CAC3C,CAAC;IAEF,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;IAE7B,MAAM,CAAC,QAAQ,GAAG;QAChB,+CAA+C;QAC/C,iEAAiE;QACjE,0GAA0G;QAC1G,yDAAyD;QACzD,uDAAuD;QACvD,8DAA8D;KAC/D,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG;QACb,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACjB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,4DAA4D;SAC1E,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,sEAAsE;SACpF,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,WAAW,EAAE,uDAAuD;YACpE,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;YACvB,WAAW,EAAE,oCAAoC;YACjD,OAAO,EAAE,KAAK;SACf,CAAC;QACF,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,0DAA0D;YACvE,OAAO,EAAE,KAAK;SACf,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACrE,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAC5C;YACE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;YAChC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;YACzB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;YAC1B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YACvB,WAAW;SACZ,EACD;YACE,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAC3B,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;YAC7B,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;SAChC,CACF,CAAC;QAEF,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { BaseCommand } from '@salesforce/b2c-tooling-sdk/cli';
2
+ import { type GenerateResponse } from '../../lib/scaffold/generate-helper.js';
3
+ /**
4
+ * Default scaffold command - provides topic help and shorthand for `scaffold generate`.
5
+ *
6
+ * - `b2c scaffold` shows topic help with available subcommands
7
+ * - `b2c scaffold cartridge` is shorthand for `b2c scaffold generate cartridge`
8
+ */
9
+ export default class ScaffoldIndex extends BaseCommand<typeof ScaffoldIndex> {
10
+ static args: {
11
+ scaffoldId: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
12
+ };
13
+ static description: string;
14
+ static enableJsonFlag: boolean;
15
+ static examples: string[];
16
+ static flags: {
17
+ name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
18
+ output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
19
+ option: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
20
+ 'dry-run': import("@oclif/core/interfaces").BooleanFlag<boolean>;
21
+ force: import("@oclif/core/interfaces").BooleanFlag<boolean>;
22
+ };
23
+ run(): Promise<GenerateResponse | void>;
24
+ }
@@ -0,0 +1,80 @@
1
+ /*
2
+ * Copyright (c) 2025, Salesforce, Inc.
3
+ * SPDX-License-Identifier: Apache-2
4
+ * For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ import { Args, Flags } from '@oclif/core';
7
+ import { BaseCommand } from '@salesforce/b2c-tooling-sdk/cli';
8
+ import { executeScaffoldGenerate } from '../../lib/scaffold/generate-helper.js';
9
+ import { t, withDocs } from '../../i18n/index.js';
10
+ /**
11
+ * Default scaffold command - provides topic help and shorthand for `scaffold generate`.
12
+ *
13
+ * - `b2c scaffold` shows topic help with available subcommands
14
+ * - `b2c scaffold cartridge` is shorthand for `b2c scaffold generate cartridge`
15
+ */
16
+ export default class ScaffoldIndex extends BaseCommand {
17
+ static args = {
18
+ scaffoldId: Args.string({
19
+ description: 'Scaffold ID to generate (optional - omit to see available commands)',
20
+ required: false,
21
+ }),
22
+ };
23
+ static description = withDocs(t('commands.scaffold.index.description', 'Work with project scaffolds and templates'), '/cli/scaffold.html');
24
+ static enableJsonFlag = true;
25
+ static examples = [
26
+ '<%= config.bin %> scaffold --help',
27
+ '<%= config.bin %> scaffold list',
28
+ '<%= config.bin %> scaffold cartridge',
29
+ '<%= config.bin %> scaffold cartridge --name app_custom',
30
+ ];
31
+ static flags = {
32
+ name: Flags.string({
33
+ char: 'n',
34
+ description: 'Primary name parameter (shorthand for --option name=VALUE)',
35
+ }),
36
+ output: Flags.string({
37
+ char: 'o',
38
+ description: 'Output directory (defaults to scaffold default or current directory)',
39
+ }),
40
+ option: Flags.string({
41
+ description: 'Parameter value in key=value format (can be repeated)',
42
+ multiple: true,
43
+ }),
44
+ 'dry-run': Flags.boolean({
45
+ description: 'Preview files without writing them',
46
+ default: false,
47
+ }),
48
+ force: Flags.boolean({
49
+ char: 'f',
50
+ description: 'Skip prompts, use defaults, and overwrite existing files',
51
+ default: false,
52
+ }),
53
+ };
54
+ async run() {
55
+ const { scaffoldId } = this.args;
56
+ if (!scaffoldId) {
57
+ // No scaffold specified - show topic help
58
+ await this.config.runCommand('help', ['scaffold']);
59
+ return;
60
+ }
61
+ // Scaffold specified - run generation
62
+ const response = await executeScaffoldGenerate({
63
+ scaffoldId,
64
+ name: this.flags.name,
65
+ output: this.flags.output,
66
+ options: this.flags.option,
67
+ dryRun: this.flags['dry-run'],
68
+ force: this.flags.force,
69
+ }, {
70
+ logger: this.logger,
71
+ log: (msg) => this.log(msg),
72
+ warn: (msg) => this.warn(msg),
73
+ error: (msg) => this.error(msg),
74
+ });
75
+ if (this.jsonEnabled()) {
76
+ return response;
77
+ }
78
+ }
79
+ }
80
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/scaffold/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,IAAI,EAAE,KAAK,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,EAAC,WAAW,EAAC,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EAAC,uBAAuB,EAAwB,MAAM,uCAAuC,CAAC;AACrG,OAAO,EAAC,CAAC,EAAE,QAAQ,EAAC,MAAM,qBAAqB,CAAC;AAEhD;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,WAAiC;IAC1E,MAAM,CAAC,IAAI,GAAG;QACZ,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;YACtB,WAAW,EAAE,qEAAqE;YAClF,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH,CAAC;IAEF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAC3B,CAAC,CAAC,qCAAqC,EAAE,2CAA2C,CAAC,EACrF,oBAAoB,CACrB,CAAC;IAEF,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;IAE7B,MAAM,CAAC,QAAQ,GAAG;QAChB,mCAAmC;QACnC,iCAAiC;QACjC,sCAAsC;QACtC,wDAAwD;KACzD,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG;QACb,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACjB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,4DAA4D;SAC1E,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,sEAAsE;SACpF,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,WAAW,EAAE,uDAAuD;YACpE,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;YACvB,WAAW,EAAE,oCAAoC;YACjD,OAAO,EAAE,KAAK;SACf,CAAC;QACF,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,0DAA0D;YACvE,OAAO,EAAE,KAAK;SACf,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAC,UAAU,EAAC,GAAG,IAAI,CAAC,IAAI,CAAC;QAE/B,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,0CAA0C;YAC1C,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;YACnD,OAAO;QACT,CAAC;QAED,sCAAsC;QACtC,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAC5C;YACE,UAAU;YACV,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;YACzB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;YAC1B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;SACxB,EACD;YACE,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAC3B,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;YAC7B,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;SAChC,CACF,CAAC;QAEF,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { BaseCommand } from '@salesforce/b2c-tooling-sdk/cli';
2
+ import { type ScaffoldManifest } from '@salesforce/b2c-tooling-sdk/scaffold';
3
+ /**
4
+ * Response type for the info command.
5
+ */
6
+ interface ScaffoldInfoResponse {
7
+ id: string;
8
+ source: string;
9
+ manifest: ScaffoldManifest;
10
+ path: string;
11
+ }
12
+ /**
13
+ * Command to show detailed information about a scaffold.
14
+ */
15
+ export default class ScaffoldInfo extends BaseCommand<typeof ScaffoldInfo> {
16
+ static args: {
17
+ scaffoldId: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
18
+ };
19
+ static description: string;
20
+ static enableJsonFlag: boolean;
21
+ static examples: string[];
22
+ run(): Promise<ScaffoldInfoResponse>;
23
+ }
24
+ export {};
@@ -0,0 +1,89 @@
1
+ /*
2
+ * Copyright (c) 2025, Salesforce, Inc.
3
+ * SPDX-License-Identifier: Apache-2
4
+ * For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ import { Args, ux } from '@oclif/core';
7
+ import cliui from 'cliui';
8
+ import { BaseCommand } from '@salesforce/b2c-tooling-sdk/cli';
9
+ import { createScaffoldRegistry } from '@salesforce/b2c-tooling-sdk/scaffold';
10
+ import { t, withDocs } from '../../i18n/index.js';
11
+ /**
12
+ * Command to show detailed information about a scaffold.
13
+ */
14
+ export default class ScaffoldInfo extends BaseCommand {
15
+ static args = {
16
+ scaffoldId: Args.string({
17
+ description: 'Scaffold ID to get info for',
18
+ required: true,
19
+ }),
20
+ };
21
+ static description = withDocs(t('commands.scaffold.info.description', 'Show detailed information about a scaffold'), '/cli/scaffold.html#b2c-scaffold-info');
22
+ static enableJsonFlag = true;
23
+ static examples = [
24
+ '<%= config.bin %> <%= command.id %> cartridge',
25
+ '<%= config.bin %> <%= command.id %> custom-api --json',
26
+ ];
27
+ async run() {
28
+ const { scaffoldId } = this.args;
29
+ const registry = createScaffoldRegistry();
30
+ const projectRoot = this.flags['working-directory'] || process.cwd();
31
+ const scaffold = await registry.getScaffold(scaffoldId, {
32
+ projectRoot,
33
+ });
34
+ if (!scaffold) {
35
+ this.error(t('commands.scaffold.info.scaffoldNotFound', 'Scaffold not found: {{id}}', { id: scaffoldId }));
36
+ }
37
+ const response = {
38
+ id: scaffold.id,
39
+ source: scaffold.source,
40
+ manifest: scaffold.manifest,
41
+ path: scaffold.path,
42
+ };
43
+ if (this.jsonEnabled()) {
44
+ return response;
45
+ }
46
+ // Display formatted output
47
+ const ui = cliui({ width: process.stdout.columns || 80 });
48
+ // Header
49
+ ui.div({ text: `\n${scaffold.manifest.displayName}`, padding: [0, 0, 0, 0] });
50
+ ui.div({ text: '='.repeat(scaffold.manifest.displayName.length), padding: [0, 0, 1, 0] });
51
+ // Basic info
52
+ ui.div({ text: 'ID:', width: 15, padding: [0, 2, 0, 0] }, { text: scaffold.id });
53
+ ui.div({ text: 'Category:', width: 15, padding: [0, 2, 0, 0] }, { text: scaffold.manifest.category });
54
+ ui.div({ text: 'Source:', width: 15, padding: [0, 2, 0, 0] }, { text: scaffold.source });
55
+ ui.div({ text: 'Description:', width: 15, padding: [0, 2, 0, 0] }, { text: scaffold.manifest.description });
56
+ // Parameters
57
+ if (scaffold.manifest.parameters.length > 0) {
58
+ ui.div({ text: '\nParameters:', padding: [1, 0, 0, 0] });
59
+ ui.div({ text: '-'.repeat(11), padding: [0, 0, 1, 0] });
60
+ for (const param of scaffold.manifest.parameters) {
61
+ const required = param.required ? ' (required)' : '';
62
+ const defaultVal = param.default === undefined ? '' : ` [default: ${param.default}]`;
63
+ const conditional = param.when ? ` [when: ${param.when}]` : '';
64
+ ui.div({ text: ` ${param.name}`, width: 25, padding: [0, 2, 0, 0] }, { text: `${param.type}${required}${defaultVal}${conditional}` });
65
+ ui.div({ text: '', width: 25, padding: [0, 2, 0, 0] }, { text: param.prompt });
66
+ if (param.choices && param.choices.length > 0) {
67
+ ui.div({ text: '', width: 25, padding: [0, 2, 0, 0] }, { text: `Choices: ${param.choices.map((c) => c.value).join(', ')}` });
68
+ }
69
+ }
70
+ }
71
+ // Usage example
72
+ ui.div({ text: '\nUsage:', padding: [1, 0, 0, 0] });
73
+ ui.div({ text: '------', padding: [0, 0, 1, 0] });
74
+ const requiredParams = scaffold.manifest.parameters
75
+ .filter((p) => p.required && !p.when)
76
+ .map((p) => `--option ${p.name}=<value>`)
77
+ .join(' ');
78
+ ui.div({ text: ` b2c scaffold generate ${scaffold.id} ${requiredParams}`, padding: [0, 0, 0, 0] });
79
+ // Post instructions
80
+ if (scaffold.manifest.postInstructions) {
81
+ ui.div({ text: '\nPost-generation instructions:', padding: [1, 0, 0, 0] });
82
+ ui.div({ text: '-----------------------------', padding: [0, 0, 1, 0] });
83
+ ui.div({ text: ' (shown after generation completes)', padding: [0, 0, 0, 0] });
84
+ }
85
+ ux.stdout(ui.toString());
86
+ return response;
87
+ }
88
+ }
89
+ //# sourceMappingURL=info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info.js","sourceRoot":"","sources":["../../../src/commands/scaffold/info.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { BaseCommand } from '@salesforce/b2c-tooling-sdk/cli';
2
+ /**
3
+ * Response type for the init command.
4
+ */
5
+ interface ScaffoldInitResponse {
6
+ name: string;
7
+ path: string;
8
+ location: 'custom' | 'project' | 'user';
9
+ files: string[];
10
+ }
11
+ /**
12
+ * Command to initialize a new custom scaffold.
13
+ */
14
+ export default class ScaffoldInit extends BaseCommand<typeof ScaffoldInit> {
15
+ static args: {
16
+ name: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
17
+ };
18
+ static description: string;
19
+ static enableJsonFlag: boolean;
20
+ static examples: string[];
21
+ static flags: {
22
+ project: import("@oclif/core/interfaces").BooleanFlag<boolean>;
23
+ user: import("@oclif/core/interfaces").BooleanFlag<boolean>;
24
+ output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
+ force: import("@oclif/core/interfaces").BooleanFlag<boolean>;
26
+ };
27
+ run(): Promise<ScaffoldInitResponse>;
28
+ }
29
+ export {};