@tenphi/glaze 0.0.0-snapshot.07e5d83

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.
@@ -0,0 +1,525 @@
1
+ //#region src/contrast-solver.d.ts
2
+ /**
3
+ * OKHSL Contrast Solver
4
+ *
5
+ * Finds the closest OKHSL lightness that satisfies a WCAG 2 contrast target
6
+ * against a base color. Used by glaze when resolving dependent colors
7
+ * with `contrast`.
8
+ */
9
+ type LinearRgb = [number, number, number];
10
+ type ContrastPreset = 'AA' | 'AAA' | 'AA-large' | 'AAA-large';
11
+ type MinContrast$1 = number | ContrastPreset;
12
+ interface FindLightnessForContrastOptions {
13
+ /** Hue of the candidate color (0–360). */
14
+ hue: number;
15
+ /** Saturation of the candidate color (0–1). */
16
+ saturation: number;
17
+ /** Preferred lightness of the candidate (0–1). */
18
+ preferredLightness: number;
19
+ /** Base/reference color as linear sRGB (channels may be outside 0–1 before clamp). */
20
+ baseLinearRgb: [number, number, number];
21
+ /** WCAG contrast ratio target floor. */
22
+ contrast: MinContrast$1;
23
+ /** Search bounds for lightness. Default: [0, 1]. */
24
+ lightnessRange?: [number, number];
25
+ /** Convergence threshold. Default: 1e-4. */
26
+ epsilon?: number;
27
+ /** Maximum binary-search iterations per branch. Default: 14. */
28
+ maxIterations?: number;
29
+ }
30
+ interface FindLightnessForContrastResult {
31
+ /** Chosen lightness in 0–1. */
32
+ lightness: number;
33
+ /** Achieved WCAG contrast ratio. */
34
+ contrast: number;
35
+ /** Whether the target was reached. */
36
+ met: boolean;
37
+ /** Which branch was selected. */
38
+ branch: 'lighter' | 'darker' | 'preferred';
39
+ }
40
+ declare function resolveMinContrast(value: MinContrast$1): number;
41
+ /**
42
+ * Find the OKHSL lightness that satisfies a WCAG 2 contrast target
43
+ * against a base color, staying as close to `preferredLightness` as possible.
44
+ */
45
+ declare function findLightnessForContrast(options: FindLightnessForContrastOptions): FindLightnessForContrastResult;
46
+ interface FindValueForMixContrastOptions {
47
+ /** Preferred mix parameter (0–1). */
48
+ preferredValue: number;
49
+ /** Base color as linear sRGB. */
50
+ baseLinearRgb: LinearRgb;
51
+ /** Target color as linear sRGB. */
52
+ targetLinearRgb: LinearRgb;
53
+ /** WCAG contrast target. */
54
+ contrast: MinContrast$1;
55
+ /**
56
+ * Compute the luminance of the mixed color at parameter t.
57
+ * For opaque: luminance of OKHSL-interpolated color.
58
+ * For transparent: luminance of alpha-composited color over base.
59
+ */
60
+ luminanceAtValue: (t: number) => number;
61
+ /** Convergence threshold. Default: 1e-4. */
62
+ epsilon?: number;
63
+ /** Maximum binary-search iterations per branch. Default: 20. */
64
+ maxIterations?: number;
65
+ }
66
+ interface FindValueForMixContrastResult {
67
+ /** Chosen mix parameter (0–1). */
68
+ value: number;
69
+ /** Achieved WCAG contrast ratio. */
70
+ contrast: number;
71
+ /** Whether the target was reached. */
72
+ met: boolean;
73
+ }
74
+ /**
75
+ * Find the mix parameter (ratio or opacity) that satisfies a WCAG 2 contrast
76
+ * target against a base color, staying as close to `preferredValue` as possible.
77
+ */
78
+ declare function findValueForMixContrast(options: FindValueForMixContrastOptions): FindValueForMixContrastResult;
79
+ //#endregion
80
+ //#region src/types.d.ts
81
+ /** A value or [normal, high-contrast] pair. */
82
+ type HCPair<T> = T | [T, T];
83
+ type MinContrast = number | ContrastPreset;
84
+ type AdaptationMode = 'auto' | 'fixed' | 'static';
85
+ /** A signed relative offset string, e.g. '+20' or '-15.5'. */
86
+ type RelativeValue = `+${number}` | `-${number}`;
87
+ /** Color format for output. */
88
+ type GlazeColorFormat = 'okhsl' | 'rgb' | 'hsl' | 'oklch';
89
+ /**
90
+ * Controls which scheme variants are generated in the export.
91
+ * Light is always included (it's the default).
92
+ */
93
+ interface GlazeOutputModes {
94
+ /** Include dark scheme variants. Default: true. */
95
+ dark?: boolean;
96
+ /** Include high-contrast variants (both light-HC and dark-HC). Default: false. */
97
+ highContrast?: boolean;
98
+ }
99
+ /** Hex color string for DX hints. Runtime validation in `parseHex()`. */
100
+ type HexColor = `#${string}`;
101
+ /** Direct OKHSL color input. */
102
+ interface OkhslColor {
103
+ h: number;
104
+ s: number;
105
+ l: number;
106
+ }
107
+ interface RegularColorDef {
108
+ /**
109
+ * Lightness value (0–100).
110
+ * - Number: absolute lightness.
111
+ * - String ('+N' / '-N'): relative to base color's lightness (requires `base`).
112
+ */
113
+ lightness?: HCPair<number | RelativeValue>;
114
+ /** Saturation factor applied to the seed saturation (0–1, default: 1). */
115
+ saturation?: number;
116
+ /**
117
+ * Hue override for this color.
118
+ * - Number: absolute hue (0–360).
119
+ * - String ('+N' / '-N'): relative to the theme seed hue.
120
+ */
121
+ hue?: number | RelativeValue;
122
+ /** Name of another color in the same theme (dependent color). */
123
+ base?: string;
124
+ /** WCAG contrast ratio floor against the base color. */
125
+ contrast?: HCPair<MinContrast>;
126
+ /** Adaptation mode. Default: 'auto'. */
127
+ mode?: AdaptationMode;
128
+ /**
129
+ * Fixed opacity (0–1).
130
+ * Output includes alpha in the CSS value.
131
+ * Does not affect contrast resolution — a semi-transparent color
132
+ * has no fixed perceived lightness, so `contrast` and `opacity`
133
+ * should not be combined (a console.warn is emitted).
134
+ */
135
+ opacity?: number;
136
+ }
137
+ /** Shadow tuning knobs. All values use the 0–1 scale (OKHSL). */
138
+ interface ShadowTuning {
139
+ /** Fraction of fg saturation kept in pigment (0-1). Default: 0.18. */
140
+ saturationFactor?: number;
141
+ /** Upper clamp on pigment saturation (0-1). Default: 0.25. */
142
+ maxSaturation?: number;
143
+ /** Multiplier for bg lightness → pigment lightness. Default: 0.25. */
144
+ lightnessFactor?: number;
145
+ /** [min, max] clamp for pigment lightness (0-1). Default: [0.05, 0.20]. */
146
+ lightnessBounds?: [number, number];
147
+ /**
148
+ * Target minimum gap between pigment lightness and bg lightness (0-1).
149
+ * Default: 0.05.
150
+ */
151
+ minGapTarget?: number;
152
+ /** Max alpha (0-1). Reached at intensity=100 with max contrast. Default: 1.0. */
153
+ alphaMax?: number;
154
+ /**
155
+ * Blend weight (0-1) pulling pigment hue toward bg hue.
156
+ * 0 = pure fg hue, 1 = pure bg hue. Default: 0.2.
157
+ */
158
+ bgHueBlend?: number;
159
+ }
160
+ interface ShadowColorDef {
161
+ type: 'shadow';
162
+ /**
163
+ * Background color name — the surface the shadow sits on.
164
+ * Must reference a non-shadow color in the same theme.
165
+ */
166
+ bg: string;
167
+ /**
168
+ * Foreground color name for tinting and intensity modulation.
169
+ * Must reference a non-shadow color in the same theme.
170
+ * Omit for achromatic shadow at full user-specified intensity.
171
+ */
172
+ fg?: string;
173
+ /**
174
+ * Shadow intensity, 0-100.
175
+ * Supports [normal, highContrast] pair.
176
+ */
177
+ intensity: HCPair<number>;
178
+ /** Override default tuning. Merged field-by-field with global `shadowTuning`. */
179
+ tuning?: ShadowTuning;
180
+ }
181
+ interface MixColorDef {
182
+ type: 'mix';
183
+ /** Background/base color name — the "from" color. */
184
+ base: string;
185
+ /** Target color name — the "to" color to mix toward. */
186
+ target: string;
187
+ /**
188
+ * Mix ratio 0–100 (0 = pure base, 100 = pure target).
189
+ * In 'transparent' blend mode, this controls the opacity of the target.
190
+ * Supports [normal, highContrast] pair.
191
+ */
192
+ value: HCPair<number>;
193
+ /**
194
+ * Blending mode. Default: 'opaque'.
195
+ * - 'opaque': produces a solid color by interpolating base and target.
196
+ * - 'transparent': produces the target color with alpha = value/100.
197
+ */
198
+ blend?: 'opaque' | 'transparent';
199
+ /**
200
+ * Interpolation color space for opaque blending. Default: 'okhsl'.
201
+ * - 'okhsl': perceptually uniform, consistent with Glaze's internal model.
202
+ * - 'srgb': linear sRGB interpolation, matches browser compositing.
203
+ *
204
+ * Ignored for 'transparent' blend (always composites in linear sRGB).
205
+ */
206
+ space?: 'okhsl' | 'srgb';
207
+ /**
208
+ * Minimum WCAG contrast between the base and the resulting color.
209
+ * In 'opaque' mode, adjusts the mix ratio to meet contrast.
210
+ * In 'transparent' mode, adjusts opacity to meet contrast against the composite.
211
+ * Supports [normal, highContrast] pair.
212
+ */
213
+ contrast?: HCPair<MinContrast>;
214
+ }
215
+ type ColorDef = RegularColorDef | ShadowColorDef | MixColorDef;
216
+ type ColorMap = Record<string, ColorDef>;
217
+ /** Resolved color for a single scheme variant. */
218
+ interface ResolvedColorVariant {
219
+ /** OKHSL hue (0–360). */
220
+ h: number;
221
+ /** OKHSL saturation (0–1). */
222
+ s: number;
223
+ /** OKHSL lightness (0–1). */
224
+ l: number;
225
+ /** Opacity (0–1). Default: 1. */
226
+ alpha: number;
227
+ }
228
+ /** Fully resolved color across all scheme variants. */
229
+ interface ResolvedColor {
230
+ name: string;
231
+ light: ResolvedColorVariant;
232
+ dark: ResolvedColorVariant;
233
+ lightContrast: ResolvedColorVariant;
234
+ darkContrast: ResolvedColorVariant;
235
+ /** Adaptation mode. Present only for regular colors, omitted for shadows. */
236
+ mode?: AdaptationMode;
237
+ }
238
+ interface GlazeConfig {
239
+ /** Light scheme lightness window [lo, hi]. Default: [10, 100]. */
240
+ lightLightness?: [number, number];
241
+ /** Dark scheme lightness window [lo, hi]. Default: [15, 95]. */
242
+ darkLightness?: [number, number];
243
+ /** Saturation reduction factor for dark scheme (0–1). Default: 0.1. */
244
+ darkDesaturation?: number;
245
+ /** State alias names for token export. */
246
+ states?: {
247
+ dark?: string;
248
+ highContrast?: string;
249
+ };
250
+ /** Which scheme variants to include in exports. Default: both true. */
251
+ modes?: GlazeOutputModes;
252
+ /** Default tuning for all shadow colors. Per-color tuning merges field-by-field. */
253
+ shadowTuning?: ShadowTuning;
254
+ }
255
+ interface GlazeConfigResolved {
256
+ lightLightness: [number, number];
257
+ darkLightness: [number, number];
258
+ darkDesaturation: number;
259
+ states: {
260
+ dark: string;
261
+ highContrast: string;
262
+ };
263
+ modes: Required<GlazeOutputModes>;
264
+ shadowTuning?: ShadowTuning;
265
+ }
266
+ /** Serialized theme configuration (no resolved values). */
267
+ interface GlazeThemeExport {
268
+ hue: number;
269
+ saturation: number;
270
+ colors: ColorMap;
271
+ }
272
+ /** Input for `glaze.shadow()` standalone factory. */
273
+ interface GlazeShadowInput {
274
+ /** Background color — hex string or OKHSL { h, s (0-1), l (0-1) }. */
275
+ bg: HexColor | OkhslColor;
276
+ /** Foreground color for tinting + intensity modulation. */
277
+ fg?: HexColor | OkhslColor;
278
+ /** Intensity 0-100. */
279
+ intensity: number;
280
+ tuning?: ShadowTuning;
281
+ }
282
+ /** Input for `glaze.color()` standalone factory. */
283
+ interface GlazeColorInput {
284
+ hue: number;
285
+ saturation: number;
286
+ lightness: HCPair<number>;
287
+ saturationFactor?: number;
288
+ mode?: AdaptationMode;
289
+ }
290
+ /** Return type for `glaze.color()`. */
291
+ interface GlazeColorToken {
292
+ /** Resolve the color across all scheme variants. */
293
+ resolve(): ResolvedColor;
294
+ /** Export as a flat token map (no color name key). */
295
+ token(options?: GlazeTokenOptions): Record<string, string>;
296
+ /**
297
+ * Export as a tasty style-to-state binding (no color name key).
298
+ * Uses `#name` keys and state aliases (`''`, `@dark`, etc.).
299
+ * @see https://cube-ui-kit.vercel.app/?path=/docs/tasty-documentation--docs
300
+ */
301
+ tasty(options?: GlazeTokenOptions): Record<string, string>;
302
+ /** Export as a flat JSON map (no color name key). */
303
+ json(options?: GlazeJsonOptions): Record<string, string>;
304
+ }
305
+ interface GlazeTheme {
306
+ /** The hue seed (0–360). */
307
+ readonly hue: number;
308
+ /** The saturation seed (0–100). */
309
+ readonly saturation: number;
310
+ /** Add/replace colors (additive merge with existing definitions). */
311
+ colors(defs: ColorMap): void;
312
+ /** Get a color definition by name. */
313
+ color(name: string): ColorDef | undefined;
314
+ /** Set a single color definition. */
315
+ color(name: string, def: ColorDef): void;
316
+ /** Remove one or more color definitions. */
317
+ remove(names: string | string[]): void;
318
+ /** Check if a color is defined. */
319
+ has(name: string): boolean;
320
+ /** List all defined color names. */
321
+ list(): string[];
322
+ /** Clear all color definitions. */
323
+ reset(): void;
324
+ /** Export the theme configuration as a JSON-safe object. */
325
+ export(): GlazeThemeExport;
326
+ /** Create a child theme inheriting all color definitions. */
327
+ extend(options: GlazeExtendOptions): GlazeTheme;
328
+ /** Resolve all colors and return the result map. */
329
+ resolve(): Map<string, ResolvedColor>;
330
+ /**
331
+ * Export as a flat token map grouped by scheme variant.
332
+ *
333
+ * ```ts
334
+ * theme.tokens()
335
+ * // → { light: { surface: 'okhsl(...)' }, dark: { surface: 'okhsl(...)' } }
336
+ * ```
337
+ */
338
+ tokens(options?: GlazeJsonOptions): Record<string, Record<string, string>>;
339
+ /**
340
+ * Export as tasty style-to-state bindings.
341
+ * Uses `#name` color token keys and state aliases (`''`, `@dark`, etc.).
342
+ * Spread into component styles or register as a recipe via `configure({ recipes })`.
343
+ * @see https://cube-ui-kit.vercel.app/?path=/docs/tasty-documentation--docs
344
+ */
345
+ tasty(options?: GlazeTokenOptions): Record<string, Record<string, string>>;
346
+ /** Export as plain JSON. */
347
+ json(options?: GlazeJsonOptions): Record<string, Record<string, string>>;
348
+ /** Export as CSS custom property declarations. */
349
+ css(options?: GlazeCssOptions): GlazeCssResult;
350
+ }
351
+ interface GlazeExtendOptions {
352
+ hue?: number;
353
+ saturation?: number;
354
+ colors?: ColorMap;
355
+ }
356
+ interface GlazeTokenOptions {
357
+ /** Prefix mode. `true` uses "<themeName>-", or provide a custom map. */
358
+ prefix?: boolean | Record<string, string>;
359
+ /** Override state aliases for this export. */
360
+ states?: {
361
+ dark?: string;
362
+ highContrast?: string;
363
+ };
364
+ /** Override which scheme variants to include. */
365
+ modes?: GlazeOutputModes;
366
+ /** Output color format. Default: 'okhsl'. */
367
+ format?: GlazeColorFormat;
368
+ }
369
+ interface GlazeJsonOptions {
370
+ /** Override which scheme variants to include. */
371
+ modes?: GlazeOutputModes;
372
+ /** Output color format. Default: 'okhsl'. */
373
+ format?: GlazeColorFormat;
374
+ }
375
+ interface GlazeCssOptions {
376
+ /** Output color format. Default: 'rgb'. */
377
+ format?: GlazeColorFormat;
378
+ /** Suffix appended to each CSS custom property name. Default: '-color'. */
379
+ suffix?: string;
380
+ }
381
+ /** CSS custom property declarations grouped by scheme variant. */
382
+ interface GlazeCssResult {
383
+ light: string;
384
+ dark: string;
385
+ lightContrast: string;
386
+ darkContrast: string;
387
+ }
388
+ interface GlazePalette {
389
+ /**
390
+ * Export all themes as a flat token map grouped by scheme variant.
391
+ *
392
+ * ```ts
393
+ * palette.tokens({ prefix: true })
394
+ * // → { light: { 'primary-surface': 'okhsl(...)' }, dark: { 'primary-surface': 'okhsl(...)' } }
395
+ * ```
396
+ */
397
+ tokens(options?: GlazeJsonOptions & {
398
+ prefix?: boolean | Record<string, string>;
399
+ }): Record<string, Record<string, string>>;
400
+ /**
401
+ * Export all themes as tasty style-to-state bindings.
402
+ * Uses `#name` color token keys and state aliases (`''`, `@dark`, etc.).
403
+ * Spread into component styles or register as a recipe via `configure({ recipes })`.
404
+ * @see https://cube-ui-kit.vercel.app/?path=/docs/tasty-documentation--docs
405
+ */
406
+ tasty(options?: GlazeTokenOptions): Record<string, Record<string, string>>;
407
+ /** Export all themes as plain JSON. */
408
+ json(options?: GlazeJsonOptions & {
409
+ prefix?: boolean | Record<string, string>;
410
+ }): Record<string, Record<string, Record<string, string>>>;
411
+ /** Export all themes as CSS custom property declarations. */
412
+ css(options?: GlazeCssOptions & {
413
+ prefix?: boolean | Record<string, string>;
414
+ }): GlazeCssResult;
415
+ }
416
+ //#endregion
417
+ //#region src/glaze.d.ts
418
+ type PaletteInput = Record<string, GlazeTheme>;
419
+ /**
420
+ * Create a single-hue glaze theme.
421
+ *
422
+ * @example
423
+ * ```ts
424
+ * const primary = glaze({ hue: 280, saturation: 80 });
425
+ * // or shorthand:
426
+ * const primary = glaze(280, 80);
427
+ * ```
428
+ */
429
+ declare function glaze(hueOrOptions: number | {
430
+ hue: number;
431
+ saturation: number;
432
+ }, saturation?: number): GlazeTheme;
433
+ declare namespace glaze {
434
+ var configure: (config: GlazeConfig) => void;
435
+ var palette: (themes: PaletteInput) => {
436
+ tokens(options?: GlazeJsonOptions & {
437
+ prefix?: boolean | Record<string, string>;
438
+ }): Record<string, Record<string, string>>;
439
+ tasty(options?: GlazeTokenOptions): Record<string, Record<string, string>>;
440
+ json(options?: GlazeJsonOptions & {
441
+ prefix?: boolean | Record<string, string>;
442
+ }): Record<string, Record<string, Record<string, string>>>;
443
+ css(options?: GlazeCssOptions & {
444
+ prefix?: boolean | Record<string, string>;
445
+ }): GlazeCssResult;
446
+ };
447
+ var from: (data: GlazeThemeExport) => GlazeTheme;
448
+ var color: (input: GlazeColorInput) => GlazeColorToken;
449
+ var shadow: (input: GlazeShadowInput) => ResolvedColorVariant;
450
+ var format: (variant: ResolvedColorVariant, colorFormat?: GlazeColorFormat) => string;
451
+ var fromHex: (hex: string) => GlazeTheme;
452
+ var fromRgb: (r: number, g: number, b: number) => GlazeTheme;
453
+ var getConfig: () => GlazeConfigResolved;
454
+ var resetConfig: () => void;
455
+ }
456
+ //#endregion
457
+ //#region src/okhsl-color-math.d.ts
458
+ /**
459
+ * OKHSL color math primitives for the glaze theme generator.
460
+ *
461
+ * Provides bidirectional OKHSL ↔ sRGB conversion, relative luminance
462
+ * computation for WCAG 2 contrast calculations, and multi-format output
463
+ * (okhsl, rgb, hsl, oklch).
464
+ */
465
+ /**
466
+ * Convert OKHSL (h: 0–360, s: 0–1, l: 0–1) to OKLab [L, a, b].
467
+ */
468
+ declare function okhslToOklab(h: number, s: number, l: number): [number, number, number];
469
+ /**
470
+ * Convert OKHSL (h: 0–360, s: 0–1, l: 0–1) to linear sRGB.
471
+ * Channels may exceed [0, 1] near gamut boundaries — caller must clamp if needed.
472
+ */
473
+ declare function okhslToLinearSrgb(h: number, s: number, l: number): [number, number, number];
474
+ /**
475
+ * Compute relative luminance Y from linear sRGB channels.
476
+ * Per WCAG 2: Y = 0.2126·R + 0.7152·G + 0.0722·B
477
+ */
478
+ declare function relativeLuminanceFromLinearRgb(rgb: [number, number, number]): number;
479
+ /**
480
+ * WCAG 2 contrast ratio from two luminance values.
481
+ */
482
+ declare function contrastRatioFromLuminance(yA: number, yB: number): number;
483
+ /**
484
+ * Convert OKHSL to gamma-encoded sRGB (clamped to 0–1).
485
+ */
486
+ declare function okhslToSrgb(h: number, s: number, l: number): [number, number, number];
487
+ /**
488
+ * Compute WCAG 2 relative luminance from linear sRGB, matching the browser
489
+ * rendering pipeline: gamma-encode, clamp to sRGB gamut [0,1], then linearize.
490
+ * This avoids over/under-estimating luminance for out-of-gamut OKHSL colors.
491
+ */
492
+ declare function gamutClampedLuminance(linearRgb: [number, number, number]): number;
493
+ /**
494
+ * Convert gamma-encoded sRGB (0–1 per channel) to OKHSL.
495
+ * Returns [h, s, l] where h: 0–360, s: 0–1, l: 0–1.
496
+ */
497
+ declare function srgbToOkhsl(rgb: [number, number, number]): [number, number, number];
498
+ /**
499
+ * Parse a hex color string (#rgb or #rrggbb) to sRGB [r, g, b] in 0–1 range.
500
+ * Returns null if the string is not a valid hex color.
501
+ */
502
+ declare function parseHex(hex: string): [number, number, number] | null;
503
+ /**
504
+ * Format OKHSL values as a CSS `okhsl(H S% L%)` string.
505
+ * h: 0–360, s: 0–100, l: 0–100 (percentage scale for s and l).
506
+ */
507
+ declare function formatOkhsl(h: number, s: number, l: number): string;
508
+ /**
509
+ * Format OKHSL values as a CSS `rgb(R G B)` string with rounded integer values.
510
+ * h: 0–360, s: 0–100, l: 0–100 (percentage scale for s and l).
511
+ */
512
+ declare function formatRgb(h: number, s: number, l: number): string;
513
+ /**
514
+ * Format OKHSL values as a CSS `hsl(H S% L%)` string.
515
+ * h: 0–360, s: 0–100, l: 0–100 (percentage scale for s and l).
516
+ */
517
+ declare function formatHsl(h: number, s: number, l: number): string;
518
+ /**
519
+ * Format OKHSL values as a CSS `oklch(L C H)` string.
520
+ * h: 0–360, s: 0–100, l: 0–100 (percentage scale for s and l).
521
+ */
522
+ declare function formatOklch(h: number, s: number, l: number): string;
523
+ //#endregion
524
+ export { type AdaptationMode, type ColorDef, type ColorMap, type ContrastPreset, type FindLightnessForContrastOptions, type FindLightnessForContrastResult, type FindValueForMixContrastOptions, type FindValueForMixContrastResult, type GlazeColorFormat, type GlazeColorInput, type GlazeColorToken, type GlazeConfig, type GlazeCssOptions, type GlazeCssResult, type GlazeExtendOptions, type GlazeJsonOptions, type GlazeOutputModes, type GlazePalette, type GlazeShadowInput, type GlazeTheme, type GlazeThemeExport, type GlazeTokenOptions, type HCPair, type HexColor, type MinContrast, type MixColorDef, type OkhslColor, type RegularColorDef, type RelativeValue, type ResolvedColor, type ResolvedColorVariant, type ShadowColorDef, type ShadowTuning, contrastRatioFromLuminance, findLightnessForContrast, findValueForMixContrast, formatHsl, formatOkhsl, formatOklch, formatRgb, gamutClampedLuminance, glaze, okhslToLinearSrgb, okhslToOklab, okhslToSrgb, parseHex, relativeLuminanceFromLinearRgb, resolveMinContrast, srgbToOkhsl };
525
+ //# sourceMappingURL=index.d.mts.map