@nikkory/vibe-engine 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (333) hide show
  1. package/PUBLISH-GUIDE.md +250 -0
  2. package/README.md +1267 -0
  3. package/bin/vibe.js +22 -0
  4. package/dist/adapters/index.d.ts +19 -0
  5. package/dist/browser.d.ts +25 -0
  6. package/dist/browser.js +15083 -0
  7. package/dist/browser.mjs +15000 -0
  8. package/dist/cli/batch-command.d.ts +142 -0
  9. package/dist/cli/generate-command.d.ts +119 -0
  10. package/dist/cli/index.d.ts +34 -0
  11. package/dist/constants/ComponentTypes.d.ts +65 -0
  12. package/dist/constants/DesignSystems.d.ts +64 -0
  13. package/dist/constants/Frameworks.d.ts +71 -0
  14. package/dist/constants/Tiers.d.ts +72 -0
  15. package/dist/constants/index.d.ts +10 -0
  16. package/dist/converters/index.d.ts +12 -0
  17. package/dist/converters/section-converter.d.ts +176 -0
  18. package/dist/index.d.ts +58 -0
  19. package/dist/index.js +19819 -0
  20. package/dist/index.mjs +19496 -0
  21. package/dist/resolution/basic/groups-basic.d.ts +80 -0
  22. package/dist/resolution/basic/index.d.ts +21 -0
  23. package/dist/resolution/basic/intents-basic.d.ts +195 -0
  24. package/dist/resolution/basic/presets-basic.d.ts +96 -0
  25. package/dist/resolution/basic/resolver-basic.d.ts +127 -0
  26. package/dist/resolution/basic/shorthands-basic.d.ts +88 -0
  27. package/dist/resolution/core/groups-core.d.ts +160 -0
  28. package/dist/resolution/core/index.d.ts +21 -0
  29. package/dist/resolution/core/intents-core.d.ts +355 -0
  30. package/dist/resolution/core/presets-core.d.ts +160 -0
  31. package/dist/resolution/core/resolver-core.d.ts +207 -0
  32. package/dist/resolution/core/shorthands-core.d.ts +144 -0
  33. package/dist/resolution/core/types-core.d.ts +167 -0
  34. package/dist/resolution/debugger.d.ts +183 -0
  35. package/dist/resolution/demo.d.ts +57 -0
  36. package/dist/resolution/enterprise/index.d.ts +22 -0
  37. package/dist/resolution/enterprise/metrics.d.ts +152 -0
  38. package/dist/resolution/enterprise/resolver-enterprise.d.ts +108 -0
  39. package/dist/resolution/examples.d.ts +486 -0
  40. package/dist/resolution/groups/experience-group.d.ts +197 -0
  41. package/dist/resolution/groups/index.d.ts +196 -0
  42. package/dist/resolution/groups/layout-group.d.ts +192 -0
  43. package/dist/resolution/groups/motion-group.d.ts +127 -0
  44. package/dist/resolution/groups/visual-group.d.ts +146 -0
  45. package/dist/resolution/index.d.ts +41 -0
  46. package/dist/resolution/intents/button-intents.d.ts +231 -0
  47. package/dist/resolution/intents/card-intents.d.ts +177 -0
  48. package/dist/resolution/intents/feedback-intents.d.ts +222 -0
  49. package/dist/resolution/intents/index.d.ts +189 -0
  50. package/dist/resolution/intents/input-intents.d.ts +231 -0
  51. package/dist/resolution/intents/mood-modifiers.d.ts +154 -0
  52. package/dist/resolution/performance.d.ts +264 -0
  53. package/dist/resolution/presets/button-presets.d.ts +243 -0
  54. package/dist/resolution/presets/card-presets.d.ts +216 -0
  55. package/dist/resolution/presets/data-display-presets.d.ts +290 -0
  56. package/dist/resolution/presets/feedback-presets.d.ts +335 -0
  57. package/dist/resolution/presets/form-presets.d.ts +308 -0
  58. package/dist/resolution/presets/index.d.ts +22 -0
  59. package/dist/resolution/presets/input-presets.d.ts +207 -0
  60. package/dist/resolution/presets/nav-presets.d.ts +235 -0
  61. package/dist/resolution/presets/overlay-presets.d.ts +216 -0
  62. package/dist/resolution/presets/preset-registry.d.ts +212 -0
  63. package/dist/resolution/resolveProps.d.ts +235 -0
  64. package/dist/resolution/shorthand/feel-mappings.d.ts +140 -0
  65. package/dist/resolution/shorthand/index.d.ts +172 -0
  66. package/dist/resolution/shorthand/look-mappings.d.ts +107 -0
  67. package/dist/resolution/shorthand/spacing-mappings.d.ts +164 -0
  68. package/dist/resolution/shorthand/surface-mappings.d.ts +139 -0
  69. package/dist/resolution/standard/groups-standard.d.ts +98 -0
  70. package/dist/resolution/standard/index.d.ts +28 -0
  71. package/dist/resolution/standard/intents-standard.d.ts +232 -0
  72. package/dist/resolution/standard/presets-standard.d.ts +123 -0
  73. package/dist/resolution/standard/resolver-standard.d.ts +204 -0
  74. package/dist/resolution/standard/shorthands-standard.d.ts +98 -0
  75. package/dist/resolution/standard/validators.d.ts +141 -0
  76. package/dist/resolution/types.d.ts +461 -0
  77. package/dist/resolution/validators/factor24-validator.d.ts +418 -0
  78. package/dist/resolution/validators/index.d.ts +14 -0
  79. package/dist/scripts/generate-react-library.d.ts +15 -0
  80. package/dist/scripts/write-react-library.d.ts +18 -0
  81. package/dist/storage/cloud-sync.d.ts +182 -0
  82. package/dist/storage/index.d.ts +69 -0
  83. package/dist/storage/local-storage.d.ts +131 -0
  84. package/dist/storage/section-storage.d.ts +191 -0
  85. package/dist/styling/StyleGenerator.d.ts +76 -0
  86. package/dist/styling/TokenStyleResolver.d.ts +163 -0
  87. package/dist/styling/factor-migration.d.ts +192 -0
  88. package/dist/styling/factor-validators.d.ts +327 -0
  89. package/dist/styling/factors-1-6.d.ts +674 -0
  90. package/dist/styling/factors-12-16.d.ts +700 -0
  91. package/dist/styling/factors-17-24.d.ts +668 -0
  92. package/dist/styling/factors-all.d.ts +348 -0
  93. package/dist/styling/factors.d.ts +291 -0
  94. package/dist/styling/index.d.ts +31 -0
  95. package/dist/styling/types.d.ts +400 -0
  96. package/dist/tokens/schema.d.ts +486 -0
  97. package/dist/types/Option.d.ts +178 -0
  98. package/dist/types/Result.d.ts +148 -0
  99. package/dist/types/algorithm-engine.types.d.ts +298 -0
  100. package/dist/types/granularity/base.types.d.ts +268 -0
  101. package/dist/types/granularity/config.types.d.ts +177 -0
  102. package/dist/types/granularity/factors.types.d.ts +194 -0
  103. package/dist/types/granularity/index.d.ts +57 -0
  104. package/dist/types/granularity/slot.types.d.ts +128 -0
  105. package/dist/types/granularity/template.types.d.ts +179 -0
  106. package/dist/types/granularity-levels/atom.config.d.ts +151 -0
  107. package/dist/types/granularity-levels/component.config.d.ts +175 -0
  108. package/dist/types/granularity-levels/index.d.ts +47 -0
  109. package/dist/types/granularity-levels/layout.config.d.ts +278 -0
  110. package/dist/types/granularity-levels/page.config.d.ts +210 -0
  111. package/dist/types/granularity-levels/section.config.d.ts +188 -0
  112. package/dist/types/granularity-levels/template.config.d.ts +340 -0
  113. package/dist/types/index.d.ts +152 -0
  114. package/dist/types/section-slot.types.d.ts +169 -0
  115. package/dist/types/section-storage.types.d.ts +298 -0
  116. package/dist/types/section-template.types.d.ts +170 -0
  117. package/dist/types/section.types.d.ts +326 -0
  118. package/dist/ui-studio/ComponentGenerator.d.ts +219 -0
  119. package/dist/ui-studio/composition/FactorPropagator.d.ts +268 -0
  120. package/dist/ui-studio/composition/PageGenerator.d.ts +176 -0
  121. package/dist/ui-studio/composition/SectionGenerator.d.ts +312 -0
  122. package/dist/ui-studio/composition/SlotResolver.d.ts +295 -0
  123. package/dist/ui-studio/composition/section-orchestrator.d.ts +306 -0
  124. package/dist/ui-studio/granularity/FactorCascade.d.ts +328 -0
  125. package/dist/ui-studio/granularity/GranularityGenerator.d.ts +266 -0
  126. package/dist/ui-studio/granularity/RecursiveGenerator.d.ts +328 -0
  127. package/dist/ui-studio/index.d.ts +94 -0
  128. package/dist/ui-studio/matrix/ClassMapper.d.ts +128 -0
  129. package/dist/ui-studio/matrix/MatrixResolver.d.ts +203 -0
  130. package/dist/ui-studio/matrix/types.d.ts +96 -0
  131. package/dist/ui-studio/presets/IndustryDetector.d.ts +183 -0
  132. package/dist/ui-studio/presets/component-registry.d.ts +213 -0
  133. package/dist/ui-studio/presets/factor-registry.d.ts +364 -0
  134. package/dist/ui-studio/presets/granularity-registry.d.ts +252 -0
  135. package/dist/ui-studio/presets/index.d.ts +32 -0
  136. package/dist/ui-studio/presets/industries.d.ts +143 -0
  137. package/dist/ui-studio/presets/layout-registry.d.ts +21 -0
  138. package/dist/ui-studio/presets/matrix-groups.d.ts +195 -0
  139. package/dist/ui-studio/presets/page-registry.d.ts +24 -0
  140. package/dist/ui-studio/presets/registry.constants.d.ts +69 -0
  141. package/dist/ui-studio/presets/registry.types.d.ts +166 -0
  142. package/dist/ui-studio/presets/section-defaults.d.ts +175 -0
  143. package/dist/ui-studio/presets/section-registry.d.ts +83 -0
  144. package/dist/ui-studio/presets/section-registry.defaults.d.ts +106 -0
  145. package/dist/ui-studio/presets/section-registry.helpers.d.ts +112 -0
  146. package/dist/ui-studio/presets/section-registry.types.d.ts +181 -0
  147. package/dist/ui-studio/presets/template-registry.d.ts +23 -0
  148. package/dist/ui-studio/presets/variants.d.ts +1038 -0
  149. package/dist/ui-studio/registries/components-registry.d.ts +193 -0
  150. package/dist/ui-studio/registries/design-systems-registry.d.ts +153 -0
  151. package/dist/ui-studio/registries/factors-registry.d.ts +145 -0
  152. package/dist/ui-studio/registries/tiers-registry.d.ts +150 -0
  153. package/dist/ui-studio/resolution/FactorResolver.d.ts +201 -0
  154. package/dist/ui-studio/templates/TestGenerator.d.ts +55 -0
  155. package/dist/ui-studio/templates/TierGenerator.d.ts +153 -0
  156. package/dist/ui-studio/templates/TypesGenerator.d.ts +51 -0
  157. package/dist/ui-studio/types/granularity/base.types.d.ts +268 -0
  158. package/dist/ui-studio/types/granularity/config.types.d.ts +177 -0
  159. package/dist/ui-studio/types/granularity/factors.types.d.ts +194 -0
  160. package/dist/ui-studio/types/granularity/index.d.ts +57 -0
  161. package/dist/ui-studio/types/granularity/slot.types.d.ts +128 -0
  162. package/dist/ui-studio/types/granularity/template.types.d.ts +179 -0
  163. package/dist/ui-studio/types/granularity-levels/atom.config.d.ts +151 -0
  164. package/dist/ui-studio/types/granularity-levels/component.config.d.ts +175 -0
  165. package/dist/ui-studio/types/granularity-levels/index.d.ts +47 -0
  166. package/dist/ui-studio/types/granularity-levels/layout.config.d.ts +278 -0
  167. package/dist/ui-studio/types/granularity-levels/page.config.d.ts +210 -0
  168. package/dist/ui-studio/types/granularity-levels/section.config.d.ts +188 -0
  169. package/dist/ui-studio/types/granularity-levels/template.config.d.ts +340 -0
  170. package/dist/ui-studio/types.d.ts +323 -0
  171. package/dist/utils/CodeUtils.d.ts +103 -0
  172. package/dist/utils/GenerateComponentValidator.d.ts +35 -0
  173. package/dist/utils/Logger.d.ts +101 -0
  174. package/dist/utils/StringUtils.d.ts +120 -0
  175. package/dist/utils/ValidationUtils.d.ts +71 -0
  176. package/dist/utils/errors/BaseError.d.ts +23 -0
  177. package/dist/utils/errors/GenerationError.d.ts +14 -0
  178. package/dist/utils/errors/TemplateNotFoundError.d.ts +13 -0
  179. package/dist/utils/errors/ValidationError.d.ts +13 -0
  180. package/dist/utils/errors/index.d.ts +12 -0
  181. package/dist/utils/factor-resolver.d.ts +294 -0
  182. package/dist/utils/granularity-helpers.d.ts +359 -0
  183. package/dist/utils/index.d.ts +20 -0
  184. package/dist/utils/performance.d.ts +26 -0
  185. package/dist/utils/stringify.d.ts +28 -0
  186. package/dist/validators/component-validator.d.ts +86 -0
  187. package/dist/validators/design-system-validator.d.ts +95 -0
  188. package/dist/validators/factor-validator.d.ts +101 -0
  189. package/dist/validators/index.d.ts +263 -0
  190. package/dist/validators/section-validator.d.ts +120 -0
  191. package/dist/validators/slot-validator.d.ts +161 -0
  192. package/dist/validators/tier-validator.d.ts +102 -0
  193. package/package.json +67 -0
  194. package/tests/16-factor-integration.test.d.ts +14 -0
  195. package/tests/16-factor-visual.test.d.ts +14 -0
  196. package/tests/5-level-integration.test.d.ts +14 -0
  197. package/tests/CodeUtils.test.d.ts +7 -0
  198. package/tests/DesignSystems.test.d.ts +7 -0
  199. package/tests/GenerateComponentValidator.test.d.ts +7 -0
  200. package/tests/Logger.test.d.ts +7 -0
  201. package/tests/StringUtils.test.d.ts +7 -0
  202. package/tests/StyleGenerator.test.d.ts +13 -0
  203. package/tests/Tiers.test.d.ts +7 -0
  204. package/tests/TokenRegistry.test.d.ts +14 -0
  205. package/tests/TokenStyleResolver.test.d.ts +13 -0
  206. package/tests/ValidationUtils.test.d.ts +7 -0
  207. package/tests/_pending_fix/Accordion.test.d.ts +13 -0
  208. package/tests/_pending_fix/Alert.test.d.ts +13 -0
  209. package/tests/_pending_fix/AlertDialog.test.d.ts +13 -0
  210. package/tests/_pending_fix/AspectRatio.test.d.ts +13 -0
  211. package/tests/_pending_fix/Autocomplete.test.d.ts +13 -0
  212. package/tests/_pending_fix/Avatar.test.d.ts +13 -0
  213. package/tests/_pending_fix/Badge.test.d.ts +13 -0
  214. package/tests/_pending_fix/Banner.test.d.ts +13 -0
  215. package/tests/_pending_fix/Box.test.d.ts +13 -0
  216. package/tests/_pending_fix/Breadcrumb.test.d.ts +13 -0
  217. package/tests/_pending_fix/Callout.test.d.ts +13 -0
  218. package/tests/_pending_fix/Card.test.d.ts +13 -0
  219. package/tests/_pending_fix/Center.test.d.ts +13 -0
  220. package/tests/_pending_fix/Checkbox.test.d.ts +13 -0
  221. package/tests/_pending_fix/Chip.test.d.ts +13 -0
  222. package/tests/_pending_fix/ColorPicker.test.d.ts +13 -0
  223. package/tests/_pending_fix/Combobox.test.d.ts +13 -0
  224. package/tests/_pending_fix/CommandPalette.test.d.ts +13 -0
  225. package/tests/_pending_fix/ConfirmationModal.test.d.ts +13 -0
  226. package/tests/_pending_fix/Container.test.d.ts +13 -0
  227. package/tests/_pending_fix/DataTable.test.d.ts +13 -0
  228. package/tests/_pending_fix/DatePicker.test.d.ts +13 -0
  229. package/tests/_pending_fix/DateRangePicker.test.d.ts +13 -0
  230. package/tests/_pending_fix/DateTimePicker.test.d.ts +13 -0
  231. package/tests/_pending_fix/Divider.test.d.ts +13 -0
  232. package/tests/_pending_fix/Drawer.test.d.ts +13 -0
  233. package/tests/_pending_fix/Dropdown.test.d.ts +13 -0
  234. package/tests/_pending_fix/EmptyState.test.d.ts +13 -0
  235. package/tests/_pending_fix/ErrorState.test.d.ts +13 -0
  236. package/tests/_pending_fix/FileDropzone.test.d.ts +13 -0
  237. package/tests/_pending_fix/FileUpload.test.d.ts +13 -0
  238. package/tests/_pending_fix/Flex.test.d.ts +13 -0
  239. package/tests/_pending_fix/Grid.test.d.ts +13 -0
  240. package/tests/_pending_fix/GridItem.test.d.ts +13 -0
  241. package/tests/_pending_fix/HStack.test.d.ts +13 -0
  242. package/tests/_pending_fix/Input.test.d.ts +13 -0
  243. package/tests/_pending_fix/InputCurrency.test.d.ts +13 -0
  244. package/tests/_pending_fix/InputGroup.test.d.ts +13 -0
  245. package/tests/_pending_fix/InputOTP.test.d.ts +13 -0
  246. package/tests/_pending_fix/InputPassword.test.d.ts +13 -0
  247. package/tests/_pending_fix/InputPhone.test.d.ts +13 -0
  248. package/tests/_pending_fix/InputSearch.test.d.ts +13 -0
  249. package/tests/_pending_fix/Link.test.d.ts +13 -0
  250. package/tests/_pending_fix/List.test.d.ts +13 -0
  251. package/tests/_pending_fix/LoadingOverlay.test.d.ts +13 -0
  252. package/tests/_pending_fix/Menu.test.d.ts +13 -0
  253. package/tests/_pending_fix/Modal.test.d.ts +13 -0
  254. package/tests/_pending_fix/MultiSelect.test.d.ts +13 -0
  255. package/tests/_pending_fix/NavGroup.test.d.ts +13 -0
  256. package/tests/_pending_fix/NavItem.test.d.ts +13 -0
  257. package/tests/_pending_fix/NavLink.test.d.ts +13 -0
  258. package/tests/_pending_fix/Navbar.test.d.ts +13 -0
  259. package/tests/_pending_fix/Notification.test.d.ts +13 -0
  260. package/tests/_pending_fix/NotificationBadge.test.d.ts +13 -0
  261. package/tests/_pending_fix/NumberInput.test.d.ts +13 -0
  262. package/tests/_pending_fix/Pagination.test.d.ts +13 -0
  263. package/tests/_pending_fix/Popover.test.d.ts +13 -0
  264. package/tests/_pending_fix/Progress.test.d.ts +13 -0
  265. package/tests/_pending_fix/ProgressCircle.test.d.ts +13 -0
  266. package/tests/_pending_fix/ProgressSteps.test.d.ts +13 -0
  267. package/tests/_pending_fix/Radio.test.d.ts +13 -0
  268. package/tests/_pending_fix/RangeSlider.test.d.ts +13 -0
  269. package/tests/_pending_fix/ResizablePanel.test.d.ts +13 -0
  270. package/tests/_pending_fix/ResultState.test.d.ts +13 -0
  271. package/tests/_pending_fix/ScrollArea.test.d.ts +13 -0
  272. package/tests/_pending_fix/Select.test.d.ts +14 -0
  273. package/tests/_pending_fix/Sheet.test.d.ts +13 -0
  274. package/tests/_pending_fix/Sidebar.test.d.ts +13 -0
  275. package/tests/_pending_fix/SimpleGrid.test.d.ts +13 -0
  276. package/tests/_pending_fix/Skeleton.test.d.ts +13 -0
  277. package/tests/_pending_fix/Slider.test.d.ts +13 -0
  278. package/tests/_pending_fix/Spacer.test.d.ts +13 -0
  279. package/tests/_pending_fix/Spinner.test.d.ts +13 -0
  280. package/tests/_pending_fix/Stack.test.d.ts +13 -0
  281. package/tests/_pending_fix/Stat.test.d.ts +13 -0
  282. package/tests/_pending_fix/Stepper.test.d.ts +14 -0
  283. package/tests/_pending_fix/Switch.test.d.ts +13 -0
  284. package/tests/_pending_fix/Table.test.d.ts +13 -0
  285. package/tests/_pending_fix/Tabs.test.d.ts +13 -0
  286. package/tests/_pending_fix/Textarea.test.d.ts +13 -0
  287. package/tests/_pending_fix/Timeline.test.d.ts +13 -0
  288. package/tests/_pending_fix/Toast.test.d.ts +14 -0
  289. package/tests/_pending_fix/Tooltip.test.d.ts +14 -0
  290. package/tests/_pending_fix/VStack.test.d.ts +13 -0
  291. package/tests/alert.test.d.ts +13 -0
  292. package/tests/badge.test.d.ts +13 -0
  293. package/tests/benchmarks/factor-resolution.bench.d.ts +41 -0
  294. package/tests/button.test.d.ts +16 -0
  295. package/tests/card.test.d.ts +19 -0
  296. package/tests/checkbox.test.d.ts +13 -0
  297. package/tests/component-16-factor-types.test.d.ts +13 -0
  298. package/tests/component-5level-integration.test.d.ts +14 -0
  299. package/tests/component-registry-ui.test.d.ts +13 -0
  300. package/tests/e2e/16-factor-visual.test.d.ts +14 -0
  301. package/tests/edge-cases.test.d.ts +14 -0
  302. package/tests/factor-17-24-integration.test.d.ts +14 -0
  303. package/tests/factor-17-24-performance.test.d.ts +14 -0
  304. package/tests/factor-validators.test.d.ts +13 -0
  305. package/tests/factors-1-6.test.d.ts +13 -0
  306. package/tests/factors-12-16.test.d.ts +13 -0
  307. package/tests/factors-17-24.test.d.ts +21 -0
  308. package/tests/factors-all.test.d.ts +13 -0
  309. package/tests/factors-registry.test.d.ts +11 -0
  310. package/tests/factors.test.d.ts +13 -0
  311. package/tests/granularity-types.test.d.ts +18 -0
  312. package/tests/groups.test.d.ts +14 -0
  313. package/tests/input.test.d.ts +16 -0
  314. package/tests/intents.test.d.ts +14 -0
  315. package/tests/memory-leak.test.d.ts +14 -0
  316. package/tests/modal.test.d.ts +19 -0
  317. package/tests/presets.test.d.ts +14 -0
  318. package/tests/radio.test.d.ts +13 -0
  319. package/tests/resolution-intents.test.d.ts +13 -0
  320. package/tests/resolution-presets.test.d.ts +13 -0
  321. package/tests/resolveProps.test.d.ts +14 -0
  322. package/tests/section-integration.test.d.ts +16 -0
  323. package/tests/section-types.test.d.ts +11 -0
  324. package/tests/setup.d.ts +13 -0
  325. package/tests/shorthands.test.d.ts +14 -0
  326. package/tests/switch.test.d.ts +13 -0
  327. package/tests/tabs.test.d.ts +13 -0
  328. package/tests/tiers-registry.test.d.ts +11 -0
  329. package/tests/useComponentStyles.test.d.ts +11 -0
  330. package/tests/useFactors.test.d.ts +13 -0
  331. package/tests/validators-invalid-input.test.d.ts +13 -0
  332. package/tsup.config.d.ts +11 -0
  333. package/vitest.config.d.ts +3 -0
@@ -0,0 +1,235 @@
1
+ /**
2
+ * Resolution Engine - 5-Level Abstraction API
3
+ *
4
+ * Main resolution function that converts MultiLevelProps to Factor24Config.
5
+ * Implements the 5-level priority system:
6
+ *
7
+ * Priority: Level 1 (raw) > Level 2 (groups) > Level 3 (shorthand) > Level 4 (preset) > Level 5 (intent)
8
+ *
9
+ * @packageDocumentation
10
+ * @module resolution/resolveProps
11
+ * @since 2.1.0
12
+ *
13
+ * Powered by Nikkory
14
+ */
15
+ import { type ShorthandProps } from './shorthand';
16
+ import type { Factor24Config, MultiLevelProps, ResolutionResult, SemanticIntent, SemanticMood, IntentDefinition, MoodModifierDefinition, PresetDefinition } from './types';
17
+ /**
18
+ * Built-in intent definitions.
19
+ *
20
+ * @since 2.1.0
21
+ */
22
+ export declare const INTENT_DEFINITIONS: Record<SemanticIntent, IntentDefinition>;
23
+ /**
24
+ * Built-in mood modifier definitions.
25
+ *
26
+ * @since 2.1.0
27
+ */
28
+ export declare const MOOD_DEFINITIONS: Record<SemanticMood, MoodModifierDefinition>;
29
+ /**
30
+ * Register a preset.
31
+ *
32
+ * @param preset - The preset to register
33
+ * @since 2.1.0
34
+ */
35
+ export declare function registerPreset(preset: PresetDefinition): void;
36
+ /**
37
+ * Get a preset by ID.
38
+ *
39
+ * @param id - The preset ID
40
+ * @returns The preset or undefined
41
+ * @since 2.1.0
42
+ */
43
+ export declare function getPreset(id: string): PresetDefinition | undefined;
44
+ /**
45
+ * Check if a preset exists.
46
+ *
47
+ * @param id - The preset ID
48
+ * @returns True if the preset exists
49
+ * @since 2.1.0
50
+ */
51
+ export declare function hasPreset(id: string): boolean;
52
+ /**
53
+ * Get all registered presets.
54
+ *
55
+ * @returns Map of all presets
56
+ * @since 2.1.0
57
+ */
58
+ export declare function getAllPresets(): Map<string, PresetDefinition>;
59
+ /**
60
+ * Clear all registered presets.
61
+ *
62
+ * @since 2.1.0
63
+ */
64
+ export declare function clearPresets(): void;
65
+ /**
66
+ * Detect which levels are present in MultiLevelProps.
67
+ *
68
+ * @param props - The multi-level props to analyze
69
+ * @returns Object indicating which levels are present
70
+ * @since 2.1.0
71
+ */
72
+ export declare function detectLevels(props: MultiLevelProps): {
73
+ hasLevel5: boolean;
74
+ hasLevel4: boolean;
75
+ hasLevel3: boolean;
76
+ hasLevel2: boolean;
77
+ hasLevel1: boolean;
78
+ levels: number[];
79
+ };
80
+ /**
81
+ * Validation result for resolution.
82
+ *
83
+ * @since 2.1.0
84
+ */
85
+ export interface ResolutionValidationResult {
86
+ /** Overall validation status */
87
+ valid: boolean;
88
+ /** Errors */
89
+ errors: string[];
90
+ /** Warnings (non-blocking) */
91
+ warnings: string[];
92
+ }
93
+ /**
94
+ * Validate MultiLevelProps before resolution.
95
+ *
96
+ * @param props - The props to validate
97
+ * @returns Validation result
98
+ * @since 2.1.0
99
+ */
100
+ export declare function validateMultiLevelProps(props: MultiLevelProps): ResolutionValidationResult;
101
+ /**
102
+ * Options for the resolution process.
103
+ *
104
+ * @since 2.1.0
105
+ */
106
+ export interface ResolutionOptions {
107
+ /** Whether to include debug information */
108
+ debug?: boolean;
109
+ /** Whether to validate props before resolution */
110
+ validate?: boolean;
111
+ /** Whether to apply defaults for missing factors */
112
+ applyDefaults?: boolean;
113
+ /** Custom preset registry */
114
+ presets?: Map<string, PresetDefinition>;
115
+ }
116
+ /**
117
+ * Default resolution options.
118
+ *
119
+ * @since 2.1.0
120
+ */
121
+ export declare const DEFAULT_RESOLUTION_OPTIONS: Required<ResolutionOptions>;
122
+ /**
123
+ * Resolve MultiLevelProps to Factor24Config.
124
+ *
125
+ * This is the main entry point for the 5-Level Abstraction API.
126
+ * It takes props at any combination of levels and produces a
127
+ * complete Factor24Config with correct priority merging.
128
+ *
129
+ * Priority order (highest to lowest):
130
+ * 1. Level 1: Raw factors (size, variant, etc.)
131
+ * 2. Level 2: Factor groups (visual, motion, layout, experience)
132
+ * 3. Level 3: Shorthands (look, feel, surface, spacing)
133
+ * 4. Level 4: Named presets
134
+ * 5. Level 5: Semantic intents and moods
135
+ *
136
+ * @param props - MultiLevelProps to resolve
137
+ * @param options - Resolution options
138
+ * @returns Resolution result with config and metadata
139
+ *
140
+ * @example
141
+ * ```typescript
142
+ * // Using Level 5 (Intent)
143
+ * const result = resolveProps({ intent: 'cta', mood: 'playful' });
144
+ *
145
+ * // Using Level 3 (Shorthands) with Level 1 override
146
+ * const result = resolveProps({
147
+ * look: 'bold',
148
+ * feel: 'snappy',
149
+ * size: 'lg', // Level 1 override
150
+ * });
151
+ *
152
+ * // Mixing all levels
153
+ * const result = resolveProps({
154
+ * intent: 'primary', // Level 5
155
+ * look: 'elevated', // Level 3
156
+ * visual: { shape: 'lg' }, // Level 2
157
+ * colorScheme: 'secondary', // Level 1 (overrides all)
158
+ * });
159
+ * ```
160
+ *
161
+ * @since 2.1.0
162
+ */
163
+ export declare function resolveProps(props: MultiLevelProps, options?: ResolutionOptions): ResolutionResult;
164
+ /**
165
+ * Resolve props with defaults applied.
166
+ *
167
+ * @param props - MultiLevelProps to resolve
168
+ * @returns Complete Factor24Config with all defaults
169
+ * @since 2.1.0
170
+ */
171
+ export declare function resolveWithDefaults(props: MultiLevelProps): Factor24Config;
172
+ /**
173
+ * Resolve props and return only the config.
174
+ *
175
+ * @param props - MultiLevelProps to resolve
176
+ * @returns Factor24Config
177
+ * @since 2.1.0
178
+ */
179
+ export declare function resolveToConfig(props: MultiLevelProps): Factor24Config;
180
+ /**
181
+ * Resolve props with debug information.
182
+ *
183
+ * @param props - MultiLevelProps to resolve
184
+ * @returns Resolution result with debug info
185
+ * @since 2.1.0
186
+ */
187
+ export declare function resolveWithDebug(props: MultiLevelProps): ResolutionResult;
188
+ /**
189
+ * Quick resolve from intent and optional mood.
190
+ *
191
+ * @param intent - Semantic intent
192
+ * @param mood - Optional mood modifier
193
+ * @returns Factor24Config
194
+ * @since 2.1.0
195
+ */
196
+ export declare function resolveIntent(intent: SemanticIntent, mood?: SemanticMood): Factor24Config;
197
+ /**
198
+ * Quick resolve from shorthands.
199
+ *
200
+ * @param shorthands - Shorthand props
201
+ * @returns Factor24Config
202
+ * @since 2.1.0
203
+ */
204
+ export declare function resolveShorthands(shorthands: ShorthandProps): Factor24Config;
205
+ /**
206
+ * Get all available intents.
207
+ *
208
+ * @returns Array of intent definitions
209
+ * @since 2.1.0
210
+ */
211
+ export declare function getAllIntents(): IntentDefinition[];
212
+ /**
213
+ * Get all available moods.
214
+ *
215
+ * @returns Array of mood definitions
216
+ * @since 2.1.0
217
+ */
218
+ export declare function getAllMoods(): MoodModifierDefinition[];
219
+ /**
220
+ * Get intent definition by ID.
221
+ *
222
+ * @param id - Intent ID
223
+ * @returns Intent definition or undefined
224
+ * @since 2.1.0
225
+ */
226
+ export declare function getIntent(id: SemanticIntent): IntentDefinition | undefined;
227
+ /**
228
+ * Get mood definition by ID.
229
+ *
230
+ * @param id - Mood ID
231
+ * @returns Mood definition or undefined
232
+ * @since 2.1.0
233
+ */
234
+ export declare function getMood(id: SemanticMood): MoodModifierDefinition | undefined;
235
+ //# sourceMappingURL=resolveProps.d.ts.map
@@ -0,0 +1,140 @@
1
+ /**
2
+ * Feel Mappings - Shorthand for Interaction Behavior
3
+ *
4
+ * Maps FeelShorthand values to Factor24Config.
5
+ * Controls animation timing, transitions, and interactive feedback.
6
+ *
7
+ * @packageDocumentation
8
+ * @module resolution/shorthand/feel-mappings
9
+ * @since 2.1.0
10
+ *
11
+ * Powered by Nikkory
12
+ */
13
+ import type { Factor24Config, FeelShorthand } from '../types';
14
+ /**
15
+ * Feel shorthand to Factor24Config mappings.
16
+ *
17
+ * @since 2.1.0
18
+ */
19
+ export declare const FEEL_MAPPINGS: Record<FeelShorthand, Partial<Factor24Config>>;
20
+ /**
21
+ * Expand feel shorthand to Factor24Config.
22
+ *
23
+ * @param feel - The feel shorthand value
24
+ * @returns Partial Factor24Config with feel-related factors
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * const config = expandFeel('snappy');
29
+ * // Result: { animation: 'standard', transition: 'fast', cursor: 'pointer' }
30
+ * ```
31
+ *
32
+ * @since 2.1.0
33
+ */
34
+ export declare function expandFeel(feel: FeelShorthand): Partial<Factor24Config>;
35
+ /**
36
+ * All valid feel shorthand values.
37
+ *
38
+ * @since 2.1.0
39
+ */
40
+ export declare const VALID_FEEL_VALUES: ReadonlyArray<FeelShorthand>;
41
+ /**
42
+ * Check if a value is a valid feel shorthand.
43
+ *
44
+ * @param value - The value to check
45
+ * @returns True if the value is a valid feel shorthand
46
+ * @since 2.1.0
47
+ */
48
+ export declare function isValidFeel(value: unknown): value is FeelShorthand;
49
+ /**
50
+ * Get all available feel values with their descriptions.
51
+ *
52
+ * @returns Array of feel values with descriptions
53
+ * @since 2.1.0
54
+ */
55
+ export declare function getFeelDescriptions(): Array<{
56
+ value: FeelShorthand;
57
+ description: string;
58
+ }>;
59
+ /**
60
+ * Get the animation speed of a feel (in milliseconds).
61
+ *
62
+ * @param feel - The feel shorthand
63
+ * @returns Animation duration in milliseconds
64
+ * @since 2.1.0
65
+ */
66
+ export declare function getFeelDuration(feel: FeelShorthand): number;
67
+ /**
68
+ * Get the energy level of a feel (1-5 scale).
69
+ *
70
+ * @param feel - The feel shorthand
71
+ * @returns Energy level from 1 (calm) to 5 (energetic)
72
+ * @since 2.1.0
73
+ */
74
+ export declare function getFeelEnergy(feel: FeelShorthand): number;
75
+ /**
76
+ * Check if a feel has animations enabled.
77
+ *
78
+ * @param feel - The feel shorthand
79
+ * @returns True if the feel includes animations
80
+ * @since 2.1.0
81
+ */
82
+ export declare function hasAnimations(feel: FeelShorthand): boolean;
83
+ /**
84
+ * Check if a feel supports reduced motion.
85
+ * Static feel is considered reduced motion friendly.
86
+ *
87
+ * @param feel - The feel shorthand
88
+ * @returns True if the feel respects reduced motion
89
+ * @since 2.1.0
90
+ */
91
+ export declare function supportsReducedMotion(feel: FeelShorthand): boolean;
92
+ /**
93
+ * Get the reduced motion alternative for a feel.
94
+ *
95
+ * @param feel - The current feel
96
+ * @returns A reduced motion friendly feel
97
+ * @since 2.1.0
98
+ */
99
+ export declare function getReducedMotionAlternative(feel: FeelShorthand): FeelShorthand;
100
+ /**
101
+ * Find the best feel for a given energy level.
102
+ *
103
+ * @param energy - Target energy level (1-5)
104
+ * @returns The most appropriate feel shorthand
105
+ * @since 2.1.0
106
+ */
107
+ export declare function getFeelForEnergy(energy: number): FeelShorthand;
108
+ /**
109
+ * Get the CSS easing function for a feel.
110
+ *
111
+ * @param feel - The feel shorthand
112
+ * @returns CSS easing function string
113
+ * @since 2.1.0
114
+ */
115
+ export declare function getFeelEasing(feel: FeelShorthand): string;
116
+ /**
117
+ * Check if a feel is interactive (has cursor: pointer).
118
+ *
119
+ * @param feel - The feel shorthand
120
+ * @returns True if the feel is interactive
121
+ * @since 2.1.0
122
+ */
123
+ export declare function isInteractive(feel: FeelShorthand): boolean;
124
+ /**
125
+ * Get a calmer feel for the given feel.
126
+ *
127
+ * @param feel - The current feel
128
+ * @returns A calmer feel shorthand
129
+ * @since 2.1.0
130
+ */
131
+ export declare function getCalmerFeel(feel: FeelShorthand): FeelShorthand;
132
+ /**
133
+ * Get a more energetic feel for the given feel.
134
+ *
135
+ * @param feel - The current feel
136
+ * @returns A more energetic feel shorthand
137
+ * @since 2.1.0
138
+ */
139
+ export declare function getMoreEnergeticFeel(feel: FeelShorthand): FeelShorthand;
140
+ //# sourceMappingURL=feel-mappings.d.ts.map
@@ -0,0 +1,172 @@
1
+ /**
2
+ * Shorthand Mappings - Level 3 Abstraction
3
+ *
4
+ * Provides shorthand props that map to multiple Factor24 properties.
5
+ * Each shorthand represents a conceptual grouping of factors.
6
+ *
7
+ * Shorthands:
8
+ * - look: Visual appearance (bold, subtle, minimal, etc.)
9
+ * - feel: Interaction behavior (snappy, smooth, bouncy, etc.)
10
+ * - surface: Background and elevation (flat, raised, floating, etc.)
11
+ * - spacing: Internal spacing (tight, normal, relaxed, loose)
12
+ *
13
+ * @packageDocumentation
14
+ * @module resolution/shorthand
15
+ * @since 2.1.0
16
+ *
17
+ * Powered by Nikkory
18
+ */
19
+ export * from './look-mappings';
20
+ export * from './feel-mappings';
21
+ export * from './surface-mappings';
22
+ export * from './spacing-mappings';
23
+ import type { Factor24Config, LookShorthand, FeelShorthand, SurfaceShorthand, SpacingShorthand, ShorthandMappings } from '../types';
24
+ /**
25
+ * Shorthand props that can be expanded to Factor24Config.
26
+ *
27
+ * @since 2.1.0
28
+ */
29
+ export interface ShorthandProps {
30
+ /** Visual appearance shorthand */
31
+ look?: LookShorthand;
32
+ /** Interaction feel shorthand */
33
+ feel?: FeelShorthand;
34
+ /** Surface/elevation shorthand */
35
+ surface?: SurfaceShorthand;
36
+ /** Spacing shorthand */
37
+ spacingPreset?: SpacingShorthand;
38
+ }
39
+ /**
40
+ * Expand all shorthands to Factor24Config.
41
+ * Merges all shorthand configurations into a single partial config.
42
+ *
43
+ * @param shorthands - The shorthand props to expand
44
+ * @returns Partial Factor24Config with all shorthand factors
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * const config = expandShorthands({
49
+ * look: 'bold',
50
+ * feel: 'snappy',
51
+ * surface: 'raised',
52
+ * spacingPreset: 'normal',
53
+ * });
54
+ * ```
55
+ *
56
+ * @since 2.1.0
57
+ */
58
+ export declare function expandShorthands(shorthands: ShorthandProps): Partial<Factor24Config>;
59
+ /**
60
+ * Complete shorthand mappings collection.
61
+ *
62
+ * @since 2.1.0
63
+ */
64
+ export declare const ALL_SHORTHAND_MAPPINGS: ShorthandMappings;
65
+ /**
66
+ * Validation result for shorthands.
67
+ *
68
+ * @since 2.1.0
69
+ */
70
+ export interface ShorthandValidationResult {
71
+ /** Overall validation status */
72
+ valid: boolean;
73
+ /** Errors by shorthand */
74
+ errors: {
75
+ look: string[];
76
+ feel: string[];
77
+ surface: string[];
78
+ spacingPreset: string[];
79
+ };
80
+ /** All errors flattened */
81
+ allErrors: string[];
82
+ }
83
+ /**
84
+ * Validate all shorthand props.
85
+ *
86
+ * @param shorthands - The shorthand props to validate
87
+ * @returns Validation result with errors by shorthand
88
+ *
89
+ * @example
90
+ * ```typescript
91
+ * const result = validateShorthands({
92
+ * look: 'invalid',
93
+ * });
94
+ * if (!result.valid) {
95
+ * console.error(result.allErrors);
96
+ * }
97
+ * ```
98
+ *
99
+ * @since 2.1.0
100
+ */
101
+ export declare function validateShorthands(shorthands: ShorthandProps): ShorthandValidationResult;
102
+ /**
103
+ * Check if an object contains any shorthand properties.
104
+ *
105
+ * @param obj - Object to check
106
+ * @returns True if object has shorthand properties
107
+ * @since 2.1.0
108
+ */
109
+ export declare function hasShorthandProps(obj: Record<string, unknown>): boolean;
110
+ /**
111
+ * Extract shorthand props from an object.
112
+ *
113
+ * @param obj - Object to extract from
114
+ * @returns Extracted shorthand props
115
+ * @since 2.1.0
116
+ */
117
+ export declare function extractShorthandProps(obj: Record<string, unknown>): ShorthandProps;
118
+ /**
119
+ * Detect which shorthands are present in an object.
120
+ *
121
+ * @param obj - Object to check
122
+ * @returns Object indicating which shorthands are present
123
+ * @since 2.1.0
124
+ */
125
+ export declare function detectShorthands(obj: Record<string, unknown>): {
126
+ hasLook: boolean;
127
+ hasFeel: boolean;
128
+ hasSurface: boolean;
129
+ hasSpacing: boolean;
130
+ };
131
+ /**
132
+ * All shorthand names.
133
+ *
134
+ * @since 2.1.0
135
+ */
136
+ export declare const SHORTHAND_NAMES: readonly ["look", "feel", "surface", "spacingPreset"];
137
+ /**
138
+ * Shorthand name type.
139
+ *
140
+ * @since 2.1.0
141
+ */
142
+ export type ShorthandName = (typeof SHORTHAND_NAMES)[number];
143
+ /**
144
+ * Map of shorthand names to their possible values.
145
+ *
146
+ * @since 2.1.0
147
+ */
148
+ export declare const SHORTHAND_VALUES: Record<ShorthandName, ReadonlyArray<string>>;
149
+ /**
150
+ * Common shorthand combinations for quick use.
151
+ *
152
+ * @since 2.1.0
153
+ */
154
+ export declare const SHORTHAND_PRESETS: Record<string, ShorthandProps>;
155
+ /**
156
+ * Get a predefined shorthand preset by name.
157
+ *
158
+ * @param presetName - The name of the preset
159
+ * @returns The shorthand props or undefined
160
+ * @since 2.1.0
161
+ */
162
+ export declare function getShorthandPreset(presetName: string): ShorthandProps | undefined;
163
+ /**
164
+ * Merge multiple ShorthandProps configurations.
165
+ * Later values override earlier ones.
166
+ *
167
+ * @param propsList - Shorthand props to merge
168
+ * @returns Merged shorthand props
169
+ * @since 2.1.0
170
+ */
171
+ export declare function mergeShorthandProps(...propsList: ShorthandProps[]): ShorthandProps;
172
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Look Mappings - Shorthand for Visual Appearance
3
+ *
4
+ * Maps LookShorthand values to Factor24Config.
5
+ * Controls visual weight, contrast, and overall appearance.
6
+ *
7
+ * @packageDocumentation
8
+ * @module resolution/shorthand/look-mappings
9
+ * @since 2.1.0
10
+ *
11
+ * Powered by Nikkory
12
+ */
13
+ import type { Factor24Config, LookShorthand } from '../types';
14
+ /**
15
+ * Look shorthand to Factor24Config mappings.
16
+ *
17
+ * @since 2.1.0
18
+ */
19
+ export declare const LOOK_MAPPINGS: Record<LookShorthand, Partial<Factor24Config>>;
20
+ /**
21
+ * Expand look shorthand to Factor24Config.
22
+ *
23
+ * @param look - The look shorthand value
24
+ * @returns Partial Factor24Config with look-related factors
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * const config = expandLook('bold');
29
+ * // Result: { variant: 'filled', elevation: 'md', opacity: 'full', ... }
30
+ * ```
31
+ *
32
+ * @since 2.1.0
33
+ */
34
+ export declare function expandLook(look: LookShorthand): Partial<Factor24Config>;
35
+ /**
36
+ * All valid look shorthand values.
37
+ *
38
+ * @since 2.1.0
39
+ */
40
+ export declare const VALID_LOOK_VALUES: ReadonlyArray<LookShorthand>;
41
+ /**
42
+ * Check if a value is a valid look shorthand.
43
+ *
44
+ * @param value - The value to check
45
+ * @returns True if the value is a valid look shorthand
46
+ * @since 2.1.0
47
+ */
48
+ export declare function isValidLook(value: unknown): value is LookShorthand;
49
+ /**
50
+ * Get all available look values with their descriptions.
51
+ *
52
+ * @returns Array of look values with descriptions
53
+ * @since 2.1.0
54
+ */
55
+ export declare function getLookDescriptions(): Array<{
56
+ value: LookShorthand;
57
+ description: string;
58
+ }>;
59
+ /**
60
+ * Get the dominant visual characteristic of a look.
61
+ *
62
+ * @param look - The look shorthand
63
+ * @returns The dominant characteristic
64
+ * @since 2.1.0
65
+ */
66
+ export declare function getLookCharacteristic(look: LookShorthand): 'elevation' | 'border' | 'opacity' | 'shape';
67
+ /**
68
+ * Get the visual weight of a look (1-5 scale).
69
+ *
70
+ * @param look - The look shorthand
71
+ * @returns Visual weight from 1 (lightest) to 5 (heaviest)
72
+ * @since 2.1.0
73
+ */
74
+ export declare function getLookWeight(look: LookShorthand): number;
75
+ /**
76
+ * Find the best look for a given visual weight.
77
+ *
78
+ * @param weight - Target visual weight (1-5)
79
+ * @returns The most appropriate look shorthand
80
+ * @since 2.1.0
81
+ */
82
+ export declare function getLookForWeight(weight: number): LookShorthand;
83
+ /**
84
+ * Check if a look has visible borders.
85
+ *
86
+ * @param look - The look shorthand
87
+ * @returns True if the look includes visible borders
88
+ * @since 2.1.0
89
+ */
90
+ export declare function hasVisibleBorder(look: LookShorthand): boolean;
91
+ /**
92
+ * Check if a look has elevation/shadow.
93
+ *
94
+ * @param look - The look shorthand
95
+ * @returns True if the look includes elevation
96
+ * @since 2.1.0
97
+ */
98
+ export declare function hasElevation(look: LookShorthand): boolean;
99
+ /**
100
+ * Get a contrasting look for the given look.
101
+ *
102
+ * @param look - The current look
103
+ * @returns A contrasting look shorthand
104
+ * @since 2.1.0
105
+ */
106
+ export declare function getContrastingLook(look: LookShorthand): LookShorthand;
107
+ //# sourceMappingURL=look-mappings.d.ts.map