@tenphi/glaze 0.15.0 → 0.16.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/README.md +3 -0
- package/dist/index.cjs +884 -113
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +496 -7
- package/dist/index.d.mts +496 -7
- package/dist/index.mjs +875 -114
- package/dist/index.mjs.map +1 -1
- package/docs/api.md +294 -14
- package/docs/methodology.md +437 -222
- package/docs/migration.md +70 -5
- package/docs/okhst.md +45 -2
- package/package.json +2 -1
package/dist/index.d.cts
CHANGED
|
@@ -2,19 +2,46 @@
|
|
|
2
2
|
type LinearRgb = [number, number, number];
|
|
3
3
|
type ContrastPreset = 'AA' | 'AAA' | 'AA-large' | 'AAA-large';
|
|
4
4
|
type MinContrast$1 = number | ContrastPreset;
|
|
5
|
+
/**
|
|
6
|
+
* Named APCA Lc floor presets (APCA Bronze Simple Mode conformance levels),
|
|
7
|
+
* independent of role. Use them anywhere an APCA target is accepted.
|
|
8
|
+
*
|
|
9
|
+
* | Preset | Lc | Use case |
|
|
10
|
+
* | ------------- | --- | ---------------------------------------------------- |
|
|
11
|
+
* | `'preferred'` | 90 | Preferred body / column text |
|
|
12
|
+
* | `'body'` | 75 | Minimum body / column text |
|
|
13
|
+
* | `'content'` | 60 | Readable non-body content (~WCAG AA 4.5:1) |
|
|
14
|
+
* | `'large'` | 45 | Large/bold headlines; fine icons/outlines (~3:1) |
|
|
15
|
+
* | `'non-text'` | 30 | Solid icons/controls; placeholder/disabled text |
|
|
16
|
+
* | `'min'` | 15 | Dividers/decorative; APCA "point of invisibility" |
|
|
17
|
+
*/
|
|
18
|
+
type ApcaPreset = 'preferred' | 'body' | 'content' | 'large' | 'non-text' | 'min';
|
|
19
|
+
/**
|
|
20
|
+
* Resolve an APCA target — a raw Lc number (kept as-is) or an `ApcaPreset`
|
|
21
|
+
* keyword mapped to its Lc value. The magnitude is forced non-negative.
|
|
22
|
+
*/
|
|
23
|
+
declare function resolveApcaTarget(value: number | ApcaPreset): number;
|
|
5
24
|
/** Metric + numeric target after resolving a `ContrastSpec` for a mode. */
|
|
6
25
|
interface ResolvedContrast {
|
|
7
26
|
metric: 'wcag' | 'apca';
|
|
8
27
|
/** WCAG ratio (>= 1) or APCA Lc magnitude (0–106). */
|
|
9
28
|
target: number;
|
|
29
|
+
/**
|
|
30
|
+
* APCA argument order: which side the resolved (candidate) color plays
|
|
31
|
+
* against the base. `'fg'` (default) → `apcaContrast(yCandidate, yBase)`;
|
|
32
|
+
* `'bg'` → `apcaContrast(yBase, yCandidate)`. Always `'fg'` for WCAG
|
|
33
|
+
* (symmetric, ignored).
|
|
34
|
+
*/
|
|
35
|
+
polarity?: 'fg' | 'bg';
|
|
10
36
|
}
|
|
11
37
|
declare function resolveMinContrast(value: MinContrast$1): number;
|
|
12
38
|
/**
|
|
13
39
|
* Resolve a `ContrastSpec` (already selected from any outer HC pair) for a
|
|
14
40
|
* given mode into `{ metric, target }`. Handles the inner metric HC pair and
|
|
15
|
-
* preset resolution.
|
|
41
|
+
* preset resolution. `polarity` is passed through to the result for the APCA
|
|
42
|
+
* branch (it controls argument order in the solver); WCAG ignores it.
|
|
16
43
|
*/
|
|
17
|
-
declare function resolveContrastForMode(spec: ContrastSpec, isHighContrast: boolean): ResolvedContrast;
|
|
44
|
+
declare function resolveContrastForMode(spec: ContrastSpec, isHighContrast: boolean, polarity?: 'fg' | 'bg'): ResolvedContrast;
|
|
18
45
|
/**
|
|
19
46
|
* APCA lightness contrast (Lc), signed: positive for dark text on light bg,
|
|
20
47
|
* negative for light text on dark bg. Inputs are screen luminances (0–1).
|
|
@@ -101,17 +128,30 @@ type MinContrast = number | ContrastPreset;
|
|
|
101
128
|
*
|
|
102
129
|
* - `number` / `ContrastPreset`: a WCAG ratio (bare form).
|
|
103
130
|
* - `{ wcag }`: WCAG ratio or preset, optionally an HC pair.
|
|
104
|
-
* - `{ apca }`: APCA Lc target (absolute value), optionally an HC pair.
|
|
131
|
+
* - `{ apca }`: APCA Lc target (absolute value or preset), optionally an HC pair.
|
|
105
132
|
*
|
|
106
133
|
* The `[normal, highContrast]` pair may live at the outer level
|
|
107
134
|
* (`[4.5, 7]`, `[{ wcag: 4.5 }, { wcag: 7 }]`) or inside the metric
|
|
108
|
-
* (`{ wcag: [4.5, 7] }`, `{ apca: [45, 60] }`).
|
|
135
|
+
* (`{ wcag: [4.5, 7] }`, `{ apca: [45, 60] }`, `{ apca: ['content', 'body'] }`).
|
|
109
136
|
*/
|
|
110
137
|
type ContrastSpec = number | ContrastPreset | {
|
|
111
138
|
wcag: HCPair<number | ContrastPreset>;
|
|
112
139
|
} | {
|
|
113
|
-
apca: HCPair<number>;
|
|
140
|
+
apca: HCPair<number | ApcaPreset>;
|
|
114
141
|
};
|
|
142
|
+
/**
|
|
143
|
+
* The semantic role a color plays against its base, used to fix APCA contrast
|
|
144
|
+
* polarity (which side is the foreground vs the background). WCAG is
|
|
145
|
+
* symmetric, so role never changes WCAG results.
|
|
146
|
+
*/
|
|
147
|
+
type Role = 'text' | 'surface' | 'border';
|
|
148
|
+
/**
|
|
149
|
+
* Any string accepted as a `role`. Canonical values plus aliases normalized by
|
|
150
|
+
* `normalizeRole` (see `roles.ts`): `surface` (bg/background/fill/canvas/
|
|
151
|
+
* paper/layer), `text` (fg/foreground/content/ink/label/stroke), `border`
|
|
152
|
+
* (divider/outline/separator/hairline/rule).
|
|
153
|
+
*/
|
|
154
|
+
type RoleInput = Role | 'bg' | 'background' | 'fill' | 'canvas' | 'paper' | 'layer' | 'fg' | 'foreground' | 'content' | 'ink' | 'label' | 'stroke' | 'divider' | 'outline' | 'separator' | 'hairline' | 'rule';
|
|
115
155
|
type AdaptationMode = 'auto' | 'fixed' | 'static';
|
|
116
156
|
/** A signed relative offset string, e.g. '+20' or '-15.5'. */
|
|
117
157
|
type RelativeValue = `+${number}` | `-${number}`;
|
|
@@ -132,7 +172,7 @@ type ExtremeValue = 'max' | 'min';
|
|
|
132
172
|
*/
|
|
133
173
|
type ToneValue = number | RelativeValue | ExtremeValue;
|
|
134
174
|
/** Color format for output. */
|
|
135
|
-
type GlazeColorFormat = 'okhsl' | 'rgb' | 'hsl' | 'oklch';
|
|
175
|
+
type GlazeColorFormat = 'okhsl' | 'okhst' | 'rgb' | 'hsl' | 'oklch';
|
|
136
176
|
/**
|
|
137
177
|
* Controls which scheme variants are generated in the export.
|
|
138
178
|
* Light is always included (it's the default).
|
|
@@ -217,6 +257,23 @@ interface RegularColorDef {
|
|
|
217
257
|
* should not be combined (a console.warn is emitted).
|
|
218
258
|
*/
|
|
219
259
|
opacity?: number;
|
|
260
|
+
/**
|
|
261
|
+
* Per-color override for the hue-independent "safe" chroma limit used in
|
|
262
|
+
* OKHSL↔sRGB conversions (luminance, contrast solving, output formatting).
|
|
263
|
+
* Falls through to the global / per-theme `pastel` config when omitted.
|
|
264
|
+
* @see GlazeConfig.pastel
|
|
265
|
+
*/
|
|
266
|
+
pastel?: boolean;
|
|
267
|
+
/**
|
|
268
|
+
* Semantic role against `base`: how this color is used. Fixes APCA contrast
|
|
269
|
+
* polarity (the argument order in `apcaContrast`). WCAG is symmetric so it
|
|
270
|
+
* never affects WCAG results.
|
|
271
|
+
*
|
|
272
|
+
* Resolution: explicit `role` wins; else inferred from the color name when
|
|
273
|
+
* `inferRole` is enabled (default); else the opposite of the base's role;
|
|
274
|
+
* else defaults to `'text'` (foreground).
|
|
275
|
+
*/
|
|
276
|
+
role?: RoleInput;
|
|
220
277
|
/**
|
|
221
278
|
* Whether this color is inherited by child themes created via `extend()`.
|
|
222
279
|
* Default: true. Set to false to make this color local to the current theme.
|
|
@@ -266,6 +323,13 @@ interface ShadowColorDef {
|
|
|
266
323
|
intensity: HCPair<number>;
|
|
267
324
|
/** Override default tuning. Merged field-by-field with global `shadowTuning`. */
|
|
268
325
|
tuning?: ShadowTuning;
|
|
326
|
+
/**
|
|
327
|
+
* Per-color override for the hue-independent "safe" chroma limit used in
|
|
328
|
+
* OKHSL↔sRGB conversions (luminance, contrast solving, output formatting).
|
|
329
|
+
* Falls through to the global / per-theme `pastel` config when omitted.
|
|
330
|
+
* @see GlazeConfig.pastel
|
|
331
|
+
*/
|
|
332
|
+
pastel?: boolean;
|
|
269
333
|
/**
|
|
270
334
|
* Whether this color is inherited by child themes created via `extend()`.
|
|
271
335
|
* Default: true. Set to false to make this color local to the current theme.
|
|
@@ -306,6 +370,19 @@ interface MixColorDef {
|
|
|
306
370
|
* metric. Supports [normal, highContrast] pair.
|
|
307
371
|
*/
|
|
308
372
|
contrast?: HCPair<ContrastSpec>;
|
|
373
|
+
/**
|
|
374
|
+
* Per-color override for the hue-independent "safe" chroma limit used in
|
|
375
|
+
* OKHSL↔sRGB conversions (luminance, contrast solving, output formatting).
|
|
376
|
+
* Falls through to the global / per-theme `pastel` config when omitted.
|
|
377
|
+
* @see GlazeConfig.pastel
|
|
378
|
+
*/
|
|
379
|
+
pastel?: boolean;
|
|
380
|
+
/**
|
|
381
|
+
* Semantic role of the mixed result against `base`. Same semantics as
|
|
382
|
+
* `RegularColorDef.role` (fixes APCA polarity). Resolution and defaults
|
|
383
|
+
* are identical.
|
|
384
|
+
*/
|
|
385
|
+
role?: RoleInput;
|
|
309
386
|
/**
|
|
310
387
|
* Whether this color is inherited by child themes created via `extend()`.
|
|
311
388
|
* Default: true. Set to false to make this color local to the current theme.
|
|
@@ -330,6 +407,12 @@ interface ResolvedColorVariant {
|
|
|
330
407
|
t: number;
|
|
331
408
|
/** Opacity (0–1). Default: 1. */
|
|
332
409
|
alpha: number;
|
|
410
|
+
/**
|
|
411
|
+
* Effective `pastel` flag used while resolving this variant (author def or
|
|
412
|
+
* config fallback). Carried on the variant so output formatting matches the
|
|
413
|
+
* gamut mapping applied during resolution.
|
|
414
|
+
*/
|
|
415
|
+
pastel?: boolean;
|
|
333
416
|
}
|
|
334
417
|
/** Fully resolved color across all scheme variants. */
|
|
335
418
|
interface ResolvedColor {
|
|
@@ -393,6 +476,13 @@ interface GlazeConfig {
|
|
|
393
476
|
* @default false
|
|
394
477
|
*/
|
|
395
478
|
pastel?: boolean;
|
|
479
|
+
/**
|
|
480
|
+
* If true (default), infer a color's `role` from its name when no explicit
|
|
481
|
+
* `role` is set. Set to `false` to opt out of name-based inference (the
|
|
482
|
+
* base-opposite and default-foreground fallbacks still apply).
|
|
483
|
+
* @default true
|
|
484
|
+
*/
|
|
485
|
+
inferRole?: boolean;
|
|
396
486
|
}
|
|
397
487
|
interface GlazeConfigResolved {
|
|
398
488
|
lightTone: ToneWindow;
|
|
@@ -406,6 +496,7 @@ interface GlazeConfigResolved {
|
|
|
406
496
|
shadowTuning?: ShadowTuning;
|
|
407
497
|
autoFlip: boolean;
|
|
408
498
|
pastel: boolean;
|
|
499
|
+
inferRole: boolean;
|
|
409
500
|
}
|
|
410
501
|
/**
|
|
411
502
|
* Per-instance config override for `glaze.color()` and `glaze()` themes.
|
|
@@ -429,6 +520,11 @@ interface GlazeConfigOverride {
|
|
|
429
520
|
* for the given lightness.
|
|
430
521
|
*/
|
|
431
522
|
pastel?: boolean;
|
|
523
|
+
/**
|
|
524
|
+
* If true, infer a color's `role` from its name when no explicit `role` is
|
|
525
|
+
* set. Falls through to the live global at resolve time when omitted.
|
|
526
|
+
*/
|
|
527
|
+
inferRole?: boolean;
|
|
432
528
|
/**
|
|
433
529
|
* Shadow tuning defaults. Only meaningful for themes; harmless on
|
|
434
530
|
* standalone color tokens.
|
|
@@ -493,6 +589,21 @@ interface GlazeColorInput {
|
|
|
493
589
|
* used). Does not affect output keys.
|
|
494
590
|
*/
|
|
495
591
|
name?: string;
|
|
592
|
+
/**
|
|
593
|
+
* Per-color override for the hue-independent "safe" chroma limit used in
|
|
594
|
+
* OKHSL↔sRGB conversions (luminance, contrast solving, output formatting).
|
|
595
|
+
* Falls through to the global / per-theme `pastel` config when omitted.
|
|
596
|
+
* @see GlazeConfig.pastel
|
|
597
|
+
*/
|
|
598
|
+
pastel?: boolean;
|
|
599
|
+
/**
|
|
600
|
+
* Semantic role against `base` / the literal seed: how this token is used.
|
|
601
|
+
* Fixes APCA contrast polarity. Same resolution chain as
|
|
602
|
+
* `RegularColorDef.role` (explicit → name inference → opposite of base →
|
|
603
|
+
* `'text'`). For standalone tokens the name is internal, so set `role`
|
|
604
|
+
* explicitly or rely on the base-opposite / foreground default.
|
|
605
|
+
*/
|
|
606
|
+
role?: RoleInput;
|
|
496
607
|
}
|
|
497
608
|
/**
|
|
498
609
|
* Any single-color input form accepted by the value-shorthand
|
|
@@ -593,6 +704,19 @@ interface GlazeColorOverrides {
|
|
|
593
704
|
* used). Does not affect output keys.
|
|
594
705
|
*/
|
|
595
706
|
name?: string;
|
|
707
|
+
/**
|
|
708
|
+
* Per-color override for the hue-independent "safe" chroma limit used in
|
|
709
|
+
* OKHSL↔sRGB conversions (luminance, contrast solving, output formatting).
|
|
710
|
+
* Falls through to the global / per-theme `pastel` config when omitted.
|
|
711
|
+
* @see GlazeConfig.pastel
|
|
712
|
+
*/
|
|
713
|
+
pastel?: boolean;
|
|
714
|
+
/**
|
|
715
|
+
* Semantic role against `base` / the literal seed: how this token is used.
|
|
716
|
+
* Fixes APCA contrast polarity. Same resolution chain as
|
|
717
|
+
* `RegularColorDef.role`.
|
|
718
|
+
*/
|
|
719
|
+
role?: RoleInput;
|
|
596
720
|
}
|
|
597
721
|
/**
|
|
598
722
|
* Object input for `glaze.color()` that carries a raw color value plus
|
|
@@ -622,6 +746,11 @@ interface GlazeColorCssOptions {
|
|
|
622
746
|
* `theme.css` default).
|
|
623
747
|
*/
|
|
624
748
|
suffix?: string;
|
|
749
|
+
/**
|
|
750
|
+
* Emit hue as a separate custom property, referenced via `var()`.
|
|
751
|
+
* Requires `format: 'oklch'` and a pastel token. oklch + all-pastel only.
|
|
752
|
+
*/
|
|
753
|
+
splitHue?: boolean;
|
|
625
754
|
}
|
|
626
755
|
/** Return type for `glaze.color()`. */
|
|
627
756
|
interface GlazeColorToken {
|
|
@@ -639,6 +768,25 @@ interface GlazeColorToken {
|
|
|
639
768
|
json(options?: GlazeJsonOptions): Record<string, string>;
|
|
640
769
|
/** Export as CSS custom property declarations grouped by scheme variant. */
|
|
641
770
|
css(options: GlazeColorCssOptions): GlazeCssResult;
|
|
771
|
+
/**
|
|
772
|
+
* Export as W3C DTCG color tokens (one per scheme variant, no color name
|
|
773
|
+
* key). Each entry is a full `{ $type: 'color', $value }` token.
|
|
774
|
+
* @see https://www.designtokens.org/
|
|
775
|
+
*/
|
|
776
|
+
dtcg(options?: GlazeDtcgOptions): GlazeColorDtcgResult;
|
|
777
|
+
/**
|
|
778
|
+
* Export as a single W3C DTCG Resolver-Module document for this color,
|
|
779
|
+
* keyed by `name` across all scheme variants. `name` is required.
|
|
780
|
+
* @see https://www.designtokens.org/
|
|
781
|
+
*/
|
|
782
|
+
dtcgResolver(options: GlazeColorDtcgResolverOptions): GlazeDtcgResolverDocument;
|
|
783
|
+
/**
|
|
784
|
+
* Export as a Tailwind CSS v4 `@theme` block (light baseline) plus dark /
|
|
785
|
+
* high-contrast overrides. Returns a single ready-to-paste CSS string.
|
|
786
|
+
* `name` is required (forms `--color-<name>`).
|
|
787
|
+
* @see https://tailwindcss.com/docs/theme
|
|
788
|
+
*/
|
|
789
|
+
tailwind(options: GlazeColorTailwindOptions): string;
|
|
642
790
|
/**
|
|
643
791
|
* Serialize the token as a JSON-safe object. Captures the original
|
|
644
792
|
* input value, overrides, and config so it can be rehydrated via
|
|
@@ -689,6 +837,8 @@ interface GlazeColorInputExport {
|
|
|
689
837
|
base?: GlazeColorTokenExport | GlazeColorValue;
|
|
690
838
|
contrast?: HCPair<ContrastSpec>;
|
|
691
839
|
name?: string;
|
|
840
|
+
pastel?: boolean;
|
|
841
|
+
role?: RoleInput;
|
|
692
842
|
}
|
|
693
843
|
/**
|
|
694
844
|
* Serializable shape of `GlazeColorOverrides`. `base` is replaced by
|
|
@@ -705,6 +855,8 @@ interface GlazeColorOverridesExport {
|
|
|
705
855
|
base?: GlazeColorTokenExport | GlazeColorValue;
|
|
706
856
|
opacity?: number;
|
|
707
857
|
name?: string;
|
|
858
|
+
pastel?: boolean;
|
|
859
|
+
role?: RoleInput;
|
|
708
860
|
}
|
|
709
861
|
interface GlazeTheme {
|
|
710
862
|
/** The hue seed (0–360). */
|
|
@@ -753,6 +905,27 @@ interface GlazeTheme {
|
|
|
753
905
|
json(options?: GlazeJsonOptions): Record<string, Record<string, string>>;
|
|
754
906
|
/** Export as CSS custom property declarations. */
|
|
755
907
|
css(options?: GlazeCssOptions): GlazeCssResult;
|
|
908
|
+
/**
|
|
909
|
+
* Export as W3C Design Tokens Format Module (2025.10) documents, one per
|
|
910
|
+
* scheme variant. Consumable by Figma, Tokens Studio, Style Dictionary,
|
|
911
|
+
* Terrazzo, and any DTCG-compatible tool.
|
|
912
|
+
* @see https://www.designtokens.org/
|
|
913
|
+
*/
|
|
914
|
+
dtcg(options?: GlazeDtcgOptions): GlazeDtcgResult;
|
|
915
|
+
/**
|
|
916
|
+
* Export as a single W3C DTCG Resolver-Module document describing every
|
|
917
|
+
* scheme variant as one `sets` entry plus a single `scheme` modifier with a
|
|
918
|
+
* context per variant. Consumable by resolver tools such as Dispersa.
|
|
919
|
+
* @see https://www.designtokens.org/
|
|
920
|
+
*/
|
|
921
|
+
dtcgResolver(options?: GlazeDtcgResolverOptions): GlazeDtcgResolverDocument;
|
|
922
|
+
/**
|
|
923
|
+
* Export as a Tailwind CSS v4 `@theme` block (light baseline) plus dark /
|
|
924
|
+
* high-contrast overrides under configurable selectors. Returns a single
|
|
925
|
+
* ready-to-paste CSS string.
|
|
926
|
+
* @see https://tailwindcss.com/docs/theme
|
|
927
|
+
*/
|
|
928
|
+
tailwind(options?: GlazeTailwindOptions): string;
|
|
756
929
|
}
|
|
757
930
|
interface GlazeExtendOptions {
|
|
758
931
|
hue?: number;
|
|
@@ -773,6 +946,16 @@ interface GlazeTokenOptions {
|
|
|
773
946
|
modes?: GlazeOutputModes;
|
|
774
947
|
/** Output color format. Default: 'okhsl'. */
|
|
775
948
|
format?: GlazeColorFormat;
|
|
949
|
+
/**
|
|
950
|
+
* Emit hue as a separate custom property, referenced via `var()`.
|
|
951
|
+
* Requires `format: 'oklch'` and every color to be pastel.
|
|
952
|
+
*/
|
|
953
|
+
splitHue?: boolean;
|
|
954
|
+
/**
|
|
955
|
+
* Base name for the theme-level hue var (`--{name}-hue`). Default: `'theme'`.
|
|
956
|
+
* Palette export auto-derives this from the theme name.
|
|
957
|
+
*/
|
|
958
|
+
name?: string;
|
|
776
959
|
}
|
|
777
960
|
interface GlazeJsonOptions {
|
|
778
961
|
/** Override which scheme variants to include. */
|
|
@@ -785,6 +968,16 @@ interface GlazeCssOptions {
|
|
|
785
968
|
format?: GlazeColorFormat;
|
|
786
969
|
/** Suffix appended to each CSS custom property name. Default: '-color'. */
|
|
787
970
|
suffix?: string;
|
|
971
|
+
/**
|
|
972
|
+
* Emit hue as a separate custom property, referenced via `var()`.
|
|
973
|
+
* Requires `format: 'oklch'` and every color to be pastel.
|
|
974
|
+
*/
|
|
975
|
+
splitHue?: boolean;
|
|
976
|
+
/**
|
|
977
|
+
* Base name for the theme-level hue var (`--{name}-hue`). Default: `'theme'`.
|
|
978
|
+
* Palette export auto-derives this from the theme name.
|
|
979
|
+
*/
|
|
980
|
+
name?: string;
|
|
788
981
|
}
|
|
789
982
|
/** CSS custom property declarations grouped by scheme variant. */
|
|
790
983
|
interface GlazeCssResult {
|
|
@@ -793,6 +986,182 @@ interface GlazeCssResult {
|
|
|
793
986
|
lightContrast: string;
|
|
794
987
|
darkContrast: string;
|
|
795
988
|
}
|
|
989
|
+
/**
|
|
990
|
+
* Color space used for DTCG `$value` color objects.
|
|
991
|
+
* @see https://www.designtokens.org/
|
|
992
|
+
*/
|
|
993
|
+
type DtcgColorSpace = 'srgb' | 'oklch';
|
|
994
|
+
/**
|
|
995
|
+
* A DTCG color `$value` in the sRGB color space: gamma sRGB components in
|
|
996
|
+
* 0–1 plus a 6-digit `hex` hint. Universally understood by Figma, Tokens
|
|
997
|
+
* Studio, Style Dictionary, and every DTCG reader.
|
|
998
|
+
*/
|
|
999
|
+
interface DtcgSrgbColorValue {
|
|
1000
|
+
colorSpace: 'srgb';
|
|
1001
|
+
components: [number, number, number];
|
|
1002
|
+
hex: HexColor;
|
|
1003
|
+
/** Opacity 0–1. Omitted when fully opaque (alpha = 1). */
|
|
1004
|
+
alpha?: number;
|
|
1005
|
+
}
|
|
1006
|
+
/**
|
|
1007
|
+
* A DTCG color `$value` in the OKLCH color space: `[L, C, H]` components
|
|
1008
|
+
* (L/C: 0–1, H: degrees). Wide-gamut and Glaze-native; no `hex` is emitted.
|
|
1009
|
+
*/
|
|
1010
|
+
interface DtcgOklchColorValue {
|
|
1011
|
+
colorSpace: 'oklch';
|
|
1012
|
+
components: [number, number, number];
|
|
1013
|
+
/** Opacity 0–1. Omitted when fully opaque (alpha = 1). */
|
|
1014
|
+
alpha?: number;
|
|
1015
|
+
}
|
|
1016
|
+
/** A DTCG `$value` for a color token, in either supported color space. */
|
|
1017
|
+
type DtcgColorValue = DtcgSrgbColorValue | DtcgOklchColorValue;
|
|
1018
|
+
/**
|
|
1019
|
+
* A single W3C DTCG color token: `{ $type: 'color', $value }`.
|
|
1020
|
+
* `$description` is optional and not populated by Glaze today.
|
|
1021
|
+
*/
|
|
1022
|
+
interface DtcgColorToken {
|
|
1023
|
+
$type: 'color';
|
|
1024
|
+
$value: DtcgColorValue;
|
|
1025
|
+
$description?: string;
|
|
1026
|
+
}
|
|
1027
|
+
/**
|
|
1028
|
+
* A W3C Design Tokens Format Module (2025.10) token tree for one scheme.
|
|
1029
|
+
* Glaze emits one document per scheme variant — the most tool-compatible
|
|
1030
|
+
* convention (one file per Style Dictionary theme / Tokens Studio set /
|
|
1031
|
+
* Figma variable mode).
|
|
1032
|
+
*/
|
|
1033
|
+
type DtcgDocument = Record<string, DtcgColorToken>;
|
|
1034
|
+
/** DTCG token documents grouped by scheme variant. Light is always present. */
|
|
1035
|
+
interface GlazeDtcgResult {
|
|
1036
|
+
light: DtcgDocument;
|
|
1037
|
+
dark?: DtcgDocument;
|
|
1038
|
+
lightContrast?: DtcgDocument;
|
|
1039
|
+
darkContrast?: DtcgDocument;
|
|
1040
|
+
}
|
|
1041
|
+
/** A single DTCG color token grouped by scheme variant (standalone tokens). */
|
|
1042
|
+
interface GlazeColorDtcgResult {
|
|
1043
|
+
light: DtcgColorToken;
|
|
1044
|
+
dark?: DtcgColorToken;
|
|
1045
|
+
lightContrast?: DtcgColorToken;
|
|
1046
|
+
darkContrast?: DtcgColorToken;
|
|
1047
|
+
}
|
|
1048
|
+
/** Options for `theme.dtcg()` / `palette.dtcg()`. */
|
|
1049
|
+
interface GlazeDtcgOptions {
|
|
1050
|
+
/** Override which scheme variants to include. */
|
|
1051
|
+
modes?: GlazeOutputModes;
|
|
1052
|
+
/**
|
|
1053
|
+
* DTCG color space. `'srgb'` (default) emits sRGB components plus a `hex`
|
|
1054
|
+
* hint — universally understood (Figma, Tokens Studio). `'oklch'` emits
|
|
1055
|
+
* OKLCH components with no hex — Glaze-native, wide-gamut.
|
|
1056
|
+
*/
|
|
1057
|
+
colorSpace?: DtcgColorSpace;
|
|
1058
|
+
}
|
|
1059
|
+
/**
|
|
1060
|
+
* A node in a DTCG Resolver-Module token tree: either a leaf color token or a
|
|
1061
|
+
* nested group. A flat `DtcgDocument` (top-level color-name keys) is a valid
|
|
1062
|
+
* shallow tree, so Glaze's per-scheme documents slot directly into
|
|
1063
|
+
* `sets.<name>.sources` and `modifiers.<name>.contexts.<ctx>` entries.
|
|
1064
|
+
*/
|
|
1065
|
+
interface DtcgTokenTree {
|
|
1066
|
+
[key: string]: DtcgColorToken | DtcgTokenTree;
|
|
1067
|
+
}
|
|
1068
|
+
/** A named set in a resolver document: a list of token-tree sources. */
|
|
1069
|
+
interface DtcgResolverSet {
|
|
1070
|
+
sources: DtcgTokenTree[];
|
|
1071
|
+
}
|
|
1072
|
+
/**
|
|
1073
|
+
* A named modifier (an axis such as `scheme`) in a resolver document.
|
|
1074
|
+
* `default` names the context applied when no override is selected; `contexts`
|
|
1075
|
+
* maps each context name to the token-tree overrides applied for it.
|
|
1076
|
+
*/
|
|
1077
|
+
interface DtcgResolverModifier {
|
|
1078
|
+
default: string;
|
|
1079
|
+
contexts: Record<string, DtcgTokenTree[]>;
|
|
1080
|
+
}
|
|
1081
|
+
/** A JSON-pointer `$ref` entry in a resolver document's `resolutionOrder`. */
|
|
1082
|
+
interface DtcgResolverRef {
|
|
1083
|
+
$ref: string;
|
|
1084
|
+
}
|
|
1085
|
+
/**
|
|
1086
|
+
* A W3C DTCG Resolver-Module document. Describes every scheme variant in a
|
|
1087
|
+
* single file as `sets` (base token sources) plus `modifiers` (per-context
|
|
1088
|
+
* overrides) composed in `resolutionOrder`. Consumable by resolver tools such
|
|
1089
|
+
* as Dispersa.
|
|
1090
|
+
* @see https://www.designtokens.org/
|
|
1091
|
+
*/
|
|
1092
|
+
interface GlazeDtcgResolverDocument {
|
|
1093
|
+
version: string;
|
|
1094
|
+
sets: Record<string, DtcgResolverSet>;
|
|
1095
|
+
modifiers: Record<string, DtcgResolverModifier>;
|
|
1096
|
+
resolutionOrder: DtcgResolverRef[];
|
|
1097
|
+
}
|
|
1098
|
+
/** Renaming of the four scheme variants as resolver-modifier context names. */
|
|
1099
|
+
interface GlazeDtcgResolverContextNames {
|
|
1100
|
+
light?: string;
|
|
1101
|
+
dark?: string;
|
|
1102
|
+
lightContrast?: string;
|
|
1103
|
+
darkContrast?: string;
|
|
1104
|
+
}
|
|
1105
|
+
/**
|
|
1106
|
+
* Options for `theme.dtcgResolver()` / `palette.dtcgResolver()`. Extends
|
|
1107
|
+
* `GlazeDtcgOptions` so `modes` + `colorSpace` pass through to the underlying
|
|
1108
|
+
* per-scheme `dtcg()` build.
|
|
1109
|
+
*/
|
|
1110
|
+
interface GlazeDtcgResolverOptions extends GlazeDtcgOptions {
|
|
1111
|
+
/** Name of the single set holding the default (light) token tree. Default `'base'`. */
|
|
1112
|
+
setName?: string;
|
|
1113
|
+
/**
|
|
1114
|
+
* Name of the modifier describing the scheme axis. Default `'scheme'`
|
|
1115
|
+
* (Glaze's term for the light / dark / high-contrast axis).
|
|
1116
|
+
*/
|
|
1117
|
+
modifierName?: string;
|
|
1118
|
+
/**
|
|
1119
|
+
* Override the four context names emitted on the modifier. Defaults to the
|
|
1120
|
+
* Glaze variant keys: `light` / `dark` / `lightContrast` / `darkContrast`.
|
|
1121
|
+
*/
|
|
1122
|
+
contextNames?: GlazeDtcgResolverContextNames;
|
|
1123
|
+
/** Resolver document version. Default `'2025.10'`. */
|
|
1124
|
+
version?: string;
|
|
1125
|
+
}
|
|
1126
|
+
/** Options for `glaze.color().dtcgResolver()`. `name` is required. */
|
|
1127
|
+
interface GlazeColorDtcgResolverOptions extends GlazeDtcgResolverOptions {
|
|
1128
|
+
/** Token name keying the color within each token tree. Required. */
|
|
1129
|
+
name: string;
|
|
1130
|
+
}
|
|
1131
|
+
/** Options for `theme.tailwind()` / `palette.tailwind()`. */
|
|
1132
|
+
interface GlazeTailwindOptions {
|
|
1133
|
+
/** Override which scheme variants to include. */
|
|
1134
|
+
modes?: GlazeOutputModes;
|
|
1135
|
+
/** Output color format. Default: 'oklch'. */
|
|
1136
|
+
format?: GlazeColorFormat;
|
|
1137
|
+
/**
|
|
1138
|
+
* CSS custom property namespace, forming `--<namespace><name>`.
|
|
1139
|
+
* Default: `'color-'` → `--color-surface`. (Tailwind v4's `--color-*`
|
|
1140
|
+
* convention, which auto-generates `bg-*` / `text-*` / `border-*`.)
|
|
1141
|
+
*
|
|
1142
|
+
* Named `namespace` rather than `prefix` to avoid clashing with the
|
|
1143
|
+
* palette theme-prefix option on `palette.tailwind()`.
|
|
1144
|
+
*/
|
|
1145
|
+
namespace?: string;
|
|
1146
|
+
/**
|
|
1147
|
+
* Selector wrapping the dark-scheme overrides. Default: `'.dark'`.
|
|
1148
|
+
* Pass a media query such as `'@media (prefers-color-scheme: dark)'` to
|
|
1149
|
+
* drive dark mode from the OS preference instead of a class.
|
|
1150
|
+
*/
|
|
1151
|
+
darkSelector?: string;
|
|
1152
|
+
/**
|
|
1153
|
+
* Selector wrapping the light high-contrast overrides. Default:
|
|
1154
|
+
* `'.high-contrast'`. The combined dark + high-contrast overrides are
|
|
1155
|
+
* emitted under `${darkSelector}${highContrastSelector}` (e.g.
|
|
1156
|
+
* `.dark.high-contrast`).
|
|
1157
|
+
*/
|
|
1158
|
+
highContrastSelector?: string;
|
|
1159
|
+
}
|
|
1160
|
+
/** Options for `glaze.color().tailwind()`. `name` is required. */
|
|
1161
|
+
interface GlazeColorTailwindOptions extends GlazeTailwindOptions {
|
|
1162
|
+
/** Custom property base name (without leading `--`). Required. */
|
|
1163
|
+
name: string;
|
|
1164
|
+
}
|
|
796
1165
|
/** Options for `glaze.palette()` creation. */
|
|
797
1166
|
interface GlazePaletteOptions {
|
|
798
1167
|
/**
|
|
@@ -824,6 +1193,11 @@ interface GlazePaletteExportOptions {
|
|
|
824
1193
|
* When omitted, inherits the palette-level `primary`.
|
|
825
1194
|
*/
|
|
826
1195
|
primary?: string | false;
|
|
1196
|
+
/**
|
|
1197
|
+
* Emit hue as a separate custom property, referenced via `var()`.
|
|
1198
|
+
* Requires `format: 'oklch'` and every color to be pastel.
|
|
1199
|
+
*/
|
|
1200
|
+
splitHue?: boolean;
|
|
827
1201
|
}
|
|
828
1202
|
interface GlazePalette {
|
|
829
1203
|
/**
|
|
@@ -851,6 +1225,25 @@ interface GlazePalette {
|
|
|
851
1225
|
}): Record<string, Record<string, Record<string, string>>>;
|
|
852
1226
|
/** Export all themes as CSS custom property declarations. */
|
|
853
1227
|
css(options?: GlazeCssOptions & GlazePaletteExportOptions): GlazeCssResult;
|
|
1228
|
+
/**
|
|
1229
|
+
* Export all themes as W3C DTCG documents, one per scheme variant.
|
|
1230
|
+
* Prefix defaults to `true`. Inherits the palette-level `primary`.
|
|
1231
|
+
* @see https://www.designtokens.org/
|
|
1232
|
+
*/
|
|
1233
|
+
dtcg(options?: GlazeDtcgOptions & GlazePaletteExportOptions): GlazeDtcgResult;
|
|
1234
|
+
/**
|
|
1235
|
+
* Export all themes as a single W3C DTCG Resolver-Module document. Prefix
|
|
1236
|
+
* defaults to `true`. Inherits the palette-level `primary`.
|
|
1237
|
+
* @see https://www.designtokens.org/
|
|
1238
|
+
*/
|
|
1239
|
+
dtcgResolver(options?: GlazeDtcgResolverOptions & GlazePaletteExportOptions): GlazeDtcgResolverDocument;
|
|
1240
|
+
/**
|
|
1241
|
+
* Export all themes as a Tailwind CSS v4 `@theme` block plus dark /
|
|
1242
|
+
* high-contrast overrides. Returns a single ready-to-paste CSS string.
|
|
1243
|
+
* Prefix defaults to `true`.
|
|
1244
|
+
* @see https://tailwindcss.com/docs/theme
|
|
1245
|
+
*/
|
|
1246
|
+
tailwind(options?: GlazeTailwindOptions & GlazePaletteExportOptions): string;
|
|
854
1247
|
}
|
|
855
1248
|
//#endregion
|
|
856
1249
|
//#region src/glaze.d.ts
|
|
@@ -891,6 +1284,82 @@ declare namespace glaze {
|
|
|
891
1284
|
var resetConfig: () => void;
|
|
892
1285
|
}
|
|
893
1286
|
//#endregion
|
|
1287
|
+
//#region src/channels.d.ts
|
|
1288
|
+
interface HueDeclaration {
|
|
1289
|
+
prop: string;
|
|
1290
|
+
value: string;
|
|
1291
|
+
}
|
|
1292
|
+
interface HuePlan {
|
|
1293
|
+
/** CSS `var()` reference spliced into `oklch(L C <hueVar>)`. */
|
|
1294
|
+
hueVar: string;
|
|
1295
|
+
/** When true, emit a full inline color (shadow/mix/achromatic). */
|
|
1296
|
+
inline: boolean;
|
|
1297
|
+
/** Scheme-independent `--*-hue` declarations for this color. */
|
|
1298
|
+
declarations: HueDeclaration[];
|
|
1299
|
+
}
|
|
1300
|
+
interface ChannelCtx {
|
|
1301
|
+
seedHue: number;
|
|
1302
|
+
/** Theme-level hue var base name (without `--` / `-hue`). */
|
|
1303
|
+
baseName: string;
|
|
1304
|
+
/** Token / custom-property name prefix used for hue var naming (`brand-` etc.). */
|
|
1305
|
+
prefix: string;
|
|
1306
|
+
defs: ColorMap;
|
|
1307
|
+
mode: 'theme' | 'standalone';
|
|
1308
|
+
/** Standalone: resolved hue from the primary variant (scheme-independent). */
|
|
1309
|
+
resolvedHue?: number;
|
|
1310
|
+
/**
|
|
1311
|
+
* When false, hue declarations are not emitted (the pass only references
|
|
1312
|
+
* hue vars already declared by a sibling pass). Used by palette primary
|
|
1313
|
+
* unprefixed aliases so they reference the themed `--{themeName}-*-hue`
|
|
1314
|
+
* vars without re-declaring (and colliding with) other themes' base vars.
|
|
1315
|
+
* Defaults to true.
|
|
1316
|
+
*/
|
|
1317
|
+
emitDeclarations?: boolean;
|
|
1318
|
+
}
|
|
1319
|
+
//#endregion
|
|
1320
|
+
//#region src/format-guard.d.ts
|
|
1321
|
+
/**
|
|
1322
|
+
* Throw when a non-native Glaze color space is requested for an export that
|
|
1323
|
+
* emits raw CSS or non-Tasty token maps.
|
|
1324
|
+
*/
|
|
1325
|
+
declare function assertNativeFormat(format: GlazeColorFormat | undefined, method: string): void;
|
|
1326
|
+
/**
|
|
1327
|
+
* Throw when `splitHue` is enabled but any exported color is not pastel.
|
|
1328
|
+
* Hue rotation is only clip-free when chroma is bounded by the hue-independent
|
|
1329
|
+
* safe chroma (`computeSafeChromaOKLCH`).
|
|
1330
|
+
*/
|
|
1331
|
+
declare function assertAllPastel(resolved: Map<string, ResolvedColor>, modes: Required<GlazeOutputModes>): void;
|
|
1332
|
+
//#endregion
|
|
1333
|
+
//#region src/roles.d.ts
|
|
1334
|
+
/**
|
|
1335
|
+
* Normalize a `RoleInput` (canonical value or alias) into a canonical `Role`.
|
|
1336
|
+
* Returns `undefined` for unrecognized strings so callers can fall through to
|
|
1337
|
+
* the next step of the resolution chain.
|
|
1338
|
+
*/
|
|
1339
|
+
declare function normalizeRole(input: RoleInput | undefined): Role | undefined;
|
|
1340
|
+
/**
|
|
1341
|
+
* Infer a `Role` from a color name by matching its tokens against the role
|
|
1342
|
+
* keyword sets. When multiple tokens match, the **last** recognized token
|
|
1343
|
+
* wins (so `button-text` → `text`, `input-bg` → `surface`, `card-border` →
|
|
1344
|
+
* `border`). Returns `undefined` when no token matches.
|
|
1345
|
+
*/
|
|
1346
|
+
declare function inferRoleFromName(name: string): Role | undefined;
|
|
1347
|
+
/** APCA argument order: which side the resolved color plays. */
|
|
1348
|
+
type Polarity = 'fg' | 'bg';
|
|
1349
|
+
/**
|
|
1350
|
+
* Map a role to its APCA polarity. `text` and `border` are foreground spots
|
|
1351
|
+
* against their base (the candidate is the text argument); `surface` is the
|
|
1352
|
+
* background (the base is the text argument).
|
|
1353
|
+
*/
|
|
1354
|
+
declare function roleToPolarity(role: Role): Polarity;
|
|
1355
|
+
/**
|
|
1356
|
+
* The opposite role of `role`, used when a color with no explicit role and no
|
|
1357
|
+
* inferable name depends on a base: the dependent color plays the opposite
|
|
1358
|
+
* role of its base. `surface` ↔ `text`; `border` is treated as a foreground
|
|
1359
|
+
* spot, so its opposite is `surface`.
|
|
1360
|
+
*/
|
|
1361
|
+
declare function oppositeRole(role: Role): Role;
|
|
1362
|
+
//#endregion
|
|
894
1363
|
//#region src/okhst.d.ts
|
|
895
1364
|
/**
|
|
896
1365
|
* Reference eps for the OKHST color space. WCAG 2 contrast is
|
|
@@ -1037,6 +1506,14 @@ declare function parseHexAlpha(hex: string): {
|
|
|
1037
1506
|
* h: 0–360, s: 0–100, l: 0–100 (percentage scale for s and l).
|
|
1038
1507
|
*/
|
|
1039
1508
|
declare function formatOkhsl(h: number, s: number, l: number, pastel?: boolean): string;
|
|
1509
|
+
/**
|
|
1510
|
+
* Format OKHST values as a CSS `okhst(H S% T%)` string.
|
|
1511
|
+
* h: 0–360, s: 0–100, t: 0–100 (percentage scale for s and t).
|
|
1512
|
+
*
|
|
1513
|
+
* Pastel recompute matches `formatOkhsl`: convert via OKLab so external
|
|
1514
|
+
* parsers that only understand non-pastel OKHST render identically.
|
|
1515
|
+
*/
|
|
1516
|
+
declare function formatOkhst(h: number, s: number, t: number, pastel?: boolean): string;
|
|
1040
1517
|
/**
|
|
1041
1518
|
* Format OKHSL values as a CSS `rgb(R G B)` string.
|
|
1042
1519
|
* Uses 2 decimal places to avoid 8-bit quantization contrast loss.
|
|
@@ -1053,6 +1530,18 @@ declare function formatHsl(h: number, s: number, l: number, pastel?: boolean): s
|
|
|
1053
1530
|
* h: 0–360, s: 0–100, l: 0–100 (percentage scale for s and l).
|
|
1054
1531
|
*/
|
|
1055
1532
|
declare function formatOklch(h: number, s: number, l: number, pastel?: boolean): string;
|
|
1533
|
+
/**
|
|
1534
|
+
* Convert gamma-encoded sRGB channels (0–1) to a 6-digit lowercase hex
|
|
1535
|
+
* string (`#rrggbb`). Channels are clamped to [0,1] and rounded to 8-bit.
|
|
1536
|
+
* Alpha is not encoded here — DTCG carries it as a separate `alpha` field.
|
|
1537
|
+
*/
|
|
1538
|
+
declare function srgbToHex(rgb: [number, number, number]): `#${string}`;
|
|
1539
|
+
/**
|
|
1540
|
+
* Convert OKHSL (h: 0–360, s: 0–1, l: 0–1) to OKLCH components `[L, C, H]`.
|
|
1541
|
+
* L: 0–1, C: 0–~0.4 (chroma), H: 0–360 (hue). Shared by `formatOklch` and
|
|
1542
|
+
* the DTCG `oklch` colorSpace exporter so the two never drift apart.
|
|
1543
|
+
*/
|
|
1544
|
+
declare function okhslToOklch(h: number, s: number, l: number, pastel?: boolean): [number, number, number];
|
|
1056
1545
|
//#endregion
|
|
1057
|
-
export { type AdaptationMode, type ColorDef, type ColorMap, type ContrastPreset, type ContrastSpec, type ExtremeValue, type FindToneForContrastOptions, type FindToneForContrastResult, type FindValueForMixContrastOptions, type FindValueForMixContrastResult, type GlazeColorCssOptions, type GlazeColorFormat, type GlazeColorInput, type GlazeColorInputExport, type GlazeColorOverrides, type GlazeColorOverridesExport, type GlazeColorToken, type GlazeColorTokenExport, type GlazeColorValue, type GlazeConfig, type GlazeConfigOverride, type GlazeConfigResolved, type GlazeCssOptions, type GlazeCssResult, type GlazeExtendOptions, type GlazeFromInput, type GlazeJsonOptions, type GlazeOutputModes, type GlazePalette, type GlazePaletteExportOptions, type GlazePaletteOptions, type GlazeShadowInput, type GlazeTheme, type GlazeThemeExport, type GlazeTokenOptions, type HCPair, type HexColor, type MinContrast, type MixColorDef, type OkhslColor, type OkhstColor, type OklchColor, REF_EPS, type RegularColorDef, type RelativeValue, type ResolvedColor, type ResolvedColorVariant, type ResolvedContrast, type RgbColor, type ShadowColorDef, type ShadowTuning, type ToneValue, type ToneWindow, apcaContrast, contrastRatioFromLuminance, cuspLightness, findToneForContrast, findValueForMixContrast, formatHsl, formatOkhsl, formatOklch, formatRgb, fromTone, gamutClampedLuminance, glaze, hslToSrgb, okhslToLinearSrgb, okhslToOkhst, okhslToOklab, okhslToSrgb, okhstToOkhsl, oklabToOkhsl, parseHex, parseHexAlpha, relativeLuminanceFromLinearRgb, resolveContrastForMode, resolveMinContrast, srgbToOkhsl, toTone, toneFromY, variantToOkhsl, yFromTone };
|
|
1546
|
+
export { type AdaptationMode, type ApcaPreset, type ChannelCtx, type ColorDef, type ColorMap, type ContrastPreset, type ContrastSpec, type DtcgColorSpace, type DtcgColorToken, type DtcgColorValue, type DtcgDocument, type DtcgOklchColorValue, type DtcgResolverModifier, type DtcgResolverRef, type DtcgResolverSet, type DtcgSrgbColorValue, type DtcgTokenTree, type ExtremeValue, type FindToneForContrastOptions, type FindToneForContrastResult, type FindValueForMixContrastOptions, type FindValueForMixContrastResult, type GlazeColorCssOptions, type GlazeColorDtcgResolverOptions, type GlazeColorDtcgResult, type GlazeColorFormat, type GlazeColorInput, type GlazeColorInputExport, type GlazeColorOverrides, type GlazeColorOverridesExport, type GlazeColorTailwindOptions, type GlazeColorToken, type GlazeColorTokenExport, type GlazeColorValue, type GlazeConfig, type GlazeConfigOverride, type GlazeConfigResolved, type GlazeCssOptions, type GlazeCssResult, type GlazeDtcgOptions, type GlazeDtcgResolverContextNames, type GlazeDtcgResolverDocument, type GlazeDtcgResolverOptions, type GlazeDtcgResult, type GlazeExtendOptions, type GlazeFromInput, type GlazeJsonOptions, type GlazeOutputModes, type GlazePalette, type GlazePaletteExportOptions, type GlazePaletteOptions, type GlazeShadowInput, type GlazeTailwindOptions, type GlazeTheme, type GlazeThemeExport, type GlazeTokenOptions, type HCPair, type HexColor, type HueDeclaration, type HuePlan, type MinContrast, type MixColorDef, type OkhslColor, type OkhstColor, type OklchColor, type Polarity, REF_EPS, type RegularColorDef, type RelativeValue, type ResolvedColor, type ResolvedColorVariant, type ResolvedContrast, type RgbColor, type Role, type RoleInput, type ShadowColorDef, type ShadowTuning, type ToneValue, type ToneWindow, apcaContrast, assertAllPastel, assertNativeFormat, contrastRatioFromLuminance, cuspLightness, findToneForContrast, findValueForMixContrast, formatHsl, formatOkhsl, formatOkhst, formatOklch, formatRgb, fromTone, gamutClampedLuminance, glaze, hslToSrgb, inferRoleFromName, normalizeRole, okhslToLinearSrgb, okhslToOkhst, okhslToOklab, okhslToOklch, okhslToSrgb, okhstToOkhsl, oklabToOkhsl, oppositeRole, parseHex, parseHexAlpha, relativeLuminanceFromLinearRgb, resolveApcaTarget, resolveContrastForMode, resolveMinContrast, roleToPolarity, srgbToHex, srgbToOkhsl, toTone, toneFromY, variantToOkhsl, yFromTone };
|
|
1058
1547
|
//# sourceMappingURL=index.d.cts.map
|