@matteoaliano/forest-ui 0.3.6 → 0.4.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.
package/dist/theme.d.mts CHANGED
@@ -1,3 +1,770 @@
1
- import '@mui/material';
2
- import '@mui/material/styles';
3
- export { D as DesignTokens, P as PresetVariantConfig, T as ThemePreset, a as alpha, b as avatarColors, c as base, d as bg, e as border, f as breadcrumbColors, g as buildTheme, h as buildThemeOptions, i as buttonColors, j as chartColors, O as components, k as container, l as display, m as error, n as fg, o as focusRings, p as fontFamily, q as fontSize, r as fontWeight, s as forestAgencyPreset, t as forestExternalPreset, u as forestInternalPreset, v as forestTheme, w as forestThemeOptions, x as getAvailablePresets, y as getPreset, Q as gray, z as iconColors, A as info, B as lineHeight, R as magenta, S as misc, C as navColors, U as palette, E as radius, V as radiusSharp, W as red, F as registerPreset, X as shadows, G as sliderColors, H as spacing, I as success, J as text, K as toggleColors, Y as typography, Z as violet, M as warning, N as widths } from './index-BCXD47YU.mjs';
1
+ import * as _mui_material from '@mui/material';
2
+ import { Theme, ThemeOptions } from '@mui/material/styles';
3
+
4
+ /**
5
+ * Design tokens extracted from Figma.
6
+ * These are the primitive values that the semantic theme references.
7
+ */
8
+ declare const violet: {
9
+ readonly 25: "#faf8ff";
10
+ readonly 50: "#f5f0ff";
11
+ readonly 100: "#ebe0ff";
12
+ readonly 200: "#d6c0ff";
13
+ readonly 300: "#b090ff";
14
+ readonly 400: "#9D5FFF";
15
+ readonly 500: "#7c4de6";
16
+ readonly 600: "#5b3acc";
17
+ readonly 700: "#3a1aad";
18
+ readonly 800: "#190a8a";
19
+ readonly 900: "#000066";
20
+ readonly 950: "#000033";
21
+ };
22
+ declare const magenta: {
23
+ readonly 25: "#fff8fd";
24
+ readonly 50: "#fff0fa";
25
+ readonly 100: "#ffe0f5";
26
+ readonly 200: "#ffc0eb";
27
+ readonly 300: "#ff90d8";
28
+ readonly 400: "#FF78F3";
29
+ readonly 500: "#e650d4";
30
+ readonly 600: "#cc28b5";
31
+ readonly 700: "#a3008c";
32
+ readonly 800: "#7a0066";
33
+ readonly 900: "#520044";
34
+ readonly 950: "#290022";
35
+ };
36
+ declare const gray: {
37
+ readonly 25: "#fdfcfc";
38
+ readonly 50: "#faf9f8";
39
+ readonly 100: "#f5f3f1";
40
+ readonly 200: "#e8e5e3";
41
+ readonly 300: "#d8d8dc";
42
+ readonly 400: "#a0a0a6";
43
+ readonly 500: "#71717a";
44
+ readonly 600: "#52525b";
45
+ readonly 700: "#3f3f46";
46
+ readonly 800: "#27272a";
47
+ readonly 900: "#18181b";
48
+ readonly 950: "#09090b";
49
+ };
50
+ declare const red: {
51
+ readonly 25: "#fff8f7";
52
+ readonly 50: "#fff0ee";
53
+ readonly 100: "#ffe0dd";
54
+ readonly 200: "#ffc0bb";
55
+ readonly 300: "#ff9090";
56
+ readonly 400: "#FF2821";
57
+ readonly 500: "#e61a1a";
58
+ readonly 600: "#cc1010";
59
+ readonly 700: "#a30808";
60
+ readonly 800: "#7a0000";
61
+ readonly 900: "#520000";
62
+ readonly 950: "#290000";
63
+ };
64
+ declare const misc: {
65
+ readonly teal: {
66
+ readonly 25: "#f6fefc";
67
+ readonly 50: "#f0fdf9";
68
+ readonly 100: "#ccfbef";
69
+ readonly 200: "#99f6e0";
70
+ readonly 300: "#5fe9d0";
71
+ readonly 400: "#2ed3b7";
72
+ readonly 500: "#15b79e";
73
+ readonly 600: "#0e9384";
74
+ readonly 700: "#107569";
75
+ readonly 800: "#125d56";
76
+ readonly 900: "#134e48";
77
+ readonly 950: "#0a2926";
78
+ };
79
+ readonly orange: {
80
+ readonly 25: "#fefaf5";
81
+ readonly 50: "#fef6ee";
82
+ readonly 100: "#fdead7";
83
+ readonly 200: "#f9dbaf";
84
+ readonly 300: "#f7b27a";
85
+ readonly 400: "#f38744";
86
+ readonly 500: "#ef6820";
87
+ readonly 600: "#e04f16";
88
+ readonly 700: "#b93815";
89
+ readonly 800: "#932f19";
90
+ readonly 900: "#772917";
91
+ readonly 950: "#511c10";
92
+ };
93
+ readonly purple: {
94
+ readonly 25: "#fafaff";
95
+ readonly 50: "#f4f3ff";
96
+ readonly 100: "#ebe9fe";
97
+ readonly 200: "#d9d6fe";
98
+ readonly 300: "#bdb4fe";
99
+ readonly 400: "#9b8afb";
100
+ readonly 500: "#7a5af8";
101
+ readonly 600: "#6938ef";
102
+ readonly 700: "#5925dc";
103
+ readonly 800: "#4a1fb8";
104
+ readonly 900: "#3e1c96";
105
+ readonly 950: "#27115f";
106
+ };
107
+ readonly pink: {
108
+ readonly 25: "#fef6fb";
109
+ readonly 50: "#fdf2fa";
110
+ readonly 100: "#fce7f6";
111
+ readonly 200: "#fcceee";
112
+ readonly 300: "#faa7e0";
113
+ readonly 400: "#f670c7";
114
+ readonly 500: "#ee46bc";
115
+ readonly 600: "#dd2590";
116
+ readonly 700: "#c11574";
117
+ readonly 800: "#9e165f";
118
+ readonly 900: "#851651";
119
+ readonly 950: "#4e0d30";
120
+ };
121
+ readonly fuchsia: {
122
+ readonly 25: "#fefaff";
123
+ readonly 50: "#fdf4ff";
124
+ readonly 100: "#fbe8ff";
125
+ readonly 200: "#f6d0fe";
126
+ readonly 300: "#eeaafd";
127
+ readonly 400: "#e478fa";
128
+ readonly 500: "#d444f1";
129
+ readonly 600: "#ba24d5";
130
+ readonly 700: "#9f1ab1";
131
+ readonly 800: "#821890";
132
+ readonly 900: "#6f1877";
133
+ readonly 950: "#47104c";
134
+ };
135
+ readonly orangeDark: {
136
+ readonly 25: "#fff9f5";
137
+ readonly 50: "#fff4ed";
138
+ readonly 100: "#ffe6d5";
139
+ readonly 200: "#ffd6ae";
140
+ readonly 300: "#ff9c66";
141
+ readonly 400: "#ff692e";
142
+ readonly 500: "#ff4405";
143
+ readonly 600: "#e62e05";
144
+ readonly 700: "#bc1b06";
145
+ readonly 800: "#97180c";
146
+ readonly 900: "#771a0d";
147
+ readonly 950: "#57130a";
148
+ };
149
+ readonly green: {
150
+ readonly 25: "#f6fef9";
151
+ readonly 50: "#edfcf2";
152
+ readonly 100: "#d3f8df";
153
+ readonly 200: "#aaf0c4";
154
+ readonly 300: "#73e2a3";
155
+ readonly 400: "#3ccb7f";
156
+ readonly 500: "#16b364";
157
+ readonly 600: "#099250";
158
+ readonly 700: "#087443";
159
+ readonly 800: "#095c37";
160
+ readonly 900: "#084c2e";
161
+ readonly 950: "#052e1c";
162
+ };
163
+ readonly indigo: {
164
+ readonly 25: "#f5f8ff";
165
+ readonly 50: "#eef4ff";
166
+ readonly 100: "#e0eaff";
167
+ readonly 200: "#c7d7fe";
168
+ readonly 300: "#a4bcfd";
169
+ readonly 400: "#8098f9";
170
+ readonly 500: "#6172f3";
171
+ readonly 600: "#444ce7";
172
+ readonly 700: "#3538cd";
173
+ readonly 800: "#2d31a6";
174
+ readonly 900: "#2d3282";
175
+ readonly 950: "#1f235b";
176
+ };
177
+ readonly rose: {
178
+ readonly 25: "#fff5f6";
179
+ readonly 50: "#fff1f3";
180
+ readonly 100: "#ffe4e8";
181
+ readonly 200: "#fecdd6";
182
+ readonly 300: "#fea3b4";
183
+ readonly 400: "#fd6f8e";
184
+ readonly 500: "#f63d68";
185
+ readonly 600: "#e31b54";
186
+ readonly 700: "#c01048";
187
+ readonly 800: "#a11043";
188
+ readonly 900: "#89123e";
189
+ readonly 950: "#510b24";
190
+ };
191
+ readonly blueLight: {
192
+ readonly 25: "#f5fbff";
193
+ readonly 50: "#f0f9ff";
194
+ readonly 100: "#e0f2fe";
195
+ readonly 200: "#b9e6fe";
196
+ readonly 300: "#7cd4fd";
197
+ readonly 400: "#36bffa";
198
+ readonly 500: "#0ba5ec";
199
+ readonly 600: "#0086c9";
200
+ readonly 700: "#026aa2";
201
+ readonly 800: "#065986";
202
+ readonly 900: "#0b4a6f";
203
+ readonly 950: "#062c41";
204
+ };
205
+ readonly cyan: {
206
+ readonly 25: "#f5feff";
207
+ readonly 50: "#ecfdff";
208
+ readonly 100: "#cff9fe";
209
+ readonly 200: "#a5f0fc";
210
+ readonly 300: "#67e3f9";
211
+ readonly 400: "#22ccee";
212
+ readonly 500: "#06aed4";
213
+ readonly 600: "#088ab2";
214
+ readonly 700: "#0e7090";
215
+ readonly 800: "#155b75";
216
+ readonly 900: "#164c63";
217
+ readonly 950: "#0d2d3a";
218
+ };
219
+ };
220
+ declare const base: {
221
+ readonly white: "#ffffff";
222
+ readonly black: "#000000";
223
+ readonly transparent: "#ffffff00";
224
+ };
225
+ declare const error: {
226
+ readonly 25: "#fffbfa";
227
+ readonly 50: "#fef3f2";
228
+ readonly 100: "#fee4e2";
229
+ readonly 200: "#fecdca";
230
+ readonly 300: "#fda29b";
231
+ readonly 400: "#f97066";
232
+ readonly 500: "#f04438";
233
+ readonly 600: "#d92d20";
234
+ readonly 700: "#b42318";
235
+ readonly 800: "#912018";
236
+ readonly 900: "#7a271a";
237
+ readonly 950: "#55160c";
238
+ };
239
+ declare const warning: {
240
+ readonly 25: "#fffcf5";
241
+ readonly 50: "#fffaeb";
242
+ readonly 100: "#fef0c7";
243
+ readonly 200: "#fedf89";
244
+ readonly 300: "#fec84b";
245
+ readonly 400: "#fdb022";
246
+ readonly 500: "#f79009";
247
+ readonly 600: "#dc6803";
248
+ readonly 700: "#b54708";
249
+ readonly 800: "#93370d";
250
+ readonly 900: "#7a2e0e";
251
+ readonly 950: "#4e1d09";
252
+ };
253
+ declare const success: {
254
+ readonly 25: "#f6fef9";
255
+ readonly 50: "#ecfdf3";
256
+ readonly 100: "#dcfae6";
257
+ readonly 200: "#abefc6";
258
+ readonly 300: "#75e0a7";
259
+ readonly 400: "#47cd89";
260
+ readonly 500: "#17b26a";
261
+ readonly 600: "#079455";
262
+ readonly 700: "#067647";
263
+ readonly 800: "#085d3a";
264
+ readonly 900: "#074d31";
265
+ readonly 950: "#053321";
266
+ };
267
+ declare const info: {
268
+ readonly 25: "#f5faff";
269
+ readonly 50: "#eff8ff";
270
+ readonly 100: "#d1e9ff";
271
+ readonly 200: "#b2ddff";
272
+ readonly 300: "#84caff";
273
+ readonly 400: "#53b1fd";
274
+ readonly 500: "#2e90fa";
275
+ readonly 600: "#1570ef";
276
+ readonly 700: "#175cd3";
277
+ readonly 800: "#1849a9";
278
+ readonly 900: "#194185";
279
+ readonly 950: "#102a56";
280
+ };
281
+ declare const spacing: {
282
+ readonly none: 0;
283
+ readonly xxs: 2;
284
+ readonly xs: 4;
285
+ readonly sm: 6;
286
+ readonly md: 8;
287
+ readonly lg: 12;
288
+ readonly xl: 16;
289
+ readonly "2xl": 20;
290
+ readonly "3xl": 24;
291
+ readonly "4xl": 32;
292
+ readonly "5xl": 40;
293
+ readonly "6xl": 48;
294
+ readonly "7xl": 64;
295
+ readonly "8xl": 80;
296
+ readonly "9xl": 96;
297
+ readonly "10xl": 128;
298
+ readonly "11xl": 160;
299
+ };
300
+ declare const radius: {
301
+ readonly none: 0;
302
+ readonly xxs: 2;
303
+ readonly xs: 4;
304
+ readonly sm: 6;
305
+ readonly md: 8;
306
+ readonly lg: 10;
307
+ readonly xl: 12;
308
+ readonly "2xl": 16;
309
+ readonly "3xl": 20;
310
+ readonly "4xl": 24;
311
+ readonly full: 9999;
312
+ };
313
+ declare const shadows: {
314
+ readonly xs: "0px 1px 2px 0px #1018280d";
315
+ readonly sm: "0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f";
316
+ readonly md: "0px 4px 8px -2px #1018281a, 0px 2px 4px -2px #1018280f";
317
+ readonly lg: "0px 12px 16px -4px #10182814, 0px 4px 6px -2px #10182808";
318
+ readonly xl: "0px 20px 24px -4px #10182814, 0px 8px 8px -4px #10182808";
319
+ readonly "2xl": "0px 24px 48px -12px #1018282e";
320
+ readonly "3xl": "0px 32px 64px -12px #10182824";
321
+ };
322
+ declare const focusRings: {
323
+ readonly brand: "0px 0px 0px 4px #7c4de63d";
324
+ readonly brandShadowXs: "0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #7c4de63d";
325
+ readonly brandShadowSm: "0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f, 0px 0px 0px 4px #7c4de63d";
326
+ readonly gray: "0px 0px 0px 4px #a0a0a624";
327
+ readonly grayShadowXs: "0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #a0a0a624";
328
+ readonly grayShadowSm: "0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f, 0px 0px 0px 4px #a0a0a624";
329
+ readonly error: "0px 0px 0px 4px #f044383d";
330
+ readonly errorShadowXs: "0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #f044383d";
331
+ };
332
+ declare const fontFamily = "\"Aeonik\", sans-serif";
333
+ declare const fontFamilyMono = "\"Aeonik Mono\", monospace";
334
+ declare const fontSize: {
335
+ readonly xxs: 11;
336
+ readonly xs: 12;
337
+ readonly sm: 14;
338
+ readonly md: 16;
339
+ readonly lg: 18;
340
+ readonly xl: 20;
341
+ };
342
+ declare const lineHeight: {
343
+ readonly xxs: "16px";
344
+ readonly xs: "18px";
345
+ readonly sm: "20px";
346
+ readonly md: "24px";
347
+ readonly lg: "28px";
348
+ readonly xl: "30px";
349
+ };
350
+ declare const fontWeight: {
351
+ readonly regular: 400;
352
+ readonly medium: 500;
353
+ readonly semibold: 600;
354
+ readonly bold: 700;
355
+ };
356
+ declare const display: {
357
+ readonly "2xl": {
358
+ readonly fontSize: 72;
359
+ readonly lineHeight: "90px";
360
+ readonly letterSpacing: "-0.02em";
361
+ };
362
+ readonly xl: {
363
+ readonly fontSize: 60;
364
+ readonly lineHeight: "72px";
365
+ readonly letterSpacing: "-0.02em";
366
+ };
367
+ readonly lg: {
368
+ readonly fontSize: 48;
369
+ readonly lineHeight: "60px";
370
+ readonly letterSpacing: "-0.02em";
371
+ };
372
+ readonly md: {
373
+ readonly fontSize: 36;
374
+ readonly lineHeight: "44px";
375
+ readonly letterSpacing: "-0.02em";
376
+ };
377
+ readonly sm: {
378
+ readonly fontSize: 30;
379
+ readonly lineHeight: "38px";
380
+ };
381
+ readonly xs: {
382
+ readonly fontSize: 24;
383
+ readonly lineHeight: "32px";
384
+ };
385
+ };
386
+ declare const container: {
387
+ readonly maxWidthDesktop: 1280;
388
+ readonly paddingDesktop: 32;
389
+ readonly paddingMobile: 16;
390
+ };
391
+ declare const widths: {
392
+ readonly xxs: 320;
393
+ readonly xs: 384;
394
+ readonly sm: 480;
395
+ readonly md: 560;
396
+ readonly lg: 640;
397
+ readonly xl: 768;
398
+ readonly "2xl": 1024;
399
+ readonly "3xl": 1280;
400
+ readonly "4xl": 1440;
401
+ readonly "5xl": 1600;
402
+ readonly "6xl": 1920;
403
+ };
404
+ declare const text: {
405
+ readonly primary: "#18181b";
406
+ readonly secondary: "#3f3f46";
407
+ readonly secondaryHover: "#27272a";
408
+ readonly tertiary: "#52525b";
409
+ readonly tertiaryHover: "#3f3f46";
410
+ readonly quaternary: "#71717a";
411
+ readonly disabled: "#71717a";
412
+ readonly placeholder: "#71717a";
413
+ readonly placeholderSubtle: "#d8d8dc";
414
+ readonly white: "#ffffff";
415
+ readonly brandPrimary: "#000066";
416
+ readonly brandSecondary: "#3a1aad";
417
+ readonly brandTertiary: "#5b3acc";
418
+ readonly brandTertiaryAlt: "#5b3acc";
419
+ readonly primaryOnBrand: "#ffffff";
420
+ readonly secondaryOnBrand: "#d6c0ff";
421
+ readonly tertiaryOnBrand: "#d6c0ff";
422
+ readonly quaternaryOnBrand: "#b090ff";
423
+ readonly errorPrimary: "#d92d20";
424
+ readonly warningPrimary: "#dc6803";
425
+ readonly successPrimary: "#079455";
426
+ };
427
+ declare const bg: {
428
+ readonly primary: "#faf9f8";
429
+ readonly primaryAlt: "#faf9f8";
430
+ readonly primaryHover: "#f5f3f1";
431
+ readonly primarySolid: "#09090b";
432
+ readonly secondary: "#ffffff";
433
+ readonly secondaryAlt: "#ffffff";
434
+ readonly secondarySubtle: "#fdfcfc";
435
+ readonly secondaryHover: "#faf9f8";
436
+ readonly secondarySolid: "#52525b";
437
+ readonly tertiary: "#f5f3f1";
438
+ readonly quaternary: "#e8e5e3";
439
+ readonly active: "#e8e5e3";
440
+ readonly disabled: "#f5f3f1";
441
+ readonly disabledSubtle: "#faf9f8";
442
+ readonly overlay: "#09090b";
443
+ readonly brandPrimary: "#f5f0ff";
444
+ readonly brandPrimaryAlt: "#f5f0ff";
445
+ readonly brandSecondary: "#ebe0ff";
446
+ readonly brandSolid: "#5b3acc";
447
+ readonly brandSolidHover: "#3a1aad";
448
+ readonly brandSection: "#190a8a";
449
+ readonly brandSectionSubtle: "#3a1aad";
450
+ readonly errorPrimary: "#fef3f2";
451
+ readonly errorSecondary: "#fee4e2";
452
+ readonly errorSolid: "#d92d20";
453
+ readonly warningPrimary: "#fffaeb";
454
+ readonly warningSecondary: "#fef0c7";
455
+ readonly warningSolid: "#dc6803";
456
+ readonly successPrimary: "#ecfdf3";
457
+ readonly successSecondary: "#dcfae6";
458
+ readonly successSolid: "#079455";
459
+ };
460
+ declare const fg: {
461
+ readonly primary: "#18181b";
462
+ readonly secondary: "#3f3f46";
463
+ readonly secondaryHover: "#27272a";
464
+ readonly tertiary: "#52525b";
465
+ readonly tertiaryHover: "#3f3f46";
466
+ readonly quaternary: "#71717a";
467
+ readonly quaternaryHover: "#52525b";
468
+ readonly quinary: "#a0a0a6";
469
+ readonly quinaryHover: "#71717a";
470
+ readonly senary: "#d8d8dc";
471
+ readonly white: "#ffffff";
472
+ readonly disabled: "#a0a0a6";
473
+ readonly disabledSubtle: "#d8d8dc";
474
+ readonly brandPrimary: "#5b3acc";
475
+ readonly brandPrimaryAlt: "#5b3acc";
476
+ readonly brandSecondary: "#7c4de6";
477
+ readonly errorPrimary: "#d92d20";
478
+ readonly errorSecondary: "#f04438";
479
+ readonly warningPrimary: "#dc6803";
480
+ readonly warningSecondary: "#f79009";
481
+ readonly successPrimary: "#079455";
482
+ readonly successSecondary: "#17b26a";
483
+ };
484
+ declare const border: {
485
+ readonly primary: "#d8d8dc";
486
+ readonly secondary: "#e8e5e3";
487
+ readonly tertiary: "#f5f3f1";
488
+ readonly disabled: "#d8d8dc";
489
+ readonly disabledSubtle: "#e8e5e3";
490
+ readonly brand: "#b090ff";
491
+ readonly brandSolid: "#5b3acc";
492
+ readonly brandSolidAlt: "#5b3acc";
493
+ readonly error: "#fda29b";
494
+ readonly errorSolid: "#d92d20";
495
+ };
496
+ declare const buttonColors: {
497
+ readonly primary: {
498
+ readonly bg: "#5b3acc";
499
+ readonly bgHover: "#3a1aad";
500
+ readonly fg: "#ffffff";
501
+ readonly fgHover: "#ffffff";
502
+ readonly border: "#5b3acc";
503
+ readonly borderHover: "#3a1aad";
504
+ };
505
+ readonly secondary: {
506
+ readonly bg: "#18181b";
507
+ readonly bgHover: "#09090b";
508
+ readonly fg: "#ffffff";
509
+ readonly fgHover: "#ffffff";
510
+ readonly border: "#18181b";
511
+ readonly borderHover: "#09090b";
512
+ };
513
+ readonly secondaryColor: {
514
+ readonly bg: "#ffffff";
515
+ readonly bgHover: "#f5f0ff";
516
+ readonly fg: "#3a1aad";
517
+ readonly fgHover: "#190a8a";
518
+ readonly border: "#b090ff";
519
+ readonly borderHover: "#b090ff";
520
+ };
521
+ readonly tertiary: {
522
+ readonly fg: "#52525b";
523
+ readonly fgHover: "#3f3f46";
524
+ readonly bgHover: "#faf9f8";
525
+ };
526
+ readonly tertiaryColor: {
527
+ readonly fg: "#3a1aad";
528
+ readonly fgHover: "#190a8a";
529
+ readonly bgHover: "#f5f0ff";
530
+ };
531
+ readonly primaryError: {
532
+ readonly bg: "#d92d20";
533
+ readonly bgHover: "#b42318";
534
+ readonly fg: "#ffffff";
535
+ readonly fgHover: "#ffffff";
536
+ readonly border: "#d92d20";
537
+ readonly borderHover: "#b42318";
538
+ };
539
+ readonly secondaryError: {
540
+ readonly bg: "#ffffff";
541
+ readonly bgHover: "#fef3f2";
542
+ readonly fg: "#b42318";
543
+ readonly fgHover: "#912018";
544
+ readonly border: "#fda29b";
545
+ readonly borderHover: "#fda29b";
546
+ };
547
+ readonly tertiaryError: {
548
+ readonly fg: "#b42318";
549
+ readonly fgHover: "#912018";
550
+ readonly bgHover: "#fef3f2";
551
+ };
552
+ };
553
+ declare const avatarColors: {
554
+ readonly bg: "#f5f3f1";
555
+ readonly contrastBorder: "#00000014";
556
+ readonly profilePhotoBorder: "#ffffff";
557
+ readonly focusBorder: "#a0a0a624";
558
+ };
559
+ declare const breadcrumbColors: {
560
+ readonly fg: "#52525b";
561
+ readonly fgHover: "#3f3f46";
562
+ readonly bgHover: "#faf9f8";
563
+ readonly brandBgHover: "#f5f0ff";
564
+ readonly brandFgHover: "#3a1aad";
565
+ readonly iconFg: "#71717a";
566
+ readonly iconFgHover: "#3f3f46";
567
+ readonly brandIconFgHover: "#3a1aad";
568
+ };
569
+ declare const iconColors: {
570
+ readonly fgBrand: "#5b3acc";
571
+ readonly fgBrandOnBrand: "#d6c0ff";
572
+ readonly featuredModernBorder: "#e8e5e3";
573
+ readonly featuredLightFgBrand: "#5b3acc";
574
+ readonly featuredLightFgGray: "#71717a";
575
+ readonly featuredLightFgError: "#d92d20";
576
+ readonly featuredLightFgWarning: "#dc6803";
577
+ readonly featuredLightFgSuccess: "#079455";
578
+ readonly featuredDarkFgBrand: "#ffffff";
579
+ readonly featuredDarkFgGray: "#ffffff";
580
+ readonly featuredDarkFgError: "#ffffff";
581
+ readonly featuredDarkFgWarning: "#ffffff";
582
+ readonly featuredDarkFgSuccess: "#ffffff";
583
+ };
584
+ declare const navColors: {
585
+ readonly itemIconFg: "#71717a";
586
+ readonly itemIconFgActive: "#3f3f46";
587
+ readonly itemButtonIconFg: "#71717a";
588
+ readonly itemButtonIconFgActive: "#3f3f46";
589
+ };
590
+ declare const sliderColors: {
591
+ readonly handleBorder: "#5b3acc";
592
+ readonly handleBg: "#ffffff";
593
+ };
594
+ declare const toggleColors: {
595
+ readonly buttonFgDisabled: "#faf9f8";
596
+ };
597
+ declare const chartColors: {
598
+ readonly axisFg: "#f5f3f1";
599
+ readonly gridlineFg: "#f5f3f1";
600
+ readonly labelFg: "#52525b";
601
+ readonly labelFgEmphasis: "#3f3f46";
602
+ readonly bg: "#ffffff";
603
+ readonly bgAlt: "#faf9f8";
604
+ readonly tooltipBg: "#09090b";
605
+ readonly tooltipFg: "#ffffff";
606
+ readonly crosshairFg: "#71717a";
607
+ readonly legendFg: "#52525b";
608
+ readonly series: readonly [{
609
+ readonly fg: "#7a5af8";
610
+ readonly fgHover: "#6938ef";
611
+ readonly bg: "#ebe9fe";
612
+ readonly bgHover: "#d9d6fe";
613
+ }, {
614
+ readonly fg: "#ff692e";
615
+ readonly fgHover: "#ff4405";
616
+ readonly bg: "#ffe6d5";
617
+ readonly bgHover: "#ffd6ae";
618
+ }, {
619
+ readonly fg: "#5fe9d0";
620
+ readonly fgHover: "#2ed3b7";
621
+ readonly bg: "#f0fdf9";
622
+ readonly bgHover: "#ccfbef";
623
+ }, {
624
+ readonly fg: "#fdb022";
625
+ readonly fgHover: "#f79009";
626
+ readonly bg: "#fef0c7";
627
+ readonly bgHover: "#fedf89";
628
+ }, {
629
+ readonly fg: "#fd6f8e";
630
+ readonly fgHover: "#f63d68";
631
+ readonly bg: "#ffe4e8";
632
+ readonly bgHover: "#fecdd6";
633
+ }, {
634
+ readonly fg: "#36bffa";
635
+ readonly fgHover: "#0ba5ec";
636
+ readonly bg: "#e0f2fe";
637
+ readonly bgHover: "#b9e6fe";
638
+ }, {
639
+ readonly fg: "#f7b27a";
640
+ readonly fgHover: "#f38744";
641
+ readonly bg: "#fdead7";
642
+ readonly bgHover: "#f9dbaf";
643
+ }, {
644
+ readonly fg: "#088ab2";
645
+ readonly fgHover: "#0e7090";
646
+ readonly bg: "#cff9fe";
647
+ readonly bgHover: "#a5f0fc";
648
+ }, {
649
+ readonly fg: "#16b364";
650
+ readonly fgHover: "#099250";
651
+ readonly bg: "#d3f8df";
652
+ readonly bgHover: "#aaf0c4";
653
+ }, {
654
+ readonly fg: "#f670c7";
655
+ readonly fgHover: "#ee46bc";
656
+ readonly bg: "#fce7f6";
657
+ readonly bgHover: "#fcceee";
658
+ }, {
659
+ readonly fg: "#e478fa";
660
+ readonly fgHover: "#d444f1";
661
+ readonly bg: "#fbe8ff";
662
+ readonly bgHover: "#f6d0fe";
663
+ }, {
664
+ readonly fg: "#0e9384";
665
+ readonly fgHover: "#107569";
666
+ readonly bg: "#ccfbef";
667
+ readonly bgHover: "#99f6e0";
668
+ }];
669
+ };
670
+ declare const alpha: {
671
+ readonly white: {
672
+ readonly 10: "#ffffff1a";
673
+ readonly 20: "#ffffff33";
674
+ readonly 30: "#ffffff4d";
675
+ readonly 40: "#ffffff66";
676
+ readonly 50: "#ffffff80";
677
+ readonly 60: "#ffffff99";
678
+ readonly 70: "#ffffffb3";
679
+ readonly 80: "#ffffffcc";
680
+ readonly 90: "#ffffffe6";
681
+ readonly 100: "#ffffff";
682
+ };
683
+ readonly black: {
684
+ readonly 10: "#0000001a";
685
+ readonly 20: "#00000033";
686
+ readonly 30: "#0000004d";
687
+ readonly 40: "#00000066";
688
+ readonly 50: "#00000080";
689
+ readonly 60: "#00000099";
690
+ readonly 70: "#000000b3";
691
+ readonly 80: "#000000cc";
692
+ readonly 90: "#000000e6";
693
+ readonly 100: "#000000";
694
+ };
695
+ };
696
+
697
+ /**
698
+ * Recursively widen all literal string values to `string` while preserving
699
+ * the object shape. This allows presets to provide different hex values
700
+ * without fighting literal-type checks.
701
+ */
702
+ type Widen<T> = T extends string ? string : T extends number ? number : T extends object ? {
703
+ [K in keyof T]: Widen<T[K]>;
704
+ } : T;
705
+ /** Full set of design tokens that a preset variant must provide. */
706
+ interface DesignTokens {
707
+ base: Widen<typeof base>;
708
+ error: Widen<typeof error>;
709
+ warning: Widen<typeof warning>;
710
+ success: Widen<typeof success>;
711
+ info: Widen<typeof info>;
712
+ spacing: Widen<typeof spacing>;
713
+ radius: Widen<typeof radius>;
714
+ shadows: Widen<typeof shadows>;
715
+ focusRings: Widen<typeof focusRings>;
716
+ fontFamily: string;
717
+ fontFamilyMono: string;
718
+ fontSize: Widen<typeof fontSize>;
719
+ lineHeight: Widen<typeof lineHeight>;
720
+ fontWeight: Widen<typeof fontWeight>;
721
+ display: Widen<typeof display>;
722
+ container: Widen<typeof container>;
723
+ widths: Widen<typeof widths>;
724
+ text: Widen<typeof text>;
725
+ bg: Widen<typeof bg>;
726
+ fg: Widen<typeof fg>;
727
+ border: Widen<typeof border>;
728
+ buttonColors: Widen<typeof buttonColors>;
729
+ avatarColors: Widen<typeof avatarColors>;
730
+ breadcrumbColors: Widen<typeof breadcrumbColors>;
731
+ iconColors: Widen<typeof iconColors>;
732
+ navColors: Widen<typeof navColors>;
733
+ sliderColors: Widen<typeof sliderColors>;
734
+ toggleColors: Widen<typeof toggleColors>;
735
+ chartColors: Widen<typeof chartColors>;
736
+ alpha: Widen<typeof alpha>;
737
+ }
738
+ /** Configuration for a single variant within a preset. */
739
+ interface PresetVariantConfig {
740
+ tokens: DesignTokens;
741
+ }
742
+ /** A named theme preset with one or more variants. */
743
+ interface ThemePreset {
744
+ name: string;
745
+ defaultVariant: string;
746
+ variants: Record<string, PresetVariantConfig>;
747
+ }
748
+
749
+ /** Assemble a MUI ThemeOptions object from a full set of design tokens. */
750
+ declare function buildThemeOptions(tokens: DesignTokens): ThemeOptions;
751
+ /** Create a fully resolved MUI Theme from a full set of design tokens. */
752
+ declare function buildTheme(tokens: DesignTokens): Theme;
753
+
754
+ declare const forestExternalPreset: ThemePreset;
755
+
756
+ declare const forestAgencyPreset: ThemePreset;
757
+
758
+ declare const forestInternalPreset: ThemePreset;
759
+
760
+ /** Get a preset by name. Returns `undefined` if not found. */
761
+ declare function getPreset(name: string): ThemePreset | undefined;
762
+ /** Register a custom preset (or override a built-in one). */
763
+ declare function registerPreset(preset: ThemePreset): void;
764
+ /** List all registered preset names. */
765
+ declare function getAvailablePresets(): string[];
766
+
767
+ declare const forestTheme: _mui_material.Theme;
768
+ declare const forestThemeOptions: _mui_material.ThemeOptions;
769
+
770
+ export { type DesignTokens, type PresetVariantConfig, type ThemePreset, alpha, avatarColors, base, bg, border, breadcrumbColors, buildTheme, buildThemeOptions, buttonColors, chartColors, container, display, error, fg, focusRings, fontFamily, fontFamilyMono, fontSize, fontWeight, forestAgencyPreset, forestExternalPreset, forestInternalPreset, forestTheme, forestThemeOptions, getAvailablePresets, getPreset, gray, iconColors, info, lineHeight, magenta, misc, navColors, radius, red, registerPreset, shadows, sliderColors, spacing, success, text, toggleColors, violet, warning, widths };