defuss 2.1.11 → 3.2.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 (278) hide show
  1. package/dist/component-registry-CPBzgkm2.cjs +20 -0
  2. package/dist/component-registry-rwX6GHzq.mjs +15 -0
  3. package/dist/dom--qQgTXnx.mjs +2603 -0
  4. package/dist/dom-0JFHc2kn.cjs +2810 -0
  5. package/dist/dom-4vhaViIf.mjs +2801 -0
  6. package/dist/dom-5V9JcMrR.mjs +2695 -0
  7. package/dist/dom-B0lpSx0p.mjs +2604 -0
  8. package/dist/dom-B0mZwIcb.cjs +2859 -0
  9. package/dist/dom-B4MQngSF.cjs +2782 -0
  10. package/dist/dom-B58Ij3VD.cjs +2907 -0
  11. package/dist/dom-B5zbx-3T.mjs +2810 -0
  12. package/dist/dom-B6fFOlKv.cjs +2898 -0
  13. package/dist/dom-B7UqtWqL.cjs +2814 -0
  14. package/dist/dom-BDL4winW.cjs +2892 -0
  15. package/dist/dom-BHi3SKvU.mjs +2595 -0
  16. package/dist/dom-BMSWQp9d.cjs +2899 -0
  17. package/dist/dom-BOjwen4W.cjs +2894 -0
  18. package/dist/dom-BSXG5cMV.mjs +2678 -0
  19. package/dist/dom-BUUPuzZG.cjs +2681 -0
  20. package/dist/dom-BW8oGJV-.cjs +2890 -0
  21. package/dist/dom-B_g5muLk.mjs +2798 -0
  22. package/dist/dom-Ba8Rmsy6.mjs +2557 -0
  23. package/dist/dom-BaaPAgsv.mjs +2569 -0
  24. package/dist/dom-Bb17xYzx.mjs +2599 -0
  25. package/dist/dom-BcW3GkDu.cjs +2897 -0
  26. package/dist/dom-BfqchTxj.mjs +2696 -0
  27. package/dist/dom-Bg0Eqh-g.cjs +2718 -0
  28. package/dist/dom-Bi5Eowqw.cjs +2728 -0
  29. package/dist/dom-BjFpmoeW.mjs +2818 -0
  30. package/dist/dom-BjwVMyGv.mjs +2644 -0
  31. package/dist/dom-Bjy_d0D1.mjs +2652 -0
  32. package/dist/dom-BkrsFnv4.mjs +2719 -0
  33. package/dist/dom-Bl9sFsMf.mjs +2797 -0
  34. package/dist/dom-BpugjT-d.cjs +2764 -0
  35. package/dist/dom-BzcdRPS7.cjs +2676 -0
  36. package/dist/dom-C1Dv_k31.cjs +2831 -0
  37. package/dist/dom-C2miKN96.cjs +2887 -0
  38. package/dist/dom-C3iIctYx.cjs +2602 -0
  39. package/dist/dom-C6c71RsI.cjs +2892 -0
  40. package/dist/dom-C6qPzZDU.mjs +2526 -0
  41. package/dist/dom-C91wPWgb.mjs +2587 -0
  42. package/dist/dom-CEEtTZJb.cjs +2891 -0
  43. package/dist/dom-CG8ZC5zA.cjs +2645 -0
  44. package/dist/dom-CHfN0q0-.cjs +2805 -0
  45. package/dist/dom-CLpZk5Ok.cjs +2890 -0
  46. package/dist/dom-CMwQ9pmp.cjs +2767 -0
  47. package/dist/dom-COTHhb5r.mjs +2634 -0
  48. package/dist/dom-CRRoa52F.mjs +2805 -0
  49. package/dist/dom-CUHgK6d1.mjs +2807 -0
  50. package/dist/dom-CfCTjzif.mjs +2803 -0
  51. package/dist/dom-Cg17fK2D.mjs +2490 -0
  52. package/dist/dom-CjffEyZp.mjs +2809 -0
  53. package/dist/dom-Cn7eypGU.cjs +2898 -0
  54. package/dist/dom-CoBIe6TZ.mjs +2685 -0
  55. package/dist/dom-Cr99biSm.mjs +2795 -0
  56. package/dist/dom-CuPnZIwb.mjs +2803 -0
  57. package/dist/dom-CyaFGBis.cjs +2897 -0
  58. package/dist/dom-CzDaYcdd.cjs +2896 -0
  59. package/dist/dom-D-M2CWHK.cjs +2805 -0
  60. package/dist/dom-D00lHhSQ.cjs +2887 -0
  61. package/dist/dom-DA76MFiR.mjs +2808 -0
  62. package/dist/dom-DCxc_aGE.mjs +2634 -0
  63. package/dist/dom-DDB7B6E0.mjs +2801 -0
  64. package/dist/dom-DDtrH45u.cjs +2673 -0
  65. package/dist/dom-DKZZG5RP.mjs +2798 -0
  66. package/dist/dom-DOswyRty.mjs +2681 -0
  67. package/dist/dom-DQiJQigd.cjs +2890 -0
  68. package/dist/dom-DRUJMjpd.cjs +2736 -0
  69. package/dist/dom-DU3JvIZO.cjs +2886 -0
  70. package/dist/dom-DWDVSwjd.cjs +2566 -0
  71. package/dist/dom-D_3LE_Qi.mjs +2722 -0
  72. package/dist/dom-DbhNF_Km.cjs +2665 -0
  73. package/dist/dom-Deh17qfR.mjs +2795 -0
  74. package/dist/dom-DfIL_s0t.mjs +2634 -0
  75. package/dist/dom-DhzvIchP.cjs +2680 -0
  76. package/dist/dom-DjEOa9GM.mjs +2801 -0
  77. package/dist/dom-DqWHLuln.cjs +2763 -0
  78. package/dist/dom-Dw0cUaXk.cjs +2717 -0
  79. package/dist/dom-FaIf556X.mjs +2801 -0
  80. package/dist/dom-Kdtm5aoM.mjs +2798 -0
  81. package/dist/dom-O2cdv0jV.cjs +2887 -0
  82. package/dist/dom-YfFA0iKZ.mjs +2726 -0
  83. package/dist/dom-YpZtMxDS.cjs +2783 -0
  84. package/dist/dom-YuuCUzeb.mjs +2744 -0
  85. package/dist/dom-_naqXmaM.mjs +2677 -0
  86. package/dist/dom-iQGpbrON.cjs +2718 -0
  87. package/dist/dom-j57Lsb1X.cjs +2884 -0
  88. package/dist/dom-jKUS5flE.mjs +2771 -0
  89. package/dist/dom-khd7HASe.cjs +2771 -0
  90. package/dist/dom-lEWdDKb4.mjs +2718 -0
  91. package/dist/dom-mA0CVs3o.mjs +2809 -0
  92. package/dist/dom-mt5spBGS.cjs +2634 -0
  93. package/dist/dom-rjEgJGTC.cjs +2806 -0
  94. package/dist/dom-smXiaXEP.mjs +2718 -0
  95. package/dist/dom-wcIpcL6F.mjs +2807 -0
  96. package/dist/dom-xtwhQmkx.cjs +2884 -0
  97. package/dist/dom-xu1m78jm.mjs +2808 -0
  98. package/dist/index-B4BHyohJ.d.ts +1536 -0
  99. package/dist/index-BDnHS4Fq.d.ts +1425 -0
  100. package/dist/index-BENswTvz.d.ts +1505 -0
  101. package/dist/index-BFHuQ4xu.d.ts +1435 -0
  102. package/dist/index-BM5mxtvJ.d.ts +1543 -0
  103. package/dist/index-BOHKDFwH.d.ts +1435 -0
  104. package/dist/index-BRnR4FIe.d.ts +1436 -0
  105. package/dist/index-B_mKPzYo.d.ts +1578 -0
  106. package/dist/index-BctcSoO5.d.ts +1576 -0
  107. package/dist/index-BfvJsCS_.d.ts +1426 -0
  108. package/dist/index-BhNZrSrs.d.ts +1352 -0
  109. package/dist/index-Bi8j-_h_.d.cts +1488 -0
  110. package/dist/index-Bi8j-_h_.d.ts +1488 -0
  111. package/dist/index-BkobKBZk.d.ts +1430 -0
  112. package/dist/index-Bu2vwaJ2.d.ts +1352 -0
  113. package/dist/index-BvvZRMKD.d.ts +1569 -0
  114. package/dist/index-C1AAn__7.d.ts +1433 -0
  115. package/dist/index-C6Eg-vsd.d.ts +1424 -0
  116. package/dist/index-C6OhaPcR.d.ts +1433 -0
  117. package/dist/index-CCeP2S3d.d.ts +1434 -0
  118. package/dist/index-CEIsFrMM.d.ts +1542 -0
  119. package/dist/index-CFDpKGh7.d.ts +1428 -0
  120. package/dist/index-CFrYY_Mt.d.ts +1436 -0
  121. package/dist/index-CGDnSWTS.d.ts +1527 -0
  122. package/dist/index-CKwxYOvH.d.ts +1437 -0
  123. package/dist/index-CLBqO3Y7.d.ts +1544 -0
  124. package/dist/index-CRsLiENw.d.ts +1436 -0
  125. package/dist/index-CTjaPtOu.d.ts +1544 -0
  126. package/dist/index-CWP_xArI.d.ts +1433 -0
  127. package/dist/index-CZunST0r.d.ts +1436 -0
  128. package/dist/index-CeqDyZsK.d.ts +1436 -0
  129. package/dist/index-CiDj5eUV.d.ts +1576 -0
  130. package/dist/index-CidSP07o.d.ts +1361 -0
  131. package/dist/index-Cj_9DtdX.d.ts +1436 -0
  132. package/dist/index-Cm1e5jei.d.ts +1436 -0
  133. package/dist/index-CnQ2vhtJ.d.ts +1563 -0
  134. package/dist/index-CpkEL1jH.d.ts +1569 -0
  135. package/dist/index-Cq5d1Zz3.d.ts +1437 -0
  136. package/dist/index-CuCNTbJn.d.ts +1503 -0
  137. package/dist/index-CxFq13gU.d.ts +1352 -0
  138. package/dist/index-D5dNz_3e.d.ts +1571 -0
  139. package/dist/index-D5yYZNhb.d.ts +1428 -0
  140. package/dist/index-D64A9cbc.d.ts +1428 -0
  141. package/dist/index-DE8BSmm3.d.ts +1575 -0
  142. package/dist/index-DG6bq7_g.d.ts +1436 -0
  143. package/dist/index-DHy5_GN-.d.ts +1437 -0
  144. package/dist/index-DTegsEZx.d.ts +1435 -0
  145. package/dist/index-DXx9mqPm.d.ts +1352 -0
  146. package/dist/index-DbOTogCX.d.ts +1435 -0
  147. package/dist/index-DfXUO0lq.d.ts +1352 -0
  148. package/dist/index-DirmTpEb.d.ts +1352 -0
  149. package/dist/index-DnUO13Ql.d.ts +1365 -0
  150. package/dist/index-DqFnifuO.d.ts +1576 -0
  151. package/dist/index-DsAkAm0h.d.ts +1429 -0
  152. package/dist/index-DsDkGdbl.d.ts +1352 -0
  153. package/dist/index-DugBnSpg.d.ts +1439 -0
  154. package/dist/index-DyF8SurV.d.ts +1437 -0
  155. package/dist/index-VAwbjQuD.d.ts +1436 -0
  156. package/dist/index-VRdwaTq1.d.ts +1544 -0
  157. package/dist/index-WJDLtNz6.d.ts +1437 -0
  158. package/dist/index-XHQiCZJu.d.ts +1344 -0
  159. package/dist/index-YGI08ZC3.d.ts +1435 -0
  160. package/dist/index-YlvmjCMz.d.ts +1574 -0
  161. package/dist/index-_R_iWuBk.d.ts +1435 -0
  162. package/dist/index-bKRdI8Js.d.ts +1544 -0
  163. package/dist/index-sdb3nXP9.d.ts +1436 -0
  164. package/dist/index-u8kUqFhR.d.ts +1442 -0
  165. package/dist/index-uCL6lDoN.d.ts +1365 -0
  166. package/dist/index-wMtGrbTW.d.ts +1435 -0
  167. package/dist/index-wmq1KsvF.d.ts +1523 -0
  168. package/dist/index.cjs +298 -92
  169. package/dist/index.d.cts +6 -5
  170. package/dist/index.d.ts +198 -35
  171. package/dist/index.mjs +277 -94
  172. package/dist/mount--bdP_py-.cjs +27 -0
  173. package/dist/mount-5mGNlNE0.cjs +29 -0
  174. package/dist/mount-9aJ90VEy.cjs +29 -0
  175. package/dist/mount-B-nSxYMI.cjs +29 -0
  176. package/dist/mount-B1ZGm6Vx.mjs +26 -0
  177. package/dist/mount-B268CIyG.mjs +26 -0
  178. package/dist/mount-B7ZORKUE.mjs +26 -0
  179. package/dist/mount-BDMCcckP.mjs +26 -0
  180. package/dist/mount-BFwjtKGf.mjs +23 -0
  181. package/dist/mount-BIX7Q5ve.cjs +29 -0
  182. package/dist/mount-BIjY0oQo.cjs +29 -0
  183. package/dist/mount-BJ2d7Snl.cjs +29 -0
  184. package/dist/mount-BJUfLVrn.cjs +27 -0
  185. package/dist/mount-BL3IoYf-.cjs +29 -0
  186. package/dist/mount-BLgGRFKO.mjs +26 -0
  187. package/dist/mount-BPdF-23b.mjs +26 -0
  188. package/dist/mount-BREA5x3R.mjs +26 -0
  189. package/dist/mount-BSj7I235.cjs +29 -0
  190. package/dist/mount-BSqj-PWe.cjs +26 -0
  191. package/dist/mount-B_MohJp1.mjs +24 -0
  192. package/dist/mount-BhJaAQYc.cjs +29 -0
  193. package/dist/mount-BmhdXDtN.mjs +26 -0
  194. package/dist/mount-Bn8gK_5W.mjs +26 -0
  195. package/dist/mount-BnITFgq_.mjs +26 -0
  196. package/dist/mount-BoeMXBAs.cjs +29 -0
  197. package/dist/mount-BsWXMcQo.mjs +26 -0
  198. package/dist/mount-BvArK3iG.cjs +26 -0
  199. package/dist/mount-Bw7-xmEB.mjs +24 -0
  200. package/dist/mount-BwNr0Cw7.cjs +29 -0
  201. package/dist/mount-C1WHPtGU.mjs +26 -0
  202. package/dist/mount-C6Wj_FWd.cjs +29 -0
  203. package/dist/mount-C7-zVnHp.mjs +26 -0
  204. package/dist/mount-C99AnUyn.mjs +24 -0
  205. package/dist/mount-CC8_T-gT.cjs +29 -0
  206. package/dist/mount-CE1mUC04.cjs +27 -0
  207. package/dist/mount-CGOXBqpC.cjs +29 -0
  208. package/dist/mount-CJGmuyD_.cjs +29 -0
  209. package/dist/mount-COdfKsz3.mjs +26 -0
  210. package/dist/mount-CTXA2JwJ.cjs +29 -0
  211. package/dist/mount-CVcZv8p4.mjs +24 -0
  212. package/dist/mount-CY2jiisH.cjs +27 -0
  213. package/dist/mount-C_THF3G-.mjs +26 -0
  214. package/dist/mount-CgYRpExe.mjs +24 -0
  215. package/dist/mount-CiSuPb2d.cjs +29 -0
  216. package/dist/mount-CjvdhG7D.mjs +24 -0
  217. package/dist/mount-Ck4Sw7qu.cjs +29 -0
  218. package/dist/mount-CkBH-ziv.mjs +26 -0
  219. package/dist/mount-Cl5bq4AK.mjs +26 -0
  220. package/dist/mount-CnRlxDvH.cjs +26 -0
  221. package/dist/mount-Cnhy4x8j.cjs +29 -0
  222. package/dist/mount-CofCsKEL.cjs +27 -0
  223. package/dist/mount-CuZ9kuJ_.cjs +29 -0
  224. package/dist/mount-Cz18Dqhg.cjs +29 -0
  225. package/dist/mount-CzoPJJ3U.cjs +29 -0
  226. package/dist/mount-D-08N9KC.mjs +26 -0
  227. package/dist/mount-D-RpVmv-.cjs +27 -0
  228. package/dist/mount-D0wRLhsJ.mjs +23 -0
  229. package/dist/mount-DBHsNvGL.mjs +24 -0
  230. package/dist/mount-DE_6OU5O.cjs +27 -0
  231. package/dist/mount-DFrJC1Ee.mjs +26 -0
  232. package/dist/mount-DRpQI95j.mjs +26 -0
  233. package/dist/mount-DaS_nGtr.cjs +26 -0
  234. package/dist/mount-DbFi8R0Q.mjs +26 -0
  235. package/dist/mount-DeqZS1eY.mjs +26 -0
  236. package/dist/mount-DetJmqRg.mjs +26 -0
  237. package/dist/mount-DhMUtUgA.cjs +29 -0
  238. package/dist/mount-DlsFpu0l.mjs +26 -0
  239. package/dist/mount-DmThSQhX.mjs +26 -0
  240. package/dist/mount-DpCAhV34.cjs +29 -0
  241. package/dist/mount-DqMUI3Li.cjs +29 -0
  242. package/dist/mount-DrvT4c9H.mjs +23 -0
  243. package/dist/mount-DyrgmigG.mjs +26 -0
  244. package/dist/mount-E-PFWZoH.cjs +29 -0
  245. package/dist/mount-EbSuNkcp.cjs +29 -0
  246. package/dist/mount-FGWwjyl3.mjs +23 -0
  247. package/dist/mount-NvaShFIJ.mjs +24 -0
  248. package/dist/mount-OwEsrEgH.mjs +26 -0
  249. package/dist/mount-OzbDDNzG.cjs +29 -0
  250. package/dist/mount-TA9rAjfX.mjs +26 -0
  251. package/dist/mount-Ta6JNwOd.cjs +29 -0
  252. package/dist/mount-WayWo_Wo.cjs +29 -0
  253. package/dist/mount-cbdw4Rn8.mjs +26 -0
  254. package/dist/mount-euC2wM_H.mjs +26 -0
  255. package/dist/mount-gY0N84Yl.cjs +29 -0
  256. package/dist/mount-j5GGTHgL.mjs +26 -0
  257. package/dist/mount-lrm6DtLS.cjs +29 -0
  258. package/dist/mount-mI6oAeYn.mjs +26 -0
  259. package/dist/mount-qXpzCgOn.cjs +27 -0
  260. package/dist/mount-s4KN8Ng-.mjs +26 -0
  261. package/dist/mount-wMBAOpuQ.mjs +26 -0
  262. package/dist/mount-yB4RTAZ9.cjs +29 -0
  263. package/dist/mount-zEZORNEX.mjs +26 -0
  264. package/dist/mount-zk9YB0XU.cjs +29 -0
  265. package/dist/render/client.cjs +28 -11
  266. package/dist/render/client.d.ts +4 -4
  267. package/dist/render/client.mjs +13 -13
  268. package/dist/render/dev/index.cjs +4 -1
  269. package/dist/render/dev/index.d.ts +2 -3
  270. package/dist/render/dev/index.mjs +1 -1
  271. package/dist/render/index.cjs +20 -1
  272. package/dist/render/index.d.cts +76 -1
  273. package/dist/render/index.d.ts +88 -3
  274. package/dist/render/index.mjs +2 -1
  275. package/dist/render/server.cjs +19 -1
  276. package/dist/render/server.d.ts +4 -4
  277. package/dist/render/server.mjs +3 -2
  278. package/package.json +19 -11
package/dist/index.d.cts CHANGED
@@ -1,5 +1,6 @@
1
- import { a7 as PersistenceProviderType, a8 as PersistenceProviderOptions, a9 as PersistenceProviderImpl, h as VNode, g as VNodeAttributes, R as RenderInput, G as Globals, N as NodeType, f as Ref, s as Props, n as VNodeChild, a2 as TransitionConfig } from './index-Up8-tXTY.cjs';
2
- export { am as $, A as AllHTMLElements, t as CLASS_ATTRIBUTE_NAME, C as CSSProperties, aa as Call, af as CallChainImpl, ag as CallChainImplThenable, p as Children, w as DANGEROUSLY_SET_INNER_HTML_ATTRIBUTE, a5 as DEFAULT_TRANSITION_CONFIG, aD as DOMPropValue, ak as Dequery, aE as DequeryOptions, aG as DequerySyncMethodReturnType, aB as Dimensions, D as DomAbstractionImpl, aF as ElementCreationOptions, F as FontFaceProperties, az as FormFieldValue, aA as FormKeyValues, T as Fragment, y as JsxRuntimeHookFn, J as JsxSourceInfo, K as KeyFrameProperties, aK as Listener, aI as MemoryStorage, aH as MiddlewareFn, P as ParentElementInput, b as ParentElementInputAsync, aC as Position, v as REF_ATTRIBUTE_NAME, d as RefUpdateFn, e as RefUpdateRenderFn, c as RefUpdateRenderFnInput, q as RenderNodeInput, a as RenderResult, r as RenderResultNode, aL as Store, S as SyncRenderInput, I as SyncRenderResult, a0 as TransitionStyles, $ as TransitionType, a1 as TransitionsEasing, V as VAttributes, o as VNodeChildren, j as VNodeKey, m as VNodeRef, l as VNodeRefCallback, k as VNodeRefObject, i as VNodeType, aJ as WebStorage, X as XLINK_ATTRIBUTE_NAME, u as XMLNS_ATTRIBUTE_NAME, ab as addNonChainedReturnCallNames, a4 as applyStyles, ar as createCall, as as createGetterSetterCall, x as createInPlaceErrorMessageVNode, _ as createRef, aM as createStore, at as createSubChain, aj as delayedAutoStart, al as dequery, ae as emptyImpl, ai as getAllFormValues, ap as getDefaultDequeryOptions, ac as getNonChainedReturnCallNames, H as getRenderer, a3 as getTransitionStyles, O as globalScopeDomApis, E as handleLifecycleEventsForOnMount, an as isDequery, ao as isDequeryOptionsObject, Q as isJSX, ad as isNonChainedReturnCall, Z as isRef, z as jsx, W as jsxDEV, U as jsxs, aq as mapArrayIndexAccess, B as observeUnmount, a6 as performTransition, M as renderIsomorphicAsync, L as renderIsomorphicSync, aw as renderNode, ax as resolveNodes, av as runWithTimeGuard, ah as scrollHelper, au as subChainForNextAwait, ay as traverse, Y as updateDom } from './index-Up8-tXTY.cjs';
1
+ import { a7 as PersistenceProviderType, a8 as PersistenceProviderOptions, a9 as PersistenceProviderImpl, h as VNode, g as VNodeAttributes, R as RenderInput, G as Globals, N as NodeType, f as Ref, s as Props, n as VNodeChild, a2 as TransitionConfig } from './index-Bi8j-_h_.cjs';
2
+ export { am as $, A as AllHTMLElements, t as CLASS_ATTRIBUTE_NAME, C as CSSProperties, aa as Call, af as CallChainImpl, ag as CallChainImplThenable, p as Children, w as DANGEROUSLY_SET_INNER_HTML_ATTRIBUTE, a5 as DEFAULT_TRANSITION_CONFIG, aD as DOMPropValue, ak as Dequery, aE as DequeryOptions, aG as DequerySyncMethodReturnType, aB as Dimensions, D as DomAbstractionImpl, aF as ElementCreationOptions, F as FontFaceProperties, az as FormFieldValue, aA as FormKeyValues, T as Fragment, y as JsxRuntimeHookFn, J as JsxSourceInfo, K as KeyFrameProperties, aK as Listener, aI as MemoryStorage, aH as MiddlewareFn, P as ParentElementInput, b as ParentElementInputAsync, aC as Position, v as REF_ATTRIBUTE_NAME, d as RefUpdateFn, e as RefUpdateRenderFn, c as RefUpdateRenderFnInput, q as RenderNodeInput, a as RenderResult, r as RenderResultNode, aL as Store, S as SyncRenderInput, I as SyncRenderResult, a0 as TransitionStyles, $ as TransitionType, a1 as TransitionsEasing, V as VAttributes, o as VNodeChildren, j as VNodeKey, m as VNodeRef, l as VNodeRefCallback, k as VNodeRefObject, i as VNodeType, aJ as WebStorage, X as XLINK_ATTRIBUTE_NAME, u as XMLNS_ATTRIBUTE_NAME, ab as addNonChainedReturnCallNames, a4 as applyStyles, ar as createCall, as as createGetterSetterCall, x as createInPlaceErrorMessageVNode, _ as createRef, aM as createStore, at as createSubChain, aj as delayedAutoStart, al as dequery, ae as emptyImpl, ai as getAllFormValues, ap as getDefaultDequeryOptions, ac as getNonChainedReturnCallNames, H as getRenderer, a3 as getTransitionStyles, O as globalScopeDomApis, E as handleLifecycleEventsForOnMount, an as isDequery, ao as isDequeryOptionsObject, Q as isJSX, ad as isNonChainedReturnCall, Z as isRef, z as jsx, W as jsxDEV, U as jsxs, aq as mapArrayIndexAccess, B as observeUnmount, a6 as performTransition, M as renderIsomorphicAsync, L as renderIsomorphicSync, aw as renderNode, ax as resolveNodes, av as runWithTimeGuard, ah as scrollHelper, au as subChainForNextAwait, ay as traverse, Y as updateDom } from './index-Bi8j-_h_.cjs';
3
+ export { CAPTURE_ONLY_EVENTS, ComponentInstance, DelegatedEventOptions, DelegatedPhase, ParsedEventProp, clearDelegatedEvents, clearDelegatedEventsDeep, getComponentInstance, getRegisteredEventTypes, isComponentRoot, mount, parseEventPropName, registerComponent, registerDelegatedEvent, removeDelegatedEvent, unmount, unregisterComponent } from './render/index.cjs';
3
4
  import * as CSS from 'csstype';
4
5
  export { CSS };
5
6
 
@@ -17,11 +18,11 @@ declare const webstorage: <T>(provider?: PersistenceProviderType, options?: Pers
17
18
  */
18
19
  declare const areDomNodesEqual: (oldNode: Node, newNode: Node) => boolean;
19
20
  /********************************************************
20
- * 1) Define a "valid" child type & utility
21
+ * 1) Define a "valid" child type & utilities
21
22
  ********************************************************/
22
23
  type ValidChild = string | number | boolean | null | undefined | VNode<VNodeAttributes>;
23
24
  /********************************************************
24
- * 5) Main partial-update function (index-by-index approach)
25
+ * 6) Main state-preserving morph (key/id aware, move-not-replace)
25
26
  ********************************************************/
26
27
  declare function updateDomWithVdom(parentElement: Element, newVDOM: RenderInput, globals: Globals): void;
27
28
  /**
@@ -56,7 +57,7 @@ declare function domNodeToVNode(node: Node): VNode<VNodeAttributes> | string;
56
57
  * Converts an HTML string to VNode structure for use with updateDomWithVdom.
57
58
  * This allows markup strings to benefit from the intelligent partial update system.
58
59
  */
59
- declare function htmlStringToVNodes(html: string, Parser: typeof DOMParser): (VNode<VNodeAttributes> | string)[];
60
+ declare function htmlStringToVNodes(html: string, Parser: typeof DOMParser): Array<VNode<VNodeAttributes> | string>;
60
61
 
61
62
  declare const queueCallback: (cb: Function) => () => void;
62
63
 
package/dist/index.d.ts CHANGED
@@ -1,9 +1,13 @@
1
- import { a7 as PersistenceProviderType, a8 as PersistenceProviderOptions, a9 as PersistenceProviderImpl, h as VNode, g as VNodeAttributes, R as RenderInput, G as Globals, N as NodeType, f as Ref, s as Props, n as VNodeChild, a2 as TransitionConfig } from './index-Up8-tXTY.js';
2
- export { am as $, A as AllHTMLElements, t as CLASS_ATTRIBUTE_NAME, C as CSSProperties, aa as Call, af as CallChainImpl, ag as CallChainImplThenable, p as Children, w as DANGEROUSLY_SET_INNER_HTML_ATTRIBUTE, a5 as DEFAULT_TRANSITION_CONFIG, aD as DOMPropValue, ak as Dequery, aE as DequeryOptions, aG as DequerySyncMethodReturnType, aB as Dimensions, D as DomAbstractionImpl, aF as ElementCreationOptions, F as FontFaceProperties, az as FormFieldValue, aA as FormKeyValues, T as Fragment, y as JsxRuntimeHookFn, J as JsxSourceInfo, K as KeyFrameProperties, aK as Listener, aI as MemoryStorage, aH as MiddlewareFn, P as ParentElementInput, b as ParentElementInputAsync, aC as Position, v as REF_ATTRIBUTE_NAME, d as RefUpdateFn, e as RefUpdateRenderFn, c as RefUpdateRenderFnInput, q as RenderNodeInput, a as RenderResult, r as RenderResultNode, aL as Store, S as SyncRenderInput, I as SyncRenderResult, a0 as TransitionStyles, $ as TransitionType, a1 as TransitionsEasing, V as VAttributes, o as VNodeChildren, j as VNodeKey, m as VNodeRef, l as VNodeRefCallback, k as VNodeRefObject, i as VNodeType, aJ as WebStorage, X as XLINK_ATTRIBUTE_NAME, u as XMLNS_ATTRIBUTE_NAME, ab as addNonChainedReturnCallNames, a4 as applyStyles, ar as createCall, as as createGetterSetterCall, x as createInPlaceErrorMessageVNode, _ as createRef, aM as createStore, at as createSubChain, aj as delayedAutoStart, al as dequery, ae as emptyImpl, ai as getAllFormValues, ap as getDefaultDequeryOptions, ac as getNonChainedReturnCallNames, H as getRenderer, a3 as getTransitionStyles, O as globalScopeDomApis, E as handleLifecycleEventsForOnMount, an as isDequery, ao as isDequeryOptionsObject, Q as isJSX, ad as isNonChainedReturnCall, Z as isRef, z as jsx, W as jsxDEV, U as jsxs, aq as mapArrayIndexAccess, B as observeUnmount, a6 as performTransition, M as renderIsomorphicAsync, L as renderIsomorphicSync, aw as renderNode, ax as resolveNodes, av as runWithTimeGuard, ah as scrollHelper, au as subChainForNextAwait, ay as traverse, Y as updateDom } from './index-Up8-tXTY.js';
3
- import * as CSS from 'csstype';
4
- export { CSS };
1
+ import { ao as PersistenceProviderType, ap as PersistenceProviderOptions, aq as PersistenceProviderImpl, W as VNode, X as VNodeAttributes, N as NodeType, R as RenderInput, G as Globals, t as Props, v as Ref, i as DOMElement, Y as VNodeChild, F as FC, T as TransitionConfig, c as AsyncDefussChild } from './index-DnUO13Ql.js';
2
+ export { ar as $, A as AllHTMLElements, as as AnyEventHandler, d as AsyncFC, e as AsyncFunctionComponent, C as CLASS_ATTRIBUTE_NAME, f as CSSProperties, at as Call, au as CallChainImpl, av as CallChainImplThenable, g as Children, D as DANGEROUSLY_SET_INNER_HTML_ATTRIBUTE, h as DEFAULT_TRANSITION_CONFIG, aw as DOMPropValue, j as DefussChild, k as DefussChildren, l as DefussClassValue, m as DefussKey, ax as Dequery, ay as DequeryOptions, az as DequerySyncMethodReturnType, aA as Dimensions, n as DomAbstractionImpl, aB as ElementCreationOptions, E as ElementProps, aC as EqualsFn, aD as EventMapFor, aE as EventMapForAny, o as FontFaceProperties, aF as FormFieldValue, aG as FormKeyValues, p as Fragment, q as FunctionComponent, J as JsxRuntimeHookFn, r as JsxSourceInfo, K as KeyFrameProperties, aH as Listener, M as Maybe, aI as MemoryStorage, aJ as MiddlewareFn, s as MountHandler, O as OneOrMany, b as ParentElementInput, P as ParentElementInputAsync, aK as Position, u as REF_ATTRIBUTE_NAME, w as RefUpdateFn, x as RefUpdateRenderFn, y as RefUpdateRenderFnInput, z as RenderNodeInput, a as RenderResult, B as RenderResultNode, aL as Store, aM as StoreOptions, S as SyncRenderInput, H as SyncRenderResult, aN as TargetOf, I as TransitionStyles, L as TransitionType, Q as TransitionsEasing, aO as UnionToIntersection, U as UnmountHandler, V as VAttributes, Z as VNodeChildren, _ as VNodeKey, $ as VNodeRef, a0 as VNodeRefCallback, a1 as VNodeRefObject, a2 as VNodeType, aP as WebStorage, a3 as XLINK_ATTRIBUTE_NAME, a4 as XMLNS_ATTRIBUTE_NAME, aQ as addNonChainedReturnCallNames, a5 as applyStyles, aR as createCall, aS as createGetterSetterCall, a6 as createInPlaceErrorMessageVNode, a7 as createRef, aT as createStore, aU as createSubChain, aV as createSyncCall, aW as deepEquals, aX as delayedAutoStart, aY as dequery, aZ as emptyImpl, a_ as getAllFormValues, a$ as getDefaultDequeryOptions, b0 as getNonChainedReturnCallNames, a8 as getRenderer, a9 as getTransitionStyles, aa as globalScopeDomApis, ab as handleLifecycleEventsForOnMount, b1 as isDequery, b2 as isDequeryOptionsObject, ac as isJSX, b3 as isNonChainedReturnCall, ad as isRef, ae as jsx, af as jsxDEV, ag as jsxs, b4 as mapArrayIndexAccess, ah as nsMap, ai as observeUnmount, aj as performTransition, b5 as render, ak as renderInto, al as renderIsomorphicAsync, am as renderIsomorphicSync, b6 as renderNode, b7 as resolveNodes, b8 as runWithTimeGuard, b9 as scrollHelper, ba as shallowEquals, bb as subChainForNextAwait, bc as traverse, an as updateDom } from './index-DnUO13Ql.js';
3
+ export { CAPTURE_ONLY_EVENTS, ComponentInstance, DelegatedEventOptions, DelegatedPhase, ParsedEventProp, clearDelegatedEvents, clearDelegatedEventsDeep, getComponentInstance, getRegisteredEventKeys, getRegisteredEventTypes, isComponentRoot, mount, parseEventPropName, registerComponent, registerDelegatedEvent, removeDelegatedEvent, removeDelegatedEventByKey, unmount, unregisterComponent } from './render/index.js';
4
+ import 'csstype';
5
5
 
6
- declare const inDevMode = true;
6
+ /**
7
+ * Detect development mode for dev-only warnings and logs.
8
+ * In production builds, bundlers can dead-code eliminate based on this.
9
+ */
10
+ declare const inDevMode: boolean;
7
11
 
8
12
  /** returns the persistence provider (isomorphic) */
9
13
  declare const webstorage: <T>(provider?: PersistenceProviderType, options?: PersistenceProviderOptions) => PersistenceProviderImpl<T>;
@@ -17,11 +21,11 @@ declare const webstorage: <T>(provider?: PersistenceProviderType, options?: Pers
17
21
  */
18
22
  declare const areDomNodesEqual: (oldNode: Node, newNode: Node) => boolean;
19
23
  /********************************************************
20
- * 1) Define a "valid" child type & utility
24
+ * 1) Define a "valid" child type & utilities
21
25
  ********************************************************/
22
26
  type ValidChild = string | number | boolean | null | undefined | VNode<VNodeAttributes>;
23
27
  /********************************************************
24
- * 5) Main partial-update function (index-by-index approach)
28
+ * 6) Main state-preserving morph (key/id aware, move-not-replace)
25
29
  ********************************************************/
26
30
  declare function updateDomWithVdom(parentElement: Element, newVDOM: RenderInput, globals: Globals): void;
27
31
  /**
@@ -44,9 +48,9 @@ declare function getMimeType(input: string, Parser: typeof DOMParser): DOMParser
44
48
  declare function processAllFormElements(node: NodeType, callback: (input: HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement, key: string) => void): void;
45
49
  declare function checkElementVisibility(element: HTMLElement, window: Window, document: Document): boolean;
46
50
  declare function getEventMap(element: HTMLElement): Map<string, Set<EventListener>>;
47
- declare function addElementEvent(element: HTMLElement, eventType: string, handler: EventListener): void;
48
- declare function removeElementEvent(element: HTMLElement, eventType: string, handler?: EventListener): void;
49
- declare function clearElementEvents(element: HTMLElement): void;
51
+ declare function addElementEvent(target: EventTarget, eventType: string, handler: EventListener): void;
52
+ declare function removeElementEvent(target: EventTarget, eventType: string, handler?: EventListener): void;
53
+ declare function clearElementEvents(target: EventTarget): void;
50
54
  /**
51
55
  * Converts a DOM node to a VNode structure for use with updateDomWithVdom.
52
56
  * This allows us to leverage the sophisticated partial update system even for Node inputs.
@@ -56,10 +60,14 @@ declare function domNodeToVNode(node: Node): VNode<VNodeAttributes> | string;
56
60
  * Converts an HTML string to VNode structure for use with updateDomWithVdom.
57
61
  * This allows markup strings to benefit from the intelligent partial update system.
58
62
  */
59
- declare function htmlStringToVNodes(html: string, Parser: typeof DOMParser): (VNode<VNodeAttributes> | string)[];
63
+ declare function htmlStringToVNodes(html: string, Parser: typeof DOMParser): Array<VNode<VNodeAttributes> | string>;
60
64
 
61
- declare const queueCallback: (cb: Function) => () => void;
65
+ declare const queueCallback: <T extends any[]>(cb: (...args: T) => void) => (...args: T) => void;
62
66
 
67
+ type Resolve<T> = T extends infer U ? U : never;
68
+ type TranslationKeys<T, Prefix extends string = ""> = Resolve<{
69
+ [K in keyof T]: T[K] extends Record<string, unknown> ? TranslationKeys<T[K], `${Prefix}${K & string}.`> : `${Prefix}${K & string}`;
70
+ }[keyof T]>;
63
71
  type TranslationObject = {
64
72
  [key: string]: string | VNode | TranslationObject;
65
73
  };
@@ -68,26 +76,41 @@ type Translations = {
68
76
  };
69
77
  type OnLanguageChangeListener = (newLanguage: string) => void;
70
78
  type Replacements = Record<string, string>;
71
- interface I18nStore {
79
+ interface I18nStore<K extends string = string> {
72
80
  language: string;
73
81
  changeLanguage: (language: string) => void;
74
- t: (path: string, options?: Record<string, string>) => string;
82
+ t: (path: K, options?: Record<string, string>) => string;
75
83
  loadLanguage: (language: string, translations: TranslationObject) => void;
76
84
  subscribe: (onLanguageChange: OnLanguageChangeListener) => () => void;
77
85
  unsubscribe: (onLanguageChange: OnLanguageChangeListener) => void;
78
86
  }
79
- declare const createI18n: () => I18nStore;
80
- declare const i18n: I18nStore;
87
+ declare const createI18n: <K extends string>() => I18nStore<K>;
88
+ /**
89
+ * @deprecated Use `createI18n` instances with typed keys instead of the default singleton.
90
+ */
91
+ declare const i18n: I18nStore<string>;
92
+ /**
93
+ * @deprecated Use `createI18n` instances with typed keys instead of the default singleton.
94
+ */
81
95
  declare const t: (path: string, options?: Record<string, string>) => string;
96
+ /**
97
+ * @deprecated Use `createI18n` instances with typed keys instead of the default singleton.
98
+ */
82
99
  declare const changeLanguage: (language: string) => void;
100
+ /**
101
+ * @deprecated Use `createI18n` instances with typed keys instead of the default singleton.
102
+ */
83
103
  declare const loadLanguage: (language: string, translations: TranslationObject) => void;
104
+ /**
105
+ * @deprecated Use `createI18n` instances with typed keys instead of the default singleton.
106
+ */
84
107
  declare const getLanguage: () => string;
85
108
 
86
- interface TransRef extends Ref<string, HTMLElement> {
109
+ interface TransRef extends Ref<DOMElement, string> {
87
110
  updateValues: (values: Replacements) => void;
88
111
  }
89
- interface TransProps extends Props {
90
- key: string;
112
+ interface TransProps<K extends string> extends Props {
113
+ key: K;
91
114
  ref?: TransRef;
92
115
  tag?: string;
93
116
  values?: Replacements;
@@ -96,8 +119,15 @@ interface TransProps extends Props {
96
119
  style?: string;
97
120
  [propName: string]: any;
98
121
  }
99
- declare const Trans: ({ key, values, tag, ref, ...attrs }: TransProps) => VNodeChild;
100
- declare const T: ({ key, values, tag, ref, ...attrs }: TransProps) => VNodeChild;
122
+ declare const createTrans: <K extends string>(i18n: I18nStore<K>) => ({ key, values, tag, ref, ...attrs }: TransProps<K>) => VNodeChild;
123
+ /**
124
+ * @deprecated Use `createTrans` instances with typed i18n keys instead of the default singleton.
125
+ */
126
+ declare const Trans: ({ key, values, tag, ref, ...attrs }: TransProps<string>) => VNodeChild;
127
+ /**
128
+ * @deprecated Use `createTrans` instances with typed i18n keys instead of the default singleton.
129
+ * */
130
+ declare const T: ({ key, values, tag, ref, ...attrs }: TransProps<string>) => VNodeChild;
101
131
 
102
132
  type OnHandleRouteChangeFn = (newRoute: string, oldRoute: string) => void;
103
133
  type OnRouteChangeFn = (cb: OnHandleRouteChangeFn) => void;
@@ -108,6 +138,10 @@ interface RouterConfig {
108
138
  interface RouteMatchGroups {
109
139
  [matchName: string]: number;
110
140
  }
141
+ /**
142
+ * Key-value map for URL parameters.
143
+ * Used for route params, query params, and hash params.
144
+ */
111
145
  interface RouteParams {
112
146
  [name: string]: string;
113
147
  }
@@ -117,9 +151,95 @@ interface RouteRegistration {
117
151
  tokenizedPath?: TokenizedPath;
118
152
  handler?: RouteHandler;
119
153
  }
154
+ /**
155
+ * Represents the current routing state and URL information.
156
+ *
157
+ * This object is **always returned** by `Router.getRequest()`, `Router.match()`,
158
+ * and `Router.resolve()`. Unlike returning `false` on no match, this provides
159
+ * a deterministic API where you can always access URL information.
160
+ *
161
+ * @example
162
+ * ```tsx
163
+ * const req = Router.getRequest();
164
+ *
165
+ * // Check if a registered route matched
166
+ * if (req.match) {
167
+ * console.log(`Matched route: ${req.matchedRoute}`);
168
+ * console.log(`Component name: ${req.params.name}`);
169
+ * } else {
170
+ * console.log('No matching route');
171
+ * }
172
+ *
173
+ * // URL components are always available regardless of match
174
+ * console.log(`Current path: ${req.path}`);
175
+ * console.log(`Base URL: ${req.baseUrl}`);
176
+ * ```
177
+ *
178
+ * @example
179
+ * ```tsx
180
+ * // Dynamic route like "/components/:name"
181
+ * const req = Router.getRequest();
182
+ * const title = req.match ? req.params.name : 'Unknown';
183
+ * ```
184
+ */
120
185
  interface RouteRequest {
186
+ /**
187
+ * Whether a registered route pattern matched the current path.
188
+ * Always check this before accessing route-specific params.
189
+ */
190
+ match: boolean;
191
+ /**
192
+ * The route pattern that matched, e.g., "/components/:name".
193
+ * `null` if no route matched (`match === false`).
194
+ */
195
+ matchedRoute: string | null;
196
+ /**
197
+ * URL protocol without the colon, e.g., "http" or "https".
198
+ */
199
+ protocol: string;
200
+ /**
201
+ * Domain/hostname, e.g., "localhost" or "example.com".
202
+ */
203
+ domain: string;
204
+ /**
205
+ * Port number as string, e.g., "5173".
206
+ * Empty string if using default port (80 for http, 443 for https).
207
+ */
208
+ port: string;
209
+ /**
210
+ * Base URL combining protocol, domain, and port.
211
+ * E.g., "http://localhost:5173" or "https://example.com".
212
+ * Does not include path, query, or hash.
213
+ */
214
+ baseUrl: string;
215
+ /**
216
+ * Path portion of the URL, e.g., "/components/accordion".
217
+ * Does not include query string or hash.
218
+ */
219
+ path: string;
220
+ /**
221
+ * Full URL including path, query, and hash.
222
+ * E.g., "http://localhost:5173/components/accordion?tab=code#section"
223
+ */
121
224
  url: string;
225
+ /**
226
+ * Route parameters extracted from dynamic segments.
227
+ * E.g., for route "/components/:name" and path "/components/accordion",
228
+ * params would be `{ name: "accordion" }`.
229
+ * Empty object if no route matched or route has no params.
230
+ */
122
231
  params: RouteParams;
232
+ /**
233
+ * Query string parameters parsed from the URL.
234
+ * E.g., for "?q=test&page=1", queryParams would be `{ q: "test", page: "1" }`.
235
+ */
236
+ queryParams: RouteParams;
237
+ /**
238
+ * Hash fragment parameters parsed as key-value pairs.
239
+ * E.g., for "#sort=desc&view=grid", hashParams would be `{ sort: "desc", view: "grid" }`.
240
+ * Note: Only works if hash uses query-string format.
241
+ */
242
+ hashParams: RouteParams;
123
243
  }
124
244
  interface TokenizedPath {
125
245
  regexp: RegExp;
@@ -127,19 +247,55 @@ interface TokenizedPath {
127
247
  }
128
248
  type RouteHandler = (request: RouteRequest) => void;
129
249
  declare const tokenizePath: (path: string) => TokenizedPath;
130
- declare const matchRouteRegistrations: (routeRegistrations: Array<RouteRegistration>, actualPathName: string, haystackPathName?: string) => RouteRequest | false;
250
+ interface MatchRouteRegistrationsOpts {
251
+ invokeHandler?: boolean;
252
+ }
253
+ /**
254
+ * Match registered routes against the current pathname.
255
+ * Always returns a RouteRequest object with match: true/false.
256
+ */
257
+ declare const matchRouteRegistrations: (routeRegistrations: Array<RouteRegistration>, actualPathName: string, haystackPathName?: string, opts?: MatchRouteRegistrationsOpts, windowImpl?: Window) => RouteRequest;
131
258
  declare const setupRouter: (config?: RouterConfig, windowImpl?: Window) => Router;
259
+ interface RouterState {
260
+ routeRegistrations: Array<RouteRegistration>;
261
+ currentRequest: RouteRequest | null;
262
+ isReady: boolean;
263
+ pendingResolvers: Array<() => void>;
264
+ currentPath: string;
265
+ popAttached: boolean;
266
+ }
267
+ declare global {
268
+ var __defuss_router__: Router | undefined;
269
+ var __defuss_router_state__: RouterState | undefined;
270
+ }
271
+ declare const getRouterState: () => RouterState;
132
272
  interface Router {
133
273
  listeners: Array<OnHandleRouteChangeFn>;
134
274
  strategy: RouterStrategy;
135
275
  add(registration: RouteRegistration): Router;
136
- match(path?: string): RouteRequest | false;
276
+ match(path?: string): RouteRequest;
277
+ resolve(pathname?: string): RouteRequest;
278
+ getRequest(): RouteRequest;
137
279
  getRoutes(): Array<RouteRegistration>;
138
280
  tokenizePath(path: string): TokenizedPath;
139
281
  navigate(path: string): void;
140
282
  onRouteChange: OnRouteChangeFn;
141
283
  destroy(): void;
142
284
  attachPopStateHandler(): void;
285
+ /**
286
+ * Returns a promise that resolves when the router is ready (routes are registered).
287
+ * Call this before using getRequest() in components that render inside Route.
288
+ *
289
+ * @example
290
+ * ```tsx
291
+ * const MyComponent = async () => {
292
+ * await Router.ready();
293
+ * const req = Router.getRequest();
294
+ * // params are now available
295
+ * }
296
+ * ```
297
+ */
298
+ ready(): Promise<void>;
143
299
  }
144
300
  declare const Router: Router;
145
301
 
@@ -148,17 +304,19 @@ interface RouteProps extends Props {
148
304
  router?: Router;
149
305
  exact?: boolean;
150
306
  }
151
- declare const Route: ({ path, exact, children, router, }: RouteProps) => VNodeChild;
307
+ declare const Route: FC<RouteProps>;
152
308
 
153
309
  interface RedirectProps extends RouteProps {
154
310
  to: string;
155
311
  }
156
- declare const Redirect: ({ path, to, router, exact, }: RedirectProps) => VNodeChild;
312
+ declare const Redirect: FC<RedirectProps>;
157
313
 
158
314
  declare const RouterSlotId = "router-slot";
159
315
  interface RouterSlotProps extends Props {
160
316
  /** to override the tag name used for the router slot */
161
317
  tag?: string;
318
+ /** to override the default id 'router-slot' */
319
+ id?: string;
162
320
  /** to identify/select the root DOM element or style it, W3C naming */
163
321
  class?: string;
164
322
  /** to identify/select the root DOM element or style it, React naming */
@@ -175,16 +333,16 @@ interface RouterSlotProps extends Props {
175
333
  * and renders its default children (RouterOutlet). Whenever the route changes, it re-renders dynamically.
176
334
  * This decouples the slot refresh logic from route registration.
177
335
  */
178
- declare const RouterSlot: ({ router, children, RouterOutlet, transitionConfig, ...attributes }: RouterSlotProps) => VNodeChild;
336
+ declare const RouterSlot: FC<RouterSlotProps>;
179
337
 
180
338
  type AsyncState = "loading" | "loaded" | "error";
181
- interface AsyncStateRef extends Ref<AsyncState, HTMLElement> {
339
+ interface AsyncStateRef extends Ref<DOMElement, AsyncState> {
182
340
  /** The state of the async content */
183
341
  state?: AsyncState;
184
342
  /** Error details are available here in case the state changes to "error" */
185
343
  error?: unknown;
186
344
  }
187
- interface AsyncProps extends Props {
345
+ interface AsyncProps extends Omit<Props, 'children'> {
188
346
  /** to uniquely identify the root DOM element without using a ref */
189
347
  id?: string;
190
348
  /** to identify/select the root DOM element or style it, W3C naming */
@@ -192,17 +350,20 @@ interface AsyncProps extends Props {
192
350
  /** to identify/select the root DOM element or style it, React naming */
193
351
  className?: string;
194
352
  /** The fallback content to display while the async content is loading */
195
- fallback?: VNode;
353
+ fallback?: VNode | JSX.Element;
196
354
  /** Store this with createRef() to update() the Suspense state */
197
355
  ref?: AsyncStateRef;
198
- /** The async content to display when loaded */
199
- render?: () => Promise<RenderInput>;
200
356
  /** to override the name of the .suspense-loading transition CSS class name */
201
357
  loadingClassName?: string;
202
358
  /** to override the name of the .suspense-loaded transition CSS class name */
203
359
  loadedClassName?: string;
204
360
  /** to override the name of the .suspense-error transition CSS class name */
205
361
  errorClassName?: string;
362
+ /**
363
+ * Children of Async can include async components (Promise-returning).
364
+ * These are resolved automatically before rendering.
365
+ */
366
+ children?: AsyncDefussChild | AsyncDefussChild[];
206
367
  }
207
368
  declare const Async: ({ fallback, ref, children, class: _class, className, id, loadingClassName, loadedClassName, errorClassName, onError, }: AsyncProps) => {
208
369
  type: string;
@@ -212,8 +373,9 @@ declare const Async: ({ fallback, ref, children, class: _class, className, id, l
212
373
  className: string | undefined;
213
374
  ref: AsyncStateRef;
214
375
  onMount: () => void;
376
+ "data-defuss-keep": boolean;
215
377
  };
216
- children: VNode<VNodeAttributes>[];
378
+ children: (VNode<VNodeAttributes> | VNode<VNodeAttributes> | Promise<VNode<VNodeAttributes> | null>)[];
217
379
  };
218
380
  declare const Suspense: ({ fallback, ref, children, class: _class, className, id, loadingClassName, loadedClassName, errorClassName, onError, }: AsyncProps) => {
219
381
  type: string;
@@ -223,9 +385,10 @@ declare const Suspense: ({ fallback, ref, children, class: _class, className, id
223
385
  className: string | undefined;
224
386
  ref: AsyncStateRef;
225
387
  onMount: () => void;
388
+ "data-defuss-keep": boolean;
226
389
  };
227
- children: VNode<VNodeAttributes>[];
390
+ children: (VNode<VNodeAttributes> | VNode<VNodeAttributes> | Promise<VNode<VNodeAttributes> | null>)[];
228
391
  };
229
392
 
230
- export { Async, Globals, NodeType, PersistenceProviderImpl, PersistenceProviderOptions, PersistenceProviderType, Props, Redirect, Ref, RenderInput, Route, Router, RouterSlot, RouterSlotId, Suspense, T, Trans, TransitionConfig, VNode, VNodeAttributes, VNodeChild, addElementEvent, areDomNodesEqual, changeLanguage, checkElementVisibility, clearElementEvents, createI18n, domNodeToVNode, getEventMap, getLanguage, getMimeType, htmlStringToVNodes, i18n, inDevMode, isHTML, isMarkup, isSVG, loadLanguage, matchRouteRegistrations, parseDOM, processAllFormElements, queueCallback, removeElementEvent, renderMarkup, replaceDomWithVdom, setupRouter, t, tokenizePath, updateDomWithVdom, waitForDOM, webstorage };
231
- export type { AsyncProps, AsyncState, AsyncStateRef, I18nStore, OnHandleRouteChangeFn, OnLanguageChangeListener, OnRouteChangeFn, RedirectProps, Replacements, RouteHandler, RouteParams, RouteProps, RouteRegistration, RouteRequest, RouterConfig, RouterSlotProps, RouterStrategy, TokenizedPath, TransProps, TransRef, TranslationObject, Translations, ValidChild };
393
+ export { Async, AsyncDefussChild, DOMElement, FC, Globals, NodeType, PersistenceProviderImpl, PersistenceProviderOptions, PersistenceProviderType, Props, Redirect, Ref, RenderInput, Route, Router, RouterSlot, RouterSlotId, Suspense, T, Trans, TransitionConfig, VNode, VNodeAttributes, VNodeChild, addElementEvent, areDomNodesEqual, changeLanguage, checkElementVisibility, clearElementEvents, createI18n, createTrans, domNodeToVNode, getEventMap, getLanguage, getMimeType, getRouterState, htmlStringToVNodes, i18n, inDevMode, isHTML, isMarkup, isSVG, loadLanguage, matchRouteRegistrations, parseDOM, processAllFormElements, queueCallback, removeElementEvent, renderMarkup, replaceDomWithVdom, setupRouter, t, tokenizePath, updateDomWithVdom, waitForDOM, webstorage };
394
+ export type { AsyncProps, AsyncState, AsyncStateRef, I18nStore, MatchRouteRegistrationsOpts, OnHandleRouteChangeFn, OnLanguageChangeListener, OnRouteChangeFn, RedirectProps, Replacements, Resolve, RouteHandler, RouteParams, RouteProps, RouteRegistration, RouteRequest, RouterConfig, RouterSlotProps, RouterStrategy, TokenizedPath, TransProps, TransRef, TranslationKeys, TranslationObject, Translations, ValidChild };