@aussieljk/forkbook 0.0.0-stage → 0.0.1-2

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 (598) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +77 -2
  3. package/assets/addon-vitest/templates/vitest.config.4.template.ts +36 -0
  4. package/assets/browser/favicon-wrapper.svg +46 -0
  5. package/assets/browser/favicon.svg +1 -0
  6. package/assets/browser/nunito-sans-bold-italic.woff2 +0 -0
  7. package/assets/browser/nunito-sans-bold.woff2 +0 -0
  8. package/assets/browser/nunito-sans-italic.woff2 +0 -0
  9. package/assets/browser/nunito-sans-regular.woff2 +0 -0
  10. package/assets/builder-vite/iframe.html +99 -0
  11. package/assets/create/rendererAssets/.eslintrc.json +16 -0
  12. package/assets/create/rendererAssets/common/Configure.mdx +388 -0
  13. package/assets/create/rendererAssets/common/assets/accessibility.png +0 -0
  14. package/assets/create/rendererAssets/common/assets/accessibility.svg +1 -0
  15. package/assets/create/rendererAssets/common/assets/addon-library.png +0 -0
  16. package/assets/create/rendererAssets/common/assets/assets.png +0 -0
  17. package/assets/create/rendererAssets/common/assets/avif-test-image.avif +0 -0
  18. package/assets/create/rendererAssets/common/assets/context.png +0 -0
  19. package/assets/create/rendererAssets/common/assets/discord.svg +1 -0
  20. package/assets/create/rendererAssets/common/assets/docs.png +0 -0
  21. package/assets/create/rendererAssets/common/assets/figma-plugin.png +0 -0
  22. package/assets/create/rendererAssets/common/assets/github.svg +1 -0
  23. package/assets/create/rendererAssets/common/assets/share.png +0 -0
  24. package/assets/create/rendererAssets/common/assets/styling.png +0 -0
  25. package/assets/create/rendererAssets/common/assets/testing.png +0 -0
  26. package/assets/create/rendererAssets/common/assets/theming.png +0 -0
  27. package/assets/create/rendererAssets/common/assets/tutorials.svg +1 -0
  28. package/assets/create/rendererAssets/common/assets/youtube.svg +1 -0
  29. package/assets/create/rendererAssets/common/button.css +30 -0
  30. package/assets/create/rendererAssets/common/header.css +32 -0
  31. package/assets/create/rendererAssets/common/page.css +68 -0
  32. package/assets/create/templates/react-native/index.expo.js +20 -0
  33. package/assets/create/templates/react-native/index.js +25 -0
  34. package/assets/docs/addon-backgrounds.gif +0 -0
  35. package/assets/docs/addon-controls-args-annotated.png +0 -0
  36. package/assets/docs/addon-controls-args-background-color.png +0 -0
  37. package/assets/docs/addon-controls-args-background-string.png +0 -0
  38. package/assets/docs/addon-controls-args-docs.png +0 -0
  39. package/assets/docs/addon-controls-args-logging.png +0 -0
  40. package/assets/docs/addon-controls-args-no-annotation.png +0 -0
  41. package/assets/docs/addon-controls-args-reflow-slider.png +0 -0
  42. package/assets/docs/addon-controls-args-reflow.png +0 -0
  43. package/assets/docs/addon-controls-args-template.png +0 -0
  44. package/assets/docs/addon-controls-expanded.png +0 -0
  45. package/assets/docs/addon-controls-hero.gif +0 -0
  46. package/assets/docs/addon-controls-install.png +0 -0
  47. package/assets/docs/hero.gif +0 -0
  48. package/assets/docs/highlight.png +0 -0
  49. package/assets/docs/message-reference.png +0 -0
  50. package/assets/docs/viewport.png +0 -0
  51. package/assets/react-native/metro-env.d.ts +69 -0
  52. package/assets/server/addon.tsconfig.json +6 -0
  53. package/assets/server/base-preview-body.html +116 -0
  54. package/assets/server/base-preview-head.html +494 -0
  55. package/assets/server/openBrowser.applescript +94 -0
  56. package/assets/server/template.ejs +87 -0
  57. package/dist/.build-stamp +0 -0
  58. package/dist/_browser-chunks/Color-PCLE2J36.js +1025 -0
  59. package/dist/_browser-chunks/DocsRenderer-JXND3PVQ.js +10 -0
  60. package/dist/_browser-chunks/WithTooltip-XSQFTBMB.js +1619 -0
  61. package/dist/_browser-chunks/chunk-2JDQ35OA.js +247 -0
  62. package/dist/_browser-chunks/chunk-2JT76G3E.js +104 -0
  63. package/dist/_browser-chunks/chunk-2MEPHP35.js +17 -0
  64. package/dist/_browser-chunks/chunk-2SCZVUKW.js +24 -0
  65. package/dist/_browser-chunks/chunk-46Z7NGAS.js +41 -0
  66. package/dist/_browser-chunks/chunk-4ATQOMJB.js +30 -0
  67. package/dist/_browser-chunks/chunk-52CW7FF7.js +49 -0
  68. package/dist/_browser-chunks/chunk-5I7E4GMO.js +62 -0
  69. package/dist/_browser-chunks/chunk-5P4QA6MY.js +20 -0
  70. package/dist/_browser-chunks/chunk-5WMXI5GW.js +816 -0
  71. package/dist/_browser-chunks/chunk-66OCZ54D.js +2604 -0
  72. package/dist/_browser-chunks/chunk-6SXYJQST.js +253 -0
  73. package/dist/_browser-chunks/chunk-AYRF6EJB.js +36 -0
  74. package/dist/_browser-chunks/chunk-B4AUNNU4.js +156 -0
  75. package/dist/_browser-chunks/chunk-BCP2FFXF.js +369 -0
  76. package/dist/_browser-chunks/chunk-C3D4HEFY.js +3396 -0
  77. package/dist/_browser-chunks/chunk-CFAOWGL7.js +43 -0
  78. package/dist/_browser-chunks/chunk-CFWWCCZV.js +223 -0
  79. package/dist/_browser-chunks/chunk-CNED6RYH.js +18 -0
  80. package/dist/_browser-chunks/chunk-DRQKCCAG.js +136 -0
  81. package/dist/_browser-chunks/chunk-ECQ75MKQ.js +0 -0
  82. package/dist/_browser-chunks/chunk-EIYAKDGP.js +302 -0
  83. package/dist/_browser-chunks/chunk-ENKK74N4.js +12 -0
  84. package/dist/_browser-chunks/chunk-FENFYI4X.js +698 -0
  85. package/dist/_browser-chunks/chunk-FJGWSWL5.js +155 -0
  86. package/dist/_browser-chunks/chunk-FVSEPWWX.js +2810 -0
  87. package/dist/_browser-chunks/chunk-GNZY6LOW.js +10116 -0
  88. package/dist/_browser-chunks/chunk-IE4ULIOQ.js +14 -0
  89. package/dist/_browser-chunks/chunk-IMSF75WX.js +42 -0
  90. package/dist/_browser-chunks/chunk-IWQGIXJS.js +14 -0
  91. package/dist/_browser-chunks/chunk-JMC7AIKT.js +108 -0
  92. package/dist/_browser-chunks/chunk-JPUOQJUI.js +8 -0
  93. package/dist/_browser-chunks/chunk-JSBKXXXF.js +218 -0
  94. package/dist/_browser-chunks/chunk-JWSKPMPC.js +73 -0
  95. package/dist/_browser-chunks/chunk-JYVGARBG.js +2943 -0
  96. package/dist/_browser-chunks/chunk-KBK7GKBN.js +35 -0
  97. package/dist/_browser-chunks/chunk-KQ7CRO2B.js +108 -0
  98. package/dist/_browser-chunks/chunk-LAWXTSXK.js +18 -0
  99. package/dist/_browser-chunks/chunk-LE2LTDW3.js +14 -0
  100. package/dist/_browser-chunks/chunk-LEVSOOLQ.js +48 -0
  101. package/dist/_browser-chunks/chunk-LV5PIKV4.js +93 -0
  102. package/dist/_browser-chunks/chunk-MDOL7KML.js +56 -0
  103. package/dist/_browser-chunks/chunk-MFMDGWP6.js +34 -0
  104. package/dist/_browser-chunks/chunk-MLBOOZL4.js +67 -0
  105. package/dist/_browser-chunks/chunk-NQUD4B7H.js +91 -0
  106. package/dist/_browser-chunks/chunk-NULBREPZ.js +43 -0
  107. package/dist/_browser-chunks/chunk-NZMVUW5T.js +7 -0
  108. package/dist/_browser-chunks/chunk-OD6IBQCC.js +117 -0
  109. package/dist/_browser-chunks/chunk-ODVJ3XZJ.js +157 -0
  110. package/dist/_browser-chunks/chunk-OQWFVDIN.js +386 -0
  111. package/dist/_browser-chunks/chunk-OVH3USFB.js +20 -0
  112. package/dist/_browser-chunks/chunk-OZZPSYQR.js +14 -0
  113. package/dist/_browser-chunks/chunk-P6PK47TQ.js +1970 -0
  114. package/dist/_browser-chunks/chunk-PFRNG3UC.js +22 -0
  115. package/dist/_browser-chunks/chunk-PJSMZ27A.js +13 -0
  116. package/dist/_browser-chunks/chunk-QC4HFS6K.js +41 -0
  117. package/dist/_browser-chunks/chunk-QDXFODK4.js +274 -0
  118. package/dist/_browser-chunks/chunk-RBCHTR7C.js +28 -0
  119. package/dist/_browser-chunks/chunk-RMYQ3QN3.js +294 -0
  120. package/dist/_browser-chunks/chunk-RNTIV5CE.js +411 -0
  121. package/dist/_browser-chunks/chunk-RSPAQWVJ.js +80 -0
  122. package/dist/_browser-chunks/chunk-S6TK43XQ.js +836 -0
  123. package/dist/_browser-chunks/chunk-SC67XZST.js +18 -0
  124. package/dist/_browser-chunks/chunk-SFVA4SBT.js +683 -0
  125. package/dist/_browser-chunks/chunk-SZYFOQMT.js +25 -0
  126. package/dist/_browser-chunks/chunk-TBJCJXK4.js +18 -0
  127. package/dist/_browser-chunks/chunk-UMDO3KB7.js +205 -0
  128. package/dist/_browser-chunks/chunk-V2G23FV7.js +11 -0
  129. package/dist/_browser-chunks/chunk-V5M7Q4HT.js +88 -0
  130. package/dist/_browser-chunks/chunk-W5M6NPS3.js +198 -0
  131. package/dist/_browser-chunks/chunk-W7NE2JXW.js +84 -0
  132. package/dist/_browser-chunks/chunk-WGVAAM43.js +1110 -0
  133. package/dist/_browser-chunks/chunk-WHQRNHXD.js +8 -0
  134. package/dist/_browser-chunks/chunk-WOSOWBCA.js +12 -0
  135. package/dist/_browser-chunks/chunk-WZ7KR7SH.js +85 -0
  136. package/dist/_browser-chunks/chunk-YEKO6BHJ.js +20 -0
  137. package/dist/_browser-chunks/chunk-YI2IBIQS.js +7 -0
  138. package/dist/_browser-chunks/chunk-YTIT5NA5.js +1966 -0
  139. package/dist/_browser-chunks/chunk-ZEHRUHTA.js +6 -0
  140. package/dist/_browser-chunks/chunk-ZTQ5MEJ5.js +203 -0
  141. package/dist/_browser-chunks/matchers-YLBYSYAF.js +1263 -0
  142. package/dist/_browser-chunks/react-dom-client-4OHE3QDV.js +9 -0
  143. package/dist/_node-chunks/attached-runtime-I2G4WLJI.js +282 -0
  144. package/dist/_node-chunks/builder-manager-VVHYQXCH.js +1661 -0
  145. package/dist/_node-chunks/chunk-2BUPBPFB.js +82 -0
  146. package/dist/_node-chunks/chunk-2DSIDINN.js +884 -0
  147. package/dist/_node-chunks/chunk-2RU7BKEW.js +23 -0
  148. package/dist/_node-chunks/chunk-34EO2PUT.js +26 -0
  149. package/dist/_node-chunks/chunk-3BKIBF5S.js +3008 -0
  150. package/dist/_node-chunks/chunk-3SDUYDXH.js +98 -0
  151. package/dist/_node-chunks/chunk-3T4ZSNPH.js +662 -0
  152. package/dist/_node-chunks/chunk-3W7F2B7P.js +79 -0
  153. package/dist/_node-chunks/chunk-3Y6AAY5H.js +80 -0
  154. package/dist/_node-chunks/chunk-42UWAGPW.js +1193 -0
  155. package/dist/_node-chunks/chunk-4FEANXWU.js +1986 -0
  156. package/dist/_node-chunks/chunk-5DQFEZEA.js +40 -0
  157. package/dist/_node-chunks/chunk-6KEHV53S.js +1218 -0
  158. package/dist/_node-chunks/chunk-6LMWA44H.js +3837 -0
  159. package/dist/_node-chunks/chunk-6YKBRP72.js +20 -0
  160. package/dist/_node-chunks/chunk-7GUDZVRQ.js +110 -0
  161. package/dist/_node-chunks/chunk-B5J7Q7J4.js +21 -0
  162. package/dist/_node-chunks/chunk-BS2WMZMR.js +90 -0
  163. package/dist/_node-chunks/chunk-BSKFCWQD.js +47 -0
  164. package/dist/_node-chunks/chunk-BXVYT7SB.js +36 -0
  165. package/dist/_node-chunks/chunk-CCOTJ4FC.js +688 -0
  166. package/dist/_node-chunks/chunk-CQKMLL5J.js +33 -0
  167. package/dist/_node-chunks/chunk-CXRU72ET.js +63 -0
  168. package/dist/_node-chunks/chunk-DC7DKR5K.js +20 -0
  169. package/dist/_node-chunks/chunk-DHJFTB4K.js +25 -0
  170. package/dist/_node-chunks/chunk-DUR55DJJ.js +1094 -0
  171. package/dist/_node-chunks/chunk-E6YESGLX.js +7032 -0
  172. package/dist/_node-chunks/chunk-EHUNOMDD.js +52345 -0
  173. package/dist/_node-chunks/chunk-ET7PWEO7.js +298 -0
  174. package/dist/_node-chunks/chunk-EWOX7HPJ.js +20 -0
  175. package/dist/_node-chunks/chunk-F3ZFKBHY.js +844 -0
  176. package/dist/_node-chunks/chunk-FK7KGTV7.js +26 -0
  177. package/dist/_node-chunks/chunk-FPZB5OI7.js +35 -0
  178. package/dist/_node-chunks/chunk-FW2HQUBQ.js +25 -0
  179. package/dist/_node-chunks/chunk-FY6UXW6G.js +11 -0
  180. package/dist/_node-chunks/chunk-GEFQN7K3.js +499 -0
  181. package/dist/_node-chunks/chunk-GRBLDJCR.js +989 -0
  182. package/dist/_node-chunks/chunk-H32DYT6P.js +87 -0
  183. package/dist/_node-chunks/chunk-H4PPVMP5.js +23 -0
  184. package/dist/_node-chunks/chunk-HMP2G23X.js +25 -0
  185. package/dist/_node-chunks/chunk-ICPBH3E7.js +59 -0
  186. package/dist/_node-chunks/chunk-IDEL2J23.js +23 -0
  187. package/dist/_node-chunks/chunk-IK4FGZLR.js +223 -0
  188. package/dist/_node-chunks/chunk-JDXXX6LB.js +68 -0
  189. package/dist/_node-chunks/chunk-JGGFYIG5.js +5468 -0
  190. package/dist/_node-chunks/chunk-JPAZLYJ3.js +29 -0
  191. package/dist/_node-chunks/chunk-JZOO7GGC.js +48 -0
  192. package/dist/_node-chunks/chunk-KISMCCP5.js +4744 -0
  193. package/dist/_node-chunks/chunk-LCK4ZQKG.js +115 -0
  194. package/dist/_node-chunks/chunk-LO56I6E2.js +132 -0
  195. package/dist/_node-chunks/chunk-LXBD4UL4.js +104 -0
  196. package/dist/_node-chunks/chunk-MA24JW6C.js +7162 -0
  197. package/dist/_node-chunks/chunk-MK2KYAI6.js +5414 -0
  198. package/dist/_node-chunks/chunk-NDWKJ4CL.js +2102 -0
  199. package/dist/_node-chunks/chunk-NIBT7XDZ.js +168 -0
  200. package/dist/_node-chunks/chunk-NPO45IMH.js +33 -0
  201. package/dist/_node-chunks/chunk-OISX4AGQ.js +414 -0
  202. package/dist/_node-chunks/chunk-OUW6R7C3.js +26 -0
  203. package/dist/_node-chunks/chunk-OWNFOGTA.js +194 -0
  204. package/dist/_node-chunks/chunk-Q7QNUM5H.js +49 -0
  205. package/dist/_node-chunks/chunk-QEQLR22M.js +1877 -0
  206. package/dist/_node-chunks/chunk-RRN2V55B.js +45 -0
  207. package/dist/_node-chunks/chunk-RWFIFGO5.js +144 -0
  208. package/dist/_node-chunks/chunk-RXNJDRGO.js +209 -0
  209. package/dist/_node-chunks/chunk-RZMQ7S3L.js +92 -0
  210. package/dist/_node-chunks/chunk-SIEXZVCR.js +51 -0
  211. package/dist/_node-chunks/chunk-SLWQNBGO.js +2034 -0
  212. package/dist/_node-chunks/chunk-SVTBJ7Q3.js +35 -0
  213. package/dist/_node-chunks/chunk-SWO5CDYU.js +32 -0
  214. package/dist/_node-chunks/chunk-TD5PLLQG.js +121 -0
  215. package/dist/_node-chunks/chunk-TEQGGSP7.js +33 -0
  216. package/dist/_node-chunks/chunk-TFCEV2XX.js +155 -0
  217. package/dist/_node-chunks/chunk-TFEWM4E3.js +1073 -0
  218. package/dist/_node-chunks/chunk-TINO74G5.js +21 -0
  219. package/dist/_node-chunks/chunk-TNJIXE37.js +40 -0
  220. package/dist/_node-chunks/chunk-TWI4GVH7.js +19 -0
  221. package/dist/_node-chunks/chunk-U5W53R2J.js +1011 -0
  222. package/dist/_node-chunks/chunk-UBOGWBEA.js +148 -0
  223. package/dist/_node-chunks/chunk-UMUBKI6E.js +3787 -0
  224. package/dist/_node-chunks/chunk-UVINFLGY.js +56 -0
  225. package/dist/_node-chunks/chunk-V2DY426G.js +1133 -0
  226. package/dist/_node-chunks/chunk-VLOXOXXE.js +45 -0
  227. package/dist/_node-chunks/chunk-W4OMYLSP.js +1297 -0
  228. package/dist/_node-chunks/chunk-WAXVSN3O.js +18 -0
  229. package/dist/_node-chunks/chunk-WCULS5TP.js +3767 -0
  230. package/dist/_node-chunks/chunk-WNZ2UMFM.js +153 -0
  231. package/dist/_node-chunks/chunk-WZJF2OUH.js +74 -0
  232. package/dist/_node-chunks/chunk-XGIUVY52.js +611 -0
  233. package/dist/_node-chunks/chunk-XHL2LVBM.js +415 -0
  234. package/dist/_node-chunks/chunk-XI6B6P47.js +59 -0
  235. package/dist/_node-chunks/chunk-XLP2ZKXV.js +60 -0
  236. package/dist/_node-chunks/chunk-YCMRA6RX.js +95 -0
  237. package/dist/_node-chunks/chunk-YZFWBA5L.js +2700 -0
  238. package/dist/_node-chunks/chunk-ZMAMXQKP.js +4731 -0
  239. package/dist/_node-chunks/chunk-ZWBCQ4MJ.js +110 -0
  240. package/dist/_node-chunks/dist-VTSTZKUB.js +16 -0
  241. package/dist/_node-chunks/globby-OEMHPBFY.js +2884 -0
  242. package/dist/_node-chunks/jiti-NFX6UU74.js +3848 -0
  243. package/dist/_node-chunks/lib-MDVARD7W.js +366 -0
  244. package/dist/_node-chunks/local-runtime-NTKIN2QT.js +78 -0
  245. package/dist/_node-chunks/mdx-plugin-MWISDWDQ.js +5680 -0
  246. package/dist/_node-chunks/monorepo-LIRFMQXE.js +121 -0
  247. package/dist/_node-chunks/monorepo-optimized-tests-relaxed-limits-no-story-deletion-CPDW4XTW.js +121 -0
  248. package/dist/_node-chunks/optimized-tests-HDOLR3EY.js +22 -0
  249. package/dist/_node-chunks/pattern-copy-play-EKHIUAU2.js +807 -0
  250. package/dist/_node-chunks/postinstallAddon-GYGMWDL6.js +20 -0
  251. package/dist/_node-chunks/rehype-external-links-BUN3HUCO.js +121 -0
  252. package/dist/_node-chunks/rehype-slug-PLADX223.js +52 -0
  253. package/dist/_node-chunks/relaxed-limits-GBHW6KIQ.js +117 -0
  254. package/dist/_node-chunks/run-KDTIZNSY.js +103 -0
  255. package/dist/_node-chunks/run-NL66VTNR.js +4532 -0
  256. package/dist/_node-chunks/session-id-KIIVOQLR.js +23 -0
  257. package/dist/_node-chunks/setup-MGC7BQO6.js +278 -0
  258. package/dist/_node-chunks/vitest.config.4.template-JH2THZFG.js +54 -0
  259. package/dist/actions/decorator.d.ts +7 -0
  260. package/dist/actions/decorator.js +43 -0
  261. package/dist/actions/index.d.ts +67 -0
  262. package/dist/actions/index.js +28 -0
  263. package/dist/addon-a11y/index.d.ts +52 -0
  264. package/dist/addon-a11y/index.js +16 -0
  265. package/dist/addon-a11y/manager.js +1429 -0
  266. package/dist/addon-a11y/preset.js +18 -0
  267. package/dist/addon-a11y/preview.d.ts +17 -0
  268. package/dist/addon-a11y/preview.js +15 -0
  269. package/dist/addon-docs/blocks.d.ts +1061 -0
  270. package/dist/addon-docs/blocks.js +2461 -0
  271. package/dist/addon-docs/index.d.ts +236 -0
  272. package/dist/addon-docs/index.js +16 -0
  273. package/dist/addon-docs/manager.js +90 -0
  274. package/dist/addon-docs/mdx-react-shim.d.ts +1 -0
  275. package/dist/addon-docs/mdx-react-shim.js +2 -0
  276. package/dist/addon-docs/preset.js +378 -0
  277. package/dist/addon-docs/preview.d.ts +4 -0
  278. package/dist/addon-docs/preview.js +7 -0
  279. package/dist/addon-links/index.d.ts +22 -0
  280. package/dist/addon-links/index.js +20 -0
  281. package/dist/addon-links/manager.js +14 -0
  282. package/dist/addon-links/preview.d.ts +6 -0
  283. package/dist/addon-links/preview.js +9 -0
  284. package/dist/addon-links/react/index.d.ts +25 -0
  285. package/dist/addon-links/react/index.js +52 -0
  286. package/dist/addon-mcp/preset.js +1345 -0
  287. package/dist/addon-mcp/preview.js +29 -0
  288. package/dist/addon-mcp/tools/preview-stories/preview-stories-app-script.js +1153 -0
  289. package/dist/addon-ondevice-actions/index.d.ts +4 -0
  290. package/dist/addon-ondevice-actions/index.js +7 -0
  291. package/dist/addon-ondevice-actions/register.js +7 -0
  292. package/dist/addon-ondevice-controls/index.d.ts +6 -0
  293. package/dist/addon-ondevice-controls/index.js +14 -0
  294. package/dist/addon-ondevice-controls/register.js +10 -0
  295. package/dist/addon-pseudo-states/index.d.ts +35 -0
  296. package/dist/addon-pseudo-states/index.js +15 -0
  297. package/dist/addon-pseudo-states/manager.js +53 -0
  298. package/dist/addon-pseudo-states/preview.d.ts +9 -0
  299. package/dist/addon-pseudo-states/preview.js +10 -0
  300. package/dist/addon-themes/index.d.ts +80 -0
  301. package/dist/addon-themes/index.js +104 -0
  302. package/dist/addon-themes/manager.js +97 -0
  303. package/dist/addon-themes/postinstall.js +33 -0
  304. package/dist/addon-themes/preview.d.ts +6 -0
  305. package/dist/addon-themes/preview.js +8 -0
  306. package/dist/addon-vitest/constants.d.ts +132 -0
  307. package/dist/addon-vitest/constants.js +66 -0
  308. package/dist/addon-vitest/index.d.ts +4 -0
  309. package/dist/addon-vitest/index.js +8 -0
  310. package/dist/addon-vitest/manager.js +665 -0
  311. package/dist/addon-vitest/node/coverage-reporter.js +1284 -0
  312. package/dist/addon-vitest/node/vitest.js +674 -0
  313. package/dist/addon-vitest/postinstall.js +24 -0
  314. package/dist/addon-vitest/preset.js +943 -0
  315. package/dist/addon-vitest/vitest-plugin/global-setup.js +162 -0
  316. package/dist/addon-vitest/vitest-plugin/index.d.ts +56 -0
  317. package/dist/addon-vitest/vitest-plugin/index.js +463 -0
  318. package/dist/addon-vitest/vitest-plugin/setup-file-with-project-annotations.js +9 -0
  319. package/dist/addon-vitest/vitest-plugin/setup-file.browser.4.js +20 -0
  320. package/dist/addon-vitest/vitest-plugin/setup-file.js +50 -0
  321. package/dist/addon-vitest/vitest-plugin/test-utils.js +128 -0
  322. package/dist/babel/index.d.ts +2301 -0
  323. package/dist/babel/index.js +61 -0
  324. package/dist/backgrounds/index.d.ts +6 -0
  325. package/dist/backgrounds/index.js +15 -0
  326. package/dist/bin/core.js +1705 -0
  327. package/dist/bin/dispatcher.js +43 -0
  328. package/dist/bin/loader.js +115 -0
  329. package/dist/builder-vite/index.d.ts +50 -0
  330. package/dist/builder-vite/index.js +245 -0
  331. package/dist/builder-vite/preset.js +27 -0
  332. package/dist/channels/index.d.ts +2 -0
  333. package/dist/channels/index.js +352 -0
  334. package/dist/chunk-B2t1tGRh.d.ts +284 -0
  335. package/dist/chunk-BCoJQE-f.d.ts +602 -0
  336. package/dist/chunk-BGkgZp-H.d.ts +214 -0
  337. package/dist/chunk-BTVrWliM.d.ts +115 -0
  338. package/dist/chunk-BXLImeLy.d.ts +197 -0
  339. package/dist/chunk-BfBzpgct.d.ts +916 -0
  340. package/dist/chunk-Bpi2tz-6.d.ts +511 -0
  341. package/dist/chunk-BxWufQms.d.ts +142 -0
  342. package/dist/chunk-C-bavsOH.d.ts +34 -0
  343. package/dist/chunk-C2p5r3Vt.d.ts +13001 -0
  344. package/dist/chunk-C6PAgHLT.d.ts +12 -0
  345. package/dist/chunk-CMeX4WRe.d.ts +179 -0
  346. package/dist/chunk-Ct9xd6IM.d.ts +65 -0
  347. package/dist/chunk-CwQKNaYL.d.ts +15 -0
  348. package/dist/chunk-D7DwV41f.d.ts +3622 -0
  349. package/dist/chunk-DEVFdzxR.d.ts +253 -0
  350. package/dist/chunk-DaVb55-_.d.ts +124 -0
  351. package/dist/chunk-DgRNfmj_.d.ts +40 -0
  352. package/dist/chunk-DoIGKY33.d.ts +666 -0
  353. package/dist/chunk-Dr3R0DXk.d.ts +40 -0
  354. package/dist/chunk-DtHByo32.d.ts +55 -0
  355. package/dist/chunk-Dw1z1Pki.d.ts +933 -0
  356. package/dist/chunk-DzuY9DXg.d.ts +79 -0
  357. package/dist/chunk-FjDVzZTj.d.ts +62 -0
  358. package/dist/chunk-Kt1tW-D1.d.ts +59 -0
  359. package/dist/chunk-XP8oHzpE.d.ts +6 -0
  360. package/dist/chunk-gCX81nOr.d.ts +61 -0
  361. package/dist/chunk-pcFXCimE.d.ts +741 -0
  362. package/dist/cli/index.d.ts +1174 -0
  363. package/dist/cli/index.js +5613 -0
  364. package/dist/cli/skills/content/index.d.ts +72 -0
  365. package/dist/cli/skills/content/index.js +335 -0
  366. package/dist/cli/tools/sdk/child-host.d.ts +61 -0
  367. package/dist/cli/tools/sdk/child-host.js +131 -0
  368. package/dist/cli/tools/sdk/index.d.ts +137 -0
  369. package/dist/cli/tools/sdk/index.js +44 -0
  370. package/dist/cli-commands/bin/index.js +25 -0
  371. package/dist/client-logger/index.d.ts +31 -0
  372. package/dist/client-logger/index.js +63 -0
  373. package/dist/common/index.d.ts +1103 -0
  374. package/dist/common/index.js +364 -0
  375. package/dist/components/index.d.ts +1924 -0
  376. package/dist/components/index.js +13759 -0
  377. package/dist/core-events/index.d.ts +155 -0
  378. package/dist/core-events/index.js +136 -0
  379. package/dist/core-server/index.d.ts +2200 -0
  380. package/dist/core-server/index.js +4165 -0
  381. package/dist/core-server/presets/common-manager.css +170 -0
  382. package/dist/core-server/presets/common-manager.js +4168 -0
  383. package/dist/core-server/presets/common-override-preset.js +81 -0
  384. package/dist/core-server/presets/common-preset.js +2187 -0
  385. package/dist/create/bin/index.js +23 -0
  386. package/dist/create/index.js +25 -0
  387. package/dist/csf/csf-utils.d.ts +2 -0
  388. package/dist/csf/csf-utils.js +19 -0
  389. package/dist/csf/index.d.ts +7 -0
  390. package/dist/csf/index.js +2142 -0
  391. package/dist/csf-tools/index.d.ts +1157 -0
  392. package/dist/csf-tools/index.js +736 -0
  393. package/dist/docs-tools/index.d.ts +197 -0
  394. package/dist/docs-tools/index.js +61 -0
  395. package/dist/highlight/index.d.ts +10 -0
  396. package/dist/highlight/index.js +15 -0
  397. package/dist/instrumenter/index.d.ts +113 -0
  398. package/dist/instrumenter/index.js +2595 -0
  399. package/dist/manager/_manager-chunks/globals-runtime-8HkdnU2F.js +6144 -0
  400. package/dist/manager/_manager-chunks/globals-runtime-BIKBO23x.js +3389 -0
  401. package/dist/manager/_manager-chunks/globals-runtime-BdGkqNEt.js +45 -0
  402. package/dist/manager/_manager-chunks/globals-runtime-BmphMP6z.js +1190 -0
  403. package/dist/manager/_manager-chunks/globals-runtime-BvM-NY2g.js +13307 -0
  404. package/dist/manager/_manager-chunks/globals-runtime-C02fvgcd.js +9243 -0
  405. package/dist/manager/_manager-chunks/globals-runtime-DkAPXCvc.js +9766 -0
  406. package/dist/manager/_manager-chunks/globals-runtime-DpNYC-qi.js +5564 -0
  407. package/dist/manager/_manager-chunks/globals-runtime-DtcOnYHR.js +5357 -0
  408. package/dist/manager/_manager-chunks/globals-runtime-DwFqpqya.js +722 -0
  409. package/dist/manager/_manager-chunks/globals-runtime-FC201B7s.js +6837 -0
  410. package/dist/manager/_manager-chunks/globals-runtime-Rp_zjGnh.js +121 -0
  411. package/dist/manager/_manager-chunks/globals-runtime-ZHrQFa3-.js +10463 -0
  412. package/dist/manager/_manager-chunks/globals-runtime-eLPTIfX-.js +7759 -0
  413. package/dist/manager/_manager-chunks/globals-runtime-qKvCZHFY.js +4468 -0
  414. package/dist/manager/_manager-chunks/globals-runtime-sGpNlIJ1.js +5102 -0
  415. package/dist/manager/_manager-chunks/runtime-B1L9TH89.js +452 -0
  416. package/dist/manager/_manager-chunks/runtime-BK0zF7FN.js +22 -0
  417. package/dist/manager/_manager-chunks/runtime-BhkT2CXl.js +1408 -0
  418. package/dist/manager/_manager-chunks/runtime-Bly6WJLN.js +998 -0
  419. package/dist/manager/_manager-chunks/runtime-D0UOWx0U.js +979 -0
  420. package/dist/manager/_manager-chunks/runtime-D94Vq3oR.js +4014 -0
  421. package/dist/manager/_manager-chunks/runtime-DMig8mT7.js +77 -0
  422. package/dist/manager/_manager-chunks/runtime-EITvVbkG.js +46 -0
  423. package/dist/manager/_manager-chunks/runtime-cp5pazY2.js +8936 -0
  424. package/dist/manager/_manager-chunks/runtime-eDVAYF7N.js +6860 -0
  425. package/dist/manager/_manager-chunks/runtime-i-PDAHLR.js +2493 -0
  426. package/dist/manager/globals-runtime.js +2 -0
  427. package/dist/manager/globals.d.ts +23 -0
  428. package/dist/manager/globals.js +26 -0
  429. package/dist/manager/manager-stores.d.ts +2 -0
  430. package/dist/manager/manager-stores.js +19 -0
  431. package/dist/manager/runtime.js +2 -0
  432. package/dist/manager-api/index.d.ts +2 -0
  433. package/dist/manager-api/index.js +3257 -0
  434. package/dist/manager-errors.d.ts +89 -0
  435. package/dist/manager-errors.js +20 -0
  436. package/dist/mcp/index.d.ts +270 -0
  437. package/dist/mcp/index.js +305 -0
  438. package/dist/mocking-utils/index.d.ts +689 -0
  439. package/dist/mocking-utils/index.js +521 -0
  440. package/dist/mocking-utils/mocker-runtime.js +1254 -0
  441. package/dist/nextjs-vite/config/preview.js +3 -0
  442. package/dist/nextjs-vite/export-mocks/cache/index.d.ts +25 -0
  443. package/dist/nextjs-vite/export-mocks/cache/index.js +29 -0
  444. package/dist/nextjs-vite/export-mocks/headers/index.d.ts +37 -0
  445. package/dist/nextjs-vite/export-mocks/headers/index.js +54 -0
  446. package/dist/nextjs-vite/export-mocks/link/index.d.ts +9 -0
  447. package/dist/nextjs-vite/export-mocks/link/index.js +59 -0
  448. package/dist/nextjs-vite/export-mocks/navigation/index.d.ts +28 -0
  449. package/dist/nextjs-vite/export-mocks/navigation/index.js +58 -0
  450. package/dist/nextjs-vite/export-mocks/router/index.d.ts +34 -0
  451. package/dist/nextjs-vite/export-mocks/router/index.js +63 -0
  452. package/dist/nextjs-vite/index.d.ts +92 -0
  453. package/dist/nextjs-vite/index.js +58 -0
  454. package/dist/nextjs-vite/node/index.d.ts +6 -0
  455. package/dist/nextjs-vite/node/index.js +20 -0
  456. package/dist/nextjs-vite/preset.js +648 -0
  457. package/dist/nextjs-vite/preview.d.ts +20 -0
  458. package/dist/nextjs-vite/preview.js +11 -0
  459. package/dist/nextjs-vite/vite-plugin/index.d.ts +6 -0
  460. package/dist/nextjs-vite/vite-plugin/index.js +19 -0
  461. package/dist/nextjs-vite-plugin/index.d.ts +28 -0
  462. package/dist/nextjs-vite-plugin/index.js +923 -0
  463. package/dist/nextjs-vite-plugin/mocks/storybook.global.js +29 -0
  464. package/dist/nextjs-vite-plugin/plugins/next-image/alias/image-context.js +8 -0
  465. package/dist/nextjs-vite-plugin/plugins/next-image/alias/image-default-loader.js +23 -0
  466. package/dist/nextjs-vite-plugin/plugins/next-image/alias/next-image.js +28 -0
  467. package/dist/nextjs-vite-plugin/plugins/next-image/alias/next-legacy-image.js +17 -0
  468. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/cache/index.js +29 -0
  469. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/dynamic/index.js +40 -0
  470. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/headers/index.js +55 -0
  471. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/link/index.js +63 -0
  472. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/navigation/index.js +71 -0
  473. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/router/index.js +74 -0
  474. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/rsc/server-only.js +7 -0
  475. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/safe-stable-stringify/index.js +13 -0
  476. package/dist/nextjs-vite-plugin/plugins/next-mocks/compatibility/draft-mode.compat.js +7 -0
  477. package/dist/node-logger/index.d.ts +495 -0
  478. package/dist/node-logger/index.js +42 -0
  479. package/dist/oxc-parser/index.d.ts +99 -0
  480. package/dist/oxc-parser/index.js +275 -0
  481. package/dist/oxc-parser/worker.js +37 -0
  482. package/dist/preview/_chunks/runtime-BIzIdDbb.js +10263 -0
  483. package/dist/preview/_chunks/runtime-BTPtVY1p.js +1102 -0
  484. package/dist/preview/_chunks/runtime-BZSnICCg.js +8484 -0
  485. package/dist/preview/_chunks/runtime-BdGkqNEt.js +45 -0
  486. package/dist/preview/_chunks/runtime-BwSxqk3t.js +63 -0
  487. package/dist/preview/_chunks/runtime-CqHxptiK.js +6143 -0
  488. package/dist/preview/_chunks/runtime-CsV4HZPV.js +5064 -0
  489. package/dist/preview/_chunks/runtime-CxZK_Ln3.js +284 -0
  490. package/dist/preview/_chunks/runtime-DZToXfvO.js +9767 -0
  491. package/dist/preview/_chunks/runtime-DrTjJkPY.js +3872 -0
  492. package/dist/preview/_chunks/runtime-DuHdxMFA.js +387 -0
  493. package/dist/preview/_chunks/runtime-iXdo8CR8.js +3635 -0
  494. package/dist/preview/_chunks/runtime-q3wt0e_N.js +6838 -0
  495. package/dist/preview/globals.d.ts +16 -0
  496. package/dist/preview/globals.js +20 -0
  497. package/dist/preview/runtime.js +6 -0
  498. package/dist/preview-api/index.d.ts +4 -0
  499. package/dist/preview-api/index.js +147 -0
  500. package/dist/preview-errors.d.ts +186 -0
  501. package/dist/preview-errors.js +56 -0
  502. package/dist/react/docgen/docgen-worker.js +38 -0
  503. package/dist/react/entry-preview-argtypes.js +9 -0
  504. package/dist/react/entry-preview-docs.js +12 -0
  505. package/dist/react/entry-preview-rsc.js +11 -0
  506. package/dist/react/entry-preview.js +21 -0
  507. package/dist/react/index.d.ts +119 -0
  508. package/dist/react/index.js +26 -0
  509. package/dist/react/preset.js +301 -0
  510. package/dist/react/preview.d.ts +2 -0
  511. package/dist/react/preview.js +11 -0
  512. package/dist/react-native/bin/get-stories.js +34 -0
  513. package/dist/react-native/index.d.ts +160 -0
  514. package/dist/react-native/index.js +1547 -0
  515. package/dist/react-native/metro/node.d.ts +83 -0
  516. package/dist/react-native/metro/node.js +21 -0
  517. package/dist/react-native/metro/withStorybook.d.ts +2269 -0
  518. package/dist/react-native/metro/withStorybook.js +138 -0
  519. package/dist/react-native/preview.d.ts +6 -0
  520. package/dist/react-native/preview.js +20 -0
  521. package/dist/react-native/scripts/generate.d.ts +22 -0
  522. package/dist/react-native/scripts/generate.js +18 -0
  523. package/dist/react-native/stub.js +20 -0
  524. package/dist/react-native-theming/index.d.ts +175 -0
  525. package/dist/react-native-theming/index.js +2591 -0
  526. package/dist/react-native-ui/index.d.ts +130 -0
  527. package/dist/react-native-ui/index.js +1448 -0
  528. package/dist/react-native-ui-common/index.d.ts +230 -0
  529. package/dist/react-native-ui-common/index.js +514 -0
  530. package/dist/react-vite/index.d.ts +4 -0
  531. package/dist/react-vite/index.js +8 -0
  532. package/dist/react-vite/node/index.d.ts +6 -0
  533. package/dist/react-vite/node/index.js +20 -0
  534. package/dist/react-vite/preset.d.ts +6 -0
  535. package/dist/react-vite/preset.js +21 -0
  536. package/dist/router/index.d.ts +141 -0
  537. package/dist/router/index.js +1217 -0
  538. package/dist/server-errors.d.ts +2 -0
  539. package/dist/server-errors.js +149 -0
  540. package/dist/shared/open-service/index.d.ts +3 -0
  541. package/dist/shared/open-service/index.js +115 -0
  542. package/dist/shared/open-service/services/docgen/worker/docgen-worker.js +75 -0
  543. package/dist/shared/open-service/toolsets/docs/public.d.ts +1296 -0
  544. package/dist/shared/open-service/toolsets/docs/public.js +991 -0
  545. package/dist/telemetry/index.d.ts +314 -0
  546. package/dist/telemetry/index.js +103 -0
  547. package/dist/test/index.d.ts +158 -0
  548. package/dist/test/index.js +19421 -0
  549. package/dist/theming/create.d.ts +15 -0
  550. package/dist/theming/create.js +11 -0
  551. package/dist/theming/index.d.ts +54 -0
  552. package/dist/theming/index.js +511 -0
  553. package/dist/types/index.d.ts +2 -0
  554. package/dist/types/index.js +48 -0
  555. package/dist/viewport/index.d.ts +275 -0
  556. package/dist/viewport/index.js +21 -0
  557. package/package.json +1054 -4
  558. package/template/nextjs-vite/cli/.eslintrc.json +6 -0
  559. package/template/nextjs-vite/cli/js/Button.jsx +42 -0
  560. package/template/nextjs-vite/cli/js/Button.stories.js +49 -0
  561. package/template/nextjs-vite/cli/js/Configure.mdx +470 -0
  562. package/template/nextjs-vite/cli/js/Header.jsx +58 -0
  563. package/template/nextjs-vite/cli/js/Header.stories.js +30 -0
  564. package/template/nextjs-vite/cli/js/Page.jsx +68 -0
  565. package/template/nextjs-vite/cli/js/Page.stories.js +28 -0
  566. package/template/nextjs-vite/cli/ts/Button.stories.ts +54 -0
  567. package/template/nextjs-vite/cli/ts/Button.tsx +39 -0
  568. package/template/nextjs-vite/cli/ts/Configure.mdx +446 -0
  569. package/template/nextjs-vite/cli/ts/Header.stories.ts +34 -0
  570. package/template/nextjs-vite/cli/ts/Header.tsx +54 -0
  571. package/template/nextjs-vite/cli/ts/Page.stories.ts +33 -0
  572. package/template/nextjs-vite/cli/ts/Page.tsx +73 -0
  573. package/template/react/cli/.eslintrc.json +5 -0
  574. package/template/react/cli/js/Button.jsx +39 -0
  575. package/template/react/cli/js/Button.stories.js +49 -0
  576. package/template/react/cli/js/Header.jsx +56 -0
  577. package/template/react/cli/js/Header.stories.js +29 -0
  578. package/template/react/cli/js/Page.jsx +69 -0
  579. package/template/react/cli/js/Page.stories.js +28 -0
  580. package/template/react/cli/ts/Button.stories.ts +54 -0
  581. package/template/react/cli/ts/Button.tsx +37 -0
  582. package/template/react/cli/ts/Header.stories.ts +34 -0
  583. package/template/react/cli/ts/Header.tsx +56 -0
  584. package/template/react/cli/ts/Page.stories.ts +33 -0
  585. package/template/react/cli/ts/Page.tsx +73 -0
  586. package/template/react-vite/cli/.eslintrc.json +5 -0
  587. package/template/react-vite/cli/js/Button.jsx +39 -0
  588. package/template/react-vite/cli/js/Button.stories.js +49 -0
  589. package/template/react-vite/cli/js/Header.jsx +56 -0
  590. package/template/react-vite/cli/js/Header.stories.js +29 -0
  591. package/template/react-vite/cli/js/Page.jsx +69 -0
  592. package/template/react-vite/cli/js/Page.stories.js +28 -0
  593. package/template/react-vite/cli/ts/Button.stories.ts +54 -0
  594. package/template/react-vite/cli/ts/Button.tsx +37 -0
  595. package/template/react-vite/cli/ts/Header.stories.ts +34 -0
  596. package/template/react-vite/cli/ts/Header.tsx +56 -0
  597. package/template/react-vite/cli/ts/Page.stories.ts +33 -0
  598. package/template/react-vite/cli/ts/Page.tsx +73 -0
@@ -0,0 +1,1157 @@
1
+ import { ArgTypes } from "@aussieljk/forkbook/internal/csf";
2
+ import { ComponentAnnotations, CsfEnricher, IndexInput, IndexInputStats, IndexedCSFFile, StoriesEntry, StoryAnnotations, Tag as Tag$1 } from "@aussieljk/forkbook/internal/types";
3
+ import { GeneratorOptions, NodePath, RecastOptions, babelParse, generate, types } from "@aussieljk/forkbook/internal/babel";
4
+
5
+ //#region .dts-emit/code/core/src/csf-tools/PrintResultType.d.ts
6
+ interface PrintResultType {
7
+ code: string;
8
+ map?: any;
9
+ toString(): string;
10
+ }
11
+ //#endregion
12
+ //#region .dts-emit/code/core/src/csf-tools/CsfObject.d.ts
13
+ type CsfObjectTarget = {
14
+ kind: 'config';
15
+ } | {
16
+ kind: 'call-argument';
17
+ importedName: string;
18
+ methodName: string;
19
+ } | {
20
+ kind: 'meta';
21
+ } | {
22
+ kind: 'story';
23
+ exportName: string;
24
+ localName: string;
25
+ } | {
26
+ kind: 'story-annotation';
27
+ exportName: string;
28
+ localName: string;
29
+ annotation: 'parameters' | 'argTypes';
30
+ };
31
+ type CsfMutationDiagnosticCode = 'unsupported-initializer' | 'ambiguous-binding' | 'duplicate-field' | 'spread-field' | 'dynamic-key' | 'unsupported-value' | 'unsupported-member' | 'occupied-destination' | 'cyclic-move' | 'evaluation-order';
32
+ interface CsfMutationDiagnostic {
33
+ code: CsfMutationDiagnosticCode;
34
+ target: CsfObjectTarget;
35
+ path: readonly string[];
36
+ message: string;
37
+ loc?: types.SourceLocation;
38
+ }
39
+ type CsfMutationResult = {
40
+ ok: true;
41
+ changed: boolean;
42
+ } | {
43
+ ok: false;
44
+ changed: false;
45
+ diagnostic: CsfMutationDiagnostic;
46
+ };
47
+ type CsfValue = string | number | boolean | null | undefined | readonly CsfValue[] | {
48
+ readonly [key: string]: CsfValue;
49
+ };
50
+ interface CsfObject {
51
+ /**
52
+ * Identify the config, meta, story, annotation, or call argument this editor represents.
53
+ *
54
+ * @example
55
+ * ```ts
56
+ * const object = loadConfig('export default {};').parse();
57
+ * object.target; // { kind: 'config' }
58
+ * ```
59
+ */
60
+ readonly target: CsfObjectTarget;
61
+ /**
62
+ * Report whether this editor has applied a mutation. Reads and no-op edits leave it unchanged.
63
+ *
64
+ * @example
65
+ * ```ts
66
+ * const object = loadConfig('export default {};').parse();
67
+ * object.changed; // false
68
+ * object.set(['tags'], ['autodocs']);
69
+ * object.changed; // true
70
+ * ```
71
+ */
72
+ readonly changed: boolean;
73
+ /**
74
+ * Read a copy of the Babel expression at a property path. For a CSF2 annotation, its annotation
75
+ * path returns the whole object. Missing fields return `undefined`.
76
+ *
77
+ * @example
78
+ * ```ts
79
+ * const object = loadConfig("export default { tags: ['docs'] };").parse();
80
+ * object.get(['tags'])?.type; // 'ArrayExpression'
81
+ * object.get(['missing']); // undefined
82
+ * ```
83
+ */
84
+ get(path: readonly string[]): types.Expression | undefined;
85
+ /**
86
+ * Read plain values without executing code. Missing fields return `undefined`; unresolved
87
+ * expressions also return `undefined` and add a mutation diagnostic.
88
+ *
89
+ * @example
90
+ * ```ts
91
+ * const object = loadConfig("export default { tags: ['docs'], enabled: true };").parse();
92
+ * object.getValue(['tags']); // ['docs']
93
+ * object.getValue(['enabled']); // true
94
+ * object.getValue(['missing']); // undefined
95
+ * ```
96
+ */
97
+ getValue(path: readonly string[]): CsfValue;
98
+ /**
99
+ * Set a plain value or Babel expression, creating missing parents. Accepts nested arrays and
100
+ * objects; top-level expression-shaped objects are interpreted as AST nodes.
101
+ *
102
+ * @example
103
+ * ```ts
104
+ * const object = loadConfig('export default {};').parse();
105
+ * object.set(['parameters', 'a11y'], { test: 'todo', enabled: true });
106
+ * // { ok: true, changed: true }
107
+ * object.getValue(['parameters']); // { a11y: { test: 'todo', enabled: true } }
108
+ * ```
109
+ */
110
+ set(path: readonly string[], value: CsfValue | types.Expression): CsfMutationResult;
111
+ /**
112
+ * Replace a value using its live Babel expression. Reused nodes preserve their source formatting.
113
+ * Return a new node, or `undefined` to leave the value unchanged. Do not mutate or retain the input
114
+ * node: such changes bypass change tracking and diagnostics.
115
+ *
116
+ * @example
117
+ * ```ts
118
+ * const object = loadConfig("export default { tags: ['docs'] };").parse();
119
+ * object.transform(['tags'], (value) =>
120
+ * t.arrayExpression([t.spreadElement(value), t.stringLiteral('autodocs')])
121
+ * ); // { ok: true, changed: true }
122
+ * object.getValue(['tags']); // ['docs', 'autodocs']
123
+ * ```
124
+ */
125
+ transform(path: readonly string[], derive: (value: types.Expression) => types.Expression | undefined): CsfMutationResult;
126
+ /**
127
+ * Remove a property and recursively clean up empty parents. Missing fields are a no-op.
128
+ *
129
+ * @example
130
+ * ```ts
131
+ * const object = loadConfig('export default { parameters: { a11y: { disable: true } } };').parse();
132
+ * object.remove(['parameters', 'a11y', 'disable']); // { ok: true, changed: true }
133
+ * object.getValue(['parameters']); // undefined
134
+ * object.remove(['parameters']); // { ok: true, changed: false }
135
+ * ```
136
+ */
137
+ remove(path: readonly string[]): CsfMutationResult;
138
+ /**
139
+ * Rename a property within its parent. An occupied destination produces a diagnostic
140
+ * and leaves the source unchanged.
141
+ *
142
+ * @example
143
+ * ```ts
144
+ * const object = loadConfig("export default { a11y: { element: '#root' } };").parse();
145
+ * object.rename(['a11y', 'element'], 'context'); // { ok: true, changed: true }
146
+ * object.getValue(['a11y']); // { context: '#root' }
147
+ * ```
148
+ */
149
+ rename(path: readonly string[], name: string): CsfMutationResult;
150
+ /**
151
+ * Move a property to another path, creating missing destination parents and cleaning up
152
+ * empty source parents. Rejects occupied destinations. Use `group` when nesting siblings must
153
+ * preserve expression evaluation order.
154
+ *
155
+ * @example
156
+ * ```ts
157
+ * const object = loadConfig("export default { globals: { theme: 'dark' } };").parse();
158
+ * object.move(['globals'], ['initialGlobals']); // { ok: true, changed: true }
159
+ * object.getValue(['initialGlobals']); // { theme: 'dark' }
160
+ * object.getValue(['globals']); // undefined
161
+ * ```
162
+ */
163
+ move(from: readonly string[], to: readonly string[]): CsfMutationResult;
164
+ /**
165
+ * Nest named sibling properties under a destination, retaining their source order. Rejects
166
+ * conflicts and relocations that could change evaluation order. Missing source fields are ignored.
167
+ *
168
+ * @example
169
+ * ```ts
170
+ * const object = loadConfig('export default { showNav: false, showPanel: true };').parse();
171
+ * object.group(['layout'], ['showNav', 'showPanel']); // { ok: true, changed: true }
172
+ * object.getValue(['layout']); // { showNav: false, showPanel: true }
173
+ * object.getValue(['showNav']); // undefined
174
+ * ```
175
+ */
176
+ group(path: readonly string[], names: readonly string[]): CsfMutationResult;
177
+ }
178
+ interface CsfObjectOptions {
179
+ meta?: boolean;
180
+ stories?: boolean;
181
+ }
182
+ //#endregion
183
+ //#region .dts-emit/code/core/src/csf-tools/CsfFile.d.ts
184
+ interface BabelFile {
185
+ ast: types.File;
186
+ opts: any;
187
+ hub: any;
188
+ metadata: object;
189
+ path: NodePath<types.Program>;
190
+ scope: any;
191
+ inputMap: object | null;
192
+ code: string;
193
+ }
194
+ declare const isValidPreviewPath: (filepath: string) => boolean;
195
+ declare const isModuleMock: (importPath: string) => boolean;
196
+ interface CsfOptions {
197
+ fileName?: string;
198
+ makeTitle: (userTitle: string) => string;
199
+ /**
200
+ * If an inline meta is detected e.g. `export default { title: 'foo' }` it will be transformed
201
+ * into a constant format e.g. `export const _meta = { title: 'foo' }; export default _meta;`
202
+ */
203
+ transformInlineMeta?: boolean;
204
+ }
205
+ declare class NoMetaError extends Error {
206
+ constructor(message: string, ast: types.Node, fileName?: string);
207
+ }
208
+ declare class MultipleMetaError extends Error {
209
+ constructor(message: string, ast: types.Node, fileName?: string);
210
+ }
211
+ declare class MixedFactoryError extends Error {
212
+ constructor(message: string, ast: types.Node, fileName?: string);
213
+ }
214
+ declare class BadMetaError extends Error {
215
+ constructor(message: string, ast: types.Node, fileName?: string);
216
+ }
217
+ interface StaticMeta extends Pick<ComponentAnnotations, 'id' | 'title' | 'includeStories' | 'excludeStories' | 'tags'> {
218
+ component?: string;
219
+ }
220
+ interface StaticStory extends Pick<StoryAnnotations, 'name' | 'parameters' | 'tags'> {
221
+ id: string;
222
+ localName?: string;
223
+ __stats: IndexInputStats;
224
+ }
225
+ interface StoryTest {
226
+ node: types.Node;
227
+ function: types.Node;
228
+ name: string;
229
+ id: string;
230
+ tags: string[];
231
+ parent: {
232
+ node: types.Node;
233
+ };
234
+ }
235
+ declare class CsfFile {
236
+ _ast: types.File;
237
+ _file: BabelFile;
238
+ _options: CsfOptions;
239
+ _rawComponentPath?: string;
240
+ _componentImportSpecifier?: types.ImportSpecifier | types.ImportDefaultSpecifier;
241
+ _meta?: StaticMeta;
242
+ _stories: Record<string, StaticStory>;
243
+ _metaAnnotations: Record<string, types.Node>;
244
+ _storyExports: Record<string, types.VariableDeclarator | types.FunctionDeclaration>;
245
+ _storyDeclarationPath: Record<string, NodePath<types.VariableDeclarator | types.FunctionDeclaration>>;
246
+ _storyPaths: Record<string, NodePath<types.ExportNamedDeclaration>>;
247
+ _metaStatement: types.Statement | undefined;
248
+ _metaStatementPath: NodePath<types.Statement> | undefined;
249
+ _metaNode: types.ObjectExpression | undefined;
250
+ _metaPath: NodePath<types.ExportDefaultDeclaration> | undefined;
251
+ _metaVariableName: string | undefined;
252
+ _metaIsFactory: boolean | undefined;
253
+ _metaFactoryCall: types.CallExpression | undefined;
254
+ /**
255
+ * True when the CSF factory configuration could not be resolved to an object literal in this
256
+ * file, so `_metaNode` is a stand-in that is not part of the AST. Writes to it are discarded.
257
+ */
258
+ _metaNodeIsSynthetic: boolean | undefined;
259
+ _storyStatements: Record<string, types.ExportNamedDeclaration | types.Expression>;
260
+ _storyAnnotations: Record<string, Record<string, types.Node>>;
261
+ _templates: Record<string, types.Expression>;
262
+ _namedExportsOrder?: string[];
263
+ imports: string[];
264
+ _tests: StoryTest[];
265
+ constructor(ast: types.File, options: CsfOptions, file: BabelFile);
266
+ /**
267
+ * Read diagnostics from object discovery, reads, and mutations. Check them before writing
268
+ * because a file can contain both successful edits and unsupported targets.
269
+ *
270
+ * @example
271
+ * ```ts
272
+ * const [story] = csf.objects({ meta: false });
273
+ * story.set(['args', 'old'], 1);
274
+ * story.set(['args', 'current'], 2);
275
+ * story.rename(['args', 'old'], 'current');
276
+ * csf.mutationDiagnostics.map(({ code }) => code); // ['occupied-destination']
277
+ * ```
278
+ */
279
+ get mutationDiagnostics(): readonly CsfMutationDiagnostic[];
280
+ /**
281
+ * Report whether any object editor has changed this story file.
282
+ *
283
+ * @example
284
+ * ```ts
285
+ * csf.changed; // false, before any edits
286
+ * const [story] = csf.objects({ meta: false });
287
+ * story.set(['args', 'disabled'], true);
288
+ * csf.changed; // true
289
+ * ```
290
+ */
291
+ get changed(): boolean;
292
+ /**
293
+ * Discover editors for the meta and stories, including CSF2 parameter and argTypes assignments. Unsupported
294
+ * targets are skipped and reported in `mutationDiagnostics`.
295
+ *
296
+ * @example
297
+ * ```ts
298
+ * const csf = loadCsf('export default {}; export const Primary = {};', {
299
+ * makeTitle: () => 'Example',
300
+ * }).parse();
301
+ * const [story] = csf.objects({ meta: false });
302
+ * story.set(['args', 'disabled'], true);
303
+ * story.getValue(['args']); // { disabled: true }
304
+ * csf.changed; // true
305
+ * ```
306
+ */
307
+ objects(options?: CsfObjectOptions): readonly CsfObject[];
308
+ _parseTitle(value: types.Node): string;
309
+ _parseMeta(declaration: types.ObjectExpression, program: types.Program): void;
310
+ getStoryExport(key: string): types.Node;
311
+ parse(): CsfFile & IndexedCSFFile;
312
+ get meta(): StaticMeta | undefined;
313
+ get stories(): StaticStory[];
314
+ getStoryTests(story: string | types.Node): StoryTest[];
315
+ get indexInputs(): IndexInput[];
316
+ }
317
+ /** Using new babel.File is more powerful and give access to API such as buildCodeFrameError */
318
+ declare const babelParseFile: ({
319
+ code,
320
+ filename,
321
+ ast
322
+ }: {
323
+ code: string;
324
+ filename?: string;
325
+ ast?: types.File;
326
+ }) => BabelFile;
327
+ declare const loadCsf: (code: string, options: CsfOptions) => CsfFile;
328
+ declare const formatCsf: (csf: CsfFile, options?: GeneratorOptions & {
329
+ inputSourceMap?: any;
330
+ }, code?: string) => ReturnType<typeof generate> | string;
331
+ /** Use this function, if you want to preserve styles. Uses recast under the hood. */
332
+ declare const printCsf: (csf: CsfFile, options?: RecastOptions) => PrintResultType;
333
+ declare const readCsf: (fileName: string, options: CsfOptions) => Promise<CsfFile>;
334
+ declare const writeCsf: (csf: CsfFile, fileName?: string) => Promise<void>;
335
+ //#endregion
336
+ //#region .dts-emit/code/core/src/csf-tools/ConfigFile.d.ts
337
+ interface CallArgumentsOptions {
338
+ importedName: string;
339
+ methodName: string;
340
+ moduleNames: Iterable<string>;
341
+ }
342
+ declare const _getPathProperties: (path: string[], node: types.Node) => types.ObjectProperty[] | undefined;
343
+ type RecastComment = types.Comment & {
344
+ leading?: boolean;
345
+ };
346
+ /**
347
+ * Return the leading comments of a program's first statement that form the file header. A
348
+ * directive that applies only to that statement, such as `@ts-expect-error`, ends the header.
349
+ */
350
+ declare const getHeaderComments: (statement: types.Statement | undefined) => RecastComment[];
351
+ declare class ConfigFile implements CsfObject {
352
+ /**
353
+ * Identify the config, meta, story, annotation, or call argument this editor represents.
354
+ *
355
+ * @example
356
+ * ```ts
357
+ * const object = loadConfig('export default {};').parse();
358
+ * object.target; // { kind: 'config' }
359
+ * ```
360
+ */
361
+ readonly target: {
362
+ readonly kind: 'config';
363
+ };
364
+ _changed: boolean;
365
+ _mutationDiagnostics: CsfMutationDiagnostic[];
366
+ /**
367
+ * Report whether this editor has applied a mutation. Reads and no-op edits leave it unchanged.
368
+ *
369
+ * @example
370
+ * ```ts
371
+ * const object = loadConfig('export default {};').parse();
372
+ * object.changed; // false
373
+ * object.set(['tags'], ['autodocs']);
374
+ * object.changed; // true
375
+ * ```
376
+ */
377
+ get changed(): boolean;
378
+ /**
379
+ * Read diagnostics from unsupported discovery, reads, or mutations. `writeConfig` refuses to
380
+ * write a config with diagnostics, even if another edit succeeded.
381
+ *
382
+ * @example
383
+ * ```ts
384
+ * const config = loadConfig('export default { old: 1, current: 2 };').parse();
385
+ * config.rename(['old'], 'current');
386
+ * config.mutationDiagnostics.map(({ code }) => code); // ['occupied-destination']
387
+ * config.changed; // false
388
+ * ```
389
+ */
390
+ get mutationDiagnostics(): readonly CsfMutationDiagnostic[];
391
+ /**
392
+ * Read a copy of the Babel expression at a property path. Missing fields return `undefined`.
393
+ *
394
+ * @example
395
+ * ```ts
396
+ * const object = loadConfig("export default { tags: ['docs'] };").parse();
397
+ * object.get(['tags'])?.type; // 'ArrayExpression'
398
+ * object.get(['missing']); // undefined
399
+ * ```
400
+ */
401
+ get(path: readonly string[]): types.Expression | undefined;
402
+ /**
403
+ * Read plain values without executing code. Missing fields return `undefined`; unresolved
404
+ * expressions also return `undefined` and add a mutation diagnostic.
405
+ *
406
+ * @example
407
+ * ```ts
408
+ * const object = loadConfig("export default { tags: ['docs'], enabled: true };").parse();
409
+ * object.getValue(['tags']); // ['docs']
410
+ * object.getValue(['enabled']); // true
411
+ * object.getValue(['missing']); // undefined
412
+ * ```
413
+ */
414
+ getValue(path: readonly string[]): CsfValue;
415
+ /**
416
+ * Set a plain value or Babel expression, creating missing parents. Accepts nested arrays and
417
+ * objects; top-level expression-shaped objects are interpreted as AST nodes.
418
+ *
419
+ * @example
420
+ * ```ts
421
+ * const object = loadConfig('export default {};').parse();
422
+ * object.set(['parameters', 'a11y'], { test: 'todo', enabled: true });
423
+ * // { ok: true, changed: true }
424
+ * object.getValue(['parameters']); // { a11y: { test: 'todo', enabled: true } }
425
+ * ```
426
+ */
427
+ set(path: readonly string[], value: CsfValue | types.Expression): CsfMutationResult;
428
+ /**
429
+ * Replace a value using its live Babel expression. Reused nodes preserve their source formatting.
430
+ * Return a new node, or `undefined` to leave the value unchanged. Do not mutate or retain the input
431
+ * node: such changes bypass change tracking and diagnostics.
432
+ *
433
+ * @example
434
+ * ```ts
435
+ * const object = loadConfig("export default { tags: ['docs'] };").parse();
436
+ * object.transform(['tags'], (value) =>
437
+ * t.arrayExpression([t.spreadElement(value), t.stringLiteral('autodocs')])
438
+ * ); // { ok: true, changed: true }
439
+ * object.getValue(['tags']); // ['docs', 'autodocs']
440
+ * ```
441
+ */
442
+ transform(path: readonly string[], derive: (value: types.Expression) => types.Expression | undefined): CsfMutationResult;
443
+ /**
444
+ * Remove a property and recursively clean up empty parents. Missing fields are a no-op.
445
+ *
446
+ * @example
447
+ * ```ts
448
+ * const object = loadConfig('export default { parameters: { a11y: { disable: true } } };').parse();
449
+ * object.remove(['parameters', 'a11y', 'disable']); // { ok: true, changed: true }
450
+ * object.getValue(['parameters']); // undefined
451
+ * object.remove(['parameters']); // { ok: true, changed: false }
452
+ * ```
453
+ */
454
+ remove(path: readonly string[]): CsfMutationResult;
455
+ /**
456
+ * Rename a property within its parent. An occupied destination produces a diagnostic
457
+ * and leaves the source unchanged.
458
+ *
459
+ * @example
460
+ * ```ts
461
+ * const object = loadConfig("export default { a11y: { element: '#root' } };").parse();
462
+ * object.rename(['a11y', 'element'], 'context'); // { ok: true, changed: true }
463
+ * object.getValue(['a11y']); // { context: '#root' }
464
+ * ```
465
+ */
466
+ rename(path: readonly string[], name: string): CsfMutationResult;
467
+ /**
468
+ * Move a property to another path, creating missing destination parents and cleaning up
469
+ * empty source parents. Rejects occupied destinations. Use `group` when nesting siblings must
470
+ * preserve expression evaluation order.
471
+ *
472
+ * @example
473
+ * ```ts
474
+ * const object = loadConfig("export default { globals: { theme: 'dark' } };").parse();
475
+ * object.move(['globals'], ['initialGlobals']); // { ok: true, changed: true }
476
+ * object.getValue(['initialGlobals']); // { theme: 'dark' }
477
+ * object.getValue(['globals']); // undefined
478
+ * ```
479
+ */
480
+ move(from: readonly string[], to: readonly string[]): CsfMutationResult;
481
+ /**
482
+ * Nest named sibling properties under a destination, retaining their source order. Rejects
483
+ * conflicts and relocations that could change evaluation order. Missing source fields are ignored.
484
+ *
485
+ * @example
486
+ * ```ts
487
+ * const object = loadConfig('export default { showNav: false, showPanel: true };').parse();
488
+ * object.group(['layout'], ['showNav', 'showPanel']); // { ok: true, changed: true }
489
+ * object.getValue(['layout']); // { showNav: false, showPanel: true }
490
+ * object.getValue(['showNav']); // undefined
491
+ * ```
492
+ */
493
+ group(path: readonly string[], names: readonly string[]): CsfMutationResult;
494
+ _mutate(operation: (object: CsfObject) => CsfMutationResult): CsfMutationResult;
495
+ _editor(mode: 'read' | 'mutate'): {
496
+ ok: true;
497
+ object: CsfObject;
498
+ } | {
499
+ ok: false;
500
+ diagnostic: CsfMutationDiagnostic;
501
+ };
502
+ _ast: types.File;
503
+ _code: string;
504
+ _exports: Record<string, types.Expression>;
505
+ _exportDecls: Record<string, types.VariableDeclarator | types.FunctionDeclaration>;
506
+ _exportsObject: types.ObjectExpression | undefined;
507
+ _quotes: 'single' | 'double' | undefined;
508
+ fileName?: string;
509
+ hasDefaultExport: boolean;
510
+ constructor(ast: types.File, code: string, fileName?: string);
511
+ _parseExportsObject(exportsObject: types.ObjectExpression): void;
512
+ /** Unwraps TS assertions/satisfies from a node, to get the underlying node. */
513
+ _unwrap: (node: types.Node | undefined | null) => any;
514
+ /**
515
+ * Resolve a declaration node by unwrapping TS assertions/satisfies and following identifiers to
516
+ * resolve the correct node in case it's an identifier.
517
+ */
518
+ _resolveDeclaration: (node: types.Node, parent?: types.Node) => any;
519
+ parse(): this;
520
+ getFieldNode(path: string[]): types.Node | undefined;
521
+ getFieldProperties(path: string[]): ReturnType<typeof _getPathProperties>;
522
+ /**
523
+ * @example
524
+ *
525
+ * ```ts
526
+ * // 1. { framework: 'framework-name' }
527
+ * // 2. { framework: { name: 'framework-name', options: {} }
528
+ * getNameFromPath(['framework']); // => 'framework-name'
529
+ * ```
530
+ *
531
+ * @returns The name of a node in a given path, supporting the following formats:
532
+ */
533
+ getNameFromPath(path: string[]): string | undefined;
534
+ /**
535
+ * Returns an array of names of a node in a given path, supporting the following formats:
536
+ *
537
+ * @example
538
+ *
539
+ * ```ts
540
+ * const config = {
541
+ * addons: ['first-addon', { name: 'second-addon', options: {} }],
542
+ * };
543
+ * // => ['first-addon', 'second-addon']
544
+ * getNamesFromPath(['addons']);
545
+ * ```
546
+ */
547
+ getNamesFromPath(path: string[]): string[] | undefined;
548
+ _getWrappedValue(node: types.Node): string | undefined;
549
+ /**
550
+ * Given a node and a fallback property, returns a **non-evaluated** string value of the node.
551
+ *
552
+ * 1. `{ node: 'value' }`
553
+ * 2. `{ node: { fallbackProperty: 'value' } }`
554
+ */
555
+ _getPresetValue(node: types.Node, fallbackProperty: string): string;
556
+ removeField(path: string[]): void;
557
+ appendValueToArray(path: string[], value: any): void;
558
+ appendNodeToArray(path: string[], node: types.Expression): void;
559
+ /**
560
+ * Specialized helper to remove addons or other array entries that can either be strings or
561
+ * objects with a name property.
562
+ */
563
+ removeEntryFromArray(path: string[], value: string): void;
564
+ _inferQuotes(): "double" | "single";
565
+ valueToNode(value: any): types.Expression | undefined;
566
+ getBodyDeclarations(): types.Statement[];
567
+ /**
568
+ * Edit the first object argument of method calls on a named import, including CommonJS aliases.
569
+ * Unsupported arguments add mutation diagnostics; calls without arguments are ignored.
570
+ *
571
+ * @example
572
+ * ```ts
573
+ * const manager = loadConfig(`
574
+ * import { addons } from '@aussieljk/forkbook/manager-api';
575
+ * addons.setConfig({ showNav: false });
576
+ * `).parse();
577
+ * const [object] = manager.callArguments({
578
+ * importedName: 'addons',
579
+ * methodName: 'setConfig',
580
+ * moduleNames: ['@aussieljk/forkbook/manager-api'],
581
+ * });
582
+ * object.group(['layout'], ['showNav']);
583
+ * object.getValue(['layout']); // { showNav: false }
584
+ * manager.changed; // true
585
+ * ```
586
+ */
587
+ callArguments({
588
+ importedName,
589
+ methodName,
590
+ moduleNames
591
+ }: CallArgumentsOptions): readonly CsfObject[];
592
+ setBodyDeclaration(declaration: types.Declaration): void;
593
+ /**
594
+ * Import specifiers for a specific require import
595
+ *
596
+ * @example
597
+ *
598
+ * ```ts
599
+ * // const { foo } = require('bar');
600
+ * setRequireImport(['foo'], 'bar');
601
+ *
602
+ * // const foo = require('bar');
603
+ * setRequireImport('foo', 'bar');
604
+ * ```
605
+ *
606
+ * @param importSpecifiers - The import specifiers to set. If a string is passed in, a default
607
+ * import will be set. Otherwise, an array of named imports will be set
608
+ * @param fromImport - The module to import from
609
+ */
610
+ setRequireImport(importSpecifier: string[] | string, fromImport: string): void;
611
+ /**
612
+ * Set import specifiers for a given import statement.
613
+ *
614
+ * Does not support setting type imports (yet)
615
+ *
616
+ * @example
617
+ *
618
+ * ```ts
619
+ * // import { foo } from 'bar';
620
+ * setImport(['foo'], 'bar');
621
+ *
622
+ * // import foo from 'bar';
623
+ * setImport('foo', 'bar');
624
+ *
625
+ * // import * as foo from 'bar';
626
+ * setImport({ namespace: 'foo' }, 'bar');
627
+ *
628
+ * // import 'bar';
629
+ * setImport(null, 'bar');
630
+ * ```
631
+ *
632
+ * @param importSpecifiers - The import specifiers to set. If a string is passed in, a default
633
+ * import will be set. Otherwise, an array of named imports will be set
634
+ * @param fromImport - The module to import from
635
+ */
636
+ setImport(importSpecifier: string[] | string | {
637
+ namespace: string;
638
+ } | null, fromImport: string): void;
639
+ _removeRequireImport(importSpecifier: string[] | string | {
640
+ namespace: string;
641
+ } | null, fromImport: string): void;
642
+ _removeImport(importSpecifier: string[] | string | {
643
+ namespace: string;
644
+ } | null, fromImport: string): void;
645
+ /**
646
+ * Remove import specifiers for a given import statement.
647
+ *
648
+ * Does not support removing type imports (yet)
649
+ *
650
+ * @example
651
+ *
652
+ * ```ts
653
+ * // import { foo } from 'bar';
654
+ * setImport(['foo'], 'bar');
655
+ *
656
+ * // import foo from 'bar';
657
+ * setImport('foo', 'bar');
658
+ *
659
+ * // import * as foo from 'bar';
660
+ * setImport({ namespace: 'foo' }, 'bar');
661
+ *
662
+ * // import 'bar';
663
+ * setImport(null, 'bar');
664
+ * ```
665
+ *
666
+ * @param importSpecifiers - The import specifiers to remove. If a string is passed in, will only
667
+ * remove the default import. Otherwise, named imports matching the array will be removed.
668
+ * @param fromImport - The module to import from
669
+ */
670
+ removeImport(importSpecifier: string[] | string | {
671
+ namespace: string;
672
+ } | null, fromImport: string): void;
673
+ }
674
+ declare const loadConfig: (code: string, fileName?: string) => ConfigFile;
675
+ declare const formatConfig: (config: ConfigFile) => string;
676
+ declare const printConfig: (config: ConfigFile, options?: RecastOptions) => PrintResultType;
677
+ declare const readConfig: (fileName: string) => Promise<ConfigFile>;
678
+ declare const writeConfig: (config: ConfigFile, fileName?: string) => Promise<void>;
679
+ declare const isCsfFactoryPreview: (previewConfig: ConfigFile) => boolean;
680
+ //#endregion
681
+ //#region .dts-emit/code/core/src/csf-tools/jsdoc.d.ts
682
+ /** Compact JSDoc tag map: tag name → list of tag values (e.g. `@example a` → `{ example: ['a'] }`). */
683
+ type JsDocTagMap = Record<string, string[]>;
684
+ /**
685
+ * Splits a bare docblock body (no `/**` markers) into its description and a compact tag map.
686
+ *
687
+ * For docblocks that only exist as raw text — CSF story/meta docblocks and TS-less docgen engines.
688
+ * When a TS checker and symbol are available, `extractComponentJsDocInfo` in
689
+ * `core/src/component-meta/jsdoc-info.ts` is the canonical extractor instead; the two differ on
690
+ * malformed input (this one only treats line-leading `@tags` as tags).
691
+ */
692
+ declare function extractJSDocInfo(jsdocComment: string): {
693
+ description: string;
694
+ tags: JsDocTagMap;
695
+ };
696
+ /**
697
+ * Resolves the description, summary, and tag map a docgen payload reports.
698
+ *
699
+ * The CSF `meta` docblock wins over the docgen engine's own component description, and an explicit
700
+ * `@describe` / `@desc` tag wins over the block description. Docgen/provider tags win over same
701
+ * named docblock tags, but a provider that found no tags must not suppress the docblock's own.
702
+ * `extractStoryJSDocInfo` reuses this for story docblocks, so both resolve tags identically.
703
+ */
704
+ declare function extractComponentDescription(metaJsDoc: string | undefined, docgenDescription: string | undefined, docgenJsDocTags?: JsDocTagMap): {
705
+ description: string;
706
+ summary: string;
707
+ jsDocTags: JsDocTagMap;
708
+ };
709
+ //#endregion
710
+ //#region .dts-emit/code/core/src/csf-tools/enrichCsf.d.ts
711
+ interface EnrichCsfOptions {
712
+ disableSource?: boolean;
713
+ disableDescription?: boolean;
714
+ enrichCsf?: CsfEnricher;
715
+ }
716
+ declare const enrichCsfStory: (csf: CsfFile, csfSource: CsfFile, key: string, options?: EnrichCsfOptions) => void;
717
+ declare const enrichCsfMeta: (csf: CsfFile, csfSource: CsfFile, options?: EnrichCsfOptions) => void;
718
+ declare const enrichCsf: (csf: CsfFile, csfSource: CsfFile, options?: EnrichCsfOptions) => Promise<void>;
719
+ declare const extractSource: (node: types.Node) => string;
720
+ declare const extractDescription: (node?: types.Node) => string;
721
+ //#endregion
722
+ //#region .dts-emit/code/core/src/csf-tools/story-shape/imports.d.ts
723
+ interface ImportBinding {
724
+ /** Module specifier the local name is imported from. */
725
+ importId: string;
726
+ /** Original export name; `'default'` or `'*'` for default/namespace imports. */
727
+ importName: string;
728
+ }
729
+ /** True for `import { type X }` specifiers, which carry no runtime binding. */
730
+ declare const isTypeSpecifier: (s: types.ImportSpecifier | types.ImportDefaultSpecifier | types.ImportNamespaceSpecifier) => boolean;
731
+ /** Exported name behind an import specifier, incl. string-named exports. */
732
+ declare const importedName$1: (im: types.Identifier | types.StringLiteral) => string;
733
+ /** Map of local identifier → import binding for a file's value imports (type-only skipped). */
734
+ declare function collectImportBindings(program: NodePath<types.Program>): Map<string, ImportBinding>;
735
+ //#endregion
736
+ //#region .dts-emit/code/core/src/csf-tools/story-shape/import-statements.d.ts
737
+ /** A component reference resolved to the module binding it comes from. */
738
+ interface ImportRef {
739
+ /** Module specifier. Refs without one contribute no import statement. */
740
+ importId?: string;
741
+ /** Exported name; `'default'` for default imports and `'*'` for whole-namespace bindings. */
742
+ importName?: string;
743
+ /** Local identifier the import is bound to. */
744
+ localImportName?: string;
745
+ /** Local identifier of the `import * as` binding this ref reaches through. */
746
+ namespace?: string;
747
+ /** Import statement replacing the derived source and specifier, e.g. from an `@import` tag. */
748
+ importOverride?: string;
749
+ /** Whether `importId` already resolves as a package, which suppresses `packageName` rewriting. */
750
+ isPackage?: boolean;
751
+ }
752
+ /** An {@link ImportRef} together with the component expression it was resolved from. */
753
+ interface ComponentImportRef extends ImportRef {
754
+ /** Component as written in the story file, e.g. `Button` or `Accordion.Root`. */
755
+ componentName: string;
756
+ /** Accessed member of a compound name, e.g. `Root` for `Accordion.Root`. */
757
+ member?: string;
758
+ }
759
+ /**
760
+ * Resolve a component expression as written in a story file to the import it binds to.
761
+ *
762
+ * A compound name resolves through its base identifier, so `Accordion.Root` reached through
763
+ * `import * as Accordion` exports `Root`, while the same name reached through
764
+ * `import { Accordion }` exports `Accordion` and carries `Root` as the member.
765
+ */
766
+ declare function resolveComponentImport(componentName: string, bindings: Map<string, ImportBinding>): ComponentImportRef;
767
+ /**
768
+ * Build the minimal, deduplicated set of import declarations the given references need.
769
+ *
770
+ * References are bucketed by their final source, which is the `importOverride` source when one
771
+ * parses, else `packageName` when the original source is not already a package, else the source as
772
+ * written. Sources keep first-seen order and declarations keep a fixed order within a source, so
773
+ * repeated runs produce byte-identical output.
774
+ */
775
+ declare function buildImportStatements({
776
+ refs,
777
+ packageName
778
+ }: {
779
+ refs: ImportRef[];
780
+ packageName?: string;
781
+ }): string[];
782
+ //#endregion
783
+ //#region .dts-emit/code/core/src/csf-tools/story-shape/resolve-members.d.ts
784
+ /** Members of an object, and what reading it statically could not account for. */
785
+ interface ResolvedMembers {
786
+ /** Member name → value node, as of the last write this pass could read. */
787
+ properties: Record<string, types.Node>;
788
+ /**
789
+ * Names whose value an `unresolved` entry written after them may replace at runtime. A member
790
+ * absent from `properties` is only knowably absent when `unresolved` is empty.
791
+ */
792
+ shadowed: string[];
793
+ /** Source text of every member `properties` could not absorb; empty exactly when complete. */
794
+ unresolved: string[];
795
+ }
796
+ /** A module a reference reaches into, parsed and paired with the path it was read from. */
797
+ interface ReferenceModule {
798
+ program: NodePath<types.Program>;
799
+ /** Absolute path `program` was parsed from; the base every import specifier resolves against. */
800
+ filePath: string;
801
+ }
802
+ /** Everything following a reference beyond the object it starts at needs. */
803
+ interface ReferenceContext extends ReferenceModule {
804
+ /**
805
+ * Parses the module an import specifier names. Callers that read a single file leave it unset,
806
+ * which confines resolution to that file.
807
+ */
808
+ resolveModule?: (fromFile: string, specifier: string) => ReferenceModule | undefined;
809
+ /**
810
+ * Rewrites a value read out of another module into one that stands on its own, since the name it
811
+ * was written as means nothing where the snippet lands. Returning `undefined` rejects the value,
812
+ * leaving the reference that reached it unresolved.
813
+ */
814
+ externalize?: (node: types.Node) => types.Node | undefined;
815
+ }
816
+ /** The half of a {@link ReferenceContext} that is not specific to one story file. */
817
+ type StoryReferenceResolver = Pick<ReferenceContext, 'resolveModule' | 'externalize'>;
818
+ /** How arg resolution leaves the story file; without it only the story file itself is read. */
819
+ interface StoryReferences extends StoryReferenceResolver {
820
+ /** Absolute path of the story file, which every import specifier resolves against. */
821
+ filePath: string;
822
+ }
823
+ /** Source text of a node, for naming an expression a static pass could not read. */
824
+ declare const sourceOf: (node: types.Node) => string;
825
+ /**
826
+ * Members of an object literal, absorbing every spread the context can follow.
827
+ *
828
+ * A method shorthand keeps its member, since its key is as knowable as any other; a getter, setter
829
+ * or generator does not, because reading it runs code.
830
+ */
831
+ declare const resolveObjectMembers: (object: types.ObjectExpression, ctx: ReferenceContext) => ResolvedMembers;
832
+ /**
833
+ * An `args` record, absorbing every spread the context can follow.
834
+ *
835
+ * Unlike {@link resolveObjectMembers} every member has to reduce to a printable value, so a method
836
+ * is reported rather than kept, wherever a spread copied it from.
837
+ */
838
+ declare const resolveArgsRecord: (node: types.Node | undefined, ctx: ReferenceContext) => ResolvedMembers;
839
+ /**
840
+ * The members a module-level binding holds, following the spreads and references it is composed of.
841
+ *
842
+ * For a CSF factory story the members are the ones behind `input`, matching how the factory exposes
843
+ * the config it was called with. `undefined` when the binding cannot be read at all.
844
+ */
845
+ declare const resolveBindingMembers: (ctx: ReferenceContext, name: string) => ResolvedMembers | undefined;
846
+ /**
847
+ * The value a member chain names, paired with the module whose scope its names resolve against.
848
+ *
849
+ * Unlike {@link resolveObjectMembers} the value is returned as written rather than read into
850
+ * members, so a chain landing on a name, as `internal.config.component` reaching a component
851
+ * does, can be followed further by the caller. `undefined` when the chain
852
+ * leaves what this pass can read, and for a bare identifier, which names no member.
853
+ */
854
+ declare const resolveReferencedValue: (ctx: ReferenceContext, expression: types.Node) => {
855
+ node: types.Node;
856
+ ctx: ReferenceContext;
857
+ } | undefined;
858
+ //#endregion
859
+ //#region .dts-emit/code/core/src/csf-tools/story-shape/resolve-story-args.d.ts
860
+ /** Everything reading one story's args statically produced. */
861
+ interface ResolvedStoryArgs {
862
+ /** Meta args merged under story args, keyed by arg name, every value read through. */
863
+ args: Record<string, types.Node>;
864
+ /** Imports the arg values need beyond the component, from values that kept a name. */
865
+ imports: ImportRef[];
866
+ /** Source text of everything hiding args from this pass; empty when the merged args are known. */
867
+ unresolved: string[];
868
+ /** The story's own config members, spreads and names followed. */
869
+ storyMembers: ResolvedMembers;
870
+ /** The meta's config members, spreads and names followed. */
871
+ metaMembers: ResolvedMembers;
872
+ }
873
+ interface StoryArgsResolver {
874
+ /** The context every resolution in this file runs against. */
875
+ ctx: ReferenceContext;
876
+ resolve: (storyExport: string) => ResolvedStoryArgs;
877
+ }
878
+ /**
879
+ * Builds the args resolver for one story file, resolving the meta once for all of its stories.
880
+ *
881
+ * Pass `references` to let a story's args resolve names other modules own; without it only the
882
+ * story file itself is read, and anything it reaches for elsewhere is reported as unresolved.
883
+ */
884
+ declare function createStoryArgsResolver(csf: CsfFile, references?: StoryReferences): StoryArgsResolver;
885
+ /** Says which source text a static pass could not read, so a reader can see what is missing. */
886
+ declare const unresolvedWarning: (unresolved: readonly string[]) => string | undefined;
887
+ /** {@link unresolvedWarning} for a story that gets no snippet at all instead of a partial one. */
888
+ declare const noSnippetWarning: (unresolved: readonly string[]) => string | undefined;
889
+ //#endregion
890
+ //#region .dts-emit/code/core/src/csf-tools/story-shape/authored-source.d.ts
891
+ type AuthoredSource = {
892
+ kind: 'missing';
893
+ } | {
894
+ kind: 'disabled';
895
+ } | {
896
+ kind: 'code';
897
+ code: string;
898
+ } | {
899
+ kind: 'unresolvable';
900
+ source: string;
901
+ };
902
+ type AuthoredSourceShape = Pick<ResolvedStoryArgs, 'storyMembers' | 'metaMembers'>;
903
+ declare const authoredSource: (shape: AuthoredSourceShape, ctx: ReferenceContext) => AuthoredSource;
904
+ //#endregion
905
+ //#region .dts-emit/code/core/src/csf-tools/story-shape/jsdoc.d.ts
906
+ /**
907
+ * JSDoc tags on the docblock of the statement a path belongs to.
908
+ *
909
+ * The docblock sits on the enclosing statement rather than the expression itself, so a `meta`
910
+ * object literal has to look upwards to find the comment an author wrote above `const meta`.
911
+ */
912
+ declare function jsDocTagsForPath(path?: NodePath<types.Node>): Record<string, string[]>;
913
+ /** Story description and summary from its JSDoc; `@describe`/`@desc` tags override the body. */
914
+ declare function extractStoryJSDocInfo(storyStatement?: types.Node): {
915
+ description?: string;
916
+ summary?: string;
917
+ };
918
+ //#endregion
919
+ //#region .dts-emit/code/core/src/csf-tools/story-shape/normalize-story.d.ts
920
+ type NormalizedStoryDeclaration = {
921
+ type: 'config';
922
+ path: NodePath<types.ObjectExpression>;
923
+ } | {
924
+ type: 'fn';
925
+ path: NodePath<types.ArrowFunctionExpression | types.FunctionExpression | types.FunctionDeclaration>;
926
+ } | {
927
+ type: 'emptyConfig';
928
+ path: NodePath<types.Expression>;
929
+ };
930
+ /**
931
+ * Resolve a story export's declaration to its snippet-ready story shape.
932
+ *
933
+ * @example
934
+ *
935
+ * ```ts
936
+ * export const A: Story = { args: {} }; // → { type: 'config', path }
937
+ * export const B = {} satisfies Story; // → { type: 'config', path }
938
+ * export const C = meta.story({ args: {} }); // → { type: 'config', path }
939
+ * export const D = meta.story(); // → { type: 'emptyConfig', path }
940
+ * export const E = Template.bind({}); // → Template's classified initializer
941
+ * ```
942
+ */
943
+ declare function normalizeStoryDeclaration(storyDeclaration: NodePath<types.Node>): NormalizedStoryDeclaration;
944
+ //#endregion
945
+ //#region .dts-emit/code/core/src/csf-tools/story-shape/reference-context.d.ts
946
+ interface StoryReferenceResolverOptions {
947
+ /** Extensions tried ahead of the JS/TS set, for single-file-component formats like `.vue`. */
948
+ extensions?: string[];
949
+ /**
950
+ * Rewrites a value read out of another module into one that stands on its own. Defaults to
951
+ * accepting exactly the values that already do.
952
+ */
953
+ externalize?: StoryReferenceResolver['externalize'];
954
+ }
955
+ /**
956
+ * Builds the half of a story-file reference context that lets static arg resolution leave the
957
+ * story file.
958
+ *
959
+ * A story's args can spread or name a value another module owns, so resolving them reads those
960
+ * modules too. The returned function opens a resolver for one build, which parses each module it
961
+ * reaches at most once; module *resolutions* are cached across builds, since a specifier resolving
962
+ * to a different file is far rarer than that file's contents changing:
963
+ *
964
+ * ```ts
965
+ * const openStoryReferences = createStoryReferenceResolver();
966
+ * // per build:
967
+ * const resolver = createStoryArgsResolver(csf, { filePath: storyPath, ...openStoryReferences() });
968
+ * ```
969
+ */
970
+ declare function createStoryReferenceResolver(options?: StoryReferenceResolverOptions): () => StoryReferenceResolver;
971
+ /** Parses a module reached by an import, for a caller that already resolved its path. */
972
+ declare const parseReferenceModule: (filePath: string) => ReferenceModule | undefined;
973
+ //#endregion
974
+ //#region .dts-emit/code/core/src/csf-tools/story-shape/resolve-arg-value.d.ts
975
+ /** An arg value read through to the definition it names, and what printing it still depends on. */
976
+ interface ResolvedArgValue {
977
+ /** Node to print in place of what was written. */
978
+ node: types.Node;
979
+ /** Imports the printed node needs to resolve where the snippet lands. */
980
+ imports: ImportRef[];
981
+ /** Source text of every name the printed node depends on that no import can supply. */
982
+ unresolved: string[];
983
+ }
984
+ /**
985
+ * The value an arg node stands for, following a name to the definition it refers to.
986
+ *
987
+ * A name the story file declares resolves to the value it was declared with, since that name means
988
+ * nothing where the snippet lands. A name another module owns stays as written and reports the
989
+ * import that makes it resolve. Names a larger expression reaches for are reported the same way,
990
+ * except that a locally declared one can only be named, not substituted into the expression.
991
+ */
992
+ declare const resolveArgValue: (node: types.Node, ctx: ReferenceContext) => ResolvedArgValue;
993
+ /**
994
+ * Whether printing a node needs no name from the scope it was written in.
995
+ *
996
+ * This is the bar a value copied out of another module has to clear, since the names that module
997
+ * declares and imports mean nothing where the snippet lands.
998
+ */
999
+ declare const isSelfContained: (node: types.Node) => boolean;
1000
+ //#endregion
1001
+ //#region .dts-emit/code/core/src/csf-tools/story-shape/render.d.ts
1002
+ /** A function a story or meta supplies through `render`. */
1003
+ type RenderFunctionPath = NodePath<types.ArrowFunctionExpression | types.FunctionExpression | types.FunctionDeclaration | types.ObjectMethod>;
1004
+ /**
1005
+ * Outcome of looking for a `render` function.
1006
+ *
1007
+ * `missing` and `unresolved` have to stay distinct. A story whose `render` exists but cannot be
1008
+ * read must not fall back to the meta's `render`: the story's intent was to override it, and
1009
+ * quietly rendering the meta's version instead produces a snippet for code the story never runs.
1010
+ *
1011
+ * `shadowedRender` is present when an explicit render resolved but a later spread may replace it
1012
+ * at runtime. Strict consumers ignore it and emit nothing; coverage-oriented consumers may prefer
1013
+ * it as the best static guess, since spreads rarely carry a render.
1014
+ */
1015
+ type RenderResolution = {
1016
+ kind: 'missing';
1017
+ } | {
1018
+ kind: 'resolved';
1019
+ path: RenderFunctionPath;
1020
+ } | {
1021
+ kind: 'unresolved';
1022
+ shadowedRender?: RenderFunctionPath;
1023
+ };
1024
+ /**
1025
+ * Resolves the `render` property of a story or meta config, following a local identifier
1026
+ * (`render: Template`) to the function it names and accepting the `render(args) {}` method
1027
+ * shorthand.
1028
+ *
1029
+ * Spread semantics follow the runtime: a spread written after `render` can shadow it, so the
1030
+ * result is `unresolved` (carrying the shadowed function); a spread before it is harmless because
1031
+ * the explicit property wins. When `render` is missing, any spread could still be supplying one,
1032
+ * which is also `unresolved`.
1033
+ *
1034
+ * `storyDeclaration` anchors the identifier lookup to the module the story lives in, so a helper
1035
+ * declared beside the story resolves while an imported one reports `unresolved`.
1036
+ *
1037
+ * `references` lets a spread be read rather than assumed: with it, `{ ...Base }` reports whichever
1038
+ * `render` `Base` supplies, or `missing` when it supplies none, instead of the `unresolved` a pass
1039
+ * that cannot see through the spread has to report.
1040
+ *
1041
+ * Throws when `render` is present but is neither a function nor an identifier, because that is a
1042
+ * story-file mistake rather than something a static pass merely could not follow.
1043
+ */
1044
+ declare function resolveRenderFunction(config: NodePath<types.ObjectExpression> | undefined, storyDeclaration: NodePath<types.Node>, references?: ReferenceContext): RenderResolution;
1045
+ declare function resolveEffectiveRender(csf: CsfFile, exportName: string, references?: ReferenceContext): RenderResolution;
1046
+ //#endregion
1047
+ //#region .dts-emit/code/core/src/csf-tools/story-shape/utils.d.ts
1048
+ type StaticIdentifierMemberCall = types.CallExpression & {
1049
+ callee: types.MemberExpression & {
1050
+ object: types.Identifier;
1051
+ property: types.Identifier;
1052
+ };
1053
+ };
1054
+ type CsfFactoryCall = types.CallExpression & {
1055
+ callee: types.MemberExpression & {
1056
+ property: types.Identifier;
1057
+ };
1058
+ };
1059
+ interface TemplateParts {
1060
+ quasis: string[];
1061
+ expressions: types.Node[];
1062
+ }
1063
+ /** Peels TS assertion/satisfies wrappers and parentheses off an expression node. */
1064
+ declare const unwrapExpression: (node: types.Node) => types.Node;
1065
+ declare const isCanonicalCsf2BindCall: (node: types.Node) => node is StaticIdentifierMemberCall;
1066
+ /** Receiver of a `.type<T>()` chain, which returns its receiver: `meta` for `meta.type<T>()`. */
1067
+ declare const withoutTypeCalls: (object: types.Node) => types.Node;
1068
+ declare const isCsfFactoryCall: (node: types.Node) => node is CsfFactoryCall;
1069
+ /** Identifier a CSF factory call is made on: `meta` in `meta.type<T>().story()`. */
1070
+ declare const csfFactoryReceiver: (node: CsfFactoryCall) => types.Identifier;
1071
+ declare const templateParts: (node: types.Node) => TemplateParts | undefined;
1072
+ /**
1073
+ * Static key of an object member, or `null` when it is computed from something else.
1074
+ *
1075
+ * A computed key written as a string literal is static: `{ ['args']: … }` names the same member as
1076
+ * `{ args: … }`, so it reads as that name rather than as a key only running the story would produce.
1077
+ */
1078
+ declare const keyOf: (p: types.ObjectMethod | types.ObjectProperty) => string | null;
1079
+ /** Value of an object expression's own property, when it has one. */
1080
+ declare const propertyValue: (object: types.ObjectExpression | undefined | null, name: string) => types.Node | undefined;
1081
+ /**
1082
+ * Expression a function returns directly, covering the concise body (`() => …`) and a block body
1083
+ * that is only a `return`.
1084
+ *
1085
+ * A block body must hold nothing but that `return`, since any extra statement could change what the
1086
+ * expression evaluates to and a static reader cannot follow it.
1087
+ */
1088
+ declare const returnedExpression: (fn: types.Node | undefined) => types.Expression | undefined;
1089
+ /** {@link returnedExpression} as a path, for callers that resolve identifiers against scope. */
1090
+ declare const returnedExpressionPath: (renderFunction: RenderFunctionPath) => NodePath<types.Expression> | undefined;
1091
+ /**
1092
+ * Object literal a render function resolves to, following a local identifier when it returns one.
1093
+ *
1094
+ * @example `() => ({ template })` and `() => config` with `const config = { template }` both →
1095
+ * that object literal
1096
+ */
1097
+ declare const resolveReturnedObjectExpression: (renderFunction: RenderFunctionPath) => types.ObjectExpression | undefined;
1098
+ /** Resolve a local story helper used by `Template.bind({})` or `render: Template`. */
1099
+ declare function resolveIdentifierInit(storyPath: NodePath<types.Node>, identifier: NodePath<types.Identifier>): NodePath<types.FunctionDeclaration> | NodePath<types.Expression> | null;
1100
+ /** NodePath for a known node inside a program. */
1101
+ declare function pathForNode<T extends types.Node>(program: NodePath<types.Program>, target: T | undefined): NodePath<T> | undefined;
1102
+ /** ObjectExpression path for the parsed CSF default meta, when available. */
1103
+ declare function metaObjectPath(csf: CsfFile): NodePath<types.ObjectExpression> | undefined;
1104
+ //#endregion
1105
+ //#region .dts-emit/code/core/src/csf-tools/vitest-plugin/transformer.d.ts
1106
+ type TagsFilter = {
1107
+ include: string[];
1108
+ exclude: string[];
1109
+ skip: string[];
1110
+ };
1111
+ /**
1112
+ * In Forkbook users might be importing stories from other story files. As a side effect, tests can
1113
+ * get re-triggered. To avoid this, we add a guard to only run tests if the current file is the one
1114
+ * running the test.
1115
+ *
1116
+ * Const isRunningFromThisFile = import.meta.url.includes(expect.getState().testPath ??
1117
+ * globalThis.**vitest_worker**.filepath) if(isRunningFromThisFile) { ... }
1118
+ */
1119
+ declare function vitestTransform({
1120
+ code,
1121
+ fileName,
1122
+ configDir,
1123
+ stories,
1124
+ tagsFilter,
1125
+ previewLevelTags
1126
+ }: {
1127
+ code: string;
1128
+ fileName: string;
1129
+ configDir: string;
1130
+ tagsFilter: TagsFilter;
1131
+ stories: StoriesEntry[];
1132
+ previewLevelTags: Tag$1[];
1133
+ }): Promise<ReturnType<typeof formatCsf>>;
1134
+ //#endregion
1135
+ //#region .dts-emit/code/core/src/csf-tools/vitest-plugin/component-transformer.d.ts
1136
+ /**
1137
+ * Transforms a component file directly into a Vitest test file. Uses a getComponentArgTypes
1138
+ * function to retrieve component argTypes for required prop generation. Uses portable stories to
1139
+ * construct a test based on the default state of a component (basic render + required args)
1140
+ */
1141
+ declare const componentTransform: ({
1142
+ code,
1143
+ fileName,
1144
+ getComponentArgTypes
1145
+ }: {
1146
+ code: string;
1147
+ fileName: string;
1148
+ getComponentArgTypes?: (options: {
1149
+ componentName: string;
1150
+ fileName: string;
1151
+ }) => Promise<ArgTypes | null | undefined>;
1152
+ }) => Promise<ReturnType<typeof generate> | {
1153
+ code: string;
1154
+ map: null;
1155
+ }>;
1156
+ //#endregion
1157
+ export { type AuthoredSource, BadMetaError, CallArgumentsOptions, type ComponentImportRef, ConfigFile, CsfFile, type CsfMutationDiagnostic, type CsfMutationDiagnosticCode, type CsfMutationResult, type CsfObject, type CsfObjectOptions, type CsfObjectTarget, CsfOptions, type CsfValue, EnrichCsfOptions, type ImportBinding, type ImportRef, JsDocTagMap, MixedFactoryError, MultipleMetaError, NoMetaError, type NormalizedStoryDeclaration, type ReferenceContext, type ReferenceModule, type RenderFunctionPath, type RenderResolution, type ResolvedArgValue, type ResolvedMembers, type ResolvedStoryArgs, StaticMeta, StaticStory, type StoryArgsResolver, type StoryReferenceResolver, type StoryReferenceResolverOptions, type StoryReferences, StoryTest, type TemplateParts, authoredSource, babelParse, babelParseFile, buildImportStatements, collectImportBindings, componentTransform, createStoryArgsResolver, createStoryReferenceResolver, csfFactoryReceiver, enrichCsf, enrichCsfMeta, enrichCsfStory, extractComponentDescription, extractDescription, extractJSDocInfo, extractSource, extractStoryJSDocInfo, formatConfig, formatCsf, getHeaderComments, importedName$1 as importedName, isCanonicalCsf2BindCall, isCsfFactoryCall, isCsfFactoryPreview, isModuleMock, isSelfContained, isTypeSpecifier, isValidPreviewPath, jsDocTagsForPath, keyOf, loadConfig, loadCsf, metaObjectPath, noSnippetWarning, normalizeStoryDeclaration, parseReferenceModule, pathForNode, printConfig, printCsf, propertyValue, readConfig, readCsf, resolveArgValue, resolveArgsRecord, resolveBindingMembers, resolveComponentImport, resolveEffectiveRender, resolveIdentifierInit, resolveObjectMembers, resolveReferencedValue, resolveRenderFunction, resolveReturnedObjectExpression, returnedExpression, returnedExpressionPath, sourceOf, templateParts, unresolvedWarning, unwrapExpression, vitestTransform, withoutTypeCalls, writeConfig, writeCsf };