kenikool-ui 1.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 (196) hide show
  1. package/README.md +144 -0
  2. package/dist/cdn-auto-register.js +188 -0
  3. package/dist/tsconfig.build.tsbuildinfo +1 -0
  4. package/dist/types/components/advanced/datepicker.d.ts +86 -0
  5. package/dist/types/components/advanced/datepicker.d.ts.map +1 -0
  6. package/dist/types/components/advanced/datepicker.stories.d.ts +48 -0
  7. package/dist/types/components/advanced/datepicker.stories.d.ts.map +1 -0
  8. package/dist/types/components/advanced/fileupload.d.ts +75 -0
  9. package/dist/types/components/advanced/fileupload.d.ts.map +1 -0
  10. package/dist/types/components/advanced/fileupload.stories.d.ts +46 -0
  11. package/dist/types/components/advanced/fileupload.stories.d.ts.map +1 -0
  12. package/dist/types/components/advanced/index.d.ts +4 -0
  13. package/dist/types/components/advanced/index.d.ts.map +1 -0
  14. package/dist/types/components/data/avatar.d.ts +94 -0
  15. package/dist/types/components/data/avatar.d.ts.map +1 -0
  16. package/dist/types/components/data/avatar.stories.d.ts +51 -0
  17. package/dist/types/components/data/avatar.stories.d.ts.map +1 -0
  18. package/dist/types/components/data/badge.d.ts +69 -0
  19. package/dist/types/components/data/badge.d.ts.map +1 -0
  20. package/dist/types/components/data/badge.stories.d.ts +48 -0
  21. package/dist/types/components/data/badge.stories.d.ts.map +1 -0
  22. package/dist/types/components/data/index.d.ts +5 -0
  23. package/dist/types/components/data/index.d.ts.map +1 -0
  24. package/dist/types/components/data/list.d.ts +66 -0
  25. package/dist/types/components/data/list.d.ts.map +1 -0
  26. package/dist/types/components/data/list.stories.d.ts +38 -0
  27. package/dist/types/components/data/list.stories.d.ts.map +1 -0
  28. package/dist/types/components/data/table.d.ts +70 -0
  29. package/dist/types/components/data/table.d.ts.map +1 -0
  30. package/dist/types/components/data/table.stories.d.ts +42 -0
  31. package/dist/types/components/data/table.stories.d.ts.map +1 -0
  32. package/dist/types/components/feedback/alert.d.ts +78 -0
  33. package/dist/types/components/feedback/alert.d.ts.map +1 -0
  34. package/dist/types/components/feedback/alert.stories.d.ts +35 -0
  35. package/dist/types/components/feedback/alert.stories.d.ts.map +1 -0
  36. package/dist/types/components/feedback/index.d.ts +5 -0
  37. package/dist/types/components/feedback/index.d.ts.map +1 -0
  38. package/dist/types/components/feedback/loading.d.ts +87 -0
  39. package/dist/types/components/feedback/loading.d.ts.map +1 -0
  40. package/dist/types/components/feedback/loading.stories.d.ts +48 -0
  41. package/dist/types/components/feedback/loading.stories.d.ts.map +1 -0
  42. package/dist/types/components/feedback/modal.d.ts +93 -0
  43. package/dist/types/components/feedback/modal.d.ts.map +1 -0
  44. package/dist/types/components/feedback/modal.stories.d.ts +37 -0
  45. package/dist/types/components/feedback/modal.stories.d.ts.map +1 -0
  46. package/dist/types/components/feedback/toast.d.ts +102 -0
  47. package/dist/types/components/feedback/toast.d.ts.map +1 -0
  48. package/dist/types/components/feedback/toast.stories.d.ts +51 -0
  49. package/dist/types/components/feedback/toast.stories.d.ts.map +1 -0
  50. package/dist/types/components/forms/button.d.ts +64 -0
  51. package/dist/types/components/forms/button.d.ts.map +1 -0
  52. package/dist/types/components/forms/button.stories.d.ts +52 -0
  53. package/dist/types/components/forms/button.stories.d.ts.map +1 -0
  54. package/dist/types/components/forms/checkbox.d.ts +51 -0
  55. package/dist/types/components/forms/checkbox.d.ts.map +1 -0
  56. package/dist/types/components/forms/checkbox.stories.d.ts +31 -0
  57. package/dist/types/components/forms/checkbox.stories.d.ts.map +1 -0
  58. package/dist/types/components/forms/index.d.ts +6 -0
  59. package/dist/types/components/forms/index.d.ts.map +1 -0
  60. package/dist/types/components/forms/input.d.ts +66 -0
  61. package/dist/types/components/forms/input.d.ts.map +1 -0
  62. package/dist/types/components/forms/input.stories.d.ts +49 -0
  63. package/dist/types/components/forms/input.stories.d.ts.map +1 -0
  64. package/dist/types/components/forms/radio.d.ts +51 -0
  65. package/dist/types/components/forms/radio.d.ts.map +1 -0
  66. package/dist/types/components/forms/radio.stories.d.ts +41 -0
  67. package/dist/types/components/forms/radio.stories.d.ts.map +1 -0
  68. package/dist/types/components/forms/select.d.ts +67 -0
  69. package/dist/types/components/forms/select.d.ts.map +1 -0
  70. package/dist/types/components/forms/select.stories.d.ts +42 -0
  71. package/dist/types/components/forms/select.stories.d.ts.map +1 -0
  72. package/dist/types/components/layout/card.d.ts +66 -0
  73. package/dist/types/components/layout/card.d.ts.map +1 -0
  74. package/dist/types/components/layout/card.example.d.ts +5 -0
  75. package/dist/types/components/layout/card.example.d.ts.map +1 -0
  76. package/dist/types/components/layout/card.stories.d.ts +40 -0
  77. package/dist/types/components/layout/card.stories.d.ts.map +1 -0
  78. package/dist/types/components/layout/container.d.ts +84 -0
  79. package/dist/types/components/layout/container.d.ts.map +1 -0
  80. package/dist/types/components/layout/container.stories.d.ts +40 -0
  81. package/dist/types/components/layout/container.stories.d.ts.map +1 -0
  82. package/dist/types/components/layout/grid.d.ts +76 -0
  83. package/dist/types/components/layout/grid.d.ts.map +1 -0
  84. package/dist/types/components/layout/grid.example.d.ts +11 -0
  85. package/dist/types/components/layout/grid.example.d.ts.map +1 -0
  86. package/dist/types/components/layout/grid.stories.d.ts +38 -0
  87. package/dist/types/components/layout/grid.stories.d.ts.map +1 -0
  88. package/dist/types/components/layout/index.d.ts +5 -0
  89. package/dist/types/components/layout/index.d.ts.map +1 -0
  90. package/dist/types/components/layout/stack.d.ts +82 -0
  91. package/dist/types/components/layout/stack.d.ts.map +1 -0
  92. package/dist/types/components/layout/stack.stories.d.ts +44 -0
  93. package/dist/types/components/layout/stack.stories.d.ts.map +1 -0
  94. package/dist/types/components/navigation/breadcrumbs.d.ts +62 -0
  95. package/dist/types/components/navigation/breadcrumbs.d.ts.map +1 -0
  96. package/dist/types/components/navigation/breadcrumbs.stories.d.ts +32 -0
  97. package/dist/types/components/navigation/breadcrumbs.stories.d.ts.map +1 -0
  98. package/dist/types/components/navigation/index.d.ts +4 -0
  99. package/dist/types/components/navigation/index.d.ts.map +1 -0
  100. package/dist/types/components/navigation/navbar.d.ts +66 -0
  101. package/dist/types/components/navigation/navbar.d.ts.map +1 -0
  102. package/dist/types/components/navigation/navbar.stories.d.ts +37 -0
  103. package/dist/types/components/navigation/navbar.stories.d.ts.map +1 -0
  104. package/dist/types/components/navigation/sidebar.d.ts +72 -0
  105. package/dist/types/components/navigation/sidebar.d.ts.map +1 -0
  106. package/dist/types/components/navigation/sidebar.stories.d.ts +43 -0
  107. package/dist/types/components/navigation/sidebar.stories.d.ts.map +1 -0
  108. package/dist/types/components/typography/index.d.ts +3 -0
  109. package/dist/types/components/typography/index.d.ts.map +1 -0
  110. package/dist/types/components/typography/text.d.ts +111 -0
  111. package/dist/types/components/typography/text.d.ts.map +1 -0
  112. package/dist/types/components/typography/text.stories.d.ts +48 -0
  113. package/dist/types/components/typography/text.stories.d.ts.map +1 -0
  114. package/dist/types/core/base-component.d.ts +178 -0
  115. package/dist/types/core/base-component.d.ts.map +1 -0
  116. package/dist/types/core/base-component.example.d.ts +24 -0
  117. package/dist/types/core/base-component.example.d.ts.map +1 -0
  118. package/dist/types/core/registry.d.ts +88 -0
  119. package/dist/types/core/registry.d.ts.map +1 -0
  120. package/dist/types/core/registry.example.d.ts +42 -0
  121. package/dist/types/core/registry.example.d.ts.map +1 -0
  122. package/dist/types/core/smart-defaults.d.ts +45 -0
  123. package/dist/types/core/smart-defaults.d.ts.map +1 -0
  124. package/dist/types/core/smart-defaults.example.d.ts +20 -0
  125. package/dist/types/core/smart-defaults.example.d.ts.map +1 -0
  126. package/dist/types/core/styles-parser.d.ts +107 -0
  127. package/dist/types/core/styles-parser.d.ts.map +1 -0
  128. package/dist/types/core/styles-parser.example.d.ts +10 -0
  129. package/dist/types/core/styles-parser.example.d.ts.map +1 -0
  130. package/dist/types/core/theme-system.d.ts +91 -0
  131. package/dist/types/core/theme-system.d.ts.map +1 -0
  132. package/dist/types/index.d.ts +24 -0
  133. package/dist/types/index.d.ts.map +1 -0
  134. package/dist/types/themes/built-in-themes.d.ts +32 -0
  135. package/dist/types/themes/built-in-themes.d.ts.map +1 -0
  136. package/dist/types/themes/index.d.ts +5 -0
  137. package/dist/types/themes/index.d.ts.map +1 -0
  138. package/dist/types/types/components.d.ts +549 -0
  139. package/dist/types/types/components.d.ts.map +1 -0
  140. package/dist/types/types/index.d.ts +379 -0
  141. package/dist/types/types/index.d.ts.map +1 -0
  142. package/dist/types/types/theme-config.d.ts +674 -0
  143. package/dist/types/types/theme-config.d.ts.map +1 -0
  144. package/dist/types/types/themes.d.ts +325 -0
  145. package/dist/types/types/themes.d.ts.map +1 -0
  146. package/dist/types/types/utils.d.ts +293 -0
  147. package/dist/types/types/utils.d.ts.map +1 -0
  148. package/dist/types/types/wrappers.d.ts +335 -0
  149. package/dist/types/types/wrappers.d.ts.map +1 -0
  150. package/dist/types/utils/accessibility.d.ts +345 -0
  151. package/dist/types/utils/accessibility.d.ts.map +1 -0
  152. package/dist/types/utils/accessibility.example.d.ts +50 -0
  153. package/dist/types/utils/accessibility.example.d.ts.map +1 -0
  154. package/dist/types/utils/css-variables.d.ts +278 -0
  155. package/dist/types/utils/css-variables.d.ts.map +1 -0
  156. package/dist/types/utils/icon-system.d.ts +79 -0
  157. package/dist/types/utils/icon-system.d.ts.map +1 -0
  158. package/dist/types/utils/index.d.ts +9 -0
  159. package/dist/types/utils/index.d.ts.map +1 -0
  160. package/dist/types/utils/performance.d.ts +141 -0
  161. package/dist/types/utils/performance.d.ts.map +1 -0
  162. package/dist/types/utils/security.d.ts +109 -0
  163. package/dist/types/utils/security.d.ts.map +1 -0
  164. package/dist/types/utils/validation.d.ts +84 -0
  165. package/dist/types/utils/validation.d.ts.map +1 -0
  166. package/dist/types/wrappers/angular/components.d.ts +2 -0
  167. package/dist/types/wrappers/angular/components.d.ts.map +1 -0
  168. package/dist/types/wrappers/angular/index.d.ts +6 -0
  169. package/dist/types/wrappers/angular/index.d.ts.map +1 -0
  170. package/dist/types/wrappers/angular/module.d.ts +2 -0
  171. package/dist/types/wrappers/angular/module.d.ts.map +1 -0
  172. package/dist/types/wrappers/angular/services.d.ts +2 -0
  173. package/dist/types/wrappers/angular/services.d.ts.map +1 -0
  174. package/dist/types/wrappers/angular/types.d.ts +44 -0
  175. package/dist/types/wrappers/angular/types.d.ts.map +1 -0
  176. package/dist/types/wrappers/react/components.d.ts +2 -0
  177. package/dist/types/wrappers/react/components.d.ts.map +1 -0
  178. package/dist/types/wrappers/react/hooks.d.ts +2 -0
  179. package/dist/types/wrappers/react/hooks.d.ts.map +1 -0
  180. package/dist/types/wrappers/react/index.d.ts +6 -0
  181. package/dist/types/wrappers/react/index.d.ts.map +1 -0
  182. package/dist/types/wrappers/react/provider.d.ts +2 -0
  183. package/dist/types/wrappers/react/provider.d.ts.map +1 -0
  184. package/dist/types/wrappers/react/types.d.ts +31 -0
  185. package/dist/types/wrappers/react/types.d.ts.map +1 -0
  186. package/dist/types/wrappers/vue/components.d.ts +2 -0
  187. package/dist/types/wrappers/vue/components.d.ts.map +1 -0
  188. package/dist/types/wrappers/vue/composables.d.ts +2 -0
  189. package/dist/types/wrappers/vue/composables.d.ts.map +1 -0
  190. package/dist/types/wrappers/vue/index.d.ts +6 -0
  191. package/dist/types/wrappers/vue/index.d.ts.map +1 -0
  192. package/dist/types/wrappers/vue/plugin.d.ts +2 -0
  193. package/dist/types/wrappers/vue/plugin.d.ts.map +1 -0
  194. package/dist/types/wrappers/vue/types.d.ts +38 -0
  195. package/dist/types/wrappers/vue/types.d.ts.map +1 -0
  196. package/package.json +138 -0
@@ -0,0 +1,674 @@
1
+ /**
2
+ * Theme Configuration Interfaces for Kenikool UI
3
+ *
4
+ * This module defines the core interfaces and types for theme configuration,
5
+ * CSS variable naming conventions, and theme data models.
6
+ *
7
+ * Requirements: 3.1, 3.3
8
+ */
9
+ /**
10
+ * Main theme configuration interface that defines the complete structure
11
+ * of a Kenikool UI theme. This is the primary interface used by the
12
+ * ThemeSystem to register and apply themes.
13
+ */
14
+ export interface ThemeConfiguration {
15
+ /** Theme metadata */
16
+ meta: ThemeMetadata;
17
+ /** Color system configuration */
18
+ colors: ThemeColorConfiguration;
19
+ /** Typography system configuration */
20
+ typography: ThemeTypographyConfiguration;
21
+ /** Spacing system configuration */
22
+ spacing: ThemeSpacingConfiguration;
23
+ /** Border radius system configuration */
24
+ borderRadius: ThemeBorderRadiusConfiguration;
25
+ /** Shadow system configuration */
26
+ shadows: ThemeShadowConfiguration;
27
+ /** Transition system configuration */
28
+ transitions: ThemeTransitionConfiguration;
29
+ /** Responsive breakpoint configuration */
30
+ breakpoints: ThemeBreakpointConfiguration;
31
+ /** Component-specific theme overrides */
32
+ components?: ComponentThemeOverrides;
33
+ }
34
+ /**
35
+ * Theme metadata containing information about the theme
36
+ */
37
+ export interface ThemeMetadata {
38
+ /** Unique theme identifier (used in data-theme attribute) */
39
+ name: string;
40
+ /** Human-readable display name */
41
+ displayName: string;
42
+ /** Theme version for compatibility tracking */
43
+ version: string;
44
+ /** Description of the theme's visual style */
45
+ description: string;
46
+ /** Theme author information */
47
+ author: string;
48
+ /** Tags for categorizing themes */
49
+ tags: string[];
50
+ /** Optional preview image URL */
51
+ preview?: string;
52
+ /** Whether this is a dark theme (affects smart defaults) */
53
+ isDark: boolean;
54
+ }
55
+ /**
56
+ * Complete color configuration for a theme, including all color palettes
57
+ * and semantic color assignments
58
+ */
59
+ export interface ThemeColorConfiguration {
60
+ primary: ColorPalette;
61
+ secondary: ColorPalette;
62
+ success: ColorPalette;
63
+ warning: ColorPalette;
64
+ error: ColorPalette;
65
+ info: ColorPalette;
66
+ neutral: ColorPalette;
67
+ surface: SurfaceColorConfiguration;
68
+ text: TextColorConfiguration;
69
+ border: BorderColorConfiguration;
70
+ state: StateColorConfiguration;
71
+ overlay: OverlayColorConfiguration;
72
+ }
73
+ /**
74
+ * Standard color palette with 10 shades from lightest (50) to darkest (900)
75
+ * Following the Material Design color system convention
76
+ */
77
+ export interface ColorPalette {
78
+ /** Lightest shade */
79
+ 50: string;
80
+ 100: string;
81
+ 200: string;
82
+ 300: string;
83
+ 400: string;
84
+ /** Base color - primary reference */
85
+ 500: string;
86
+ 600: string;
87
+ 700: string;
88
+ 800: string;
89
+ /** Darkest shade */
90
+ 900: string;
91
+ /** Optional extra dark shade */
92
+ 950?: string;
93
+ }
94
+ /**
95
+ * Surface color configuration for backgrounds and container elements
96
+ */
97
+ export interface SurfaceColorConfiguration {
98
+ /** Main background color */
99
+ background: string;
100
+ /** Primary surface color (cards, panels) */
101
+ surface: string;
102
+ /** Variant surface color (subtle differentiation) */
103
+ surfaceVariant: string;
104
+ /** Elevated surface color (raised elements) */
105
+ surfaceElevated: string;
106
+ /** Hover state for surfaces */
107
+ surfaceHover: string;
108
+ /** Active state for surfaces */
109
+ surfaceActive: string;
110
+ /** Disabled surface color */
111
+ surfaceDisabled: string;
112
+ }
113
+ /**
114
+ * Text color configuration for different contexts
115
+ */
116
+ export interface TextColorConfiguration {
117
+ /** Primary text color */
118
+ primary: string;
119
+ /** Secondary text color (less emphasis) */
120
+ secondary: string;
121
+ /** Muted text color (least emphasis) */
122
+ muted: string;
123
+ /** Inverse text color (for dark backgrounds) */
124
+ inverse: string;
125
+ /** Text on primary color backgrounds */
126
+ onPrimary: string;
127
+ /** Text on secondary color backgrounds */
128
+ onSecondary: string;
129
+ /** Text on surface backgrounds */
130
+ onSurface: string;
131
+ /** Text on main background */
132
+ onBackground: string;
133
+ /** Disabled text color */
134
+ disabled: string;
135
+ }
136
+ /**
137
+ * Border color configuration for different states and contexts
138
+ */
139
+ export interface BorderColorConfiguration {
140
+ /** Default border color */
141
+ default: string;
142
+ /** Subtle border color (less prominent) */
143
+ subtle: string;
144
+ /** Muted border color (least prominent) */
145
+ muted: string;
146
+ /** Hover state border color */
147
+ hover: string;
148
+ /** Focus state border color */
149
+ focus: string;
150
+ /** Active state border color */
151
+ active: string;
152
+ /** Error state border color */
153
+ error: string;
154
+ /** Success state border color */
155
+ success: string;
156
+ /** Warning state border color */
157
+ warning: string;
158
+ }
159
+ /**
160
+ * State color configuration for interactive elements
161
+ */
162
+ export interface StateColorConfiguration {
163
+ /** Hover state overlay color */
164
+ hover: string;
165
+ /** Focus state color (focus rings, etc.) */
166
+ focus: string;
167
+ /** Active state overlay color */
168
+ active: string;
169
+ /** Disabled state overlay color */
170
+ disabled: string;
171
+ /** Selected state color */
172
+ selected: string;
173
+ /** Pressed state color */
174
+ pressed: string;
175
+ }
176
+ /**
177
+ * Overlay color configuration for modals, dropdowns, etc.
178
+ */
179
+ export interface OverlayColorConfiguration {
180
+ /** Modal backdrop color */
181
+ backdrop: string;
182
+ /** Dropdown shadow color */
183
+ dropdown: string;
184
+ /** Tooltip background color */
185
+ tooltip: string;
186
+ /** Popover background color */
187
+ popover: string;
188
+ /** Loading overlay color */
189
+ loading: string;
190
+ }
191
+ /**
192
+ * Complete typography configuration including fonts, sizes, weights, and spacing
193
+ */
194
+ export interface ThemeTypographyConfiguration {
195
+ /** Font family stacks */
196
+ fontFamily: FontFamilyConfiguration;
197
+ /** Font size scale */
198
+ fontSize: FontSizeConfiguration;
199
+ /** Font weight scale */
200
+ fontWeight: FontWeightConfiguration;
201
+ /** Line height scale */
202
+ lineHeight: LineHeightConfiguration;
203
+ /** Letter spacing scale */
204
+ letterSpacing: LetterSpacingConfiguration;
205
+ /** Text decoration styles */
206
+ textDecoration: TextDecorationConfiguration;
207
+ }
208
+ /**
209
+ * Font family configuration with fallback stacks
210
+ */
211
+ export interface FontFamilyConfiguration {
212
+ /** Sans-serif font stack */
213
+ sans: string[];
214
+ /** Serif font stack */
215
+ serif: string[];
216
+ /** Monospace font stack */
217
+ mono: string[];
218
+ /** Display font stack (for headings) */
219
+ display?: string[];
220
+ }
221
+ /**
222
+ * Font size configuration with semantic naming
223
+ */
224
+ export interface FontSizeConfiguration {
225
+ /** Extra small text */
226
+ xs: string;
227
+ /** Small text */
228
+ sm: string;
229
+ /** Base text size */
230
+ base: string;
231
+ /** Large text */
232
+ lg: string;
233
+ /** Extra large text */
234
+ xl: string;
235
+ /** 2x large text */
236
+ '2xl': string;
237
+ /** 3x large text */
238
+ '3xl': string;
239
+ /** 4x large text */
240
+ '4xl': string;
241
+ /** 5x large text */
242
+ '5xl': string;
243
+ /** 6x large text */
244
+ '6xl': string;
245
+ /** 7x large text */
246
+ '7xl': string;
247
+ /** 8x large text */
248
+ '8xl': string;
249
+ /** 9x large text */
250
+ '9xl': string;
251
+ }
252
+ /**
253
+ * Font weight configuration
254
+ */
255
+ export interface FontWeightConfiguration {
256
+ /** Thin weight (100) */
257
+ thin: number;
258
+ /** Extra light weight (200) */
259
+ extralight: number;
260
+ /** Light weight (300) */
261
+ light: number;
262
+ /** Normal weight (400) */
263
+ normal: number;
264
+ /** Medium weight (500) */
265
+ medium: number;
266
+ /** Semi-bold weight (600) */
267
+ semibold: number;
268
+ /** Bold weight (700) */
269
+ bold: number;
270
+ /** Extra bold weight (800) */
271
+ extrabold: number;
272
+ /** Black weight (900) */
273
+ black: number;
274
+ }
275
+ /**
276
+ * Line height configuration for different text densities
277
+ */
278
+ export interface LineHeightConfiguration {
279
+ /** No line height (1) */
280
+ none: number;
281
+ /** Tight line height */
282
+ tight: number;
283
+ /** Snug line height */
284
+ snug: number;
285
+ /** Normal line height */
286
+ normal: number;
287
+ /** Relaxed line height */
288
+ relaxed: number;
289
+ /** Loose line height */
290
+ loose: number;
291
+ }
292
+ /**
293
+ * Letter spacing configuration
294
+ */
295
+ export interface LetterSpacingConfiguration {
296
+ /** Tighter letter spacing */
297
+ tighter: string;
298
+ /** Tight letter spacing */
299
+ tight: string;
300
+ /** Normal letter spacing */
301
+ normal: string;
302
+ /** Wide letter spacing */
303
+ wide: string;
304
+ /** Wider letter spacing */
305
+ wider: string;
306
+ /** Widest letter spacing */
307
+ widest: string;
308
+ }
309
+ /**
310
+ * Text decoration configuration
311
+ */
312
+ export interface TextDecorationConfiguration {
313
+ /** No decoration */
314
+ none: string;
315
+ /** Underline */
316
+ underline: string;
317
+ /** Overline */
318
+ overline: string;
319
+ /** Line through */
320
+ lineThrough: string;
321
+ }
322
+ /**
323
+ * Spacing scale configuration using a consistent mathematical progression
324
+ */
325
+ export interface ThemeSpacingConfiguration {
326
+ /** No spacing */
327
+ 0: string;
328
+ /** 1px spacing */
329
+ px: string;
330
+ /** 0.125rem (2px) */
331
+ 0.5: string;
332
+ /** 0.25rem (4px) */
333
+ 1: string;
334
+ /** 0.375rem (6px) */
335
+ 1.5: string;
336
+ /** 0.5rem (8px) */
337
+ 2: string;
338
+ /** 0.625rem (10px) */
339
+ 2.5: string;
340
+ /** 0.75rem (12px) */
341
+ 3: string;
342
+ /** 0.875rem (14px) */
343
+ 3.5: string;
344
+ /** 1rem (16px) */
345
+ 4: string;
346
+ /** 1.25rem (20px) */
347
+ 5: string;
348
+ /** 1.5rem (24px) */
349
+ 6: string;
350
+ /** 1.75rem (28px) */
351
+ 7: string;
352
+ /** 2rem (32px) */
353
+ 8: string;
354
+ /** 2.25rem (36px) */
355
+ 9: string;
356
+ /** 2.5rem (40px) */
357
+ 10: string;
358
+ /** 2.75rem (44px) */
359
+ 11: string;
360
+ /** 3rem (48px) */
361
+ 12: string;
362
+ /** 3.5rem (56px) */
363
+ 14: string;
364
+ /** 4rem (64px) */
365
+ 16: string;
366
+ /** 5rem (80px) */
367
+ 20: string;
368
+ /** 6rem (96px) */
369
+ 24: string;
370
+ /** 7rem (112px) */
371
+ 28: string;
372
+ /** 8rem (128px) */
373
+ 32: string;
374
+ /** 9rem (144px) */
375
+ 36: string;
376
+ /** 10rem (160px) */
377
+ 40: string;
378
+ /** 11rem (176px) */
379
+ 44: string;
380
+ /** 12rem (192px) */
381
+ 48: string;
382
+ /** 13rem (208px) */
383
+ 52: string;
384
+ /** 14rem (224px) */
385
+ 56: string;
386
+ /** 15rem (240px) */
387
+ 60: string;
388
+ /** 16rem (256px) */
389
+ 64: string;
390
+ /** 18rem (288px) */
391
+ 72: string;
392
+ /** 20rem (320px) */
393
+ 80: string;
394
+ /** 24rem (384px) */
395
+ 96: string;
396
+ }
397
+ /**
398
+ * Border radius configuration for consistent rounded corners
399
+ */
400
+ export interface ThemeBorderRadiusConfiguration {
401
+ /** No border radius */
402
+ none: string;
403
+ /** Small border radius */
404
+ sm: string;
405
+ /** Base border radius */
406
+ base: string;
407
+ /** Medium border radius */
408
+ md: string;
409
+ /** Large border radius */
410
+ lg: string;
411
+ /** Extra large border radius */
412
+ xl: string;
413
+ /** 2x large border radius */
414
+ '2xl': string;
415
+ /** 3x large border radius */
416
+ '3xl': string;
417
+ /** Full border radius (pill shape) */
418
+ full: string;
419
+ }
420
+ /**
421
+ * Shadow configuration for depth and elevation
422
+ */
423
+ export interface ThemeShadowConfiguration {
424
+ /** No shadow */
425
+ none: string;
426
+ /** Small shadow */
427
+ sm: string;
428
+ /** Base shadow */
429
+ base: string;
430
+ /** Medium shadow */
431
+ md: string;
432
+ /** Large shadow */
433
+ lg: string;
434
+ /** Extra large shadow */
435
+ xl: string;
436
+ /** 2x large shadow */
437
+ '2xl': string;
438
+ /** Inner shadow */
439
+ inner: string;
440
+ }
441
+ /**
442
+ * Transition configuration for consistent animations
443
+ */
444
+ export interface ThemeTransitionConfiguration {
445
+ /** No transition */
446
+ none: string;
447
+ /** Transition all properties */
448
+ all: string;
449
+ /** Fast transition (150ms) */
450
+ fast: string;
451
+ /** Normal transition (300ms) */
452
+ normal: string;
453
+ /** Slow transition (500ms) */
454
+ slow: string;
455
+ /** Color transitions */
456
+ colors: string;
457
+ /** Opacity transitions */
458
+ opacity: string;
459
+ /** Shadow transitions */
460
+ shadow: string;
461
+ /** Transform transitions */
462
+ transform: string;
463
+ }
464
+ /**
465
+ * Responsive breakpoint configuration
466
+ */
467
+ export interface ThemeBreakpointConfiguration {
468
+ /** Extra small screens (phones) */
469
+ xs: string;
470
+ /** Small screens (large phones) */
471
+ sm: string;
472
+ /** Medium screens (tablets) */
473
+ md: string;
474
+ /** Large screens (desktops) */
475
+ lg: string;
476
+ /** Extra large screens (large desktops) */
477
+ xl: string;
478
+ /** 2x large screens (ultra-wide) */
479
+ '2xl': string;
480
+ }
481
+ /**
482
+ * Component-specific theme overrides
483
+ */
484
+ export interface ComponentThemeOverrides {
485
+ [componentName: string]: ComponentThemeConfiguration;
486
+ }
487
+ /**
488
+ * Theme configuration for a specific component
489
+ */
490
+ export interface ComponentThemeConfiguration {
491
+ /** Base styles for the component */
492
+ base?: CSSProperties;
493
+ /** Variant-specific styles */
494
+ variants?: {
495
+ [variantName: string]: CSSProperties;
496
+ };
497
+ /** Size-specific styles */
498
+ sizes?: {
499
+ [sizeName: string]: CSSProperties;
500
+ };
501
+ /** State-specific styles */
502
+ states?: {
503
+ [stateName: string]: CSSProperties;
504
+ };
505
+ }
506
+ /**
507
+ * CSS variable naming conventions for Kenikool UI themes
508
+ * All CSS variables use the --kn- prefix for namespacing
509
+ */
510
+ export interface CSSVariableNaming {
511
+ /** Color variables */
512
+ colors: {
513
+ /** Primary color palette: --kn-primary-{shade} */
514
+ primary: `--kn-primary-${keyof ColorPalette}`;
515
+ /** Secondary color palette: --kn-secondary-{shade} */
516
+ secondary: `--kn-secondary-${keyof ColorPalette}`;
517
+ /** Success color palette: --kn-success-{shade} */
518
+ success: `--kn-success-${keyof ColorPalette}`;
519
+ /** Warning color palette: --kn-warning-{shade} */
520
+ warning: `--kn-warning-${keyof ColorPalette}`;
521
+ /** Error color palette: --kn-error-{shade} */
522
+ error: `--kn-error-${keyof ColorPalette}`;
523
+ /** Info color palette: --kn-info-{shade} */
524
+ info: `--kn-info-${keyof ColorPalette}`;
525
+ /** Neutral color palette: --kn-neutral-{shade} */
526
+ neutral: `--kn-neutral-${keyof ColorPalette}`;
527
+ /** Surface colors: --kn-surface-{type} */
528
+ surface: `--kn-surface-${keyof SurfaceColorConfiguration}`;
529
+ /** Text colors: --kn-text-{type} */
530
+ text: `--kn-text-${keyof TextColorConfiguration}`;
531
+ /** Border colors: --kn-border-{type} */
532
+ border: `--kn-border-${keyof BorderColorConfiguration}`;
533
+ /** State colors: --kn-state-{type} */
534
+ state: `--kn-state-${keyof StateColorConfiguration}`;
535
+ /** Overlay colors: --kn-overlay-{type} */
536
+ overlay: `--kn-overlay-${keyof OverlayColorConfiguration}`;
537
+ };
538
+ /** Typography variables */
539
+ typography: {
540
+ /** Font family: --kn-font-{type} */
541
+ fontFamily: `--kn-font-${keyof FontFamilyConfiguration}`;
542
+ /** Font size: --kn-text-{size} */
543
+ fontSize: `--kn-text-${keyof FontSizeConfiguration}`;
544
+ /** Font weight: --kn-font-{weight} */
545
+ fontWeight: `--kn-font-${keyof FontWeightConfiguration}`;
546
+ /** Line height: --kn-leading-{type} */
547
+ lineHeight: `--kn-leading-${keyof LineHeightConfiguration}`;
548
+ /** Letter spacing: --kn-tracking-{type} */
549
+ letterSpacing: `--kn-tracking-${keyof LetterSpacingConfiguration}`;
550
+ };
551
+ /** Spacing variables: --kn-space-{size} */
552
+ spacing: `--kn-space-${keyof ThemeSpacingConfiguration}`;
553
+ /** Border radius variables: --kn-radius-{size} */
554
+ borderRadius: `--kn-radius-${keyof ThemeBorderRadiusConfiguration}`;
555
+ /** Shadow variables: --kn-shadow-{size} */
556
+ shadows: `--kn-shadow-${keyof ThemeShadowConfiguration}`;
557
+ /** Transition variables: --kn-transition-{type} */
558
+ transitions: `--kn-transition-${keyof ThemeTransitionConfiguration}`;
559
+ /** Breakpoint variables: --kn-screen-{size} */
560
+ breakpoints: `--kn-screen-${keyof ThemeBreakpointConfiguration}`;
561
+ }
562
+ /**
563
+ * CSS variable generator utility type
564
+ */
565
+ export type CSSVariableName<T extends string> = `--kn-${T}`;
566
+ /**
567
+ * Helper type for creating CSS variable maps
568
+ */
569
+ export type CSSVariableMap<T extends Record<string, any>> = {
570
+ [K in keyof T]: CSSVariableName<string>;
571
+ };
572
+ /**
573
+ * Extended CSS properties interface that includes CSS custom properties
574
+ */
575
+ export interface CSSProperties extends Partial<CSSStyleDeclaration> {
576
+ /** CSS custom properties (CSS variables) */
577
+ [key: `--${string}`]: string | number;
578
+ }
579
+ /**
580
+ * Theme data model for runtime theme management
581
+ */
582
+ export interface ThemeData {
583
+ /** Theme configuration */
584
+ config: ThemeConfiguration;
585
+ /** Generated CSS variables */
586
+ cssVariables: Record<string, string>;
587
+ /** Compiled CSS string */
588
+ css: string;
589
+ /** Theme registration timestamp */
590
+ registeredAt: Date;
591
+ /** Whether theme is currently active */
592
+ isActive: boolean;
593
+ /** Theme usage statistics */
594
+ stats: ThemeUsageStats;
595
+ }
596
+ /**
597
+ * Theme usage statistics
598
+ */
599
+ export interface ThemeUsageStats {
600
+ /** Number of times theme has been applied */
601
+ applicationCount: number;
602
+ /** Last time theme was applied */
603
+ lastApplied: Date;
604
+ /** Elements currently using this theme */
605
+ activeElements: number;
606
+ }
607
+ /**
608
+ * Theme validation result
609
+ */
610
+ export interface ThemeValidationResult {
611
+ /** Whether theme is valid */
612
+ valid: boolean;
613
+ /** Validation errors */
614
+ errors: ThemeValidationError[];
615
+ /** Validation warnings */
616
+ warnings: ThemeValidationWarning[];
617
+ /** Accessibility validation results */
618
+ accessibility: AccessibilityValidationResult;
619
+ }
620
+ /**
621
+ * Theme validation error
622
+ */
623
+ export interface ThemeValidationError {
624
+ /** Error path in theme configuration */
625
+ path: string;
626
+ /** Error message */
627
+ message: string;
628
+ /** Error code for programmatic handling */
629
+ code: string;
630
+ /** Severity level */
631
+ severity: 'error' | 'warning';
632
+ }
633
+ /**
634
+ * Theme validation warning
635
+ */
636
+ export interface ThemeValidationWarning {
637
+ /** Warning path in theme configuration */
638
+ path: string;
639
+ /** Warning message */
640
+ message: string;
641
+ /** Warning code for programmatic handling */
642
+ code: string;
643
+ /** Suggested fix */
644
+ suggestion?: string;
645
+ }
646
+ /**
647
+ * Accessibility validation result
648
+ */
649
+ export interface AccessibilityValidationResult {
650
+ /** Whether theme meets accessibility standards */
651
+ compliant: boolean;
652
+ /** WCAG compliance level (AA, AAA) */
653
+ wcagLevel: 'AA' | 'AAA' | 'none';
654
+ /** Contrast ratio issues */
655
+ contrastIssues: ContrastIssue[];
656
+ /** Color blindness compatibility */
657
+ colorBlindnessCompatible: boolean;
658
+ }
659
+ /**
660
+ * Contrast ratio issue
661
+ */
662
+ export interface ContrastIssue {
663
+ /** Foreground color */
664
+ foreground: string;
665
+ /** Background color */
666
+ background: string;
667
+ /** Actual contrast ratio */
668
+ ratio: number;
669
+ /** Required contrast ratio */
670
+ required: number;
671
+ /** Context where issue occurs */
672
+ context: string;
673
+ }
674
+ //# sourceMappingURL=theme-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-config.d.ts","sourceRoot":"","sources":["../../../src/types/theme-config.ts"],"names":[],"mappings":"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"}