@hanzogui/web 2.0.0-rc.41-hanzoai.5

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 (1261) hide show
  1. package/.turbo/turbo-build.log +2 -0
  2. package/LICENSE +21 -0
  3. package/README.md +1 -0
  4. package/dist/cjs/Hanzogui.cjs +76 -0
  5. package/dist/cjs/Hanzogui.native.js +128 -0
  6. package/dist/cjs/Hanzogui.native.js.map +1 -0
  7. package/dist/cjs/_withStableStyle.cjs +75 -0
  8. package/dist/cjs/_withStableStyle.native.js +82 -0
  9. package/dist/cjs/_withStableStyle.native.js.map +1 -0
  10. package/dist/cjs/animationDriverTypes.test-d.cjs +77 -0
  11. package/dist/cjs/animationDriverTypes.test-d.native.js +80 -0
  12. package/dist/cjs/animationDriverTypes.test-d.native.js.map +1 -0
  13. package/dist/cjs/config.cjs +177 -0
  14. package/dist/cjs/config.native.js +199 -0
  15. package/dist/cjs/config.native.js.map +1 -0
  16. package/dist/cjs/constants/accessibilityDirectMap.cjs +36 -0
  17. package/dist/cjs/constants/accessibilityDirectMap.native.js +39 -0
  18. package/dist/cjs/constants/accessibilityDirectMap.native.js.map +1 -0
  19. package/dist/cjs/constants/constants.cjs +40 -0
  20. package/dist/cjs/constants/constants.native.js +43 -0
  21. package/dist/cjs/constants/constants.native.js.map +1 -0
  22. package/dist/cjs/constants/isDevTools.cjs +35 -0
  23. package/dist/cjs/constants/isDevTools.native.js +38 -0
  24. package/dist/cjs/constants/isDevTools.native.js.map +1 -0
  25. package/dist/cjs/contexts/ComponentContext.cjs +41 -0
  26. package/dist/cjs/contexts/ComponentContext.native.js +44 -0
  27. package/dist/cjs/contexts/ComponentContext.native.js.map +1 -0
  28. package/dist/cjs/contexts/GroupContext.cjs +29 -0
  29. package/dist/cjs/contexts/GroupContext.native.js +32 -0
  30. package/dist/cjs/contexts/GroupContext.native.js.map +1 -0
  31. package/dist/cjs/createComponent.cjs +1053 -0
  32. package/dist/cjs/createComponent.native.js +1033 -0
  33. package/dist/cjs/createComponent.native.js.map +1 -0
  34. package/dist/cjs/createFont.cjs +48 -0
  35. package/dist/cjs/createFont.native.js +53 -0
  36. package/dist/cjs/createFont.native.js.map +1 -0
  37. package/dist/cjs/createHanzogui.cjs +255 -0
  38. package/dist/cjs/createHanzogui.native.js +307 -0
  39. package/dist/cjs/createHanzogui.native.js.map +1 -0
  40. package/dist/cjs/createShorthands.cjs +30 -0
  41. package/dist/cjs/createShorthands.native.js +33 -0
  42. package/dist/cjs/createShorthands.native.js.map +1 -0
  43. package/dist/cjs/createTokens.cjs +31 -0
  44. package/dist/cjs/createTokens.native.js +35 -0
  45. package/dist/cjs/createTokens.native.js.map +1 -0
  46. package/dist/cjs/createVariable.cjs +122 -0
  47. package/dist/cjs/createVariable.native.js +141 -0
  48. package/dist/cjs/createVariable.native.js.map +1 -0
  49. package/dist/cjs/createVariables.cjs +74 -0
  50. package/dist/cjs/createVariables.native.js +83 -0
  51. package/dist/cjs/createVariables.native.js.map +1 -0
  52. package/dist/cjs/defaultComponentState.cjs +47 -0
  53. package/dist/cjs/defaultComponentState.native.js +50 -0
  54. package/dist/cjs/defaultComponentState.native.js.map +1 -0
  55. package/dist/cjs/eventHandling.cjs +48 -0
  56. package/dist/cjs/eventHandling.native.js +204 -0
  57. package/dist/cjs/eventHandling.native.js.map +1 -0
  58. package/dist/cjs/helpers/consoleLog.native.js +33 -0
  59. package/dist/cjs/helpers/consoleLog.native.js.map +1 -0
  60. package/dist/cjs/helpers/createDesignSystem.cjs +187 -0
  61. package/dist/cjs/helpers/createDesignSystem.native.js +235 -0
  62. package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -0
  63. package/dist/cjs/helpers/createMediaStyle.cjs +127 -0
  64. package/dist/cjs/helpers/createMediaStyle.native.js +140 -0
  65. package/dist/cjs/helpers/createMediaStyle.native.js.map +1 -0
  66. package/dist/cjs/helpers/createStyledContext.cjs +101 -0
  67. package/dist/cjs/helpers/createStyledContext.native.js +109 -0
  68. package/dist/cjs/helpers/createStyledContext.native.js.map +1 -0
  69. package/dist/cjs/helpers/defaultAnimationDriver.cjs +45 -0
  70. package/dist/cjs/helpers/defaultAnimationDriver.native.js +64 -0
  71. package/dist/cjs/helpers/defaultAnimationDriver.native.js.map +1 -0
  72. package/dist/cjs/helpers/defaultOffset.cjs +31 -0
  73. package/dist/cjs/helpers/defaultOffset.native.js +34 -0
  74. package/dist/cjs/helpers/defaultOffset.native.js.map +1 -0
  75. package/dist/cjs/helpers/expandStyle.cjs +69 -0
  76. package/dist/cjs/helpers/expandStyle.native.js +152 -0
  77. package/dist/cjs/helpers/expandStyle.native.js.map +1 -0
  78. package/dist/cjs/helpers/expandStyles.cjs +41 -0
  79. package/dist/cjs/helpers/expandStyles.native.js +51 -0
  80. package/dist/cjs/helpers/expandStyles.native.js.map +1 -0
  81. package/dist/cjs/helpers/getCSSStylesAtomic.cjs +217 -0
  82. package/dist/cjs/helpers/getCSSStylesAtomic.native.js +38 -0
  83. package/dist/cjs/helpers/getCSSStylesAtomic.native.js.map +1 -0
  84. package/dist/cjs/helpers/getDefaultProps.cjs +43 -0
  85. package/dist/cjs/helpers/getDefaultProps.native.js +47 -0
  86. package/dist/cjs/helpers/getDefaultProps.native.js.map +1 -0
  87. package/dist/cjs/helpers/getDynamicVal.cjs +72 -0
  88. package/dist/cjs/helpers/getDynamicVal.native.js +76 -0
  89. package/dist/cjs/helpers/getDynamicVal.native.js.map +1 -0
  90. package/dist/cjs/helpers/getExpandedShorthands.cjs +42 -0
  91. package/dist/cjs/helpers/getExpandedShorthands.native.js +46 -0
  92. package/dist/cjs/helpers/getExpandedShorthands.native.js.map +1 -0
  93. package/dist/cjs/helpers/getFontLanguage.cjs +28 -0
  94. package/dist/cjs/helpers/getFontLanguage.native.js +33 -0
  95. package/dist/cjs/helpers/getFontLanguage.native.js.map +1 -0
  96. package/dist/cjs/helpers/getGroupPropParts.cjs +54 -0
  97. package/dist/cjs/helpers/getGroupPropParts.native.js +59 -0
  98. package/dist/cjs/helpers/getGroupPropParts.native.js.map +1 -0
  99. package/dist/cjs/helpers/getShorthandValue.cjs +33 -0
  100. package/dist/cjs/helpers/getShorthandValue.native.js +37 -0
  101. package/dist/cjs/helpers/getShorthandValue.native.js.map +1 -0
  102. package/dist/cjs/helpers/getSplitStyles.cjs +900 -0
  103. package/dist/cjs/helpers/getSplitStyles.native.js +922 -0
  104. package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -0
  105. package/dist/cjs/helpers/getThemeCSSRules.cjs +134 -0
  106. package/dist/cjs/helpers/getThemeCSSRules.native.js +33 -0
  107. package/dist/cjs/helpers/getThemeCSSRules.native.js.map +1 -0
  108. package/dist/cjs/helpers/getTokenForKey.cjs +174 -0
  109. package/dist/cjs/helpers/getTokenForKey.native.js +186 -0
  110. package/dist/cjs/helpers/getTokenForKey.native.js.map +1 -0
  111. package/dist/cjs/helpers/getVariantExtras.cjs +81 -0
  112. package/dist/cjs/helpers/getVariantExtras.native.js +85 -0
  113. package/dist/cjs/helpers/getVariantExtras.native.js.map +1 -0
  114. package/dist/cjs/helpers/insertStyleRule.cjs +233 -0
  115. package/dist/cjs/helpers/insertStyleRule.native.js +104 -0
  116. package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -0
  117. package/dist/cjs/helpers/isActivePlatform.cjs +40 -0
  118. package/dist/cjs/helpers/isActivePlatform.native.js +43 -0
  119. package/dist/cjs/helpers/isActivePlatform.native.js.map +1 -0
  120. package/dist/cjs/helpers/isActiveTheme.cjs +31 -0
  121. package/dist/cjs/helpers/isActiveTheme.native.js +34 -0
  122. package/dist/cjs/helpers/isActiveTheme.native.js.map +1 -0
  123. package/dist/cjs/helpers/isHanzoguiComponent.cjs +31 -0
  124. package/dist/cjs/helpers/isHanzoguiComponent.native.js +34 -0
  125. package/dist/cjs/helpers/isHanzoguiComponent.native.js.map +1 -0
  126. package/dist/cjs/helpers/isHanzoguiElement.cjs +43 -0
  127. package/dist/cjs/helpers/isHanzoguiElement.native.js +46 -0
  128. package/dist/cjs/helpers/isHanzoguiElement.native.js.map +1 -0
  129. package/dist/cjs/helpers/isObj.cjs +28 -0
  130. package/dist/cjs/helpers/isObj.native.js +38 -0
  131. package/dist/cjs/helpers/isObj.native.js.map +1 -0
  132. package/dist/cjs/helpers/log.cjs +39 -0
  133. package/dist/cjs/helpers/log.native.js +43 -0
  134. package/dist/cjs/helpers/log.native.js.map +1 -0
  135. package/dist/cjs/helpers/mainThreadPressEvents.cjs +28 -0
  136. package/dist/cjs/helpers/mainThreadPressEvents.native.js +133 -0
  137. package/dist/cjs/helpers/mainThreadPressEvents.native.js.map +1 -0
  138. package/dist/cjs/helpers/matchMedia.cjs +38 -0
  139. package/dist/cjs/helpers/matchMedia.native.js +62 -0
  140. package/dist/cjs/helpers/matchMedia.native.js.map +1 -0
  141. package/dist/cjs/helpers/mediaObjectToString.cjs +51 -0
  142. package/dist/cjs/helpers/mediaObjectToString.native.js +57 -0
  143. package/dist/cjs/helpers/mediaObjectToString.native.js.map +1 -0
  144. package/dist/cjs/helpers/mediaState.cjs +49 -0
  145. package/dist/cjs/helpers/mediaState.native.js +54 -0
  146. package/dist/cjs/helpers/mediaState.native.js.map +1 -0
  147. package/dist/cjs/helpers/mergeProps.cjs +79 -0
  148. package/dist/cjs/helpers/mergeProps.native.js +87 -0
  149. package/dist/cjs/helpers/mergeProps.native.js.map +1 -0
  150. package/dist/cjs/helpers/mergeRenderElementProps.cjs +35 -0
  151. package/dist/cjs/helpers/mergeRenderElementProps.native.js +38 -0
  152. package/dist/cjs/helpers/mergeRenderElementProps.native.js.map +1 -0
  153. package/dist/cjs/helpers/mergeSlotStyleProps.cjs +52 -0
  154. package/dist/cjs/helpers/mergeSlotStyleProps.native.js +55 -0
  155. package/dist/cjs/helpers/mergeSlotStyleProps.native.js.map +1 -0
  156. package/dist/cjs/helpers/mergeVariants.cjs +52 -0
  157. package/dist/cjs/helpers/mergeVariants.native.js +56 -0
  158. package/dist/cjs/helpers/mergeVariants.native.js.map +1 -0
  159. package/dist/cjs/helpers/nativeOnlyProps.cjs +62 -0
  160. package/dist/cjs/helpers/nativeOnlyProps.native.js +65 -0
  161. package/dist/cjs/helpers/nativeOnlyProps.native.js.map +1 -0
  162. package/dist/cjs/helpers/normalizeColor.cjs +47 -0
  163. package/dist/cjs/helpers/normalizeColor.native.js +53 -0
  164. package/dist/cjs/helpers/normalizeColor.native.js.map +1 -0
  165. package/dist/cjs/helpers/normalizeShadow.cjs +50 -0
  166. package/dist/cjs/helpers/normalizeShadow.native.js +54 -0
  167. package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -0
  168. package/dist/cjs/helpers/normalizeStyle.cjs +54 -0
  169. package/dist/cjs/helpers/normalizeStyle.native.js +58 -0
  170. package/dist/cjs/helpers/normalizeStyle.native.js.map +1 -0
  171. package/dist/cjs/helpers/normalizeStylePropKeys.cjs +28 -0
  172. package/dist/cjs/helpers/normalizeStylePropKeys.native.js +42 -0
  173. package/dist/cjs/helpers/normalizeStylePropKeys.native.js.map +1 -0
  174. package/dist/cjs/helpers/normalizeValueWithProperty.cjs +54 -0
  175. package/dist/cjs/helpers/normalizeValueWithProperty.native.js +63 -0
  176. package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -0
  177. package/dist/cjs/helpers/objectIdentityKey.cjs +46 -0
  178. package/dist/cjs/helpers/objectIdentityKey.native.js +54 -0
  179. package/dist/cjs/helpers/objectIdentityKey.native.js.map +1 -0
  180. package/dist/cjs/helpers/parseBorderShorthand.cjs +30 -0
  181. package/dist/cjs/helpers/parseBorderShorthand.native.js +86 -0
  182. package/dist/cjs/helpers/parseBorderShorthand.native.js.map +1 -0
  183. package/dist/cjs/helpers/parseNativeStyle.cjs +167 -0
  184. package/dist/cjs/helpers/parseNativeStyle.native.js +190 -0
  185. package/dist/cjs/helpers/parseNativeStyle.native.js.map +1 -0
  186. package/dist/cjs/helpers/parseOutlineShorthand.cjs +30 -0
  187. package/dist/cjs/helpers/parseOutlineShorthand.native.js +80 -0
  188. package/dist/cjs/helpers/parseOutlineShorthand.native.js.map +1 -0
  189. package/dist/cjs/helpers/platformResolveValue.cjs +38 -0
  190. package/dist/cjs/helpers/platformResolveValue.native.js +74 -0
  191. package/dist/cjs/helpers/platformResolveValue.native.js.map +1 -0
  192. package/dist/cjs/helpers/pointerEvents.cjs +28 -0
  193. package/dist/cjs/helpers/pointerEvents.native.js +155 -0
  194. package/dist/cjs/helpers/pointerEvents.native.js.map +1 -0
  195. package/dist/cjs/helpers/propMapper.cjs +257 -0
  196. package/dist/cjs/helpers/propMapper.native.js +331 -0
  197. package/dist/cjs/helpers/propMapper.native.js.map +1 -0
  198. package/dist/cjs/helpers/proxyThemeToParents.cjs +63 -0
  199. package/dist/cjs/helpers/proxyThemeToParents.native.js +161 -0
  200. package/dist/cjs/helpers/proxyThemeToParents.native.js.map +1 -0
  201. package/dist/cjs/helpers/proxyThemeVariables.cjs +38 -0
  202. package/dist/cjs/helpers/proxyThemeVariables.native.js +43 -0
  203. package/dist/cjs/helpers/proxyThemeVariables.native.js.map +1 -0
  204. package/dist/cjs/helpers/pseudoDescriptors.cjs +82 -0
  205. package/dist/cjs/helpers/pseudoDescriptors.native.js +85 -0
  206. package/dist/cjs/helpers/pseudoDescriptors.native.js.map +1 -0
  207. package/dist/cjs/helpers/pseudoTransitions.cjs +83 -0
  208. package/dist/cjs/helpers/pseudoTransitions.native.js +88 -0
  209. package/dist/cjs/helpers/pseudoTransitions.native.js.map +1 -0
  210. package/dist/cjs/helpers/registerCSSVariable.cjs +81 -0
  211. package/dist/cjs/helpers/registerCSSVariable.native.js +85 -0
  212. package/dist/cjs/helpers/registerCSSVariable.native.js.map +1 -0
  213. package/dist/cjs/helpers/resolveAnimationDriver.cjs +37 -0
  214. package/dist/cjs/helpers/resolveAnimationDriver.native.js +41 -0
  215. package/dist/cjs/helpers/resolveAnimationDriver.native.js.map +1 -0
  216. package/dist/cjs/helpers/resolveCompoundTokens.cjs +41 -0
  217. package/dist/cjs/helpers/resolveCompoundTokens.native.js +44 -0
  218. package/dist/cjs/helpers/resolveCompoundTokens.native.js.map +1 -0
  219. package/dist/cjs/helpers/resolveRem.cjs +34 -0
  220. package/dist/cjs/helpers/resolveRem.native.js +59 -0
  221. package/dist/cjs/helpers/resolveRem.native.js.map +1 -0
  222. package/dist/cjs/helpers/resolveSafeArea.cjs +36 -0
  223. package/dist/cjs/helpers/resolveSafeArea.native.js +46 -0
  224. package/dist/cjs/helpers/resolveSafeArea.native.js.map +1 -0
  225. package/dist/cjs/helpers/setElementProps.cjs +31 -0
  226. package/dist/cjs/helpers/setElementProps.native.js +39 -0
  227. package/dist/cjs/helpers/setElementProps.native.js.map +1 -0
  228. package/dist/cjs/helpers/skipProps.cjs +46 -0
  229. package/dist/cjs/helpers/skipProps.native.js +49 -0
  230. package/dist/cjs/helpers/skipProps.native.js.map +1 -0
  231. package/dist/cjs/helpers/sortString.cjs +28 -0
  232. package/dist/cjs/helpers/sortString.native.js +33 -0
  233. package/dist/cjs/helpers/sortString.native.js.map +1 -0
  234. package/dist/cjs/helpers/subscribeToContextGroup.cjs +109 -0
  235. package/dist/cjs/helpers/subscribeToContextGroup.native.js +157 -0
  236. package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -0
  237. package/dist/cjs/helpers/themeable.cjs +114 -0
  238. package/dist/cjs/helpers/themeable.native.js +119 -0
  239. package/dist/cjs/helpers/themeable.native.js.map +1 -0
  240. package/dist/cjs/helpers/themes.cjs +46 -0
  241. package/dist/cjs/helpers/themes.native.js +49 -0
  242. package/dist/cjs/helpers/themes.native.js.map +1 -0
  243. package/dist/cjs/helpers/timer.cjs +34 -0
  244. package/dist/cjs/helpers/timer.native.js +37 -0
  245. package/dist/cjs/helpers/timer.native.js.map +1 -0
  246. package/dist/cjs/helpers/transformsToString.cjs +43 -0
  247. package/dist/cjs/helpers/transformsToString.native.js +46 -0
  248. package/dist/cjs/helpers/transformsToString.native.js.map +1 -0
  249. package/dist/cjs/helpers/useRenderElement.cjs +53 -0
  250. package/dist/cjs/helpers/useRenderElement.native.js +60 -0
  251. package/dist/cjs/helpers/useRenderElement.native.js.map +1 -0
  252. package/dist/cjs/helpers/webPropsToSkip.cjs +28 -0
  253. package/dist/cjs/helpers/webPropsToSkip.native.js +78 -0
  254. package/dist/cjs/helpers/webPropsToSkip.native.js.map +1 -0
  255. package/dist/cjs/helpers/wrapStyleTags.cjs +42 -0
  256. package/dist/cjs/helpers/wrapStyleTags.native.js +33 -0
  257. package/dist/cjs/helpers/wrapStyleTags.native.js.map +1 -0
  258. package/dist/cjs/hooks/doesRootSchemeMatchSystem.cjs +30 -0
  259. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js +36 -0
  260. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js.map +1 -0
  261. package/dist/cjs/hooks/getThemeProxied.cjs +78 -0
  262. package/dist/cjs/hooks/getThemeProxied.native.js +107 -0
  263. package/dist/cjs/hooks/getThemeProxied.native.js.map +1 -0
  264. package/dist/cjs/hooks/useComponentState.cjs +195 -0
  265. package/dist/cjs/hooks/useComponentState.native.js +209 -0
  266. package/dist/cjs/hooks/useComponentState.native.js.map +1 -0
  267. package/dist/cjs/hooks/useDisableSSR.cjs +31 -0
  268. package/dist/cjs/hooks/useDisableSSR.native.js +35 -0
  269. package/dist/cjs/hooks/useDisableSSR.native.js.map +1 -0
  270. package/dist/cjs/hooks/useIsTouchDevice.cjs +32 -0
  271. package/dist/cjs/hooks/useIsTouchDevice.native.js +35 -0
  272. package/dist/cjs/hooks/useIsTouchDevice.native.js.map +1 -0
  273. package/dist/cjs/hooks/useMedia.cjs +238 -0
  274. package/dist/cjs/hooks/useMedia.native.js +269 -0
  275. package/dist/cjs/hooks/useMedia.native.js.map +1 -0
  276. package/dist/cjs/hooks/useProps.cjs +120 -0
  277. package/dist/cjs/hooks/useProps.native.js +125 -0
  278. package/dist/cjs/hooks/useProps.native.js.map +1 -0
  279. package/dist/cjs/hooks/useTheme.cjs +57 -0
  280. package/dist/cjs/hooks/useTheme.native.js +61 -0
  281. package/dist/cjs/hooks/useTheme.native.js.map +1 -0
  282. package/dist/cjs/hooks/useThemeName.cjs +39 -0
  283. package/dist/cjs/hooks/useThemeName.native.js +45 -0
  284. package/dist/cjs/hooks/useThemeName.native.js.map +1 -0
  285. package/dist/cjs/hooks/useThemeState.cjs +336 -0
  286. package/dist/cjs/hooks/useThemeState.native.js +442 -0
  287. package/dist/cjs/hooks/useThemeState.native.js.map +1 -0
  288. package/dist/cjs/index.cjs +122 -0
  289. package/dist/cjs/index.native.js +125 -0
  290. package/dist/cjs/index.native.js.map +1 -0
  291. package/dist/cjs/inject-styles.cjs +42 -0
  292. package/dist/cjs/inject-styles.native.js +46 -0
  293. package/dist/cjs/inject-styles.native.js.map +1 -0
  294. package/dist/cjs/insertFont.cjs +84 -0
  295. package/dist/cjs/insertFont.native.js +81 -0
  296. package/dist/cjs/insertFont.native.js.map +1 -0
  297. package/dist/cjs/interfaces/CSSColorNames.cjs +18 -0
  298. package/dist/cjs/interfaces/CSSColorNames.native.js +21 -0
  299. package/dist/cjs/interfaces/CSSColorNames.native.js.map +1 -0
  300. package/dist/cjs/interfaces/GetRef.cjs +18 -0
  301. package/dist/cjs/interfaces/GetRef.native.js +21 -0
  302. package/dist/cjs/interfaces/GetRef.native.js.map +1 -0
  303. package/dist/cjs/interfaces/HanzoguiComponentEvents.cjs +18 -0
  304. package/dist/cjs/interfaces/HanzoguiComponentEvents.native.js +21 -0
  305. package/dist/cjs/interfaces/HanzoguiComponentEvents.native.js.map +1 -0
  306. package/dist/cjs/interfaces/HanzoguiComponentPropsBaseBase.cjs +18 -0
  307. package/dist/cjs/interfaces/HanzoguiComponentPropsBaseBase.native.js +21 -0
  308. package/dist/cjs/interfaces/HanzoguiComponentPropsBaseBase.native.js.map +1 -0
  309. package/dist/cjs/interfaces/RNExclusiveTypes.cjs +18 -0
  310. package/dist/cjs/interfaces/RNExclusiveTypes.native.js +21 -0
  311. package/dist/cjs/interfaces/RNExclusiveTypes.native.js.map +1 -0
  312. package/dist/cjs/setupHooks.cjs +32 -0
  313. package/dist/cjs/setupHooks.native.js +35 -0
  314. package/dist/cjs/setupHooks.native.js.map +1 -0
  315. package/dist/cjs/setupReactNative.cjs +54 -0
  316. package/dist/cjs/setupReactNative.native.js +58 -0
  317. package/dist/cjs/setupReactNative.native.js.map +1 -0
  318. package/dist/cjs/styled.cjs +159 -0
  319. package/dist/cjs/styled.native.js +165 -0
  320. package/dist/cjs/styled.native.js.map +1 -0
  321. package/dist/cjs/styledHtml.test-d.cjs +187 -0
  322. package/dist/cjs/styledHtml.test-d.native.js +190 -0
  323. package/dist/cjs/styledHtml.test-d.native.js.map +1 -0
  324. package/dist/cjs/type-utils.cjs +18 -0
  325. package/dist/cjs/type-utils.native.js +21 -0
  326. package/dist/cjs/type-utils.native.js.map +1 -0
  327. package/dist/cjs/types.cjs +18 -0
  328. package/dist/cjs/types.native.js +21 -0
  329. package/dist/cjs/types.native.js.map +1 -0
  330. package/dist/cjs/views/Configuration.cjs +52 -0
  331. package/dist/cjs/views/Configuration.native.js +56 -0
  332. package/dist/cjs/views/Configuration.native.js.map +1 -0
  333. package/dist/cjs/views/FontLanguage.cjs +41 -0
  334. package/dist/cjs/views/FontLanguage.native.js +59 -0
  335. package/dist/cjs/views/FontLanguage.native.js.map +1 -0
  336. package/dist/cjs/views/HanzoguiProvider.cjs +103 -0
  337. package/dist/cjs/views/HanzoguiProvider.native.js +108 -0
  338. package/dist/cjs/views/HanzoguiProvider.native.js.map +1 -0
  339. package/dist/cjs/views/HanzoguiRoot.cjs +79 -0
  340. package/dist/cjs/views/HanzoguiRoot.native.js +33 -0
  341. package/dist/cjs/views/HanzoguiRoot.native.js.map +1 -0
  342. package/dist/cjs/views/Slot.cjs +82 -0
  343. package/dist/cjs/views/Slot.native.js +86 -0
  344. package/dist/cjs/views/Slot.native.js.map +1 -0
  345. package/dist/cjs/views/Text.cjs +61 -0
  346. package/dist/cjs/views/Text.native.js +52 -0
  347. package/dist/cjs/views/Text.native.js.map +1 -0
  348. package/dist/cjs/views/Theme.cjs +198 -0
  349. package/dist/cjs/views/Theme.native.js +207 -0
  350. package/dist/cjs/views/Theme.native.js.map +1 -0
  351. package/dist/cjs/views/ThemeDebug.cjs +98 -0
  352. package/dist/cjs/views/ThemeDebug.native.js +39 -0
  353. package/dist/cjs/views/ThemeDebug.native.js.map +1 -0
  354. package/dist/cjs/views/ThemeProvider.cjs +55 -0
  355. package/dist/cjs/views/ThemeProvider.native.js +48 -0
  356. package/dist/cjs/views/ThemeProvider.native.js.map +1 -0
  357. package/dist/cjs/views/View.cjs +33 -0
  358. package/dist/cjs/views/View.native.js +36 -0
  359. package/dist/cjs/views/View.native.js.map +1 -0
  360. package/dist/esm/Hanzogui.mjs +38 -0
  361. package/dist/esm/Hanzogui.mjs.map +1 -0
  362. package/dist/esm/Hanzogui.native.js +87 -0
  363. package/dist/esm/Hanzogui.native.js.map +1 -0
  364. package/dist/esm/_withStableStyle.mjs +39 -0
  365. package/dist/esm/_withStableStyle.mjs.map +1 -0
  366. package/dist/esm/_withStableStyle.native.js +43 -0
  367. package/dist/esm/_withStableStyle.native.js.map +1 -0
  368. package/dist/esm/animationDriverTypes.test-d.mjs +78 -0
  369. package/dist/esm/animationDriverTypes.test-d.mjs.map +1 -0
  370. package/dist/esm/animationDriverTypes.test-d.native.js +78 -0
  371. package/dist/esm/animationDriverTypes.test-d.native.js.map +1 -0
  372. package/dist/esm/config.mjs +136 -0
  373. package/dist/esm/config.mjs.map +1 -0
  374. package/dist/esm/config.native.js +155 -0
  375. package/dist/esm/config.native.js.map +1 -0
  376. package/dist/esm/constants/accessibilityDirectMap.mjs +7 -0
  377. package/dist/esm/constants/accessibilityDirectMap.mjs.map +1 -0
  378. package/dist/esm/constants/accessibilityDirectMap.native.js +7 -0
  379. package/dist/esm/constants/accessibilityDirectMap.native.js.map +1 -0
  380. package/dist/esm/constants/constants.mjs +12 -0
  381. package/dist/esm/constants/constants.mjs.map +1 -0
  382. package/dist/esm/constants/constants.native.js +12 -0
  383. package/dist/esm/constants/constants.native.js.map +1 -0
  384. package/dist/esm/constants/isDevTools.mjs +10 -0
  385. package/dist/esm/constants/isDevTools.mjs.map +1 -0
  386. package/dist/esm/constants/isDevTools.native.js +10 -0
  387. package/dist/esm/constants/isDevTools.native.js.map +1 -0
  388. package/dist/esm/contexts/ComponentContext.mjs +15 -0
  389. package/dist/esm/contexts/ComponentContext.mjs.map +1 -0
  390. package/dist/esm/contexts/ComponentContext.native.js +15 -0
  391. package/dist/esm/contexts/ComponentContext.native.js.map +1 -0
  392. package/dist/esm/contexts/GroupContext.mjs +4 -0
  393. package/dist/esm/contexts/GroupContext.mjs.map +1 -0
  394. package/dist/esm/contexts/GroupContext.native.js +4 -0
  395. package/dist/esm/contexts/GroupContext.native.js.map +1 -0
  396. package/dist/esm/createComponent.mjs +1013 -0
  397. package/dist/esm/createComponent.mjs.map +1 -0
  398. package/dist/esm/createComponent.native.js +990 -0
  399. package/dist/esm/createComponent.native.js.map +1 -0
  400. package/dist/esm/createFont.mjs +23 -0
  401. package/dist/esm/createFont.mjs.map +1 -0
  402. package/dist/esm/createFont.native.js +25 -0
  403. package/dist/esm/createFont.native.js.map +1 -0
  404. package/dist/esm/createHanzogui.mjs +228 -0
  405. package/dist/esm/createHanzogui.mjs.map +1 -0
  406. package/dist/esm/createHanzogui.native.js +276 -0
  407. package/dist/esm/createHanzogui.native.js.map +1 -0
  408. package/dist/esm/createShorthands.mjs +5 -0
  409. package/dist/esm/createShorthands.mjs.map +1 -0
  410. package/dist/esm/createShorthands.native.js +5 -0
  411. package/dist/esm/createShorthands.native.js.map +1 -0
  412. package/dist/esm/createTokens.mjs +6 -0
  413. package/dist/esm/createTokens.mjs.map +1 -0
  414. package/dist/esm/createTokens.native.js +7 -0
  415. package/dist/esm/createTokens.native.js.map +1 -0
  416. package/dist/esm/createVariable.mjs +87 -0
  417. package/dist/esm/createVariable.mjs.map +1 -0
  418. package/dist/esm/createVariable.native.js +103 -0
  419. package/dist/esm/createVariable.native.js.map +1 -0
  420. package/dist/esm/createVariables.mjs +49 -0
  421. package/dist/esm/createVariables.mjs.map +1 -0
  422. package/dist/esm/createVariables.native.js +55 -0
  423. package/dist/esm/createVariables.native.js.map +1 -0
  424. package/dist/esm/defaultComponentState.mjs +20 -0
  425. package/dist/esm/defaultComponentState.mjs.map +1 -0
  426. package/dist/esm/defaultComponentState.native.js +20 -0
  427. package/dist/esm/defaultComponentState.native.js.map +1 -0
  428. package/dist/esm/eventHandling.mjs +21 -0
  429. package/dist/esm/eventHandling.mjs.map +1 -0
  430. package/dist/esm/eventHandling.native.js +163 -0
  431. package/dist/esm/eventHandling.native.js.map +1 -0
  432. package/dist/esm/helpers/consoleLog.native.js +4 -0
  433. package/dist/esm/helpers/consoleLog.native.js.map +1 -0
  434. package/dist/esm/helpers/createDesignSystem.mjs +157 -0
  435. package/dist/esm/helpers/createDesignSystem.mjs.map +1 -0
  436. package/dist/esm/helpers/createDesignSystem.native.js +202 -0
  437. package/dist/esm/helpers/createDesignSystem.native.js.map +1 -0
  438. package/dist/esm/helpers/createMediaStyle.mjs +100 -0
  439. package/dist/esm/helpers/createMediaStyle.mjs.map +1 -0
  440. package/dist/esm/helpers/createMediaStyle.native.js +110 -0
  441. package/dist/esm/helpers/createMediaStyle.native.js.map +1 -0
  442. package/dist/esm/helpers/createStyledContext.mjs +65 -0
  443. package/dist/esm/helpers/createStyledContext.mjs.map +1 -0
  444. package/dist/esm/helpers/createStyledContext.native.js +70 -0
  445. package/dist/esm/helpers/createStyledContext.native.js.map +1 -0
  446. package/dist/esm/helpers/defaultAnimationDriver.mjs +20 -0
  447. package/dist/esm/helpers/defaultAnimationDriver.mjs.map +1 -0
  448. package/dist/esm/helpers/defaultAnimationDriver.native.js +36 -0
  449. package/dist/esm/helpers/defaultAnimationDriver.native.js.map +1 -0
  450. package/dist/esm/helpers/defaultOffset.mjs +6 -0
  451. package/dist/esm/helpers/defaultOffset.mjs.map +1 -0
  452. package/dist/esm/helpers/defaultOffset.native.js +6 -0
  453. package/dist/esm/helpers/defaultOffset.native.js.map +1 -0
  454. package/dist/esm/helpers/expandStyle.mjs +44 -0
  455. package/dist/esm/helpers/expandStyle.mjs.map +1 -0
  456. package/dist/esm/helpers/expandStyle.native.js +124 -0
  457. package/dist/esm/helpers/expandStyle.native.js.map +1 -0
  458. package/dist/esm/helpers/expandStyles.mjs +16 -0
  459. package/dist/esm/helpers/expandStyles.mjs.map +1 -0
  460. package/dist/esm/helpers/expandStyles.native.js +23 -0
  461. package/dist/esm/helpers/expandStyles.native.js.map +1 -0
  462. package/dist/esm/helpers/getCSSStylesAtomic.mjs +190 -0
  463. package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -0
  464. package/dist/esm/helpers/getCSSStylesAtomic.native.js +8 -0
  465. package/dist/esm/helpers/getCSSStylesAtomic.native.js.map +1 -0
  466. package/dist/esm/helpers/getDefaultProps.mjs +18 -0
  467. package/dist/esm/helpers/getDefaultProps.mjs.map +1 -0
  468. package/dist/esm/helpers/getDefaultProps.native.js +19 -0
  469. package/dist/esm/helpers/getDefaultProps.native.js.map +1 -0
  470. package/dist/esm/helpers/getDynamicVal.mjs +44 -0
  471. package/dist/esm/helpers/getDynamicVal.mjs.map +1 -0
  472. package/dist/esm/helpers/getDynamicVal.native.js +45 -0
  473. package/dist/esm/helpers/getDynamicVal.native.js.map +1 -0
  474. package/dist/esm/helpers/getExpandedShorthands.mjs +16 -0
  475. package/dist/esm/helpers/getExpandedShorthands.mjs.map +1 -0
  476. package/dist/esm/helpers/getExpandedShorthands.native.js +17 -0
  477. package/dist/esm/helpers/getExpandedShorthands.native.js.map +1 -0
  478. package/dist/esm/helpers/getFontLanguage.mjs +3 -0
  479. package/dist/esm/helpers/getFontLanguage.mjs.map +1 -0
  480. package/dist/esm/helpers/getFontLanguage.native.js +5 -0
  481. package/dist/esm/helpers/getFontLanguage.native.js.map +1 -0
  482. package/dist/esm/helpers/getGroupPropParts.mjs +29 -0
  483. package/dist/esm/helpers/getGroupPropParts.mjs.map +1 -0
  484. package/dist/esm/helpers/getGroupPropParts.native.js +31 -0
  485. package/dist/esm/helpers/getGroupPropParts.native.js.map +1 -0
  486. package/dist/esm/helpers/getShorthandValue.mjs +8 -0
  487. package/dist/esm/helpers/getShorthandValue.mjs.map +1 -0
  488. package/dist/esm/helpers/getShorthandValue.native.js +9 -0
  489. package/dist/esm/helpers/getShorthandValue.native.js.map +1 -0
  490. package/dist/esm/helpers/getSplitStyles.mjs +859 -0
  491. package/dist/esm/helpers/getSplitStyles.mjs.map +1 -0
  492. package/dist/esm/helpers/getSplitStyles.native.js +877 -0
  493. package/dist/esm/helpers/getSplitStyles.native.js.map +1 -0
  494. package/dist/esm/helpers/getThemeCSSRules.mjs +109 -0
  495. package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -0
  496. package/dist/esm/helpers/getThemeCSSRules.native.js +5 -0
  497. package/dist/esm/helpers/getThemeCSSRules.native.js.map +1 -0
  498. package/dist/esm/helpers/getTokenForKey.mjs +146 -0
  499. package/dist/esm/helpers/getTokenForKey.mjs.map +1 -0
  500. package/dist/esm/helpers/getTokenForKey.native.js +155 -0
  501. package/dist/esm/helpers/getTokenForKey.native.js.map +1 -0
  502. package/dist/esm/helpers/getVariantExtras.mjs +55 -0
  503. package/dist/esm/helpers/getVariantExtras.mjs.map +1 -0
  504. package/dist/esm/helpers/getVariantExtras.native.js +56 -0
  505. package/dist/esm/helpers/getVariantExtras.native.js.map +1 -0
  506. package/dist/esm/helpers/insertStyleRule.mjs +201 -0
  507. package/dist/esm/helpers/insertStyleRule.mjs.map +1 -0
  508. package/dist/esm/helpers/insertStyleRule.native.js +69 -0
  509. package/dist/esm/helpers/insertStyleRule.native.js.map +1 -0
  510. package/dist/esm/helpers/isActivePlatform.mjs +14 -0
  511. package/dist/esm/helpers/isActivePlatform.mjs.map +1 -0
  512. package/dist/esm/helpers/isActivePlatform.native.js +14 -0
  513. package/dist/esm/helpers/isActivePlatform.native.js.map +1 -0
  514. package/dist/esm/helpers/isActiveTheme.mjs +6 -0
  515. package/dist/esm/helpers/isActiveTheme.mjs.map +1 -0
  516. package/dist/esm/helpers/isActiveTheme.native.js +6 -0
  517. package/dist/esm/helpers/isActiveTheme.native.js.map +1 -0
  518. package/dist/esm/helpers/isHanzoguiComponent.mjs +6 -0
  519. package/dist/esm/helpers/isHanzoguiComponent.mjs.map +1 -0
  520. package/dist/esm/helpers/isHanzoguiComponent.native.js +6 -0
  521. package/dist/esm/helpers/isHanzoguiComponent.native.js.map +1 -0
  522. package/dist/esm/helpers/isHanzoguiElement.mjs +7 -0
  523. package/dist/esm/helpers/isHanzoguiElement.mjs.map +1 -0
  524. package/dist/esm/helpers/isHanzoguiElement.native.js +7 -0
  525. package/dist/esm/helpers/isHanzoguiElement.native.js.map +1 -0
  526. package/dist/esm/helpers/isObj.mjs +3 -0
  527. package/dist/esm/helpers/isObj.mjs.map +1 -0
  528. package/dist/esm/helpers/isObj.native.js +10 -0
  529. package/dist/esm/helpers/isObj.native.js.map +1 -0
  530. package/dist/esm/helpers/log.mjs +14 -0
  531. package/dist/esm/helpers/log.mjs.map +1 -0
  532. package/dist/esm/helpers/log.native.js +15 -0
  533. package/dist/esm/helpers/log.native.js.map +1 -0
  534. package/dist/esm/helpers/mainThreadPressEvents.mjs +3 -0
  535. package/dist/esm/helpers/mainThreadPressEvents.mjs.map +1 -0
  536. package/dist/esm/helpers/mainThreadPressEvents.native.js +105 -0
  537. package/dist/esm/helpers/mainThreadPressEvents.native.js.map +1 -0
  538. package/dist/esm/helpers/matchMedia.mjs +12 -0
  539. package/dist/esm/helpers/matchMedia.mjs.map +1 -0
  540. package/dist/esm/helpers/matchMedia.native.js +33 -0
  541. package/dist/esm/helpers/matchMedia.native.js.map +1 -0
  542. package/dist/esm/helpers/mediaObjectToString.mjs +26 -0
  543. package/dist/esm/helpers/mediaObjectToString.mjs.map +1 -0
  544. package/dist/esm/helpers/mediaObjectToString.native.js +29 -0
  545. package/dist/esm/helpers/mediaObjectToString.native.js.map +1 -0
  546. package/dist/esm/helpers/mediaState.mjs +20 -0
  547. package/dist/esm/helpers/mediaState.mjs.map +1 -0
  548. package/dist/esm/helpers/mediaState.native.js +22 -0
  549. package/dist/esm/helpers/mediaState.native.js.map +1 -0
  550. package/dist/esm/helpers/mergeProps.mjs +53 -0
  551. package/dist/esm/helpers/mergeProps.mjs.map +1 -0
  552. package/dist/esm/helpers/mergeProps.native.js +58 -0
  553. package/dist/esm/helpers/mergeProps.native.js.map +1 -0
  554. package/dist/esm/helpers/mergeRenderElementProps.mjs +10 -0
  555. package/dist/esm/helpers/mergeRenderElementProps.mjs.map +1 -0
  556. package/dist/esm/helpers/mergeRenderElementProps.native.js +10 -0
  557. package/dist/esm/helpers/mergeRenderElementProps.native.js.map +1 -0
  558. package/dist/esm/helpers/mergeSlotStyleProps.mjs +27 -0
  559. package/dist/esm/helpers/mergeSlotStyleProps.mjs.map +1 -0
  560. package/dist/esm/helpers/mergeSlotStyleProps.native.js +27 -0
  561. package/dist/esm/helpers/mergeSlotStyleProps.native.js.map +1 -0
  562. package/dist/esm/helpers/mergeVariants.mjs +27 -0
  563. package/dist/esm/helpers/mergeVariants.mjs.map +1 -0
  564. package/dist/esm/helpers/mergeVariants.native.js +28 -0
  565. package/dist/esm/helpers/mergeVariants.native.js.map +1 -0
  566. package/dist/esm/helpers/nativeOnlyProps.mjs +37 -0
  567. package/dist/esm/helpers/nativeOnlyProps.mjs.map +1 -0
  568. package/dist/esm/helpers/nativeOnlyProps.native.js +37 -0
  569. package/dist/esm/helpers/nativeOnlyProps.native.js.map +1 -0
  570. package/dist/esm/helpers/normalizeColor.mjs +21 -0
  571. package/dist/esm/helpers/normalizeColor.mjs.map +1 -0
  572. package/dist/esm/helpers/normalizeColor.native.js +23 -0
  573. package/dist/esm/helpers/normalizeColor.native.js.map +1 -0
  574. package/dist/esm/helpers/normalizeShadow.mjs +25 -0
  575. package/dist/esm/helpers/normalizeShadow.mjs.map +1 -0
  576. package/dist/esm/helpers/normalizeShadow.native.js +26 -0
  577. package/dist/esm/helpers/normalizeShadow.native.js.map +1 -0
  578. package/dist/esm/helpers/normalizeStyle.mjs +29 -0
  579. package/dist/esm/helpers/normalizeStyle.mjs.map +1 -0
  580. package/dist/esm/helpers/normalizeStyle.native.js +30 -0
  581. package/dist/esm/helpers/normalizeStyle.native.js.map +1 -0
  582. package/dist/esm/helpers/normalizeStylePropKeys.mjs +3 -0
  583. package/dist/esm/helpers/normalizeStylePropKeys.mjs.map +1 -0
  584. package/dist/esm/helpers/normalizeStylePropKeys.native.js +14 -0
  585. package/dist/esm/helpers/normalizeStylePropKeys.native.js.map +1 -0
  586. package/dist/esm/helpers/normalizeValueWithProperty.mjs +29 -0
  587. package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +1 -0
  588. package/dist/esm/helpers/normalizeValueWithProperty.native.js +35 -0
  589. package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +1 -0
  590. package/dist/esm/helpers/objectIdentityKey.mjs +21 -0
  591. package/dist/esm/helpers/objectIdentityKey.mjs.map +1 -0
  592. package/dist/esm/helpers/objectIdentityKey.native.js +26 -0
  593. package/dist/esm/helpers/objectIdentityKey.native.js.map +1 -0
  594. package/dist/esm/helpers/parseBorderShorthand.mjs +5 -0
  595. package/dist/esm/helpers/parseBorderShorthand.mjs.map +1 -0
  596. package/dist/esm/helpers/parseBorderShorthand.native.js +58 -0
  597. package/dist/esm/helpers/parseBorderShorthand.native.js.map +1 -0
  598. package/dist/esm/helpers/parseNativeStyle.mjs +142 -0
  599. package/dist/esm/helpers/parseNativeStyle.mjs.map +1 -0
  600. package/dist/esm/helpers/parseNativeStyle.native.js +162 -0
  601. package/dist/esm/helpers/parseNativeStyle.native.js.map +1 -0
  602. package/dist/esm/helpers/parseOutlineShorthand.mjs +5 -0
  603. package/dist/esm/helpers/parseOutlineShorthand.mjs.map +1 -0
  604. package/dist/esm/helpers/parseOutlineShorthand.native.js +52 -0
  605. package/dist/esm/helpers/parseOutlineShorthand.native.js.map +1 -0
  606. package/dist/esm/helpers/platformResolveValue.mjs +13 -0
  607. package/dist/esm/helpers/platformResolveValue.mjs.map +1 -0
  608. package/dist/esm/helpers/platformResolveValue.native.js +46 -0
  609. package/dist/esm/helpers/platformResolveValue.native.js.map +1 -0
  610. package/dist/esm/helpers/pointerEvents.mjs +3 -0
  611. package/dist/esm/helpers/pointerEvents.mjs.map +1 -0
  612. package/dist/esm/helpers/pointerEvents.native.js +127 -0
  613. package/dist/esm/helpers/pointerEvents.native.js.map +1 -0
  614. package/dist/esm/helpers/propMapper.mjs +230 -0
  615. package/dist/esm/helpers/propMapper.mjs.map +1 -0
  616. package/dist/esm/helpers/propMapper.native.js +301 -0
  617. package/dist/esm/helpers/propMapper.native.js.map +1 -0
  618. package/dist/esm/helpers/proxyThemeToParents.mjs +37 -0
  619. package/dist/esm/helpers/proxyThemeToParents.mjs.map +1 -0
  620. package/dist/esm/helpers/proxyThemeToParents.native.js +132 -0
  621. package/dist/esm/helpers/proxyThemeToParents.native.js.map +1 -0
  622. package/dist/esm/helpers/proxyThemeVariables.mjs +13 -0
  623. package/dist/esm/helpers/proxyThemeVariables.mjs.map +1 -0
  624. package/dist/esm/helpers/proxyThemeVariables.native.js +15 -0
  625. package/dist/esm/helpers/proxyThemeVariables.native.js.map +1 -0
  626. package/dist/esm/helpers/pseudoDescriptors.mjs +54 -0
  627. package/dist/esm/helpers/pseudoDescriptors.mjs.map +1 -0
  628. package/dist/esm/helpers/pseudoDescriptors.native.js +54 -0
  629. package/dist/esm/helpers/pseudoDescriptors.native.js.map +1 -0
  630. package/dist/esm/helpers/pseudoTransitions.mjs +57 -0
  631. package/dist/esm/helpers/pseudoTransitions.mjs.map +1 -0
  632. package/dist/esm/helpers/pseudoTransitions.native.js +59 -0
  633. package/dist/esm/helpers/pseudoTransitions.native.js.map +1 -0
  634. package/dist/esm/helpers/registerCSSVariable.mjs +50 -0
  635. package/dist/esm/helpers/registerCSSVariable.mjs.map +1 -0
  636. package/dist/esm/helpers/registerCSSVariable.native.js +51 -0
  637. package/dist/esm/helpers/registerCSSVariable.native.js.map +1 -0
  638. package/dist/esm/helpers/resolveAnimationDriver.mjs +12 -0
  639. package/dist/esm/helpers/resolveAnimationDriver.mjs.map +1 -0
  640. package/dist/esm/helpers/resolveAnimationDriver.native.js +13 -0
  641. package/dist/esm/helpers/resolveAnimationDriver.native.js.map +1 -0
  642. package/dist/esm/helpers/resolveCompoundTokens.mjs +16 -0
  643. package/dist/esm/helpers/resolveCompoundTokens.mjs.map +1 -0
  644. package/dist/esm/helpers/resolveCompoundTokens.native.js +16 -0
  645. package/dist/esm/helpers/resolveCompoundTokens.native.js.map +1 -0
  646. package/dist/esm/helpers/resolveRem.mjs +8 -0
  647. package/dist/esm/helpers/resolveRem.mjs.map +1 -0
  648. package/dist/esm/helpers/resolveRem.native.js +30 -0
  649. package/dist/esm/helpers/resolveRem.native.js.map +1 -0
  650. package/dist/esm/helpers/resolveSafeArea.mjs +11 -0
  651. package/dist/esm/helpers/resolveSafeArea.mjs.map +1 -0
  652. package/dist/esm/helpers/resolveSafeArea.native.js +18 -0
  653. package/dist/esm/helpers/resolveSafeArea.native.js.map +1 -0
  654. package/dist/esm/helpers/setElementProps.mjs +6 -0
  655. package/dist/esm/helpers/setElementProps.mjs.map +1 -0
  656. package/dist/esm/helpers/setElementProps.native.js +11 -0
  657. package/dist/esm/helpers/setElementProps.native.js.map +1 -0
  658. package/dist/esm/helpers/skipProps.mjs +21 -0
  659. package/dist/esm/helpers/skipProps.mjs.map +1 -0
  660. package/dist/esm/helpers/skipProps.native.js +21 -0
  661. package/dist/esm/helpers/skipProps.native.js.map +1 -0
  662. package/dist/esm/helpers/sortString.mjs +3 -0
  663. package/dist/esm/helpers/sortString.mjs.map +1 -0
  664. package/dist/esm/helpers/sortString.native.js +5 -0
  665. package/dist/esm/helpers/sortString.native.js.map +1 -0
  666. package/dist/esm/helpers/subscribeToContextGroup.mjs +84 -0
  667. package/dist/esm/helpers/subscribeToContextGroup.mjs.map +1 -0
  668. package/dist/esm/helpers/subscribeToContextGroup.native.js +129 -0
  669. package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -0
  670. package/dist/esm/helpers/themeable.mjs +79 -0
  671. package/dist/esm/helpers/themeable.mjs.map +1 -0
  672. package/dist/esm/helpers/themeable.native.js +80 -0
  673. package/dist/esm/helpers/themeable.native.js.map +1 -0
  674. package/dist/esm/helpers/themes.mjs +21 -0
  675. package/dist/esm/helpers/themes.mjs.map +1 -0
  676. package/dist/esm/helpers/themes.native.js +21 -0
  677. package/dist/esm/helpers/themes.native.js.map +1 -0
  678. package/dist/esm/helpers/timer.mjs +9 -0
  679. package/dist/esm/helpers/timer.mjs.map +1 -0
  680. package/dist/esm/helpers/timer.native.js +9 -0
  681. package/dist/esm/helpers/timer.native.js.map +1 -0
  682. package/dist/esm/helpers/transformsToString.mjs +18 -0
  683. package/dist/esm/helpers/transformsToString.mjs.map +1 -0
  684. package/dist/esm/helpers/transformsToString.native.js +18 -0
  685. package/dist/esm/helpers/transformsToString.native.js.map +1 -0
  686. package/dist/esm/helpers/useRenderElement.mjs +26 -0
  687. package/dist/esm/helpers/useRenderElement.mjs.map +1 -0
  688. package/dist/esm/helpers/useRenderElement.native.js +31 -0
  689. package/dist/esm/helpers/useRenderElement.native.js.map +1 -0
  690. package/dist/esm/helpers/webPropsToSkip.mjs +3 -0
  691. package/dist/esm/helpers/webPropsToSkip.mjs.map +1 -0
  692. package/dist/esm/helpers/webPropsToSkip.native.js +50 -0
  693. package/dist/esm/helpers/webPropsToSkip.native.js.map +1 -0
  694. package/dist/esm/helpers/wrapStyleTags.mjs +17 -0
  695. package/dist/esm/helpers/wrapStyleTags.mjs.map +1 -0
  696. package/dist/esm/helpers/wrapStyleTags.native.js +5 -0
  697. package/dist/esm/helpers/wrapStyleTags.native.js.map +1 -0
  698. package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs +5 -0
  699. package/dist/esm/hooks/doesRootSchemeMatchSystem.mjs.map +1 -0
  700. package/dist/esm/hooks/doesRootSchemeMatchSystem.native.js +8 -0
  701. package/dist/esm/hooks/doesRootSchemeMatchSystem.native.js.map +1 -0
  702. package/dist/esm/hooks/getThemeProxied.mjs +53 -0
  703. package/dist/esm/hooks/getThemeProxied.mjs.map +1 -0
  704. package/dist/esm/hooks/getThemeProxied.native.js +79 -0
  705. package/dist/esm/hooks/getThemeProxied.native.js.map +1 -0
  706. package/dist/esm/hooks/useComponentState.mjs +170 -0
  707. package/dist/esm/hooks/useComponentState.mjs.map +1 -0
  708. package/dist/esm/hooks/useComponentState.native.js +181 -0
  709. package/dist/esm/hooks/useComponentState.native.js.map +1 -0
  710. package/dist/esm/hooks/useDisableSSR.mjs +6 -0
  711. package/dist/esm/hooks/useDisableSSR.mjs.map +1 -0
  712. package/dist/esm/hooks/useDisableSSR.native.js +7 -0
  713. package/dist/esm/hooks/useDisableSSR.native.js.map +1 -0
  714. package/dist/esm/hooks/useIsTouchDevice.mjs +7 -0
  715. package/dist/esm/hooks/useIsTouchDevice.mjs.map +1 -0
  716. package/dist/esm/hooks/useIsTouchDevice.native.js +7 -0
  717. package/dist/esm/hooks/useIsTouchDevice.native.js.map +1 -0
  718. package/dist/esm/hooks/useMedia.mjs +201 -0
  719. package/dist/esm/hooks/useMedia.mjs.map +1 -0
  720. package/dist/esm/hooks/useMedia.native.js +229 -0
  721. package/dist/esm/hooks/useMedia.native.js.map +1 -0
  722. package/dist/esm/hooks/useProps.mjs +82 -0
  723. package/dist/esm/hooks/useProps.mjs.map +1 -0
  724. package/dist/esm/hooks/useProps.native.js +84 -0
  725. package/dist/esm/hooks/useProps.native.js.map +1 -0
  726. package/dist/esm/hooks/useTheme.mjs +31 -0
  727. package/dist/esm/hooks/useTheme.mjs.map +1 -0
  728. package/dist/esm/hooks/useTheme.native.js +32 -0
  729. package/dist/esm/hooks/useTheme.native.js.map +1 -0
  730. package/dist/esm/hooks/useThemeName.mjs +14 -0
  731. package/dist/esm/hooks/useThemeName.mjs.map +1 -0
  732. package/dist/esm/hooks/useThemeName.native.js +17 -0
  733. package/dist/esm/hooks/useThemeName.native.js.map +1 -0
  734. package/dist/esm/hooks/useThemeState.mjs +306 -0
  735. package/dist/esm/hooks/useThemeState.mjs.map +1 -0
  736. package/dist/esm/hooks/useThemeState.native.js +409 -0
  737. package/dist/esm/hooks/useThemeState.native.js.map +1 -0
  738. package/dist/esm/index.js +74 -0
  739. package/dist/esm/index.js.map +1 -0
  740. package/dist/esm/index.mjs +74 -0
  741. package/dist/esm/index.mjs.map +1 -0
  742. package/dist/esm/index.native.js +74 -0
  743. package/dist/esm/index.native.js.map +1 -0
  744. package/dist/esm/inject-styles.mjs +17 -0
  745. package/dist/esm/inject-styles.mjs.map +1 -0
  746. package/dist/esm/inject-styles.native.js +18 -0
  747. package/dist/esm/inject-styles.native.js.map +1 -0
  748. package/dist/esm/insertFont.mjs +55 -0
  749. package/dist/esm/insertFont.mjs.map +1 -0
  750. package/dist/esm/insertFont.native.js +49 -0
  751. package/dist/esm/insertFont.native.js.map +1 -0
  752. package/dist/esm/interfaces/CSSColorNames.mjs +2 -0
  753. package/dist/esm/interfaces/CSSColorNames.mjs.map +1 -0
  754. package/dist/esm/interfaces/CSSColorNames.native.js +2 -0
  755. package/dist/esm/interfaces/CSSColorNames.native.js.map +1 -0
  756. package/dist/esm/interfaces/GetRef.mjs +2 -0
  757. package/dist/esm/interfaces/GetRef.mjs.map +1 -0
  758. package/dist/esm/interfaces/GetRef.native.js +2 -0
  759. package/dist/esm/interfaces/GetRef.native.js.map +1 -0
  760. package/dist/esm/interfaces/HanzoguiComponentEvents.mjs +2 -0
  761. package/dist/esm/interfaces/HanzoguiComponentEvents.mjs.map +1 -0
  762. package/dist/esm/interfaces/HanzoguiComponentEvents.native.js +2 -0
  763. package/dist/esm/interfaces/HanzoguiComponentEvents.native.js.map +1 -0
  764. package/dist/esm/interfaces/HanzoguiComponentPropsBaseBase.mjs +2 -0
  765. package/dist/esm/interfaces/HanzoguiComponentPropsBaseBase.mjs.map +1 -0
  766. package/dist/esm/interfaces/HanzoguiComponentPropsBaseBase.native.js +2 -0
  767. package/dist/esm/interfaces/HanzoguiComponentPropsBaseBase.native.js.map +1 -0
  768. package/dist/esm/interfaces/RNExclusiveTypes.mjs +2 -0
  769. package/dist/esm/interfaces/RNExclusiveTypes.mjs.map +1 -0
  770. package/dist/esm/interfaces/RNExclusiveTypes.native.js +2 -0
  771. package/dist/esm/interfaces/RNExclusiveTypes.native.js.map +1 -0
  772. package/dist/esm/setupHooks.mjs +6 -0
  773. package/dist/esm/setupHooks.mjs.map +1 -0
  774. package/dist/esm/setupHooks.native.js +6 -0
  775. package/dist/esm/setupHooks.native.js.map +1 -0
  776. package/dist/esm/setupReactNative.mjs +29 -0
  777. package/dist/esm/setupReactNative.mjs.map +1 -0
  778. package/dist/esm/setupReactNative.native.js +30 -0
  779. package/dist/esm/setupReactNative.native.js.map +1 -0
  780. package/dist/esm/styled.mjs +133 -0
  781. package/dist/esm/styled.mjs.map +1 -0
  782. package/dist/esm/styled.native.js +136 -0
  783. package/dist/esm/styled.native.js.map +1 -0
  784. package/dist/esm/styledHtml.test-d.mjs +188 -0
  785. package/dist/esm/styledHtml.test-d.mjs.map +1 -0
  786. package/dist/esm/styledHtml.test-d.native.js +188 -0
  787. package/dist/esm/styledHtml.test-d.native.js.map +1 -0
  788. package/dist/esm/type-utils.mjs +2 -0
  789. package/dist/esm/type-utils.mjs.map +1 -0
  790. package/dist/esm/type-utils.native.js +2 -0
  791. package/dist/esm/type-utils.native.js.map +1 -0
  792. package/dist/esm/types.mjs +2 -0
  793. package/dist/esm/types.mjs.map +1 -0
  794. package/dist/esm/types.native.js +2 -0
  795. package/dist/esm/types.native.js.map +1 -0
  796. package/dist/esm/views/Configuration.mjs +16 -0
  797. package/dist/esm/views/Configuration.mjs.map +1 -0
  798. package/dist/esm/views/Configuration.native.js +17 -0
  799. package/dist/esm/views/Configuration.native.js.map +1 -0
  800. package/dist/esm/views/FontLanguage.mjs +16 -0
  801. package/dist/esm/views/FontLanguage.mjs.map +1 -0
  802. package/dist/esm/views/FontLanguage.native.js +20 -0
  803. package/dist/esm/views/FontLanguage.native.js.map +1 -0
  804. package/dist/esm/views/HanzoguiProvider.mjs +67 -0
  805. package/dist/esm/views/HanzoguiProvider.mjs.map +1 -0
  806. package/dist/esm/views/HanzoguiProvider.native.js +69 -0
  807. package/dist/esm/views/HanzoguiProvider.native.js.map +1 -0
  808. package/dist/esm/views/HanzoguiRoot.mjs +43 -0
  809. package/dist/esm/views/HanzoguiRoot.mjs.map +1 -0
  810. package/dist/esm/views/HanzoguiRoot.native.js +5 -0
  811. package/dist/esm/views/HanzoguiRoot.native.js.map +1 -0
  812. package/dist/esm/views/Slot.mjs +56 -0
  813. package/dist/esm/views/Slot.mjs.map +1 -0
  814. package/dist/esm/views/Slot.native.js +57 -0
  815. package/dist/esm/views/Slot.native.js.map +1 -0
  816. package/dist/esm/views/Text.mjs +36 -0
  817. package/dist/esm/views/Text.mjs.map +1 -0
  818. package/dist/esm/views/Text.native.js +25 -0
  819. package/dist/esm/views/Text.native.js.map +1 -0
  820. package/dist/esm/views/Theme.mjs +161 -0
  821. package/dist/esm/views/Theme.mjs.map +1 -0
  822. package/dist/esm/views/Theme.native.js +167 -0
  823. package/dist/esm/views/Theme.native.js.map +1 -0
  824. package/dist/esm/views/ThemeDebug.mjs +73 -0
  825. package/dist/esm/views/ThemeDebug.mjs.map +1 -0
  826. package/dist/esm/views/ThemeDebug.native.js +11 -0
  827. package/dist/esm/views/ThemeDebug.native.js.map +1 -0
  828. package/dist/esm/views/ThemeProvider.mjs +30 -0
  829. package/dist/esm/views/ThemeProvider.mjs.map +1 -0
  830. package/dist/esm/views/ThemeProvider.native.js +20 -0
  831. package/dist/esm/views/ThemeProvider.native.js.map +1 -0
  832. package/dist/esm/views/View.mjs +8 -0
  833. package/dist/esm/views/View.mjs.map +1 -0
  834. package/dist/esm/views/View.native.js +8 -0
  835. package/dist/esm/views/View.native.js.map +1 -0
  836. package/inject-styles/index.cjs +2 -0
  837. package/inject-styles/index.js +2 -0
  838. package/inject-styles.cjs +1 -0
  839. package/package.json +81 -0
  840. package/reset.css +59 -0
  841. package/src/Hanzogui.ts +47 -0
  842. package/src/_withStableStyle.tsx +62 -0
  843. package/src/animationDriverTypes.test-d.ts +332 -0
  844. package/src/config.ts +232 -0
  845. package/src/constants/accessibilityDirectMap.native.tsx +10 -0
  846. package/src/constants/accessibilityDirectMap.tsx +11 -0
  847. package/src/constants/constants.ts +16 -0
  848. package/src/constants/isDevTools.ts +12 -0
  849. package/src/contexts/ComponentContext.tsx +16 -0
  850. package/src/contexts/GroupContext.tsx +4 -0
  851. package/src/createComponent.tsx +1844 -0
  852. package/src/createFont.ts +50 -0
  853. package/src/createHanzogui.ts +371 -0
  854. package/src/createShorthands.ts +7 -0
  855. package/src/createTokens.ts +31 -0
  856. package/src/createVariable.ts +121 -0
  857. package/src/createVariables.ts +78 -0
  858. package/src/defaultComponentState.tsx +22 -0
  859. package/src/eventHandling.native.ts +227 -0
  860. package/src/eventHandling.ts +46 -0
  861. package/src/helpers/consoleLog.native.ts +2 -0
  862. package/src/helpers/createDesignSystem.ts +264 -0
  863. package/src/helpers/createMediaStyle.ts +167 -0
  864. package/src/helpers/createStyledContext.tsx +98 -0
  865. package/src/helpers/defaultAnimationDriver.tsx +24 -0
  866. package/src/helpers/defaultOffset.ts +1 -0
  867. package/src/helpers/expandStyle.ts +204 -0
  868. package/src/helpers/expandStyles.ts +42 -0
  869. package/src/helpers/getCSSStylesAtomic.native.ts +7 -0
  870. package/src/helpers/getCSSStylesAtomic.ts +263 -0
  871. package/src/helpers/getDefaultProps.ts +28 -0
  872. package/src/helpers/getDynamicVal.ts +63 -0
  873. package/src/helpers/getExpandedShorthands.ts +23 -0
  874. package/src/helpers/getFontLanguage.ts +2 -0
  875. package/src/helpers/getGroupPropParts.ts +46 -0
  876. package/src/helpers/getShorthandValue.ts +9 -0
  877. package/src/helpers/getSplitStyles.tsx +1869 -0
  878. package/src/helpers/getThemeCSSRules.native.ts +3 -0
  879. package/src/helpers/getThemeCSSRules.ts +192 -0
  880. package/src/helpers/getTokenForKey.ts +236 -0
  881. package/src/helpers/getVariantExtras.tsx +67 -0
  882. package/src/helpers/insertStyleRule.tsx +365 -0
  883. package/src/helpers/isActivePlatform.ts +43 -0
  884. package/src/helpers/isActiveTheme.ts +4 -0
  885. package/src/helpers/isHanzoguiComponent.tsx +11 -0
  886. package/src/helpers/isHanzoguiElement.tsx +11 -0
  887. package/src/helpers/isObj.ts +1 -0
  888. package/src/helpers/log.ts +17 -0
  889. package/src/helpers/mainThreadPressEvents.native.ts +137 -0
  890. package/src/helpers/mainThreadPressEvents.ts +7 -0
  891. package/src/helpers/matchMedia.native.ts +34 -0
  892. package/src/helpers/matchMedia.ts +17 -0
  893. package/src/helpers/mediaObjectToString.ts +30 -0
  894. package/src/helpers/mediaState.ts +32 -0
  895. package/src/helpers/mergeProps.ts +121 -0
  896. package/src/helpers/mergeRenderElementProps.ts +17 -0
  897. package/src/helpers/mergeSlotStyleProps.ts +46 -0
  898. package/src/helpers/mergeVariants.ts +40 -0
  899. package/src/helpers/nativeOnlyProps.ts +38 -0
  900. package/src/helpers/normalizeColor.native.ts +29 -0
  901. package/src/helpers/normalizeColor.ts +29 -0
  902. package/src/helpers/normalizeShadow.native.ts +20 -0
  903. package/src/helpers/normalizeShadow.ts +21 -0
  904. package/src/helpers/normalizeStyle.ts +42 -0
  905. package/src/helpers/normalizeStylePropKeys.native.ts +12 -0
  906. package/src/helpers/normalizeStylePropKeys.ts +3 -0
  907. package/src/helpers/normalizeValueWithProperty.ts +41 -0
  908. package/src/helpers/objectIdentityKey.tsx +20 -0
  909. package/src/helpers/parseBorderShorthand.native.ts +74 -0
  910. package/src/helpers/parseBorderShorthand.ts +6 -0
  911. package/src/helpers/parseNativeStyle.ts +193 -0
  912. package/src/helpers/parseOutlineShorthand.native.ts +62 -0
  913. package/src/helpers/parseOutlineShorthand.ts +6 -0
  914. package/src/helpers/platformResolveValue.native.ts +72 -0
  915. package/src/helpers/platformResolveValue.ts +22 -0
  916. package/src/helpers/pointerEvents.native.ts +143 -0
  917. package/src/helpers/pointerEvents.ts +9 -0
  918. package/src/helpers/propMapper.ts +404 -0
  919. package/src/helpers/proxyThemeToParents.ts +52 -0
  920. package/src/helpers/proxyThemeVariables.tsx +13 -0
  921. package/src/helpers/pseudoDescriptors.ts +74 -0
  922. package/src/helpers/pseudoTransitions.ts +97 -0
  923. package/src/helpers/registerCSSVariable.ts +54 -0
  924. package/src/helpers/resolveAnimationDriver.ts +23 -0
  925. package/src/helpers/resolveCompoundTokens.ts +28 -0
  926. package/src/helpers/resolveRem.native.ts +44 -0
  927. package/src/helpers/resolveRem.ts +17 -0
  928. package/src/helpers/resolveSafeArea.native.ts +18 -0
  929. package/src/helpers/resolveSafeArea.ts +10 -0
  930. package/src/helpers/setElementProps.native.tsx +9 -0
  931. package/src/helpers/setElementProps.tsx +5 -0
  932. package/src/helpers/skipProps.ts +35 -0
  933. package/src/helpers/sortString.ts +1 -0
  934. package/src/helpers/subscribeToContextGroup.tsx +99 -0
  935. package/src/helpers/themeable.tsx +104 -0
  936. package/src/helpers/themes.ts +23 -0
  937. package/src/helpers/timer.ts +9 -0
  938. package/src/helpers/transformsToString.ts +20 -0
  939. package/src/helpers/useRenderElement.tsx +73 -0
  940. package/src/helpers/webPropsToSkip.native.ts +56 -0
  941. package/src/helpers/webPropsToSkip.ts +1 -0
  942. package/src/helpers/wrapStyleTags.tsx +31 -0
  943. package/src/hooks/doesRootSchemeMatchSystem.native.ts +7 -0
  944. package/src/hooks/doesRootSchemeMatchSystem.ts +4 -0
  945. package/src/hooks/getThemeProxied.ts +202 -0
  946. package/src/hooks/useComponentState.ts +269 -0
  947. package/src/hooks/useDisableSSR.tsx +6 -0
  948. package/src/hooks/useIsTouchDevice.tsx +6 -0
  949. package/src/hooks/useMedia.tsx +298 -0
  950. package/src/hooks/useProps.tsx +158 -0
  951. package/src/hooks/useTheme.tsx +48 -0
  952. package/src/hooks/useThemeName.tsx +10 -0
  953. package/src/hooks/useThemeState.ts +559 -0
  954. package/src/index.ts +103 -0
  955. package/src/inject-styles.ts +20 -0
  956. package/src/insertFont.ts +81 -0
  957. package/src/interfaces/CSSColorNames.tsx +149 -0
  958. package/src/interfaces/GetRef.tsx +24 -0
  959. package/src/interfaces/HanzoguiComponentEvents.tsx +18 -0
  960. package/src/interfaces/HanzoguiComponentPropsBaseBase.tsx +124 -0
  961. package/src/interfaces/RNExclusiveTypes.ts +59 -0
  962. package/src/setupHooks.ts +27 -0
  963. package/src/setupReactNative.ts +60 -0
  964. package/src/styled.tsx +602 -0
  965. package/src/styledHtml.test-d.ts +286 -0
  966. package/src/type-utils.ts +30 -0
  967. package/src/types.tsx +3372 -0
  968. package/src/views/Configuration.tsx +20 -0
  969. package/src/views/FontLanguage.native.tsx +13 -0
  970. package/src/views/FontLanguage.tsx +18 -0
  971. package/src/views/HanzoguiProvider.tsx +95 -0
  972. package/src/views/HanzoguiRoot.native.tsx +9 -0
  973. package/src/views/HanzoguiRoot.tsx +64 -0
  974. package/src/views/Slot.tsx +86 -0
  975. package/src/views/Text.tsx +72 -0
  976. package/src/views/Theme.tsx +246 -0
  977. package/src/views/ThemeDebug.native.tsx +17 -0
  978. package/src/views/ThemeDebug.tsx +95 -0
  979. package/src/views/ThemeProvider.tsx +45 -0
  980. package/src/views/View.tsx +25 -0
  981. package/tsconfig.json +44 -0
  982. package/tsconfig.test.json +9 -0
  983. package/types/Hanzogui.d.ts +15 -0
  984. package/types/Hanzogui.d.ts.map +1 -0
  985. package/types/_withStableStyle.d.ts +3 -0
  986. package/types/_withStableStyle.d.ts.map +1 -0
  987. package/types/config.d.ts +72 -0
  988. package/types/config.d.ts.map +1 -0
  989. package/types/constants/accessibilityDirectMap.d.ts +6 -0
  990. package/types/constants/accessibilityDirectMap.d.ts.map +1 -0
  991. package/types/constants/accessibilityDirectMap.native.d.ts +6 -0
  992. package/types/constants/accessibilityDirectMap.native.d.ts.map +1 -0
  993. package/types/constants/constants.d.ts +5 -0
  994. package/types/constants/constants.d.ts.map +1 -0
  995. package/types/constants/isDevTools.d.ts +2 -0
  996. package/types/constants/isDevTools.d.ts.map +1 -0
  997. package/types/contexts/ComponentContext.d.ts +4 -0
  998. package/types/contexts/ComponentContext.d.ts.map +1 -0
  999. package/types/contexts/GroupContext.d.ts +3 -0
  1000. package/types/contexts/GroupContext.d.ts.map +1 -0
  1001. package/types/createComponent.d.ts +7 -0
  1002. package/types/createComponent.d.ts.map +1 -0
  1003. package/types/createFont.d.ts +3 -0
  1004. package/types/createFont.d.ts.map +1 -0
  1005. package/types/createHanzogui.d.ts +3 -0
  1006. package/types/createHanzogui.d.ts.map +1 -0
  1007. package/types/createShorthands.d.ts +3 -0
  1008. package/types/createShorthands.d.ts.map +1 -0
  1009. package/types/createTokens.d.ts +22 -0
  1010. package/types/createTokens.d.ts.map +1 -0
  1011. package/types/createVariable.d.ts +22 -0
  1012. package/types/createVariable.d.ts.map +1 -0
  1013. package/types/createVariables.d.ts +10 -0
  1014. package/types/createVariables.d.ts.map +1 -0
  1015. package/types/defaultComponentState.d.ts +5 -0
  1016. package/types/defaultComponentState.d.ts.map +1 -0
  1017. package/types/eventHandling.d.ts +27 -0
  1018. package/types/eventHandling.d.ts.map +1 -0
  1019. package/types/eventHandling.native.d.ts +12 -0
  1020. package/types/eventHandling.native.d.ts.map +1 -0
  1021. package/types/helpers/consoleLog.native.d.ts +7 -0
  1022. package/types/helpers/consoleLog.native.d.ts.map +1 -0
  1023. package/types/helpers/createDesignSystem.d.ts +47 -0
  1024. package/types/helpers/createDesignSystem.d.ts.map +1 -0
  1025. package/types/helpers/createMediaStyle.d.ts +5 -0
  1026. package/types/helpers/createMediaStyle.d.ts.map +1 -0
  1027. package/types/helpers/createStyledContext.d.ts +3 -0
  1028. package/types/helpers/createStyledContext.d.ts.map +1 -0
  1029. package/types/helpers/defaultAnimationDriver.d.ts +3 -0
  1030. package/types/helpers/defaultAnimationDriver.d.ts.map +1 -0
  1031. package/types/helpers/defaultOffset.d.ts +5 -0
  1032. package/types/helpers/defaultOffset.d.ts.map +1 -0
  1033. package/types/helpers/expandStyle.d.ts +7 -0
  1034. package/types/helpers/expandStyle.d.ts.map +1 -0
  1035. package/types/helpers/expandStyles.d.ts +2 -0
  1036. package/types/helpers/expandStyles.d.ts.map +1 -0
  1037. package/types/helpers/getCSSStylesAtomic.d.ts +11 -0
  1038. package/types/helpers/getCSSStylesAtomic.d.ts.map +1 -0
  1039. package/types/helpers/getCSSStylesAtomic.native.d.ts +4 -0
  1040. package/types/helpers/getCSSStylesAtomic.native.d.ts.map +1 -0
  1041. package/types/helpers/getDefaultProps.d.ts +3 -0
  1042. package/types/helpers/getDefaultProps.d.ts.map +1 -0
  1043. package/types/helpers/getDynamicVal.d.ts +16 -0
  1044. package/types/helpers/getDynamicVal.d.ts.map +1 -0
  1045. package/types/helpers/getExpandedShorthands.d.ts +7 -0
  1046. package/types/helpers/getExpandedShorthands.d.ts.map +1 -0
  1047. package/types/helpers/getFontLanguage.d.ts +2 -0
  1048. package/types/helpers/getFontLanguage.d.ts.map +1 -0
  1049. package/types/helpers/getGroupPropParts.d.ts +7 -0
  1050. package/types/helpers/getGroupPropParts.d.ts.map +1 -0
  1051. package/types/helpers/getShorthandValue.d.ts +2 -0
  1052. package/types/helpers/getShorthandValue.d.ts.map +1 -0
  1053. package/types/helpers/getSplitStyles.d.ts +13 -0
  1054. package/types/helpers/getSplitStyles.d.ts.map +1 -0
  1055. package/types/helpers/getThemeCSSRules.d.ts +10 -0
  1056. package/types/helpers/getThemeCSSRules.d.ts.map +1 -0
  1057. package/types/helpers/getThemeCSSRules.native.d.ts +2 -0
  1058. package/types/helpers/getThemeCSSRules.native.d.ts.map +1 -0
  1059. package/types/helpers/getTokenForKey.d.ts +6 -0
  1060. package/types/helpers/getTokenForKey.d.ts.map +1 -0
  1061. package/types/helpers/getVariantExtras.d.ts +4 -0
  1062. package/types/helpers/getVariantExtras.d.ts.map +1 -0
  1063. package/types/helpers/insertStyleRule.d.ts +10 -0
  1064. package/types/helpers/insertStyleRule.d.ts.map +1 -0
  1065. package/types/helpers/isActivePlatform.d.ts +16 -0
  1066. package/types/helpers/isActivePlatform.d.ts.map +1 -0
  1067. package/types/helpers/isActiveTheme.d.ts +2 -0
  1068. package/types/helpers/isActiveTheme.d.ts.map +1 -0
  1069. package/types/helpers/isHanzoguiComponent.d.ts +5 -0
  1070. package/types/helpers/isHanzoguiComponent.d.ts.map +1 -0
  1071. package/types/helpers/isHanzoguiElement.d.ts +8 -0
  1072. package/types/helpers/isHanzoguiElement.d.ts.map +1 -0
  1073. package/types/helpers/isObj.d.ts +2 -0
  1074. package/types/helpers/isObj.d.ts.map +1 -0
  1075. package/types/helpers/log.d.ts +2 -0
  1076. package/types/helpers/log.d.ts.map +1 -0
  1077. package/types/helpers/mainThreadPressEvents.d.ts +2 -0
  1078. package/types/helpers/mainThreadPressEvents.d.ts.map +1 -0
  1079. package/types/helpers/mainThreadPressEvents.native.d.ts +9 -0
  1080. package/types/helpers/mainThreadPressEvents.native.d.ts.map +1 -0
  1081. package/types/helpers/matchMedia.d.ts +6 -0
  1082. package/types/helpers/matchMedia.d.ts.map +1 -0
  1083. package/types/helpers/matchMedia.native.d.ts +4 -0
  1084. package/types/helpers/matchMedia.native.d.ts.map +1 -0
  1085. package/types/helpers/mediaObjectToString.d.ts +3 -0
  1086. package/types/helpers/mediaObjectToString.d.ts.map +1 -0
  1087. package/types/helpers/mediaState.d.ts +7 -0
  1088. package/types/helpers/mediaState.d.ts.map +1 -0
  1089. package/types/helpers/mergeProps.d.ts +20 -0
  1090. package/types/helpers/mergeProps.d.ts.map +1 -0
  1091. package/types/helpers/mergeRenderElementProps.d.ts +7 -0
  1092. package/types/helpers/mergeRenderElementProps.d.ts.map +1 -0
  1093. package/types/helpers/mergeSlotStyleProps.d.ts +10 -0
  1094. package/types/helpers/mergeSlotStyleProps.d.ts.map +1 -0
  1095. package/types/helpers/mergeVariants.d.ts +3 -0
  1096. package/types/helpers/mergeVariants.d.ts.map +1 -0
  1097. package/types/helpers/nativeOnlyProps.d.ts +39 -0
  1098. package/types/helpers/nativeOnlyProps.d.ts.map +1 -0
  1099. package/types/helpers/normalizeColor.d.ts +8 -0
  1100. package/types/helpers/normalizeColor.d.ts.map +1 -0
  1101. package/types/helpers/normalizeColor.native.d.ts +9 -0
  1102. package/types/helpers/normalizeColor.native.d.ts.map +1 -0
  1103. package/types/helpers/normalizeShadow.d.ts +10 -0
  1104. package/types/helpers/normalizeShadow.d.ts.map +1 -0
  1105. package/types/helpers/normalizeShadow.native.d.ts +10 -0
  1106. package/types/helpers/normalizeShadow.native.d.ts.map +1 -0
  1107. package/types/helpers/normalizeStyle.d.ts +9 -0
  1108. package/types/helpers/normalizeStyle.d.ts.map +1 -0
  1109. package/types/helpers/normalizeStylePropKeys.d.ts +2 -0
  1110. package/types/helpers/normalizeStylePropKeys.d.ts.map +1 -0
  1111. package/types/helpers/normalizeStylePropKeys.native.d.ts +13 -0
  1112. package/types/helpers/normalizeStylePropKeys.native.d.ts.map +1 -0
  1113. package/types/helpers/normalizeValueWithProperty.d.ts +6 -0
  1114. package/types/helpers/normalizeValueWithProperty.d.ts.map +1 -0
  1115. package/types/helpers/objectIdentityKey.d.ts +2 -0
  1116. package/types/helpers/objectIdentityKey.d.ts.map +1 -0
  1117. package/types/helpers/parseBorderShorthand.d.ts +3 -0
  1118. package/types/helpers/parseBorderShorthand.d.ts.map +1 -0
  1119. package/types/helpers/parseBorderShorthand.native.d.ts +3 -0
  1120. package/types/helpers/parseBorderShorthand.native.d.ts.map +1 -0
  1121. package/types/helpers/parseNativeStyle.d.ts +14 -0
  1122. package/types/helpers/parseNativeStyle.d.ts.map +1 -0
  1123. package/types/helpers/parseOutlineShorthand.d.ts +3 -0
  1124. package/types/helpers/parseOutlineShorthand.d.ts.map +1 -0
  1125. package/types/helpers/parseOutlineShorthand.native.d.ts +3 -0
  1126. package/types/helpers/parseOutlineShorthand.native.d.ts.map +1 -0
  1127. package/types/helpers/platformResolveValue.d.ts +6 -0
  1128. package/types/helpers/platformResolveValue.d.ts.map +1 -0
  1129. package/types/helpers/platformResolveValue.native.d.ts +7 -0
  1130. package/types/helpers/platformResolveValue.native.d.ts.map +1 -0
  1131. package/types/helpers/pointerEvents.d.ts +8 -0
  1132. package/types/helpers/pointerEvents.d.ts.map +1 -0
  1133. package/types/helpers/pointerEvents.native.d.ts +2 -0
  1134. package/types/helpers/pointerEvents.native.d.ts.map +1 -0
  1135. package/types/helpers/propMapper.d.ts +5 -0
  1136. package/types/helpers/propMapper.d.ts.map +1 -0
  1137. package/types/helpers/proxyThemeToParents.d.ts +4 -0
  1138. package/types/helpers/proxyThemeToParents.d.ts.map +1 -0
  1139. package/types/helpers/proxyThemeVariables.d.ts +2 -0
  1140. package/types/helpers/proxyThemeVariables.d.ts.map +1 -0
  1141. package/types/helpers/pseudoDescriptors.d.ts +51 -0
  1142. package/types/helpers/pseudoDescriptors.d.ts.map +1 -0
  1143. package/types/helpers/pseudoTransitions.d.ts +29 -0
  1144. package/types/helpers/pseudoTransitions.d.ts.map +1 -0
  1145. package/types/helpers/registerCSSVariable.d.ts +9 -0
  1146. package/types/helpers/registerCSSVariable.d.ts.map +1 -0
  1147. package/types/helpers/resolveAnimationDriver.d.ts +7 -0
  1148. package/types/helpers/resolveAnimationDriver.d.ts.map +1 -0
  1149. package/types/helpers/resolveCompoundTokens.d.ts +9 -0
  1150. package/types/helpers/resolveCompoundTokens.d.ts.map +1 -0
  1151. package/types/helpers/resolveRem.d.ts +13 -0
  1152. package/types/helpers/resolveRem.d.ts.map +1 -0
  1153. package/types/helpers/resolveRem.native.d.ts +13 -0
  1154. package/types/helpers/resolveRem.native.d.ts.map +1 -0
  1155. package/types/helpers/resolveSafeArea.d.ts +2 -0
  1156. package/types/helpers/resolveSafeArea.d.ts.map +1 -0
  1157. package/types/helpers/resolveSafeArea.native.d.ts +2 -0
  1158. package/types/helpers/resolveSafeArea.native.d.ts.map +1 -0
  1159. package/types/helpers/setElementProps.d.ts +2 -0
  1160. package/types/helpers/setElementProps.d.ts.map +1 -0
  1161. package/types/helpers/setElementProps.native.d.ts +2 -0
  1162. package/types/helpers/setElementProps.native.d.ts.map +1 -0
  1163. package/types/helpers/skipProps.d.ts +19 -0
  1164. package/types/helpers/skipProps.d.ts.map +1 -0
  1165. package/types/helpers/sortString.d.ts +2 -0
  1166. package/types/helpers/sortString.d.ts.map +1 -0
  1167. package/types/helpers/subscribeToContextGroup.d.ts +10 -0
  1168. package/types/helpers/subscribeToContextGroup.d.ts.map +1 -0
  1169. package/types/helpers/themeable.d.ts +3 -0
  1170. package/types/helpers/themeable.d.ts.map +1 -0
  1171. package/types/helpers/themes.d.ts +2 -0
  1172. package/types/helpers/themes.d.ts.map +1 -0
  1173. package/types/helpers/timer.d.ts +2 -0
  1174. package/types/helpers/timer.d.ts.map +1 -0
  1175. package/types/helpers/transformsToString.d.ts +2 -0
  1176. package/types/helpers/transformsToString.d.ts.map +1 -0
  1177. package/types/helpers/useRenderElement.d.ts +13 -0
  1178. package/types/helpers/useRenderElement.d.ts.map +1 -0
  1179. package/types/helpers/webPropsToSkip.d.ts +2 -0
  1180. package/types/helpers/webPropsToSkip.d.ts.map +1 -0
  1181. package/types/helpers/webPropsToSkip.native.d.ts +104 -0
  1182. package/types/helpers/webPropsToSkip.native.d.ts.map +1 -0
  1183. package/types/helpers/wrapStyleTags.d.ts +3 -0
  1184. package/types/helpers/wrapStyleTags.d.ts.map +1 -0
  1185. package/types/hooks/doesRootSchemeMatchSystem.d.ts +2 -0
  1186. package/types/hooks/doesRootSchemeMatchSystem.d.ts.map +1 -0
  1187. package/types/hooks/doesRootSchemeMatchSystem.native.d.ts +2 -0
  1188. package/types/hooks/doesRootSchemeMatchSystem.native.d.ts.map +1 -0
  1189. package/types/hooks/getThemeProxied.d.ts +23 -0
  1190. package/types/hooks/getThemeProxied.d.ts.map +1 -0
  1191. package/types/hooks/useComponentState.d.ts +25 -0
  1192. package/types/hooks/useComponentState.d.ts.map +1 -0
  1193. package/types/hooks/useDisableSSR.d.ts +3 -0
  1194. package/types/hooks/useDisableSSR.d.ts.map +1 -0
  1195. package/types/hooks/useIsTouchDevice.d.ts +2 -0
  1196. package/types/hooks/useIsTouchDevice.d.ts.map +1 -0
  1197. package/types/hooks/useMedia.d.ts +23 -0
  1198. package/types/hooks/useMedia.d.ts.map +1 -0
  1199. package/types/hooks/useProps.d.ts +41 -0
  1200. package/types/hooks/useProps.d.ts.map +1 -0
  1201. package/types/hooks/useTheme.d.ts +9 -0
  1202. package/types/hooks/useTheme.d.ts.map +1 -0
  1203. package/types/hooks/useThemeName.d.ts +3 -0
  1204. package/types/hooks/useThemeName.d.ts.map +1 -0
  1205. package/types/hooks/useThemeState.d.ts +11 -0
  1206. package/types/hooks/useThemeState.d.ts.map +1 -0
  1207. package/types/index.d.ts +77 -0
  1208. package/types/index.d.ts.map +1 -0
  1209. package/types/inject-styles.d.ts +7 -0
  1210. package/types/inject-styles.d.ts.map +1 -0
  1211. package/types/insertFont.d.ts +10 -0
  1212. package/types/insertFont.d.ts.map +1 -0
  1213. package/types/interfaces/CSSColorNames.d.ts +2 -0
  1214. package/types/interfaces/CSSColorNames.d.ts.map +1 -0
  1215. package/types/interfaces/GetRef.d.ts +6 -0
  1216. package/types/interfaces/GetRef.d.ts.map +1 -0
  1217. package/types/interfaces/HanzoguiComponentEvents.d.ts +19 -0
  1218. package/types/interfaces/HanzoguiComponentEvents.d.ts.map +1 -0
  1219. package/types/interfaces/HanzoguiComponentPropsBaseBase.d.ts +95 -0
  1220. package/types/interfaces/HanzoguiComponentPropsBaseBase.d.ts.map +1 -0
  1221. package/types/interfaces/RNExclusiveTypes.d.ts +22 -0
  1222. package/types/interfaces/RNExclusiveTypes.d.ts.map +1 -0
  1223. package/types/setupHooks.d.ts +17 -0
  1224. package/types/setupHooks.d.ts.map +1 -0
  1225. package/types/setupReactNative.d.ts +5 -0
  1226. package/types/setupReactNative.d.ts.map +1 -0
  1227. package/types/styled.d.ts +53 -0
  1228. package/types/styled.d.ts.map +1 -0
  1229. package/types/type-utils.d.ts +13 -0
  1230. package/types/type-utils.d.ts.map +1 -0
  1231. package/types/types.d.ts +1936 -0
  1232. package/types/types.d.ts.map +1 -0
  1233. package/types/views/Configuration.d.ts +10 -0
  1234. package/types/views/Configuration.d.ts.map +1 -0
  1235. package/types/views/FontLanguage.d.ts +6 -0
  1236. package/types/views/FontLanguage.d.ts.map +1 -0
  1237. package/types/views/FontLanguage.native.d.ts +3 -0
  1238. package/types/views/FontLanguage.native.d.ts.map +1 -0
  1239. package/types/views/HanzoguiProvider.d.ts +3 -0
  1240. package/types/views/HanzoguiProvider.d.ts.map +1 -0
  1241. package/types/views/HanzoguiRoot.d.ts +15 -0
  1242. package/types/views/HanzoguiRoot.d.ts.map +1 -0
  1243. package/types/views/HanzoguiRoot.native.d.ts +7 -0
  1244. package/types/views/HanzoguiRoot.native.d.ts.map +1 -0
  1245. package/types/views/Slot.d.ts +13 -0
  1246. package/types/views/Slot.d.ts.map +1 -0
  1247. package/types/views/Text.d.ts +4 -0
  1248. package/types/views/Text.d.ts.map +1 -0
  1249. package/types/views/Theme.d.ts +16 -0
  1250. package/types/views/Theme.d.ts.map +1 -0
  1251. package/types/views/ThemeDebug.d.ts +10 -0
  1252. package/types/views/ThemeDebug.d.ts.map +1 -0
  1253. package/types/views/ThemeDebug.native.d.ts +10 -0
  1254. package/types/views/ThemeDebug.native.d.ts.map +1 -0
  1255. package/types/views/ThemeProvider.d.ts +3 -0
  1256. package/types/views/ThemeProvider.d.ts.map +1 -0
  1257. package/types/views/View.d.ts +8 -0
  1258. package/types/views/View.d.ts.map +1 -0
  1259. package/vitest.config.d.ts +3 -0
  1260. package/vitest.config.d.ts.map +1 -0
  1261. package/vitest.config.ts +14 -0
@@ -0,0 +1,1936 @@
1
+ import type { StyleObject } from '@hanzogui/helpers';
2
+ import type { Properties } from 'csstype';
3
+ import type { CSSProperties, ComponentType, Context, ForwardRefExoticComponent, ForwardRefRenderFunction, FunctionComponent, HTMLAttributes, ProviderExoticComponent, ReactNode, RefAttributes, RefObject } from 'react';
4
+ import type { PressableProps, Text as RNText, TextStyle as RNTextStyle, TextProps as ReactTextProps, View, ViewProps, ViewStyle } from 'react-native';
5
+ import type { CSSColorNames } from './interfaces/CSSColorNames';
6
+ import type { RNOnlyProps } from './interfaces/RNExclusiveTypes';
7
+ export type SizeKeys = 'width' | 'height' | 'minWidth' | 'minHeight' | 'maxWidth' | 'maxHeight' | 'shadowRadius';
8
+ export type ColorKeys = 'color' | 'backgroundColor' | 'borderColor' | 'borderBottomColor' | 'borderTopColor' | 'borderLeftColor' | 'borderRightColor' | 'shadowColor' | 'outlineColor' | 'textShadowColor' | 'borderBlockColor' | 'borderBlockEndColor' | 'borderBlockStartColor' | 'borderInlineColor' | 'borderInlineStartColor' | 'borderInlineEndColor';
9
+ export type SpaceKeys = 'space' | 'padding' | 'paddingHorizontal' | 'paddingVertical' | 'paddingLeft' | 'paddingTop' | 'paddingBottom' | 'paddingLeft' | 'paddingRight' | 'paddingEnd' | 'paddingStart' | 'margin' | 'marginHorizontal' | 'marginVertical' | 'marginLeft' | 'marginTop' | 'marginBottom' | 'marginLeft' | 'marginRight' | 'marginEnd' | 'marginStart' | 'marginBlock' | 'marginBlockStart' | 'marginBlockEnd' | 'marginInline' | 'marginInlineStart' | 'marginInlineEnd' | 'paddingBlock' | 'paddingBlockStart' | 'paddingBlockEnd' | 'paddingInline' | 'paddingInlineStart' | 'paddingInlineEnd' | 'x' | 'y' | 'gap' | 'rowGap' | 'columnGap' | 'scale' | 'scaleX' | 'scaleY' | 'borderTopEndRadius' | 'borderTopLeftRadius' | 'borderTopRightRadius' | 'borderTopStartRadius' | 'borderBottomEndRadius' | 'borderBottomLeftRadius' | 'borderBottomRightRadius' | 'borderBottomStartRadius' | 'borderBottomWidth' | 'borderLeftWidth' | 'borderRadius' | 'borderRightWidth' | 'borderTopEndRadius' | 'borderTopLeftRadius' | 'borderTopRightRadius' | 'borderEndWidth' | 'borderStartWidth' | 'borderTopStartRadius' | 'borderTopWidth' | 'borderWidth' | 'left' | 'top' | 'right' | 'bottom' | 'shadowOffset' | 'borderBlockWidth' | 'borderBlockStartWidth' | 'borderBlockEndWidth' | 'borderInlineWidth' | 'borderInlineStartWidth' | 'borderInlineEndWidth';
10
+ export type StyledContext<Props extends Record<string, any> = any> = Context<Props> & {
11
+ context: Context<Props>;
12
+ props: Record<string, any> | undefined;
13
+ Provider: ProviderExoticComponent<Partial<Props | undefined> & {
14
+ children?: ReactNode;
15
+ scope?: string;
16
+ }>;
17
+ useStyledContext: (scope?: string) => Props;
18
+ };
19
+ export type HanzoguiComponentState = {
20
+ unmounted: boolean | 'should-enter';
21
+ disabled?: boolean;
22
+ hover?: boolean;
23
+ press?: boolean;
24
+ pressIn?: boolean;
25
+ focus?: boolean;
26
+ focusVisible?: boolean;
27
+ focusWithin?: boolean;
28
+ transition?: null | {
29
+ style?: any;
30
+ avoidClasses?: boolean;
31
+ };
32
+ group?: Record<string, ChildGroupState>;
33
+ hasDynGroupChildren?: boolean;
34
+ };
35
+ export type Role = 'alert' | 'alertdialog' | 'application' | 'article' | 'banner' | 'button' | 'cell' | 'checkbox' | 'columnheader' | 'combobox' | 'complementary' | 'contentinfo' | 'definition' | 'dialog' | 'directory' | 'document' | 'feed' | 'figure' | 'form' | 'grid' | 'group' | 'heading' | 'img' | 'link' | 'list' | 'listitem' | 'log' | 'main' | 'marquee' | 'math' | 'menu' | 'menubar' | 'menuitem' | 'meter' | 'navigation' | 'none' | 'note' | 'option' | 'presentation' | 'progressbar' | 'radio' | 'radiogroup' | 'region' | 'row' | 'rowgroup' | 'rowheader' | 'scrollbar' | 'searchbox' | 'separator' | 'slider' | 'spinbutton' | 'status' | 'summary' | 'switch' | 'tab' | 'table' | 'tablist' | 'tabpanel' | 'term' | 'timer' | 'toolbar' | 'tooltip' | 'tree' | 'treegrid' | 'treeitem';
36
+ export type HanzoguiComponentPropsBaseBase = {
37
+ target?: string;
38
+ htmlFor?: string;
39
+ /**
40
+ * When truthy passes through all props to a single child element, and avoids rendering its own element.
41
+ * Must pass just one child React element that will receive all the props.
42
+ *
43
+ * The option "except-style" will avoid passing any style related props.
44
+ *
45
+ * The option "web" will map all React Native style props to web props (onPress becomes onClick).
46
+ *
47
+ * The option "except-style-web" combines the except-style and web options.
48
+ *
49
+ */
50
+ asChild?: boolean | 'except-style' | 'except-style-web' | 'web';
51
+ dangerouslySetInnerHTML?: {
52
+ __html: string;
53
+ };
54
+ children?: any | any[];
55
+ debug?: DebugProp;
56
+ disabled?: boolean;
57
+ /**
58
+ * Same as the web className property, useful for applying styles from CSS on web only
59
+ */
60
+ className?: string;
61
+ /**
62
+ * If given a theme it will only apply to this element, instead of passing down to children
63
+ */
64
+ themeShallow?: boolean;
65
+ /**
66
+ * If true, component themes will not be applied
67
+ */
68
+ unstyled?: boolean;
69
+ /**
70
+ * Same as the web id property for setting a uid on an element
71
+ */
72
+ id?: string;
73
+ /**
74
+ * Controls the rendered element on web.
75
+ * - String: renders as that HTML element (e.g., `render="button"`)
76
+ * - JSX Element: clones element with merged props (e.g., `render={<a href="/" />}`)
77
+ * - Function: full control with props and state (e.g., `render={(props) => <Custom {...props} />}`)
78
+ * @example render="button"
79
+ * @example render={<a href="/" />}
80
+ * @example render={(props, state) => <MyComponent {...props} isPressed={state.press} />}
81
+ */
82
+ render?: keyof HTMLElementTagNameMap | (string & {}) | React.ReactElement | ((props: Record<string, any> & {
83
+ ref?: React.Ref<any>;
84
+ }, state: HanzoguiComponentState) => React.ReactElement);
85
+ /**
86
+ * Applies a theme to this element
87
+ */
88
+ theme?: ThemeName | null;
89
+ /**
90
+ * Marks this component as a group for use in styling children based on parents named group
91
+ * See: https://hanzogui.dev/docs/intro/props
92
+ */
93
+ group?: GroupNames | boolean;
94
+ /**
95
+ * Works only alongside group, when children of the group are using container based sizing on native you can hide them until parent is measured.
96
+ * See: https://hanzogui.dev/docs/intro/props
97
+ */
98
+ untilMeasured?: 'hide' | 'show';
99
+ /**
100
+ * Equivalent to "name" property on styled() for automatically applying a theme
101
+ */
102
+ componentName?: string;
103
+ /**
104
+ * Used for controlling the order of focus with keyboard or assistive device enavigation
105
+ * See https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex
106
+ */
107
+ tabIndex?: string | number;
108
+ /**
109
+ * Equivalent to role="" attribute on web for accessibility
110
+ */
111
+ role?: Role;
112
+ /**
113
+ * Disable all compiler optimization
114
+ */
115
+ disableOptimization?: boolean;
116
+ /**
117
+ * Forces the pseudo style state to be on
118
+ */
119
+ forceStyle?: 'hover' | 'press' | 'focus' | 'focusVisible' | 'focusWithin';
120
+ /**
121
+ * Disables className output of styles, instead using only inline styles
122
+ */
123
+ disableClassName?: boolean;
124
+ /**
125
+ * Adds some area outside the typical bounds of the component for touch actions to register.
126
+ * Hanzogui uses Pressable internally so it supports `number | Insets` rather than just `Insets`
127
+ */
128
+ hitSlop?: number | Insets | null;
129
+ /**
130
+ * Select which animation driver to use for this component.
131
+ * Pass a string key matching a driver registered in the `animations` config.
132
+ * Example: `<View animatedBy="spring">` when config has `animations: { default: css, spring: moti }`
133
+ */
134
+ animatedBy?: AnimationDriverKeys | null;
135
+ };
136
+ export interface Insets {
137
+ top?: number;
138
+ left?: number;
139
+ bottom?: number;
140
+ right?: number;
141
+ }
142
+ export interface WebOnlyPressEvents {
143
+ onPress?: PressableProps['onPress'];
144
+ onLongPress?: PressableProps['onLongPress'];
145
+ onPressIn?: PressableProps['onPress'];
146
+ onPressOut?: PressableProps['onPress'];
147
+ onMouseEnter?: DivAttributes['onMouseEnter'];
148
+ onMouseLeave?: DivAttributes['onMouseLeave'];
149
+ onMouseDown?: DivAttributes['onMouseDown'];
150
+ onMouseUp?: DivAttributes['onMouseUp'];
151
+ onMouseMove?: DivAttributes['onMouseMove'];
152
+ onMouseOver?: DivAttributes['onMouseOver'];
153
+ onMouseOut?: DivAttributes['onMouseOut'];
154
+ onFocus?: DivAttributes['onFocus'];
155
+ onBlur?: DivAttributes['onBlur'];
156
+ onClick?: DivAttributes['onClick'];
157
+ onDoubleClick?: DivAttributes['onDoubleClick'];
158
+ onContextMenu?: DivAttributes['onContextMenu'];
159
+ onWheel?: DivAttributes['onWheel'];
160
+ onKeyDown?: DivAttributes['onKeyDown'];
161
+ onKeyUp?: DivAttributes['onKeyUp'];
162
+ onChange?: DivAttributes['onChange'];
163
+ onInput?: DivAttributes['onInput'];
164
+ onBeforeInput?: DivAttributes['onBeforeInput'];
165
+ onScroll?: DivAttributes['onScroll'];
166
+ onCopy?: DivAttributes['onCopy'];
167
+ onCut?: DivAttributes['onCut'];
168
+ onPaste?: DivAttributes['onPaste'];
169
+ onDrag?: DivAttributes['onDrag'];
170
+ onDragStart?: DivAttributes['onDragStart'];
171
+ onDragEnd?: DivAttributes['onDragEnd'];
172
+ onDragEnter?: DivAttributes['onDragEnter'];
173
+ onDragLeave?: DivAttributes['onDragLeave'];
174
+ onDragOver?: DivAttributes['onDragOver'];
175
+ onDrop?: DivAttributes['onDrop'];
176
+ onPointerDown?: DivAttributes['onPointerDown'];
177
+ onPointerMove?: DivAttributes['onPointerMove'];
178
+ onPointerUp?: DivAttributes['onPointerUp'];
179
+ onPointerCancel?: DivAttributes['onPointerCancel'];
180
+ }
181
+ export type { MediaStyleObject, StyleObject } from '@hanzogui/helpers';
182
+ type FontFamilies = FontTokens extends `$${infer Token}` ? Token : never;
183
+ export type LanguageContextType = Partial<{
184
+ [key in FontFamilies]: FontLanguages | 'default';
185
+ }>;
186
+ export type FontLanguageProps = LanguageContextType & {
187
+ children?: React.ReactNode;
188
+ };
189
+ export type ThemeProviderProps = {
190
+ className?: string;
191
+ defaultTheme: string | null | undefined;
192
+ /** @deprecated moved to createHanzogui({ settings: { disableRootThemeClass } }) */
193
+ disableRootThemeClass?: boolean;
194
+ /** @deprecated moved to createHanzogui({ settings: { themeClassNameOnRoot } }) */
195
+ themeClassNameOnRoot?: boolean;
196
+ children?: any;
197
+ reset?: boolean;
198
+ };
199
+ export type ThemeState = {
200
+ id: string;
201
+ name: string;
202
+ theme: ThemeParsed;
203
+ parentName?: string;
204
+ isInverse?: boolean;
205
+ isNew?: boolean;
206
+ parentId?: string;
207
+ scheme?: 'light' | 'dark';
208
+ };
209
+ export interface Variable<A = any> {
210
+ isVar: true;
211
+ variable?: string;
212
+ val: A;
213
+ name: string;
214
+ key: string;
215
+ needsPx?: boolean;
216
+ }
217
+ export type MakeVariable<A = any> = A extends string | number ? Variable<A> : A;
218
+ /**
219
+ * Type for the px helper object that indicates a token value needs px units
220
+ */
221
+ export interface PxValue {
222
+ val: number;
223
+ needsPx: true;
224
+ }
225
+ export type ColorScheme = 'light' | 'dark';
226
+ export type IsMediaType = boolean | 'platform' | 'theme' | 'group';
227
+ export type MaybeHanzoguiComponent<A = any> = HanzoguiComponent<A> | React.FC<A>;
228
+ type MeasureOnSuccessCallback = (x: number, y: number, width: number, height: number, pageX: number, pageY: number) => void;
229
+ type MeasureInWindowOnSuccessCallback = (x: number, y: number, width: number, height: number) => void;
230
+ type MeasureLayoutOnSuccessCallback = (left: number, top: number, width: number, height: number) => void;
231
+ /**
232
+ * Methods added to element refs that work across web and native.
233
+ * On web these are added at runtime to HTMLElements.
234
+ * On native these exist on View already.
235
+ */
236
+ export interface HanzoguiElementMethods {
237
+ measure(callback: MeasureOnSuccessCallback): void;
238
+ measureInWindow(callback: MeasureInWindowOnSuccessCallback): void;
239
+ measureLayout(relativeToNativeNode: View | HTMLElement, onSuccess: MeasureLayoutOnSuccessCallback, onFail?: () => void): void;
240
+ focus(): void;
241
+ blur(): void;
242
+ }
243
+ /**
244
+ * Cross-platform element ref type. On web, includes HanzoguiElementMethods
245
+ * (measure, focus, blur) which Hanzogui adds at runtime. On native, View
246
+ * already has these via NativeMethods.
247
+ */
248
+ export type HanzoguiElement = (HTMLElement & HanzoguiElementMethods) | View;
249
+ export type HanzoguiTextElement = (HTMLElement & HanzoguiElementMethods) | RNText;
250
+ /**
251
+ * Web-specific element type for platform-specific .tsx files.
252
+ * Use when you need HTMLElement subtype properties (e.g., selectionStart on HTMLInputElement)
253
+ * that aren't on the cross-platform HanzoguiElement type.
254
+ *
255
+ * @example
256
+ * const ref = useRef<HanzoguiWebElement<HTMLInputElement>>(null)
257
+ * // ref.current has both HTMLInputElement props and HanzoguiElementMethods
258
+ */
259
+ export type HanzoguiWebElement<T extends HTMLElement = HTMLElement> = T & HanzoguiElementMethods;
260
+ export type DebugProp = boolean | 'break' | 'verbose' | 'visualize' | 'profile';
261
+ export interface HanzoguiComponentPropsBase extends HanzoguiComponentPropsBaseBase, WebOnlyPressEvents {
262
+ }
263
+ /**
264
+ * For static / studio
265
+ */
266
+ type NameToPaths = {
267
+ [key: string]: Set<string>;
268
+ };
269
+ export type LoadedComponents = {
270
+ moduleName: string;
271
+ nameToInfo: Record<string, {
272
+ staticConfig: StaticConfig;
273
+ }>;
274
+ };
275
+ export type HanzoguiProjectInfo = {
276
+ components: LoadedComponents[];
277
+ hanzoguiConfig: HanzoguiInternalConfig;
278
+ nameToPaths: NameToPaths;
279
+ };
280
+ export type DivAttributes = HTMLAttributes<HTMLDivElement>;
281
+ export type ReactComponentWithRef<Props, Ref> = ForwardRefExoticComponent<Props & RefAttributes<Ref>>;
282
+ export type ComponentSetStateShallow = React.Dispatch<React.SetStateAction<Partial<HanzoguiComponentState>>>;
283
+ export type ComponentContextI = {
284
+ disableSSR?: boolean;
285
+ inText: boolean;
286
+ language: LanguageContextType | null;
287
+ animationDriver: AnimationDriver | null;
288
+ setParentFocusState: ComponentSetStateShallow | null;
289
+ mediaEmit?: (state: UseMediaState) => void;
290
+ mediaEmitListeners?: Set<(state: UseMediaState) => void>;
291
+ insets?: {
292
+ top: number;
293
+ right: number;
294
+ bottom: number;
295
+ left: number;
296
+ } | null;
297
+ };
298
+ export type HanzoguiComponentStateRef = {
299
+ startedUnhydrated: boolean;
300
+ host?: HanzoguiElement;
301
+ composedRef?: (x: HanzoguiElement) => void;
302
+ willHydrate?: boolean;
303
+ hasMeasured?: boolean;
304
+ hasAnimated?: boolean;
305
+ themeShallow?: boolean;
306
+ hasEverThemed?: boolean | 'wrapped';
307
+ hasEverResetPresence?: boolean;
308
+ hasHadEvents?: boolean;
309
+ isListeningToTheme?: boolean;
310
+ unPress?: Function;
311
+ setStateShallow?: ComponentSetStateShallow;
312
+ useStyleListener?: UseStyleListener;
313
+ updateStyleListener?: () => void;
314
+ group?: ComponentGroupEmitter;
315
+ nextState?: HanzoguiComponentState;
316
+ nextMedia?: UseMediaState;
317
+ mediaEmitCleanup?: () => void;
318
+ prevPseudoState?: {
319
+ hover?: boolean;
320
+ press?: boolean;
321
+ focus?: boolean;
322
+ groups?: Record<string, {
323
+ hover?: boolean;
324
+ press?: boolean;
325
+ focus?: boolean;
326
+ }>;
327
+ };
328
+ };
329
+ export type ComponentGroupEmitter = {
330
+ listeners: Set<GroupStateListener>;
331
+ emit: GroupStateListener;
332
+ subscribe: (cb: GroupStateListener) => () => void;
333
+ };
334
+ export type WidthHeight = {
335
+ width: number;
336
+ height: number;
337
+ };
338
+ export type ChildGroupState = {
339
+ pseudo?: PseudoGroupState;
340
+ media?: Record<MediaQueryKey extends number ? never : MediaQueryKey, boolean>;
341
+ };
342
+ export type ComponentGroupState = {
343
+ pseudo?: PseudoGroupState;
344
+ layout?: WidthHeight;
345
+ };
346
+ export type GroupStateListener = (state: ComponentGroupState) => void;
347
+ export type SingleGroupContext = {
348
+ subscribe: (cb: GroupStateListener) => DisposeFn;
349
+ state: ComponentGroupState;
350
+ };
351
+ export type AllGroupContexts = {
352
+ [GroupName: string]: SingleGroupContext;
353
+ };
354
+ export type PseudoGroupState = Pick<HanzoguiComponentState, 'disabled' | 'hover' | 'press' | 'pressIn' | 'focus' | 'focusVisible' | 'focusWithin'>;
355
+ export type LayoutEvent = {
356
+ nativeEvent: {
357
+ layout: LayoutValue;
358
+ target: any;
359
+ };
360
+ timeStamp: number;
361
+ };
362
+ type LayoutValue = {
363
+ x: number;
364
+ y: number;
365
+ width: number;
366
+ height: number;
367
+ left: number;
368
+ top: number;
369
+ };
370
+ export type DisposeFn = () => void;
371
+ export type ConfigListener = (conf: HanzoguiInternalConfig) => void;
372
+ export type VariableVal = number | string | Variable | VariableValGeneric | PxValue;
373
+ export type VariableColorVal = string | Variable;
374
+ type GenericKey = string;
375
+ export type CreateTokens<Val extends VariableVal = VariableVal> = Record<string, {
376
+ [key: GenericKey]: Val;
377
+ }> & {
378
+ color?: {
379
+ [key: GenericKey]: Val;
380
+ };
381
+ space?: {
382
+ [key: GenericKey]: Val;
383
+ };
384
+ size?: {
385
+ [key: GenericKey]: Val;
386
+ };
387
+ radius?: {
388
+ [key: GenericKey]: Val;
389
+ };
390
+ zIndex?: {
391
+ [key: GenericKey]: Val;
392
+ };
393
+ };
394
+ export type TokenCategories = 'color' | 'space' | 'size' | 'radius' | 'zIndex';
395
+ type Tokenify<A extends GenericTokens> = Omit<{
396
+ [Key in keyof A]: TokenifyRecord<A[Key]>;
397
+ }, TokenCategories> & {
398
+ color: TokenifyRecord<A extends {
399
+ color: any;
400
+ } ? A['color'] : {}>;
401
+ space: TokenifyRecord<A extends {
402
+ space: any;
403
+ } ? A['space'] : {}>;
404
+ size: TokenifyRecord<A extends {
405
+ size: any;
406
+ } ? A['size'] : {}>;
407
+ radius: TokenifyRecord<A extends {
408
+ radius: any;
409
+ } ? A['radius'] : {}>;
410
+ zIndex: TokenifyRecord<A extends {
411
+ zIndex: any;
412
+ } ? A['zIndex'] : {}>;
413
+ };
414
+ type TokenifyRecord<A extends object> = {
415
+ [Key in keyof A]: CoerceToVariable<A[Key]>;
416
+ };
417
+ type CoerceToVariable<A> = A extends Variable ? A : Variable<A>;
418
+ export type HanzoguiBaseTheme = {
419
+ background: VariableColorVal;
420
+ backgroundHover: VariableColorVal;
421
+ backgroundPress: VariableColorVal;
422
+ backgroundFocus: VariableColorVal;
423
+ color: VariableColorVal;
424
+ colorHover: VariableColorVal;
425
+ colorPress: VariableColorVal;
426
+ colorFocus: VariableColorVal;
427
+ borderColor: VariableColorVal;
428
+ borderColorHover: VariableColorVal;
429
+ borderColorPress: VariableColorVal;
430
+ borderColorFocus: VariableColorVal;
431
+ shadowColor: VariableColorVal;
432
+ shadowColorHover: VariableColorVal;
433
+ shadowColorPress: VariableColorVal;
434
+ shadowColorFocus: VariableColorVal;
435
+ };
436
+ export type VariableValGeneric = {
437
+ __generic: 1;
438
+ };
439
+ type GenericTokens = CreateTokens;
440
+ type GenericThemes = {
441
+ [key: string]: Partial<HanzoguiBaseTheme> & {
442
+ [key: string]: VariableVal;
443
+ };
444
+ };
445
+ export type CreateShorthands = {
446
+ [key: string]: string;
447
+ };
448
+ export type GenericShorthands = {};
449
+ type GenericMedia = {
450
+ [key: string]: {
451
+ [key: string]: number | string;
452
+ };
453
+ };
454
+ export type GenericFonts = Record<string, GenericFont>;
455
+ type GenericAnimations = {
456
+ [key: string]: string | {
457
+ [key: string]: any;
458
+ } | any[];
459
+ };
460
+ export interface HanzoguiCustomConfig {
461
+ }
462
+ export interface HanzoguiConfig extends Omit<GenericHanzoguiConfig, keyof HanzoguiCustomConfig>, HanzoguiCustomConfig {
463
+ }
464
+ export type OnlyAllowShorthandsSetting = HanzoguiConfig['settings'] extends {
465
+ onlyAllowShorthands: infer X;
466
+ } ? X : false;
467
+ export type OnlyShorthandStylePropsSetting = HanzoguiConfig['settings'] extends {
468
+ onlyShorthandStyleProps: infer X;
469
+ } ? X : false;
470
+ export type CreateHanzoguiConfig<A extends GenericTokens, B extends GenericThemes, C extends GenericShorthands = GenericShorthands, D extends GenericMedia = GenericMedia, E extends GenericAnimations = GenericAnimations, F extends GenericFonts = GenericFonts, H extends GenericHanzoguiSettings = GenericHanzoguiSettings, AnimDriverKeys extends string = string> = {
471
+ fonts: RemoveLanguagePostfixes<F>;
472
+ fontLanguages: GetLanguagePostfixes<F> extends never ? string[] : GetLanguagePostfixes<F>[];
473
+ tokens: A;
474
+ themes: {
475
+ [Name in keyof B]: {
476
+ [Key in keyof B[Name]]: CoerceToVariable<B[Name][Key]>;
477
+ };
478
+ };
479
+ shorthands: C;
480
+ media: D;
481
+ animations: AnimationDriver<E> | AnimationsConfigObject;
482
+ animationDriverKeys?: AnimDriverKeys;
483
+ settings: H;
484
+ };
485
+ type GetLanguagePostfix<Set> = Set extends string ? Set extends `${string}_${infer Postfix}` ? Postfix : never : never;
486
+ type OmitLanguagePostfix<Set> = Set extends string ? Set extends `${infer Prefix}_${string}` ? Prefix : Set : never;
487
+ type RemoveLanguagePostfixes<F extends GenericFonts> = {
488
+ [Key in OmitLanguagePostfix<keyof F>]: F[Key];
489
+ };
490
+ type GetLanguagePostfixes<F extends GenericFonts> = GetLanguagePostfix<keyof F>;
491
+ type ConfProps<A, B, C, D, E, F, I> = {
492
+ tokens?: A;
493
+ themes?: B;
494
+ shorthands?: C;
495
+ media?: D;
496
+ animations?: E;
497
+ fonts?: F;
498
+ settings?: I;
499
+ };
500
+ type EmptyTokens = {
501
+ color: {};
502
+ space: {};
503
+ size: {};
504
+ radius: {};
505
+ zIndex: {};
506
+ };
507
+ type EmptyThemes = {};
508
+ type EmptyShorthands = {};
509
+ type EmptyMedia = {};
510
+ type EmptyAnimations = {};
511
+ type EmptyFonts = {};
512
+ type EmptyHanzoguiSettings = {
513
+ allowedStyleValues: false;
514
+ autocompleteSpecificTokens: 'except-special';
515
+ };
516
+ type ExtractAnimationConfig<E> = E extends AnimationDriver<infer Config> ? Config : E extends {
517
+ default: AnimationDriver<infer Config>;
518
+ } ? Config : E extends GenericAnimations ? E : EmptyAnimations;
519
+ type ExtractAnimationDriverKeys<E> = E extends AnimationDriver<any> ? 'default' : E extends {
520
+ default: AnimationDriver<any>;
521
+ } ? Extract<keyof E, string> : 'default';
522
+ export type InferHanzoguiConfig<Conf> = Conf extends ConfProps<infer A, infer B, infer C, infer D, infer E, infer F, infer H> ? HanzoguiInternalConfig<A extends GenericTokens ? A : EmptyTokens, B extends GenericThemes ? B : EmptyThemes, C extends GenericShorthands ? C : EmptyShorthands, D extends GenericMedia ? D : EmptyMedia, ExtractAnimationConfig<E>, F extends GenericFonts ? F : EmptyFonts, H extends GenericHanzoguiSettings ? H : EmptyHanzoguiSettings, ExtractAnimationDriverKeys<E>> : unknown;
523
+ export type GenericHanzoguiConfig = CreateHanzoguiConfig<GenericTokens, GenericThemes, GenericShorthands, GenericMedia, GenericAnimations, GenericFonts>;
524
+ type NonSubThemeNames<A extends string | number> = A extends `${string}_${string}` ? never : A;
525
+ type BaseThemeDefinitions = HanzoguiConfig['themes'][NonSubThemeNames<keyof HanzoguiConfig['themes']>];
526
+ type GenericThemeDefinition = HanzoguiConfig['themes'][keyof HanzoguiConfig['themes']];
527
+ export type ThemeDefinition = BaseThemeDefinitions extends never ? GenericThemeDefinition : BaseThemeDefinitions;
528
+ export type ThemeKeys = keyof ThemeDefinition;
529
+ export type ThemeParsed = {
530
+ [key in ThemeKeys]: CoerceToVariable<ThemeDefinition[key]>;
531
+ };
532
+ export type Tokens = HanzoguiConfig['tokens'];
533
+ export type TokensParsed = {
534
+ [Key in keyof Required<Tokens>]: TokenPrefixed<Tokens[Key]>;
535
+ };
536
+ type TokenPrefixed<A extends {
537
+ [key: string]: any;
538
+ }> = {
539
+ [Key in Ensure$Prefix<keyof A> | keyof A]: A[keyof A];
540
+ };
541
+ type Ensure$Prefix<A extends string | number | symbol> = A extends string | number | boolean ? A extends `$${string | number}` ? A : `$${A}` : never;
542
+ export type TokensMerged = TokensParsed & Tokens;
543
+ export type Shorthands = HanzoguiConfig['shorthands'];
544
+ export type Media = HanzoguiConfig['media'];
545
+ export type Themes = HanzoguiConfig['themes'];
546
+ export type ThemeName = Exclude<GetAltThemeNames<keyof Themes>, number>;
547
+ export type ThemeTokens = `$${ThemeKeys}`;
548
+ type GetAnimationsFromDriver<T> = T extends {
549
+ animations: infer A;
550
+ } ? Extract<keyof A, string> : never;
551
+ type GetAnimationsFromMultiDriver<T> = T extends {
552
+ default: infer D;
553
+ } ? GetAnimationsFromDriver<D> : T extends {
554
+ [key: string]: infer D;
555
+ } ? GetAnimationsFromDriver<D> : never;
556
+ type ExtractDriver<T> = Extract<T, AnimationDriver<any>>;
557
+ type InferredTransitionKeys = ExtractDriver<HanzoguiConfig['animations']> extends AnimationDriver<any> ? GetAnimationsFromDriver<ExtractDriver<HanzoguiConfig['animations']>> : GetAnimationsFromMultiDriver<HanzoguiConfig['animations']>;
558
+ export type TransitionKeys = InferredTransitionKeys;
559
+ export type AnimationDriverKeys = 'default' | Extract<Exclude<HanzoguiConfig['animationDriverKeys'], undefined>, string> | (ReturnType<TypeOverride['animationDrivers']> extends 1 ? never : ReturnType<TypeOverride['animationDrivers']>);
560
+ export type FontLanguages = ArrayIntersection<HanzoguiConfig['fontLanguages']>;
561
+ export interface ThemeProps {
562
+ className?: string;
563
+ name?: Exclude<ThemeName, number> | null;
564
+ componentName?: string;
565
+ children?: any;
566
+ reset?: boolean;
567
+ debug?: DebugProp;
568
+ forceClassName?: boolean;
569
+ shallow?: boolean;
570
+ }
571
+ export type UseThemeWithStateProps = ThemeProps & {
572
+ deopt?: boolean;
573
+ passThrough?: boolean;
574
+ disable?: boolean;
575
+ needsUpdate?: () => boolean;
576
+ unstyled?: boolean;
577
+ };
578
+ type ArrayIntersection<A extends any[]> = A[keyof A];
579
+ type GetAltThemeNames<S> = (S extends `${infer Theme}_${infer Alt}` ? Theme | GetAltThemeNames<Alt> : S) | S;
580
+ type AllowedValueSettingBase = boolean | 'strict' | 'somewhat-strict' | 'strict-web' | 'somewhat-strict-web';
581
+ type AllowedStyleValuesSettingSize = AllowedValueSettingBase | 'number' | 'percent';
582
+ type AllowedStyleValuesSettingZIndex = AllowedValueSettingBase | 'number';
583
+ type AllowedStyleValuesSettingRadius = AllowedValueSettingBase | 'number';
584
+ type AllowedStyleValuesSettingColor = AllowedValueSettingBase | 'named';
585
+ type AllowedStyleValuesSettingPerCategory = {
586
+ space?: AllowedStyleValuesSettingSize;
587
+ size?: AllowedStyleValuesSettingSize;
588
+ radius?: AllowedStyleValuesSettingRadius;
589
+ zIndex?: AllowedStyleValuesSettingZIndex;
590
+ color?: AllowedStyleValuesSettingColor;
591
+ };
592
+ type AllowedStyleValuesSetting = AllowedValueSettingBase | AllowedStyleValuesSettingPerCategory;
593
+ type AutocompleteSpecificTokensSetting = boolean | 'except-special';
594
+ export interface GenericHanzoguiSettings {
595
+ /**
596
+ * When true, flexBasis will be set to 0 when flex is positive. This will be
597
+ * the default in v2 of Hanzogui alongside an alternative mode for web compat.
598
+ */
599
+ styleCompat?: 'react-native' | 'legacy';
600
+ /**
601
+ * When true, Hanzogui will always prefer a more specific style prop over a
602
+ * less specific one.
603
+ *
604
+ * By default, Hanzogui processes all style props in order of definition on the
605
+ * object. This is a bit strange to most people, but it gets around many
606
+ * annoying issues with specificity. You can see our docs on this here:
607
+ * https://hanzogui.dev/docs/intro/styles#style-order-is-important
608
+ *
609
+ * But this can be confusing in simple cases, like when you do:
610
+ *
611
+ * <View paddingTop={0} padding={10} />
612
+ *
613
+ * This would set paddingTop ultimately to be 10, because padding comes after
614
+ * paddingTop. When this setting is set to true, paddingTop will always beat
615
+ * padding, because it is more specific.
616
+ *
617
+ * For variants, it will still take the prop order as definitive.
618
+ *
619
+ *
620
+ * @default false
621
+ */
622
+ /**
623
+ * Set up allowed values on style props, this is only a type-level validation.
624
+ *
625
+ * "strict" - only allows tokens for any token-enabled properties "strict-web"
626
+ * - same as strict but allows for web-specific tokens like auto/inherit
627
+ * "somewhat-strict" - allow tokens or: for space/size: string% or numbers for
628
+ * radius: number for zIndex: number for color: named colors or rgba/hsla
629
+ * strings "somewhat-strict-web" - same as somewhat-strict but allows for
630
+ * web-specific tokens
631
+ *
632
+ * @default false - allows any string (or number for styles that accept
633
+ * numbers)
634
+ *
635
+ */
636
+ allowedStyleValues?: AllowedStyleValuesSetting;
637
+ /**
638
+ * Set up if "specific tokens" ($color.name) are added to the types where
639
+ * tokens are allowed. The VSCode autocomplete puts specific tokens above the
640
+ * regular ones, which leads to worse DX. If true this setting removes the
641
+ * specific token from types for the defined categories.
642
+ *
643
+ * If set to "except-special", specific tokens will autocomplete only if they
644
+ * don't normally use one of the special token groups: space, size, radius,
645
+ * zIndex, color.
646
+ *
647
+ * @default except-special
648
+ */
649
+ autocompleteSpecificTokens?: AutocompleteSpecificTokensSetting;
650
+ /**
651
+ * On iOS, this enables a mode where Hanzogui returns color values using
652
+ * `DynamicColorIOS` This is a React Native built in feature, you can read the
653
+ * docs here: https://reactnative.dev/docs/dynamiccolorios
654
+ *
655
+ * We're working to make this enabled by default without any setting, but
656
+ * Hanzogui themes support inversing and/or changing to light/dark at any point
657
+ * in the tree. We haven't implemented support for either of these cases when
658
+ * combined with this feature.
659
+ *
660
+ * So - as long as you:
661
+ *
662
+ * 1. Only use light/dark changes of themes at the root of your app
663
+ * 2. Always change light/dark alongside the Appearance.colorScheme
664
+ *
665
+ * Then this feature is safe to turn on and will significantly speed up
666
+ * dark/light re-renders.
667
+ */
668
+ fastSchemeChange?: boolean;
669
+ /**
670
+ * On Web, this allows changing the behavior of container groups which by
671
+ * default uses `container-type: inline-size`.
672
+ */
673
+ webContainerType?: 'normal' | 'size' | 'inline-size' | 'inherit' | 'initial' | 'revert' | 'revert-layer';
674
+ /**
675
+ * Only allow shorthands when enabled. Recommended to be true to avoid having
676
+ * two ways to style the same property.
677
+ */
678
+ onlyAllowShorthands?: boolean | undefined;
679
+ /**
680
+ * Define a default font, for better types and default font on Text
681
+ */
682
+ defaultFont?: string;
683
+ /**
684
+ * Web-only: define CSS text-selection styles
685
+ */
686
+ selectionStyles?: (theme: Record<string, string>) => null | {
687
+ backgroundColor?: any;
688
+ color?: any;
689
+ };
690
+ /**
691
+ * If building a non-server rendered app, set this to true.
692
+ *
693
+ * For SSR compatibility on the web, Hanzogui will render once with the settings
694
+ * from `mediaQueryDefaultActive` set for all media queries. Then, it will render
695
+ * again after the initial render using the proper media query values. This is so that
696
+ * hydration will match perfectly with the server.
697
+ *
698
+ * Setting disableSSR will avoid this second render by setting the media query state
699
+ * to the actual browser dimensions on initial load. This is only useful for client-only
700
+ * apps.
701
+ *
702
+ * @default false
703
+ *
704
+ */
705
+ disableSSR?: boolean;
706
+ /**
707
+ * For the first render, determines which media queries are true, this only
708
+ * affects things on native or on web if you disableSSR, as otherwise Hanzogui
709
+ * relies on CSS to avoid the need for re-rendering on first render.
710
+ */
711
+ mediaQueryDefaultActive?: Record<string, boolean>;
712
+ /**
713
+ * Adds @media(prefers-color-scheme) media queries for dark/light, must be set
714
+ * true if you are supporting system preference for light and dark mode themes
715
+ */
716
+ shouldAddPrefersColorThemes?: boolean;
717
+ /**
718
+ * If you want to style your <body> tag to use theme CSS variables on web, you
719
+ * must place the theme className onto the body element or above. This will do so.
720
+ * If disabled, Hanzogui will place the className onto the element rendered by
721
+ * the HanzoguiProvider
722
+ *
723
+ * @default html
724
+ */
725
+ addThemeClassName?: 'body' | 'html' | false;
726
+ /**
727
+ * Sets the default position value for all Hanzogui components.
728
+ * @default 'static'
729
+ */
730
+ defaultPosition?: 'static' | 'relative';
731
+ /**
732
+ * Sets the base font size for rem calculations on native platforms.
733
+ * On web, browsers use the root font size (typically 16px).
734
+ * @default 16
735
+ */
736
+ remBaseFontSize?: number;
737
+ /**
738
+ * When true, removes the individual longhand style props for border,
739
+ * outline, and shadow (borderWidth, borderStyle, borderColor,
740
+ * outlineWidth, outlineStyle, outlineColor, outlineOffset,
741
+ * shadowColor, shadowOffset, shadowOpacity, shadowRadius) from the
742
+ * type system, encouraging use of the combined shorthand props instead
743
+ * (`border`, `outline`, `boxShadow`).
744
+ *
745
+ * This avoids specificity issues when mixing shorthand and longhand
746
+ * props in atomic CSS output.
747
+ *
748
+ * Note: this is type-level only - it does not change runtime behavior.
749
+ *
750
+ * @default false
751
+ */
752
+ onlyShorthandStyleProps?: boolean;
753
+ }
754
+ export type HanzoguiSettings = HanzoguiConfig['settings'];
755
+ export type BaseStyleProps = {
756
+ [Key in keyof TextStylePropsBase]?: TextStyle[Key] | GetThemeValueForKey<Key>;
757
+ } & {
758
+ [Key in keyof StackStyleBase]?: StackStyle[Key] | GetThemeValueForKey<Key>;
759
+ };
760
+ /**
761
+ * Animation drivers config - can be a single driver or named drivers object.
762
+ * If object, must include a 'default' key.
763
+ */
764
+ export type AnimationsConfig = AnimationDriver<any> | AnimationsConfigObject;
765
+ export type AnimationsConfigObject = {
766
+ default: AnimationDriver<any>;
767
+ [key: string]: AnimationDriver<any>;
768
+ };
769
+ export type CreateHanzoguiProps = {
770
+ reactNative?: any;
771
+ shorthands?: CreateShorthands;
772
+ media?: GenericHanzoguiConfig['media'];
773
+ /**
774
+ * Animation driver(s) configuration.
775
+ * Can be a single driver or an object of named drivers (must include 'default').
776
+ * @example
777
+ * // Single driver
778
+ * animations: createAnimations({ slow: '...', fast: '...' })
779
+ * // Multiple named drivers
780
+ * animations: { default: cssDriver, spring: motiDriver }
781
+ */
782
+ animations?: AnimationsConfig;
783
+ fonts?: GenericHanzoguiConfig['fonts'];
784
+ tokens?: GenericHanzoguiConfig['tokens'];
785
+ themes?: {
786
+ [key: string]: {
787
+ [key: string]: string | number | Variable;
788
+ };
789
+ };
790
+ settings?: Partial<GenericHanzoguiSettings>;
791
+ /**
792
+ * Web-only: define text-selection CSS
793
+ */
794
+ selectionStyles?: (theme: Record<string, string>) => null | {
795
+ backgroundColor?: any;
796
+ color?: any;
797
+ };
798
+ defaultProps?: Record<string, any> & {
799
+ Text?: TextProps;
800
+ View?: StackNonStyleProps & StackStyle;
801
+ };
802
+ };
803
+ export type GetCSS = (opts?: {
804
+ separator?: string;
805
+ exclude?: 'themes' | 'design-system' | null;
806
+ sinceLastCall?: boolean;
807
+ }) => string;
808
+ export type HanzoguiInternalConfig<A extends GenericTokens = GenericTokens, B extends GenericThemes = GenericThemes, C extends GenericShorthands = GenericShorthands, D extends GenericMedia = GenericMedia, E extends GenericAnimations = GenericAnimations, F extends GenericFonts = GenericFonts, G extends GenericHanzoguiSettings = GenericHanzoguiSettings, AnimDriverKeys extends string = string> = Omit<CreateHanzoguiProps, keyof GenericHanzoguiConfig> & Omit<CreateHanzoguiConfig<A, B, C, D, E, F, G, AnimDriverKeys>, 'tokens'> & {
809
+ tokens: Tokenify<A>;
810
+ tokensParsed: Tokenify<A>;
811
+ themeConfig: any;
812
+ fontsParsed: GenericFonts;
813
+ getCSS: GetCSS;
814
+ getNewCSS: GetCSS;
815
+ parsed: boolean;
816
+ inverseShorthands: Record<string, string>;
817
+ userShorthands: C;
818
+ reactNative?: any;
819
+ fontSizeTokens: Set<string>;
820
+ specificTokens: Record<string, Variable>;
821
+ settings: Omit<GenericHanzoguiSettings, keyof G> & G;
822
+ defaultFont?: string;
823
+ defaultFontToken: `${string}`;
824
+ animationDrivers?: Record<string, AnimationDriver>;
825
+ };
826
+ export type GetAnimationKeys<A extends GenericHanzoguiConfig> = keyof A['animations'];
827
+ export type UnionableString = string & {};
828
+ export type UnionableNumber = number & {};
829
+ type GenericFontKey = string | number | symbol;
830
+ export type GenericFont<Key extends GenericFontKey = GenericFontKey> = {
831
+ size: {
832
+ [key in Key]: number | Variable;
833
+ };
834
+ family?: string | Variable;
835
+ lineHeight?: Partial<{
836
+ [key in Key]: number | Variable;
837
+ }> | undefined;
838
+ letterSpacing?: Partial<{
839
+ [key in Key]: number | Variable;
840
+ }> | undefined;
841
+ weight?: Partial<{
842
+ [key in Key]: number | string | Variable;
843
+ }> | undefined;
844
+ style?: Partial<{
845
+ [key in Key]: RNTextStyle['fontStyle'] | Variable;
846
+ }> | undefined;
847
+ transform?: Partial<{
848
+ [key in Key]: RNTextStyle['textTransform'] | Variable;
849
+ }> | undefined;
850
+ color?: Partial<{
851
+ [key in Key]: string | Variable;
852
+ }> | undefined;
853
+ face?: Partial<{
854
+ [key in FontWeightValues]: {
855
+ normal?: string;
856
+ italic?: string;
857
+ };
858
+ }> | undefined;
859
+ };
860
+ export type MediaQueryObject = {
861
+ [key: string]: string | number | string;
862
+ };
863
+ export type MediaQueryKey = keyof Media;
864
+ export type MediaPropKeys = `$${MediaQueryKey}`;
865
+ export type MediaQueryState = {
866
+ [key in MediaQueryKey]: boolean;
867
+ };
868
+ export type ThemeMediaKeys<TK extends keyof Themes = keyof Themes> = `$theme-${TK extends `${string}_${string}` ? never : TK}`;
869
+ export type PlatformMediaKeys = `$platform-${AllPlatforms}`;
870
+ export interface TypeOverride {
871
+ groupNames(): 1;
872
+ animationDrivers(): 1;
873
+ }
874
+ export type GroupNames = ReturnType<TypeOverride['groupNames']> extends 1 ? never : ReturnType<TypeOverride['groupNames']>;
875
+ type ParentMediaStates = 'hover' | 'press' | 'focus' | 'focusVisible' | 'focusWithin';
876
+ export type GroupMediaKeys = `$group-${GroupNames}` | `$group-${GroupNames}-${ParentMediaStates}` | `$group-${GroupNames}-${MediaQueryKey}` | `$group-${GroupNames}-${MediaQueryKey}-${ParentMediaStates}` | `$group-${ParentMediaStates}` | `$group-${MediaQueryKey}` | `$group-${MediaQueryKey}-${ParentMediaStates}`;
877
+ export type WithMediaProps<A> = {
878
+ [Key in MediaPropKeys | GroupMediaKeys | ThemeMediaKeys | PlatformMediaKeys]?: Key extends MediaPropKeys ? A & {
879
+ [Key in PlatformMediaKeys]?: AddWebOnlyStyleProps<A>;
880
+ } : Key extends `$platform-web` ? AddWebOnlyStyleProps<A> & {
881
+ [Key in MediaPropKeys]?: AddWebOnlyStyleProps<A>;
882
+ } : A & {
883
+ [Key in MediaPropKeys]?: A;
884
+ };
885
+ };
886
+ export type AddWebOnlyStyleProps<A> = Partial<CSSProperties> & Partial<WebOnlyValidStyleValues> & {
887
+ [K in Exclude<keyof A, keyof CSSProperties>]?: A[K];
888
+ };
889
+ export type WebOnlyValidStyleValues = {
890
+ position: '-webkit-sticky';
891
+ };
892
+ export type MediaQueries = {
893
+ [key in MediaQueryKey]: MediaQueryObject;
894
+ };
895
+ export interface MediaQueryList {
896
+ addListener(listener?: any): void;
897
+ removeListener(listener?: any): void;
898
+ match?: (query: string, dimensions: {
899
+ width: number;
900
+ height: number;
901
+ }) => boolean;
902
+ matches: boolean;
903
+ }
904
+ export type MatchMedia = (query: string) => MediaQueryList;
905
+ export type AnimationConfigType = any;
906
+ /**
907
+ * Spring configuration parameters that can override preset defaults.
908
+ * Use with array syntax: transition={['bouncy', { stiffness: 1000, damping: 70 }]}
909
+ */
910
+ export type TransitionSpringConfig = {
911
+ stiffness?: number;
912
+ damping?: number;
913
+ mass?: number;
914
+ tension?: number;
915
+ friction?: number;
916
+ velocity?: number;
917
+ overshootClamping?: boolean;
918
+ duration?: number;
919
+ bounciness?: number;
920
+ speed?: number;
921
+ };
922
+ export type TransitionProp = TransitionKeys | ({
923
+ default?: TransitionKeys;
924
+ enter?: TransitionKeys;
925
+ exit?: TransitionKeys;
926
+ delay?: number;
927
+ } & TransitionSpringConfig & {
928
+ [key: string]: TransitionKeys | {
929
+ type: TransitionKeys;
930
+ [key: string]: any;
931
+ } | number | boolean | undefined;
932
+ }) | [
933
+ TransitionKeys,
934
+ {
935
+ delay?: number;
936
+ enter?: TransitionKeys;
937
+ exit?: TransitionKeys;
938
+ } & TransitionSpringConfig & {
939
+ [key: string]: TransitionKeys | {
940
+ type?: TransitionKeys;
941
+ [key: string]: any;
942
+ } | number | boolean | undefined;
943
+ }
944
+ ];
945
+ /**
946
+ * Tokens
947
+ */
948
+ type PercentString = `${string}%` & {};
949
+ type RemString = `${number}rem`;
950
+ type SomewhatSpecificSizeValue = 'auto' | PercentString | RemString | UnionableNumber;
951
+ type SomewhatSpecificSpaceValue = 'auto' | PercentString | RemString | UnionableNumber;
952
+ type VariableString = `var(${string})`;
953
+ export type SomewhatSpecificColorValue = CSSColorNames | 'transparent' | (`rgba(${string})` & {}) | (`rgb(${string})` & {}) | (`hsl(${string})` & {}) | (`hsla(${string})` & {}) | (`#${string}` & {});
954
+ type WebOnlySizeValue = `${number}vw` | `${number}dvw` | `${number}lvw` | `${number}svw` | `${number}vh` | `${number}dvh` | `${number}lvh` | `${number}svh` | `calc(${string})` | `min(${string})` | `max(${string})` | 'max-content' | 'min-content';
955
+ type UserAllowedStyleValuesSetting = Exclude<HanzoguiSettings['allowedStyleValues'], undefined>;
956
+ export type GetThemeValueSettingForCategory<Cat extends keyof AllowedStyleValuesSettingPerCategory> = UserAllowedStyleValuesSetting extends AllowedValueSettingBase | undefined ? UserAllowedStyleValuesSetting : UserAllowedStyleValuesSetting extends AllowedStyleValuesSettingPerCategory ? UserAllowedStyleValuesSetting[Cat] : true;
957
+ export type GetThemeValueFallbackFor<Setting, StrictValue, SomewhatStrictValue, LooseValue, WebOnlyValue> = Setting extends 'strict' ? StrictValue : Setting extends 'strict-web' ? StrictValue | WebOnlyValue : Setting extends 'somewhat-strict' ? SomewhatStrictValue : Setting extends 'somewhat-strict-web' ? SomewhatStrictValue | WebOnlyValue : LooseValue;
958
+ export type ThemeValueFallback = (HanzoguiSettings extends {
959
+ allowedStyleValues: any;
960
+ } ? never : UnionableString) | Variable;
961
+ export type AllowedValueSettingSpace = GetThemeValueSettingForCategory<'space'>;
962
+ export type AllowedValueSettingSize = GetThemeValueSettingForCategory<'size'>;
963
+ export type AllowedValueSettingColor = GetThemeValueSettingForCategory<'color'>;
964
+ export type AllowedValueSettingZIndex = GetThemeValueSettingForCategory<'zIndex'>;
965
+ export type AllowedValueSettingRadius = GetThemeValueSettingForCategory<'radius'>;
966
+ export type WebStyleValueUniversal = 'unset' | 'inherit' | VariableString;
967
+ export type ThemeValueFallbackSpace = ThemeValueFallback | GetThemeValueFallbackFor<AllowedValueSettingSpace, never, SomewhatSpecificSpaceValue, UnionableString | UnionableNumber, WebStyleValueUniversal | WebOnlySizeValue>;
968
+ export type SpaceValue = number | SpaceTokens | ThemeValueFallback;
969
+ export type ThemeValueFallbackSize = GetThemeValueFallbackFor<AllowedValueSettingSize, never, SomewhatSpecificSizeValue, UnionableString | UnionableNumber, WebStyleValueUniversal | WebOnlySizeValue>;
970
+ export type ThemeValueFallbackColor = ThemeValueFallback | GetThemeValueFallbackFor<AllowedValueSettingColor, never, SomewhatSpecificColorValue, UnionableString | UnionableNumber, WebStyleValueUniversal>;
971
+ export type ThemeValueFallbackRadius = ThemeValueFallback | GetThemeValueFallbackFor<AllowedValueSettingRadius, never, UnionableNumber, UnionableNumber, WebStyleValueUniversal>;
972
+ export type ThemeValueFallbackZIndex = ThemeValueFallback | GetThemeValueFallbackFor<AllowedValueSettingZIndex, never, UnionableNumber, UnionableNumber, WebStyleValueUniversal>;
973
+ export type GetTokenString<A> = A extends `$${string}` ? A : A extends string | number ? `$${A}` : `$${string}`;
974
+ export type SpecificTokens<Record = Tokens, RK extends keyof Record = keyof Record> = RK extends string ? `$${RK}.${keyof Record[RK] extends string | number ? keyof Record[RK] extends `$${infer X}` ? X : keyof Record[RK] : never}` : never;
975
+ export type SpecificTokensSpecial = HanzoguiSettings extends {
976
+ autocompleteSpecificTokens: infer Val;
977
+ } ? Val extends 'except-special' | undefined ? never : SpecificTokens : SpecificTokens;
978
+ export type SizeTokens = SpecificTokensSpecial | ThemeValueFallbackSize | GetTokenString<keyof Tokens['size']>;
979
+ export type SpaceTokens = SpecificTokensSpecial | GetTokenString<keyof Tokens['space']> | ThemeValueFallbackSpace;
980
+ export type ColorTokens = SpecificTokensSpecial | GetTokenString<keyof Tokens['color']> | GetTokenString<keyof ThemeParsed> | CSSColorNames;
981
+ export type ZIndexTokens = SpecificTokensSpecial | GetTokenString<keyof Tokens['zIndex']> | ThemeValueFallbackZIndex | number;
982
+ export type RadiusTokens = SpecificTokensSpecial | GetTokenString<keyof Tokens['radius']> | ThemeValueFallbackRadius | number | RemString;
983
+ export type NonSpecificTokens = GetTokenString<keyof Tokens['radius']> | GetTokenString<keyof Tokens['zIndex']> | GetTokenString<keyof Tokens['color']> | GetTokenString<keyof Tokens['space']> | GetTokenString<keyof Tokens['size']>;
984
+ export type Token = NonSpecificTokens | (HanzoguiSettings extends {
985
+ autocompleteSpecificTokens: false;
986
+ } ? never : SpecificTokens);
987
+ export type ColorStyleProp = ThemeValueFallbackColor | ColorTokens;
988
+ type DefaultFont = HanzoguiSettings['defaultFont'];
989
+ export type Fonts = DefaultFont extends string ? HanzoguiConfig['fonts'][DefaultFont] : never;
990
+ export type Font = ParseFont<Fonts>;
991
+ export type GetTokenFontKeysFor<A extends 'size' | 'weight' | 'letterSpacing' | 'family' | 'lineHeight' | 'transform' | 'style' | 'color'> = keyof HanzoguiConfig['fonts']['body'][A];
992
+ export type FontTokens = GetTokenString<keyof HanzoguiConfig['fonts']>;
993
+ export type FontFamilyTokens = GetTokenString<GetTokenFontKeysFor<'family'>>;
994
+ export type FontSizeTokens = GetTokenString<GetTokenFontKeysFor<'size'>> | number | RemString;
995
+ export type FontLineHeightTokens = `$${GetTokenFontKeysFor<'lineHeight'>}` | number | RemString;
996
+ export type FontWeightValues = `${1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9}00` | 'bold' | 'normal';
997
+ export type FontWeightTokens = `$${GetTokenFontKeysFor<'weight'>}` | FontWeightValues;
998
+ export type FontColorTokens = `$${GetTokenFontKeysFor<'color'>}` | number;
999
+ export type FontLetterSpacingTokens = `$${GetTokenFontKeysFor<'letterSpacing'>}` | number | RemString;
1000
+ export type FontStyleTokens = `$${GetTokenFontKeysFor<'style'>}` | RNTextStyle['fontStyle'];
1001
+ export type FontTransformTokens = `$${GetTokenFontKeysFor<'transform'>}` | RNTextStyle['textTransform'];
1002
+ export type ParseFont<A extends GenericFont> = {
1003
+ size: TokenPrefixed<A['size']>;
1004
+ lineHeight: TokenPrefixedIfExists<A['lineHeight']>;
1005
+ letterSpacing: TokenPrefixedIfExists<A['letterSpacing']>;
1006
+ weight: TokenPrefixedIfExists<A['weight']>;
1007
+ family: TokenPrefixedIfExists<A['family']>;
1008
+ style: TokenPrefixedIfExists<A['style']>;
1009
+ transform: TokenPrefixedIfExists<A['transform']>;
1010
+ color: TokenPrefixedIfExists<A['color']>;
1011
+ face: TokenPrefixedIfExists<A['face']>;
1012
+ };
1013
+ export type TokenPrefixedIfExists<A> = A extends Record<string, any> ? TokenPrefixed<A> : {};
1014
+ export type ThemeValueByCategory<K extends string | number | symbol> = K extends 'theme' ? ThemeTokens : K extends 'size' ? SizeTokens : K extends 'font' ? FontTokens : K extends 'fontSize' ? FontSizeTokens : K extends 'space' ? SpaceTokens : K extends 'color' ? ColorTokens : K extends 'zIndex' ? ZIndexTokens : K extends 'radius' ? RadiusTokens : K extends 'lineHeight' ? FontLineHeightTokens : K extends 'fontWeight' ? FontWeightTokens : K extends 'letterSpacing' ? FontLetterSpacingTokens : K extends keyof Tokens ? GetTokenString<keyof Tokens[K]> : never;
1015
+ export type FontKeys = 'fontFamily';
1016
+ export type FontSizeKeys = 'fontSize';
1017
+ export type FontWeightKeys = 'fontWeight';
1018
+ export type FontLetterSpacingKeys = 'letterSpacing';
1019
+ export type LineHeightKeys = 'lineHeight';
1020
+ export type ZIndexKeys = 'zIndex';
1021
+ export type OpacityKeys = 'opacity';
1022
+ export type ThemeValueGet<K extends string | number | symbol> = K extends 'theme' ? ThemeTokens : K extends SizeKeys ? SizeTokens : K extends FontKeys ? FontTokens : K extends FontSizeKeys ? FontSizeTokens : K extends `${`border${string | ''}Radius`}` ? RadiusTokens : K extends SpaceKeys ? K extends 'shadowOffset' ? {
1023
+ width: SpaceTokens;
1024
+ height: SpaceTokens;
1025
+ } : SpaceTokens : K extends ColorKeys ? ColorTokens | ThemeValueFallbackColor : K extends ZIndexKeys ? ZIndexTokens : K extends LineHeightKeys ? FontLineHeightTokens : K extends FontWeightKeys ? FontWeightTokens : K extends FontLetterSpacingKeys ? FontLetterSpacingTokens : K extends OpacityKeys ? SpecificTokens | ThemeValueFallback : never;
1026
+ export type GetThemeValueForKey<K extends string | symbol | number> = ThemeValueGet<K> | ThemeValueFallback | (HanzoguiSettings extends {
1027
+ autocompleteSpecificTokens: infer Val;
1028
+ } ? Val extends true | undefined ? SpecificTokens : never : never);
1029
+ export type WithThemeValues<T extends object> = {
1030
+ [K in keyof T]: ThemeValueGet<K> extends never ? K extends keyof ExtraBaseProps ? T[K] : T[K] | 'unset' : GetThemeValueForKey<K> | Exclude<T[K], string> | 'unset';
1031
+ };
1032
+ export type NarrowShorthands = Narrow<Shorthands>;
1033
+ export type Longhands = NarrowShorthands[keyof NarrowShorthands];
1034
+ type OnlyAllowShorthands = HanzoguiConfig['settings']['onlyAllowShorthands'];
1035
+ type OnlyShorthandStyleProps = HanzoguiConfig['settings']['onlyShorthandStyleProps'];
1036
+ type ShorthandLonghandProps = 'borderWidth' | 'borderStyle' | 'borderColor' | 'outlineWidth' | 'outlineStyle' | 'outlineColor' | 'outlineOffset' | 'shadowColor' | 'shadowOffset' | 'shadowOpacity' | 'shadowRadius';
1037
+ export type WithShorthands<StyleProps> = {
1038
+ [Key in keyof Shorthands]?: Shorthands[Key] extends keyof StyleProps ? StyleProps[Shorthands[Key]] | null : undefined;
1039
+ };
1040
+ export type PseudoStyleWithTransition<A> = A & {
1041
+ transition?: TransitionProp | null;
1042
+ };
1043
+ export type WithPseudoProps<A> = {
1044
+ hoverStyle?: PseudoStyleWithTransition<A> | null;
1045
+ pressStyle?: PseudoStyleWithTransition<A> | null;
1046
+ focusStyle?: PseudoStyleWithTransition<A> | null;
1047
+ focusWithinStyle?: PseudoStyleWithTransition<A> | null;
1048
+ focusVisibleStyle?: PseudoStyleWithTransition<A> | null;
1049
+ disabledStyle?: PseudoStyleWithTransition<A> | null;
1050
+ exitStyle?: PseudoStyleWithTransition<A> | null;
1051
+ enterStyle?: PseudoStyleWithTransition<A> | null;
1052
+ };
1053
+ export type PseudoTransitions = Partial<Record<keyof WithPseudoProps<any>, TransitionProp | null>> & {
1054
+ [key: `$group-${string}-${'hover' | 'press' | 'focus'}`]: TransitionProp | null | undefined;
1055
+ };
1056
+ export type PseudoPropKeys = keyof WithPseudoProps<any>;
1057
+ export type PseudoStyles = {
1058
+ hoverStyle?: ViewStyle;
1059
+ pressStyle?: ViewStyle;
1060
+ focusStyle?: ViewStyle;
1061
+ focusWithinStyle?: ViewStyle;
1062
+ focusVisibleStyle?: ViewStyle;
1063
+ disabledStyle?: ViewStyle;
1064
+ enterStyle?: ViewStyle;
1065
+ exitStyle?: ViewStyle;
1066
+ };
1067
+ export type AllPlatforms = 'web' | 'native' | 'android' | 'ios' | 'tv' | 'androidtv' | 'tvos';
1068
+ type MaybeOmitLonghands<A> = OnlyShorthandStyleProps extends true ? Omit<A, ShorthandLonghandProps> : A;
1069
+ export type WithThemeAndShorthands<A extends object, Variants = {}> = OnlyAllowShorthands extends true ? WithThemeValues<MaybeOmitLonghands<Omit<A, Longhands>>> & Variants & WithShorthands<WithThemeValues<A>> : WithThemeValues<MaybeOmitLonghands<A>> & Variants & WithShorthands<WithThemeValues<A>>;
1070
+ export type WithThemeShorthandsAndPseudos<A extends object, Variants = {}> = WithThemeAndShorthands<A, Variants> & WithPseudoProps<WithThemeAndShorthands<A, Variants>>;
1071
+ export type WithThemeShorthandsPseudosMedia<A extends object, Variants = {}> = WithThemeShorthandsAndPseudos<A, Variants> & WithMediaProps<WithThemeShorthandsAndPseudos<A, Variants>>;
1072
+ /**
1073
+ * Base style-only props (no media, pseudo):
1074
+ */
1075
+ type Px = `${string | number}px`;
1076
+ type PxOrPct = Px | `${string | number}%`;
1077
+ type TwoValueTransformOrigin = `${PxOrPct | 'left' | 'center' | 'right'} ${PxOrPct | 'top' | 'center' | 'bottom'}`;
1078
+ export interface TransformStyleProps {
1079
+ /**
1080
+ * Maps to translateX
1081
+ */
1082
+ x?: number;
1083
+ /**
1084
+ * Maps to translateY
1085
+ */
1086
+ y?: number;
1087
+ perspective?: number;
1088
+ scale?: number;
1089
+ scaleX?: number;
1090
+ scaleY?: number;
1091
+ skewX?: string;
1092
+ skewY?: string;
1093
+ matrix?: number[];
1094
+ rotate?: `${number}deg` | UnionableString;
1095
+ rotateY?: `${number}deg` | UnionableString;
1096
+ rotateX?: `${number}deg` | UnionableString;
1097
+ rotateZ?: `${number}deg` | UnionableString;
1098
+ }
1099
+ type BoxShadowPreset = '0 0' | '0 1px 2px' | '0 1px 2px 0' | '0 1px 2px $shadowColor' | '0 1px 3px 0 $shadowColor' | '0 4px 6px -1px $shadowColor' | 'inset 0 2px 4px $shadowColor' | 'none';
1100
+ export type BoxShadowValue = BoxShadowPreset | (string & {});
1101
+ type FilterPreset = 'blur(4px)' | 'brightness(1.2)' | 'contrast(1.2)' | 'drop-shadow(0 4px 8px $shadowColor)' | 'grayscale(1)' | 'hue-rotate(90deg)' | 'invert(1)' | 'opacity(0.5)' | 'saturate(1.5)' | 'sepia(1)' | 'none';
1102
+ export type FilterValue = FilterPreset | (string & {});
1103
+ type BorderPreset = '1px solid' | '1px solid $borderColor' | '2px dashed $borderColor' | '1px dotted red' | 'none';
1104
+ export type BorderValue = BorderPreset | (string & {});
1105
+ type OutlinePreset = '1px solid' | '1px solid $outlineColor' | '2px dashed $outlineColor' | '1px dotted red' | 'none';
1106
+ export type OutlineValue = OutlinePreset | (string & {});
1107
+ interface ExtraStyleProps {
1108
+ /**
1109
+ * Controls the curve style of rounded corners.
1110
+ * - 'circular': Standard circular arc corners (default)
1111
+ * - 'continuous': Apple's "squircle" style continuous curve
1112
+ * @platform iOS 13+
1113
+ */
1114
+ borderCurve?: 'circular' | 'continuous';
1115
+ /**
1116
+ * Web-only style property. Will be omitted on native.
1117
+ */
1118
+ contain?: Properties['contain'];
1119
+ /**
1120
+ * Cursor style. On web, supports all CSS cursor values.
1121
+ * On iOS 17+ (trackpad/stylus), only 'auto' and 'pointer' are supported.
1122
+ */
1123
+ cursor?: Properties['cursor'];
1124
+ /**
1125
+ * Outline color. Supported on web and native.
1126
+ */
1127
+ outlineColor?: ColorStyleProp;
1128
+ /**
1129
+ * Outline offset. Supported on web and native.
1130
+ */
1131
+ outlineOffset?: SpaceValue;
1132
+ /**
1133
+ * Outline style. Supported on web and native.
1134
+ */
1135
+ outlineStyle?: 'solid' | 'dotted' | 'dashed' | (string & {});
1136
+ /**
1137
+ * Outline width. Supported on web and native.
1138
+ */
1139
+ outlineWidth?: SpaceValue;
1140
+ /**
1141
+ * CSS outline shorthand string. Supports tokens: "2px solid $outlineColor"
1142
+ * Expands to outlineWidth, outlineStyle, outlineColor on native.
1143
+ * Works on web and native.
1144
+ */
1145
+ outline?: OutlineValue;
1146
+ /**
1147
+ * On native, maps to the `selectable` prop on Text (userSelect !== 'none')
1148
+ */
1149
+ userSelect?: Properties['userSelect'];
1150
+ /**
1151
+ * Web-only style property. Will be omitted on native.
1152
+ */
1153
+ backdropFilter?: Properties['backdropFilter'];
1154
+ /**
1155
+ * Web-only style property. Will be omitted on native.
1156
+ */
1157
+ background?: Properties['background'];
1158
+ /**
1159
+ * Web-only style property. Will be omitted on native.
1160
+ */
1161
+ backgroundImage?: Properties['backgroundImage'];
1162
+ /**
1163
+ * Web-only style property. Will be omitted on native.
1164
+ */
1165
+ backgroundOrigin?: Properties['backgroundOrigin'];
1166
+ /**
1167
+ * Web-only style property. Will be omitted on native.
1168
+ */
1169
+ backgroundPosition?: Properties['backgroundPosition'];
1170
+ /**
1171
+ * Web-only style property. Will be omitted on native.
1172
+ */
1173
+ backgroundRepeat?: Properties['backgroundRepeat'];
1174
+ /**
1175
+ * Web-only style property. Will be omitted on native.
1176
+ */
1177
+ backgroundSize?: Properties['backgroundSize'];
1178
+ /**
1179
+ * CSS box-shadow string. Supports tokens: "0 4px 8px $shadowColor"
1180
+ * Works on web and native (RN 0.76+).
1181
+ */
1182
+ boxShadow?: BoxShadowValue;
1183
+ /**
1184
+ * CSS border shorthand string. Supports tokens: "1px solid $borderColor"
1185
+ * Expands to borderWidth, borderStyle, borderColor.
1186
+ * Works on web and native. On native, applies to all sides.
1187
+ */
1188
+ border?: BorderValue;
1189
+ /**
1190
+ * Web-only style property. Will be omitted on native.
1191
+ */
1192
+ overflowX?: Properties['overflowX'];
1193
+ /**
1194
+ * Web-only style property. Will be omitted on native.
1195
+ */
1196
+ overflowY?: Properties['overflowY'];
1197
+ pointerEvents?: ViewProps['pointerEvents'];
1198
+ /**
1199
+ * The point at which transforms originate from.
1200
+ */
1201
+ transformOrigin?: PxOrPct | 'left' | 'center' | 'right' | 'top' | 'bottom' | TwoValueTransformOrigin | `${TwoValueTransformOrigin} ${Px}`;
1202
+ /**
1203
+ * CSS filter string. Example: "blur(10px) brightness(1.2)"
1204
+ * Works on web and native (RN 0.76+). Supports embedded tokens.
1205
+ */
1206
+ filter?: FilterValue;
1207
+ /**
1208
+ * Web-only style property. Will be omitted on native.
1209
+ */
1210
+ backgroundClip?: Properties['backgroundClip'];
1211
+ /**
1212
+ * Web-only style property. Will be omitted on native.
1213
+ */
1214
+ backgroundBlendMode?: Properties['backgroundBlendMode'];
1215
+ /**
1216
+ * Web-only style property. Will be omitted on native.
1217
+ */
1218
+ backgroundAttachment?: Properties['backgroundAttachment'];
1219
+ /**
1220
+ * Web-only style property. Will be omitted on native.
1221
+ */
1222
+ clipPath?: Properties['clipPath'];
1223
+ /**
1224
+ * Web-only style property. Will be omitted on native.
1225
+ */
1226
+ caretColor?: Properties['caretColor'];
1227
+ /**
1228
+ * Web-only style property. Will be omitted on native.
1229
+ */
1230
+ transformStyle?: Properties['transformStyle'];
1231
+ /**
1232
+ * Web-only style property. Will be omitted on native.
1233
+ */
1234
+ mask?: Properties['mask'];
1235
+ /**
1236
+ * Web-only style property. Will be omitted on native.
1237
+ */
1238
+ maskImage?: Properties['maskImage'];
1239
+ /**
1240
+ * Web-only style property. Will be omitted on native.
1241
+ */
1242
+ textEmphasis?: Properties['textEmphasis'];
1243
+ /**
1244
+ * Web-only style property. Will be omitted on native.
1245
+ */
1246
+ borderImage?: Properties['borderImage'];
1247
+ /**
1248
+ * Web-only style property. Will be omitted on native.
1249
+ */
1250
+ float?: Properties['float'];
1251
+ /**
1252
+ * Web-only style property. Will be omitted on native.
1253
+ */
1254
+ content?: Properties['content'];
1255
+ /**
1256
+ * Web-only style property. Will be omitted on native.
1257
+ */
1258
+ overflowBlock?: Properties['overflowBlock'];
1259
+ /**
1260
+ * Web-only style property. Will be omitted on native.
1261
+ */
1262
+ overflowInline?: Properties['overflowInline'];
1263
+ /**
1264
+ * Web-only style property. Will be omitted on native.
1265
+ */
1266
+ maskBorder?: Properties['maskBorder'];
1267
+ /**
1268
+ * Web-only style property. Will be omitted on native.
1269
+ */
1270
+ maskBorderMode?: Properties['maskBorderMode'];
1271
+ /**
1272
+ * Web-only style property. Will be omitted on native.
1273
+ */
1274
+ maskBorderOutset?: Properties['maskBorderOutset'];
1275
+ /**
1276
+ * Web-only style property. Will be omitted on native.
1277
+ */
1278
+ maskBorderRepeat?: Properties['maskBorderRepeat'];
1279
+ /**
1280
+ * Web-only style property. Will be omitted on native.
1281
+ */
1282
+ maskBorderSlice?: Properties['maskBorderSlice'];
1283
+ /**
1284
+ * Web-only style property. Will be omitted on native.
1285
+ */
1286
+ maskBorderSource?: Properties['maskBorderSource'];
1287
+ /**
1288
+ * Web-only style property. Will be omitted on native.
1289
+ */
1290
+ maskBorderWidth?: Properties['maskBorderWidth'];
1291
+ /**
1292
+ * Web-only style property. Will be omitted on native.
1293
+ */
1294
+ maskClip?: Properties['maskClip'];
1295
+ /**
1296
+ * Web-only style property. Will be omitted on native.
1297
+ */
1298
+ maskComposite?: Properties['maskComposite'];
1299
+ /**
1300
+ * Web-only style property. Will be omitted on native.
1301
+ */
1302
+ maskMode?: Properties['maskMode'];
1303
+ /**
1304
+ * Web-only style property. Will be omitted on native.
1305
+ */
1306
+ maskOrigin?: Properties['maskOrigin'];
1307
+ /**
1308
+ * Web-only style property. Will be omitted on native.
1309
+ */
1310
+ maskPosition?: Properties['maskPosition'];
1311
+ /**
1312
+ * Web-only style property. Will be omitted on native.
1313
+ */
1314
+ maskRepeat?: Properties['maskRepeat'];
1315
+ /**
1316
+ * Web-only style property. Will be omitted on native.
1317
+ */
1318
+ maskSize?: Properties['maskSize'];
1319
+ /**
1320
+ * Web-only style property. Will be omitted on native.
1321
+ */
1322
+ maskType?: Properties['maskType'];
1323
+ /**
1324
+ * Web-only style property. Will be omitted on native.
1325
+ */
1326
+ gridRow?: Properties['gridRow'];
1327
+ /**
1328
+ * Web-only style property. Will be omitted on native.
1329
+ */
1330
+ gridRowEnd?: Properties['gridRowEnd'];
1331
+ /**
1332
+ * Web-only style property. Will be omitted on native.
1333
+ */
1334
+ gridRowGap?: Properties['gridRowGap'];
1335
+ /**
1336
+ * Web-only style property. Will be omitted on native.
1337
+ */
1338
+ gridRowStart?: Properties['gridRowStart'];
1339
+ /**
1340
+ * Web-only style property. Will be omitted on native.
1341
+ */
1342
+ gridColumn?: Properties['gridColumn'];
1343
+ /**
1344
+ * Web-only style property. Will be omitted on native.
1345
+ */
1346
+ gridColumnEnd?: Properties['gridColumnEnd'];
1347
+ /**
1348
+ * Web-only style property. Will be omitted on native.
1349
+ */
1350
+ gridColumnGap?: Properties['gridColumnGap'];
1351
+ /**
1352
+ * Web-only style property. Will be omitted on native.
1353
+ */
1354
+ gridColumnStart?: Properties['gridColumnStart'];
1355
+ /**
1356
+ * Web-only style property. Will be omitted on native.
1357
+ */
1358
+ gridTemplateColumns?: Properties['gridTemplateColumns'];
1359
+ /**
1360
+ * Web-only style property. Will be omitted on native.
1361
+ */
1362
+ gridTemplateAreas?: Properties['gridTemplateAreas'];
1363
+ /**
1364
+ * Web-only style property. Will be omitted on native.
1365
+ */
1366
+ containerType?: Properties['containerType'];
1367
+ /**
1368
+ * Web-only style property. Will be omitted on native.
1369
+ */
1370
+ blockSize?: SizeTokens | number;
1371
+ /**
1372
+ * Web-only style property. Will be omitted on native.
1373
+ */
1374
+ inlineSize?: SizeTokens | number;
1375
+ /**
1376
+ * Web-only style property. Will be omitted on native.
1377
+ */
1378
+ minBlockSize?: SizeTokens | number;
1379
+ /**
1380
+ * Web-only style property. Will be omitted on native.
1381
+ */
1382
+ maxBlockSize?: SizeTokens | number;
1383
+ /**
1384
+ * Web-only style property. Will be omitted on native.
1385
+ */
1386
+ objectFit?: Properties['objectFit'];
1387
+ /**
1388
+ * Web-only style property. Will be omitted on native.
1389
+ */
1390
+ verticalAlign?: Properties['verticalAlign'];
1391
+ /**
1392
+ * Web-only style property. Will be omitted on native.
1393
+ */
1394
+ minInlineSize?: SizeTokens | number;
1395
+ /**
1396
+ * Web-only style property. Will be omitted on native.
1397
+ */
1398
+ maxInlineSize?: SizeTokens | number;
1399
+ /**
1400
+ * Web-only style property. Will be omitted on native.
1401
+ */
1402
+ borderInlineColor?: ColorTokens;
1403
+ /**
1404
+ * Web-only style property. Will be omitted on native.
1405
+ */
1406
+ borderInlineStartColor?: ColorTokens;
1407
+ /**
1408
+ * Web-only style property. Will be omitted on native.
1409
+ */
1410
+ borderInlineEndColor?: ColorTokens;
1411
+ borderBlockWidth?: SpaceTokens | number;
1412
+ borderBlockStartWidth?: SpaceTokens | number;
1413
+ borderBlockEndWidth?: SpaceTokens | number;
1414
+ borderInlineWidth?: SpaceTokens | number;
1415
+ borderInlineStartWidth?: SpaceTokens | number;
1416
+ borderInlineEndWidth?: SpaceTokens | number;
1417
+ borderBlockStyle?: ViewStyle['borderStyle'];
1418
+ borderBlockStartStyle?: ViewStyle['borderStyle'];
1419
+ borderBlockEndStyle?: ViewStyle['borderStyle'];
1420
+ borderInlineStyle?: ViewStyle['borderStyle'];
1421
+ borderInlineStartStyle?: ViewStyle['borderStyle'];
1422
+ borderInlineEndStyle?: ViewStyle['borderStyle'];
1423
+ marginBlock?: SpaceTokens | number;
1424
+ marginBlockStart?: SpaceTokens | number;
1425
+ marginBlockEnd?: SpaceTokens | number;
1426
+ marginInline?: SpaceTokens | number;
1427
+ marginInlineStart?: SpaceTokens | number;
1428
+ marginInlineEnd?: SpaceTokens | number;
1429
+ paddingBlock?: SpaceTokens | number;
1430
+ paddingBlockStart?: SpaceTokens | number;
1431
+ paddingBlockEnd?: SpaceTokens | number;
1432
+ paddingInline?: SpaceTokens | number;
1433
+ paddingInlineStart?: SpaceTokens | number;
1434
+ paddingInlineEnd?: SpaceTokens | number;
1435
+ inset?: SpaceTokens | number;
1436
+ insetBlock?: SpaceTokens | number;
1437
+ insetBlockStart?: SpaceTokens | number;
1438
+ insetBlockEnd?: SpaceTokens | number;
1439
+ insetInline?: SpaceTokens | number;
1440
+ insetInlineStart?: SpaceTokens | number;
1441
+ insetInlineEnd?: SpaceTokens | number;
1442
+ }
1443
+ export interface ExtendBaseStackProps {
1444
+ }
1445
+ export interface ExtendBaseTextProps {
1446
+ }
1447
+ interface ExtraBaseProps {
1448
+ /**
1449
+ * Transitions are defined using `createHanzogui` typically in a hanzogui.config.ts file.
1450
+ * Pass a string transition name here and it uses an animation driver to execute it.
1451
+ *
1452
+ * See: https://hanzogui.dev/docs/core/animations
1453
+ */
1454
+ transition?: TransitionProp | null;
1455
+ /**
1456
+ * Pass an array of strings containing the long style property names
1457
+ * which will be exclusively transitioned.
1458
+ */
1459
+ animateOnly?: string[];
1460
+ /**
1461
+ * If you'd like this component to not attach to the nearest parent AnimatePresence,
1462
+ * set this to `false` and it will pass through to the next animated child.
1463
+ */
1464
+ animatePresence?: boolean;
1465
+ /**
1466
+ * Avoids as much work as possible and passes through the children with no changes.
1467
+ * Advanced: Useful for adapting to other element when you want to avoid re-parenting.
1468
+ */
1469
+ passThrough?: boolean;
1470
+ }
1471
+ interface ExtendedBaseProps extends TransformStyleProps, ExtendBaseTextProps, ExtendBaseStackProps, ExtraStyleProps, ExtraBaseProps {
1472
+ display?: 'inherit' | 'none' | 'inline' | 'block' | 'contents' | 'flex' | 'inline-flex';
1473
+ position?: 'absolute' | 'relative' | 'fixed' | 'static' | 'sticky';
1474
+ }
1475
+ export interface StackStyleBase extends Omit<ViewStyle, keyof ExtendedBaseProps | 'elevation'>, ExtendedBaseProps {
1476
+ }
1477
+ export interface TextStylePropsBase extends Omit<RNTextStyle, keyof ExtendedBaseProps>, ExtendedBaseProps {
1478
+ ellipsis?: boolean;
1479
+ numberOfLines?: number;
1480
+ textDecorationDistance?: number;
1481
+ textOverflow?: Properties['textOverflow'];
1482
+ whiteSpace?: Properties['whiteSpace'];
1483
+ wordWrap?: Properties['wordWrap'];
1484
+ /**
1485
+ * CSS text-shadow string. Supports tokens: "2px 2px 4px $shadowColor"
1486
+ * On native, only a single shadow is supported.
1487
+ */
1488
+ textShadow?: string;
1489
+ }
1490
+ type LooseCombinedObjects<A extends object, B extends object> = A | B | (A & B);
1491
+ export interface StackNonStyleProps extends Omit<ViewProps, 'hitSlop' | 'pointerEvents' | 'display' | 'children' | keyof HanzoguiComponentPropsBaseBase | RNOnlyProps | keyof ExtendBaseStackProps | 'style' | 'onFocus' | 'onBlur' | 'onPointerCancel' | 'onPointerDown' | 'onPointerMove' | 'onPointerUp'>, ExtendBaseStackProps, HanzoguiComponentPropsBase {
1492
+ style?: StyleProp<LooseCombinedObjects<React.CSSProperties, ViewStyle>>;
1493
+ }
1494
+ export type StackStyle = WithThemeShorthandsPseudosMedia<StackStyleBase>;
1495
+ export interface TextNonStyleProps extends Omit<ReactTextProps, 'children' | keyof WebOnlyPressEvents | RNOnlyProps | keyof ExtendBaseTextProps | 'style'>, ExtendBaseTextProps, HanzoguiComponentPropsBase {
1496
+ style?: StyleProp<LooseCombinedObjects<React.CSSProperties, RNTextStyle>>;
1497
+ }
1498
+ export type TextStyle = WithThemeShorthandsPseudosMedia<TextStylePropsBase>;
1499
+ export type TextProps = TextNonStyleProps & TextStyle;
1500
+ export interface ThemeableProps {
1501
+ theme?: ThemeName | null;
1502
+ themeReset?: boolean;
1503
+ componentName?: string;
1504
+ debug?: DebugProp;
1505
+ }
1506
+ export type StyleableOptions = {
1507
+ disableTheme?: boolean;
1508
+ staticConfig?: Partial<StaticConfig>;
1509
+ };
1510
+ export type Styleable<Props, Ref, NonStyledProps, BaseStyles extends object, VariantProps, ParentStaticProperties> = <CustomProps extends object | void = void, MergedProps = CustomProps extends void ? Props : Omit<Props, keyof CustomProps> & CustomProps, FunctionDef extends ForwardRefRenderFunction<Ref, MergedProps> = ForwardRefRenderFunction<Ref, MergedProps>>(a: FunctionDef, options?: StyleableOptions) => HanzoguiComponent<MergedProps, Ref, NonStyledProps & CustomProps, BaseStyles, VariantProps, ParentStaticProperties>;
1511
+ export type GetFinalProps<NonStyleProps, StylePropsBase, Variants> = Omit<NonStyleProps, keyof StylePropsBase | keyof Variants> & (StylePropsBase extends object ? WithThemeShorthandsPseudosMedia<StylePropsBase, Variants> : {});
1512
+ export type HanzoguiComponent<Props = any, Ref = any, NonStyledProps = {}, BaseStyles extends object = {}, Variants = {}, ParentStaticProperties = {}> = ForwardRefExoticComponent<(Props extends TamaDefer ? GetFinalProps<NonStyledProps, BaseStyles, Variants> : Props) & RefAttributes<Ref>> & StaticComponentObject<Props, Ref, NonStyledProps, BaseStyles, Variants, ParentStaticProperties> & Omit<ParentStaticProperties, 'staticConfig' | 'styleable'> & {
1513
+ __tama: [Props, Ref, NonStyledProps, BaseStyles, Variants, ParentStaticProperties];
1514
+ };
1515
+ export type InferGenericComponentProps<A> = A extends ComponentType<infer Props> ? Props : A extends ForwardRefExoticComponent<infer P> ? P : A extends ReactComponentWithRef<infer P, any> ? P : A extends new (props: infer Props) => any ? Props : {};
1516
+ export type InferStyledProps<A extends StylableComponent, B extends StaticConfigPublic> = A extends {
1517
+ __tama: any;
1518
+ } ? GetProps<A> : GetFinalProps<InferGenericComponentProps<A>, GetBaseStyles<{}, B>, {}>;
1519
+ /** Like InferStyledProps but returns only style props (no non-styled props or variants). */
1520
+ export type InferStyleProps<A extends StylableComponent, B extends StaticConfigPublic> = WithThemeShorthandsPseudosMedia<GetBaseStyles<A, B>, {}>;
1521
+ export type GetProps<A extends StylableComponent> = A extends {
1522
+ __tama: [
1523
+ infer Props,
1524
+ any,
1525
+ infer NonStyledProps,
1526
+ infer BaseStyles,
1527
+ infer VariantProps,
1528
+ any
1529
+ ];
1530
+ } ? Props extends TamaDefer ? GetFinalProps<NonStyledProps, BaseStyles, VariantProps> : Props : InferGenericComponentProps<A>;
1531
+ export type GetNonStyledProps<A extends StylableComponent> = A extends {
1532
+ __tama: [any, any, infer B, any, any, any];
1533
+ } ? B : HanzoguiComponentPropsBaseBase & GetProps<A>;
1534
+ export type GetBaseStyles<A, B> = A extends {
1535
+ __tama: [any, any, any, infer C, any, any];
1536
+ } ? C : B extends {
1537
+ isText: true;
1538
+ } ? TextStylePropsBase : B extends {
1539
+ isInput: true;
1540
+ } ? TextStylePropsBase : StackStyleBase;
1541
+ export type GetStyledVariants<A> = A extends {
1542
+ __tama: [any, any, any, any, infer B, any];
1543
+ } ? B : {};
1544
+ export type GetStaticConfig<A, Extra = {}> = A extends {
1545
+ __tama: [any, any, any, any, any, infer B];
1546
+ } ? B & Extra : Extra;
1547
+ export type StaticComponentObject<Props, Ref, NonStyledProps, BaseStyles extends object, VariantProps, ParentStaticProperties> = {
1548
+ staticConfig: StaticConfig;
1549
+ styleable: Styleable<Props extends TamaDefer ? GetFinalProps<NonStyledProps, BaseStyles, VariantProps> : Props, Ref, NonStyledProps, BaseStyles, VariantProps, ParentStaticProperties>;
1550
+ };
1551
+ export type HanzoguiComponentExpectingVariants<Props = {}, Variants extends object = {}> = HanzoguiComponent<Props, any, any, any, Variants>;
1552
+ export type HanzoguiProviderProps = Omit<ThemeProviderProps, 'children'> & {
1553
+ config?: HanzoguiInternalConfig;
1554
+ disableInjectCSS?: boolean;
1555
+ children?: ReactNode;
1556
+ insets?: {
1557
+ top: number;
1558
+ right: number;
1559
+ bottom: number;
1560
+ left: number;
1561
+ };
1562
+ };
1563
+ export type PropMappedValue = [string, any][] | undefined;
1564
+ export type GetStyleState = {
1565
+ style: TextStyle | null;
1566
+ usedKeys: Record<string, number>;
1567
+ classNames: ClassNamesObject;
1568
+ staticConfig: StaticConfig;
1569
+ theme: ThemeParsed;
1570
+ props: Record<string, any>;
1571
+ context?: ComponentContextI;
1572
+ viewProps: Record<string, any>;
1573
+ styleProps: SplitStyleProps;
1574
+ componentState: HanzoguiComponentState;
1575
+ conf: HanzoguiInternalConfig;
1576
+ avoidMergeTransform?: boolean;
1577
+ fontFamily?: string;
1578
+ debug?: DebugProp;
1579
+ flatTransforms?: Record<string, any>;
1580
+ overriddenContextProps?: Record<string, any>;
1581
+ originalContextPropValues?: Record<string, any>;
1582
+ pseudoTransitions?: PseudoTransitions | null;
1583
+ animationDriver?: AnimationDriver | null;
1584
+ };
1585
+ export type StyleResolver<Response = PropMappedValue> = (key: string, value: any, props: SplitStyleProps, state: GetStyleState, parentVariantKey: string) => Response;
1586
+ export type PropMapper = (key: string, value: any, state: GetStyleState, disabled: boolean, map: (key: string, val: any, originalVal?: any) => void) => void;
1587
+ export type GenericVariantDefinitions = {
1588
+ [key: string]: {
1589
+ [key: string]: ((a: any, b: any) => any) | {
1590
+ [key: string]: any;
1591
+ };
1592
+ };
1593
+ };
1594
+ export type StaticConfigPublic = {
1595
+ defaultProps?: Record<string, any>;
1596
+ /**
1597
+ * (compiler) If you need to pass context or something, prevents from ever
1598
+ * flattening. The 'jsx' option means it will never flatten. if you
1599
+ * pass JSX as a children (if its purely string, it will still flatten).
1600
+ */
1601
+ neverFlatten?: boolean | 'jsx';
1602
+ /**
1603
+ * Adds support for text props and handles focus properly
1604
+ */
1605
+ isInput?: boolean;
1606
+ /**
1607
+ * Determines ultimate output tag (Text vs View)
1608
+ */
1609
+ isText?: boolean;
1610
+ /**
1611
+ * Which style keys are allowed to be extracted.
1612
+ */
1613
+ validStyles?: {
1614
+ [key: string]: boolean;
1615
+ };
1616
+ /**
1617
+ * Accept Hanzogui tokens for these props (key for the prop key, val for the token category)
1618
+ */
1619
+ accept?: {
1620
+ [key: string]: keyof Tokens | 'style' | 'textStyle';
1621
+ };
1622
+ /**
1623
+ * (compiler) If these props are encountered, leave them un-extracted.
1624
+ */
1625
+ inlineProps?: Set<string>;
1626
+ /**
1627
+ * (compiler) If not flattening, leave this prop as original value.
1628
+ * Only applies to style attributes
1629
+ */
1630
+ inlineWhenUnflattened?: Set<string>;
1631
+ /**
1632
+ * Auto-detected, but can override. Wraps children to space them on top
1633
+ */
1634
+ isZStack?: boolean;
1635
+ /**
1636
+ * Auto-detect, but can override, passes styles properly to react-native-web
1637
+ */
1638
+ isReactNative?: boolean;
1639
+ /**
1640
+ * By default if styled() doesn't recognize a parent Hanzogui component or specific react-native views,
1641
+ * it will assume the passed in component only accepts style={} for react-native compatibility.
1642
+ * Setting `acceptsClassName: true` indicates Hanzogui can pass in className props.
1643
+ */
1644
+ acceptsClassName?: boolean;
1645
+ /**
1646
+ * memoizes component, rarely useful except mostly style components that don't take children
1647
+ */
1648
+ memo?: boolean;
1649
+ };
1650
+ type StaticConfigBase = StaticConfigPublic & {
1651
+ Component?: FunctionComponent<any> & StaticComponentObject<any, any, any, any, any, any>;
1652
+ variants?: GenericVariantDefinitions;
1653
+ context?: StyledContext;
1654
+ /**
1655
+ * Used for applying sub theme style
1656
+ */
1657
+ componentName?: string;
1658
+ /**
1659
+ * Merges into defaultProps later on, used internally only
1660
+ */
1661
+ defaultVariants?: {
1662
+ [key: string]: any;
1663
+ };
1664
+ /**
1665
+ * Memoize the component
1666
+ */
1667
+ memo?: boolean;
1668
+ /**
1669
+ * Used internally for knowing how to handle when a HOC is in-between styled()
1670
+ */
1671
+ isHOC?: boolean;
1672
+ isStyledHOC?: boolean;
1673
+ };
1674
+ export type StaticConfig = StaticConfigBase & {
1675
+ parentStaticConfig?: StaticConfigBase;
1676
+ };
1677
+ export type ViewStyleWithPseudos = TextStyle | (TextStyle & {
1678
+ hoverStyle?: TextStyle;
1679
+ pressStyle?: TextStyle;
1680
+ focusStyle?: TextStyle;
1681
+ focusWithinStyle?: TextStyle;
1682
+ focusVisibleStyle?: TextStyle;
1683
+ disabledStyle?: TextStyle;
1684
+ });
1685
+ /**
1686
+ * --------------------------------------------
1687
+ * variants
1688
+ * --------------------------------------------
1689
+ */
1690
+ export type StylableComponent = HanzoguiComponent | ComponentType<any> | ForwardRefExoticComponent<any> | ReactComponentWithRef<any, any> | (new (props: any) => any);
1691
+ export type SpreadKeys = '...fontSize' | '...fontStyle' | '...fontTransform' | '...lineHeight' | '...letterSpacing' | '...size' | '...space' | '...color' | '...zIndex' | '...theme' | '...radius';
1692
+ export type VariantDefinitions<Parent extends StylableComponent = HanzoguiComponent, StaticConfig extends StaticConfigPublic = Parent extends {
1693
+ __tama: [any, any, any, any, any, infer S];
1694
+ } ? S : {}, MyProps extends object = Partial<GetVariantProps<Parent, StaticConfig['isText'] extends true ? true : StaticConfig['isInput'] extends true ? true : false>>, Val = any> = VariantDefinitionFromProps<MyProps, Val> & {
1695
+ _isEmpty?: 1;
1696
+ };
1697
+ export type GetVariantProps<A extends StylableComponent, IsText extends boolean | undefined> = A extends {
1698
+ __tama: [
1699
+ infer Props,
1700
+ any,
1701
+ infer NonStyledProps,
1702
+ infer BaseStyles,
1703
+ infer VariantProps,
1704
+ any
1705
+ ];
1706
+ } ? Props extends TamaDefer ? GetFinalProps<NonStyledProps, BaseStyles, VariantProps> : Props : WithThemeShorthandsPseudosMedia<IsText extends true ? TextStylePropsBase : StackStyleBase>;
1707
+ export type VariantDefinitionFromProps<MyProps, Val> = MyProps extends object ? {
1708
+ [propName: string]: VariantSpreadFunction<MyProps, Val> | ({
1709
+ [Key in SpreadKeys]?: Key extends '...fontSize' ? FontSizeVariantSpreadFunction<MyProps> : Key extends '...size' ? SizeVariantSpreadFunction<MyProps> : Key extends '...space' ? SpaceVariantSpreadFunction<MyProps> : Key extends '...color' ? ColorVariantSpreadFunction<MyProps> : Key extends '...lineHeight' ? FontLineHeightVariantSpreadFunction<MyProps> : Key extends '...fontTransform' ? FontTransformVariantSpreadFunction<MyProps> : Key extends '...fontStyle' ? FontStyleVariantSpreadFunction<MyProps> : Key extends '...letterSpacing' ? FontLetterSpacingVariantSpreadFunction<MyProps> : Key extends '...zIndex' ? ZIndexVariantSpreadFunction<MyProps> : Key extends '...radius' ? RadiusVariantSpreadFunction<MyProps> : Key extends '...theme' ? ThemeVariantSpreadFunction<MyProps> : never;
1710
+ } & {
1711
+ [Key in string | number | 'true' | 'false']?: MyProps | VariantSpreadFunction<MyProps, Val>;
1712
+ } & {
1713
+ [Key in VariantTypeKeys]?: Key extends ':number' ? VariantSpreadFunction<MyProps, number> : Key extends ':boolean' ? VariantSpreadFunction<MyProps, boolean> : Key extends ':string' ? VariantSpreadFunction<MyProps, string> : never;
1714
+ });
1715
+ } : {};
1716
+ export type GenericStackVariants = VariantDefinitionFromProps<StackNonStyleProps & StackStyle, any>;
1717
+ export type GenericTextVariants = VariantDefinitionFromProps<TextProps, any>;
1718
+ export type VariantSpreadExtras<Props> = {
1719
+ fonts: HanzoguiConfig['fonts'];
1720
+ tokens: TokensParsed;
1721
+ theme: Themes extends {
1722
+ [key: string]: infer B;
1723
+ } ? B : unknown;
1724
+ props: Props;
1725
+ fontFamily?: FontFamilyTokens;
1726
+ font?: Font;
1727
+ };
1728
+ type PropLike = {
1729
+ [key: string]: any;
1730
+ };
1731
+ export type VariantSpreadFunction<Props extends PropLike, Val = any> = (val: Val, config: VariantSpreadExtras<Props>) => {
1732
+ [Key in keyof Props]: Props[Key] | Variable | VariableVal;
1733
+ } | null | undefined;
1734
+ export type VariantTypeKeys = ':string' | ':boolean' | ':number';
1735
+ export type GetVariantValues<Key> = Key extends `...${infer VariantSpread}` ? ThemeValueByCategory<VariantSpread> : Key extends 'true' | 'false' ? boolean : Key extends ':string' ? string : Key extends ':boolean' ? boolean : Key extends ':number' ? number : Key;
1736
+ export type FontSizeVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, FontSizeTokens>;
1737
+ export type SizeVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, SizeTokens>;
1738
+ export type SpaceVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, SpaceTokens>;
1739
+ export type ColorVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, ColorTokens>;
1740
+ export type FontLineHeightVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, FontLineHeightTokens>;
1741
+ export type FontLetterSpacingVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, FontLetterSpacingTokens>;
1742
+ export type FontStyleVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, FontStyleTokens>;
1743
+ export type FontTransformVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, FontTransformTokens>;
1744
+ export type ZIndexVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, ZIndexTokens>;
1745
+ export type RadiusVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, RadiusTokens>;
1746
+ export type ThemeVariantSpreadFunction<A extends PropLike> = VariantSpreadFunction<A, ThemeTokens>;
1747
+ /**
1748
+ * --------------------------------------------
1749
+ * end variants
1750
+ * --------------------------------------------
1751
+ */
1752
+ export type ResolveVariableAs = 'auto' | 'value' | 'variable' | 'none' | 'web' | 'except-theme';
1753
+ export type SplitStyleProps = {
1754
+ styledContext?: Record<string, any>;
1755
+ mediaState?: Record<string, boolean>;
1756
+ noClass?: boolean;
1757
+ noExpand?: boolean;
1758
+ noNormalize?: boolean | 'values';
1759
+ noSkip?: boolean;
1760
+ noMergeStyle?: boolean;
1761
+ resolveValues?: ResolveVariableAs;
1762
+ disableExpandShorthands?: boolean;
1763
+ fallbackProps?: Record<string, any>;
1764
+ hasTextAncestor?: boolean;
1765
+ willBeAnimated?: boolean;
1766
+ isAnimated: boolean;
1767
+ isExiting?: boolean;
1768
+ exitVariant?: string;
1769
+ enterVariant?: string;
1770
+ };
1771
+ export interface PresenceContextProps {
1772
+ id: string;
1773
+ isPresent: boolean;
1774
+ register: (id: string) => () => void;
1775
+ onExitComplete?: (id: string) => void;
1776
+ initial?: false | string | string[];
1777
+ custom?: any;
1778
+ exitVariant?: string | null;
1779
+ enterVariant?: string | null;
1780
+ enterExitVariant?: string | null;
1781
+ }
1782
+ type SafeToRemoveCallback = () => void;
1783
+ type AlwaysPresent = [true, null, null];
1784
+ type Present = [true, undefined, PresenceContextProps];
1785
+ type NotPresent = [false, SafeToRemoveCallback, PresenceContextProps];
1786
+ export type UsePresenceResult = AlwaysPresent | Present | NotPresent;
1787
+ type AnimationConfig = {
1788
+ [key: string]: any;
1789
+ };
1790
+ export type AnimatedNumberStrategy = {
1791
+ type: 'spring';
1792
+ stiffness?: number;
1793
+ damping?: number;
1794
+ mass?: number;
1795
+ overshootClamping?: boolean;
1796
+ restSpeedThreshold?: number;
1797
+ restDisplacementThreshold?: number;
1798
+ } | {
1799
+ type: 'timing';
1800
+ duration: number;
1801
+ } | {
1802
+ type: 'direct';
1803
+ };
1804
+ export type UniversalAnimatedNumber<A> = {
1805
+ getInstance(): A;
1806
+ getValue(): number;
1807
+ setValue(next: number, config?: AnimatedNumberStrategy, onFinished?: () => void): void;
1808
+ stop(): void;
1809
+ };
1810
+ export type UseAnimatedNumberReaction<V extends UniversalAnimatedNumber<any> = UniversalAnimatedNumber<any>> = (opts: {
1811
+ value: V;
1812
+ hostRef: RefObject<HanzoguiElement>;
1813
+ }, onValue: (current: number) => void) => void;
1814
+ export type UseAnimatedNumberStyle<V extends UniversalAnimatedNumber<any> = UniversalAnimatedNumber<any>> = (val: V, getStyle: (current: any) => any) => any;
1815
+ export type UseAnimatedNumbersStyle<V extends UniversalAnimatedNumber<any> = UniversalAnimatedNumber<any>> = (vals: V[], getStyle: (...currentValues: any[]) => any) => any;
1816
+ export type UseAnimatedNumber<N extends UniversalAnimatedNumber<any> = UniversalAnimatedNumber<any>> = (initial: number) => N;
1817
+ export type AnimationDriver<A extends AnimationConfig = AnimationConfig> = {
1818
+ isReactNative?: boolean;
1819
+ /** What style format the driver expects as input: 'css' (CSS variables) or 'value' (resolved values) */
1820
+ inputStyle?: 'css' | 'value';
1821
+ /** How the driver outputs styles: 'css' (className-based) or 'inline' (style object) */
1822
+ outputStyle?: 'css' | 'inline';
1823
+ needsCustomComponent?: boolean;
1824
+ avoidReRenders?: boolean;
1825
+ onMount?: () => void;
1826
+ /** When true, this is a stub driver with no real animation support */
1827
+ isStub?: boolean;
1828
+ useAnimations: UseAnimationHook;
1829
+ usePresence: () => UsePresenceResult;
1830
+ ResetPresence: (props: {
1831
+ children?: React.ReactNode;
1832
+ disabled?: boolean;
1833
+ }) => React.ReactNode;
1834
+ useAnimatedNumber: UseAnimatedNumber;
1835
+ useAnimatedNumberStyle: UseAnimatedNumberStyle;
1836
+ useAnimatedNumbersStyle?: UseAnimatedNumbersStyle;
1837
+ useAnimatedNumberReaction: UseAnimatedNumberReaction;
1838
+ animations: A;
1839
+ View?: any;
1840
+ Text?: any;
1841
+ };
1842
+ export type UseAnimationProps = HanzoguiComponentPropsBase & Record<string, any>;
1843
+ type UseStyleListener = (nextStyle: Record<string, unknown>, effectiveTransition?: TransitionProp | null) => void;
1844
+ export type UseStyleEmitter = (cb: UseStyleListener) => void;
1845
+ export type UseAnimationHook = (props: {
1846
+ style: Record<string, any>;
1847
+ props: Record<string, any>;
1848
+ presence?: UsePresenceResult | null;
1849
+ staticConfig: StaticConfig;
1850
+ styleProps: SplitStyleProps;
1851
+ componentState: HanzoguiComponentState;
1852
+ useStyleEmitter?: UseStyleEmitter;
1853
+ theme: ThemeParsed;
1854
+ themeName: string;
1855
+ pseudos: WithPseudoProps<ViewStyle> | null;
1856
+ stateRef: {
1857
+ current: HanzoguiComponentStateRef;
1858
+ };
1859
+ onDidAnimate?: any;
1860
+ delay?: number;
1861
+ }) => null | {
1862
+ style?: StackStyleBase | StackStyleBase[];
1863
+ className?: string;
1864
+ ref?: any;
1865
+ };
1866
+ export type GestureReponderEvent = Exclude<View['props']['onResponderMove'], void> extends (event: infer Event) => void ? Event : never;
1867
+ export type RulesToInsert = Record<string, StyleObject>;
1868
+ export type GetStyleResult = {
1869
+ pseudos?: PseudoStyles | null;
1870
+ style: ViewStyle | null;
1871
+ classNames: ClassNamesObject;
1872
+ rulesToInsert: RulesToInsert;
1873
+ viewProps: (StackNonStyleProps & StackStyle) & Record<string, any>;
1874
+ fontFamily: string | undefined;
1875
+ space?: any;
1876
+ hasMedia: boolean | Set<string>;
1877
+ dynamicThemeAccess?: boolean;
1878
+ pseudoGroups?: Set<string>;
1879
+ mediaGroups?: Set<string>;
1880
+ overriddenContextProps?: Record<string, any>;
1881
+ pseudoTransitions?: PseudoTransitions | null;
1882
+ effectiveTransition?: TransitionProp | null;
1883
+ };
1884
+ export type ClassNamesObject = Record<string, string>;
1885
+ export type ModifyHanzoguiComponentStyleProps<Comp extends HanzoguiComponent, ChangedProps extends object> = Comp extends HanzoguiComponent<infer A, infer B, infer C, infer D, infer E> ? A extends object ? HanzoguiComponent<Omit<A, keyof ChangedProps> & ChangedProps, B, C, D, E> : never : never;
1886
+ /**
1887
+ * Narrow copied from ts-toolbelt
1888
+ * https://github.com/millsp/ts-toolbelt/blob/master/sources/Function/Narrow.ts
1889
+ */
1890
+ export type Try<A1, A2, Catch = never> = A1 extends A2 ? A1 : Catch;
1891
+ type Narrowable = string | number | bigint | boolean;
1892
+ type NarrowRaw<A> = (A extends [] ? [] : never) | (A extends Narrowable ? A : never) | {
1893
+ [K in keyof A]: A[K] extends Function ? A[K] : NarrowRaw<A[K]>;
1894
+ };
1895
+ export type Narrow<A> = Try<A, [], NarrowRaw<A>>;
1896
+ /**
1897
+ * `StyleProp` copied from React Native:
1898
+ * Exported to fix https://github.com/hanzoai/gui/issues/1258
1899
+ */
1900
+ export type Falsy = undefined | null | false | '';
1901
+ export interface RecursiveArray<T> extends Array<T | ReadonlyArray<T> | RecursiveArray<T>> {
1902
+ }
1903
+ /** Keep a brand of 'T' so that calls to `StyleSheet.flatten` can take `RegisteredStyle<T>` and return `T`. */
1904
+ export type RegisteredStyle<T> = number & {
1905
+ __registeredStyleBrand: T;
1906
+ };
1907
+ export type StyleProp<T> = T | RegisteredStyle<T> | RecursiveArray<T | RegisteredStyle<T> | Falsy> | Falsy;
1908
+ export type FillInFont<A extends GenericFont, DefaultKeys extends string | number> = {
1909
+ family: string;
1910
+ lineHeight: FillInFontValues<A, 'lineHeight', DefaultKeys>;
1911
+ weight: FillInFontValues<A, 'weight', DefaultKeys>;
1912
+ letterSpacing: FillInFontValues<A, 'letterSpacing', DefaultKeys>;
1913
+ size: FillInFontValues<A, 'size', DefaultKeys>;
1914
+ style: FillInFontValues<A, 'style', DefaultKeys>;
1915
+ transform: FillInFontValues<A, 'transform', DefaultKeys>;
1916
+ color: FillInFontValues<A, 'color', DefaultKeys>;
1917
+ face: Partial<A['face']>;
1918
+ };
1919
+ type FillInFontValues<A extends GenericFont, K extends keyof A, DefaultKeys extends string | number> = keyof A[K] extends GenericFontKey ? {
1920
+ [Key in DefaultKeys]: A[K][any];
1921
+ } : {
1922
+ [Key in keyof A[K] | DefaultKeys]: Key extends keyof A[K] ? Exclude<A[K][Key], Variable> : any;
1923
+ };
1924
+ export type ThemesLikeObject = Record<string, Record<string, string>>;
1925
+ export type DedupedTheme = {
1926
+ names: string[];
1927
+ theme: ThemeParsed;
1928
+ };
1929
+ export type DedupedThemes = DedupedTheme[];
1930
+ export type UseMediaState = {
1931
+ [key in MediaQueryKey]: boolean;
1932
+ };
1933
+ export type TamaDefer = {
1934
+ __tamaDefer: true;
1935
+ };
1936
+ //# sourceMappingURL=types.d.ts.map