@hyperframes/core 0.7.71 → 0.7.73

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 (40) hide show
  1. package/dist/colorGrading.d.ts +1649 -62
  2. package/dist/colorGrading.d.ts.map +1 -1
  3. package/dist/colorGrading.js +457 -19
  4. package/dist/colorGrading.js.map +1 -1
  5. package/dist/colorGradingCurves.d.ts +9 -0
  6. package/dist/colorGradingCurves.d.ts.map +1 -0
  7. package/dist/colorGradingCurves.js +141 -0
  8. package/dist/colorGradingCurves.js.map +1 -0
  9. package/dist/colorLuts.d.ts +1 -0
  10. package/dist/colorLuts.d.ts.map +1 -1
  11. package/dist/colorLuts.js +4 -4
  12. package/dist/colorLuts.js.map +1 -1
  13. package/dist/figma/motionEase.js +1 -1
  14. package/dist/figma/motionEase.js.map +1 -1
  15. package/dist/generated/position-edits-render-inline.js +1 -1
  16. package/dist/generated/runtime-inline.js +1 -1
  17. package/dist/generated/runtime-inline.js.map +1 -1
  18. package/dist/hyperframe.runtime.iife.js +35 -33
  19. package/dist/index.d.ts +1 -1
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +1 -1
  22. package/dist/index.js.map +1 -1
  23. package/dist/mediaGradeAnalyzer.d.ts +65 -0
  24. package/dist/mediaGradeAnalyzer.d.ts.map +1 -0
  25. package/dist/mediaGradeAnalyzer.js +259 -0
  26. package/dist/mediaGradeAnalyzer.js.map +1 -0
  27. package/dist/parsers/springEase.d.ts +4 -1
  28. package/dist/parsers/springEase.d.ts.map +1 -1
  29. package/dist/parsers/springEase.js +29 -1
  30. package/dist/parsers/springEase.js.map +1 -1
  31. package/dist/runtime/analytics.d.ts +1 -1
  32. package/dist/runtime/analytics.d.ts.map +1 -1
  33. package/dist/runtime/analytics.js.map +1 -1
  34. package/dist/runtime/types.d.ts +2 -1
  35. package/dist/runtime/types.d.ts.map +1 -1
  36. package/dist/runtime/wiggleEase.d.ts +12 -0
  37. package/dist/runtime/wiggleEase.d.ts.map +1 -0
  38. package/dist/runtime/wiggleEase.js +52 -0
  39. package/dist/runtime/wiggleEase.js.map +1 -0
  40. package/package.json +12 -4
@@ -1,4 +1,7 @@
1
- import { COLOR_GRADING_ADJUST_KEYS, COLOR_GRADING_DETAIL_KEYS, COLOR_GRADING_EFFECT_KEYS } from "@hyperframes/parsers/color-grading-contract";
1
+ import type { HfColorCurvePoint, HfHueCurvePoint } from "./colorGradingCurves";
2
+ import { COLOR_GRADING_ADJUST_KEYS, COLOR_GRADING_CURVE_KEYS, COLOR_GRADING_DETAIL_KEYS, COLOR_GRADING_EFFECT_KEYS, COLOR_GRADING_HUE_CURVE_KEYS, COLOR_GRADING_WHEEL_KEYS } from "@hyperframes/parsers/color-grading-contract";
3
+ export type { HfColorCurvePoint, HfHueCurvePoint } from "./colorGradingCurves";
4
+ export { compileHfColorCurve, compileHfHueCurve, HF_COLOR_CURVE_MAX_POINTS, } from "./colorGradingCurves";
2
5
  export declare const HF_COLOR_GRADING_ATTR = "data-color-grading";
3
6
  /** Set on a graded source while its pixels render on the grading canvas. */
4
7
  export declare const COLOR_GRADING_SOURCE_HIDDEN_ATTR = "data-hf-color-grading-source-hidden";
@@ -13,6 +16,55 @@ export declare const HF_COLOR_GRADING_COLOR_SPACE = "rec709";
13
16
  export type HfColorGradingPresetId = "neutral" | "warm-daylight" | "clean-studio" | "skin-soft" | "food-pop" | "night-lift" | "muted-editorial" | "vintage-wash" | "mono-clean" | "mono-fade" | "soft-boost" | "bright-pop" | "deep-contrast" | "creator-camcorder" | "vhs-playback" | "home-movie-8mm" | "editorial-halftone" | "two-ink-print";
14
17
  export type HfColorGradingAdjustKey = (typeof COLOR_GRADING_ADJUST_KEYS)[number];
15
18
  export type HfColorGradingAdjust = Partial<Record<HfColorGradingAdjustKey, number>>;
19
+ export type HfColorGradingWheelKey = (typeof COLOR_GRADING_WHEEL_KEYS)[number];
20
+ export interface HfColorGradingTonalWheel {
21
+ hue?: number;
22
+ amount?: number;
23
+ level?: number;
24
+ }
25
+ export type HfColorGradingWheels = Partial<Record<HfColorGradingWheelKey, HfColorGradingTonalWheel>>;
26
+ export type NormalizedHfColorGradingWheels = Record<HfColorGradingWheelKey, Required<HfColorGradingTonalWheel>>;
27
+ export type HfColorGradingCurveKey = (typeof COLOR_GRADING_CURVE_KEYS)[number];
28
+ export type HfColorGradingHueCurveKey = (typeof COLOR_GRADING_HUE_CURVE_KEYS)[number];
29
+ export type HfColorGradingCurves = Partial<Record<HfColorGradingCurveKey, readonly HfColorCurvePoint[]>>;
30
+ export type HfColorGradingHueCurves = Partial<Record<HfColorGradingHueCurveKey, readonly HfHueCurvePoint[]>>;
31
+ export type NormalizedHfColorGradingCurves = Record<HfColorGradingCurveKey, readonly HfColorCurvePoint[]>;
32
+ export type NormalizedHfColorGradingHueCurves = Record<HfColorGradingHueCurveKey, readonly HfHueCurvePoint[]>;
33
+ export interface HfColorGradingHueRange {
34
+ center?: number;
35
+ range?: number;
36
+ softness?: number;
37
+ }
38
+ export interface HfColorGradingSoftRange {
39
+ min?: number;
40
+ max?: number;
41
+ softness?: number;
42
+ }
43
+ export interface HfColorGradingSecondaryCorrection {
44
+ hueShift?: number;
45
+ saturation?: number;
46
+ luma?: number;
47
+ temperature?: number;
48
+ tint?: number;
49
+ }
50
+ export interface HfColorGradingSecondary {
51
+ enabled?: boolean;
52
+ key: {
53
+ hue?: HfColorGradingHueRange;
54
+ saturation?: HfColorGradingSoftRange;
55
+ luma?: HfColorGradingSoftRange;
56
+ };
57
+ correction: HfColorGradingSecondaryCorrection;
58
+ }
59
+ export interface NormalizedHfColorGradingSecondary {
60
+ enabled: boolean;
61
+ key: {
62
+ hue: Required<HfColorGradingHueRange>;
63
+ saturation: Required<HfColorGradingSoftRange>;
64
+ luma: Required<HfColorGradingSoftRange>;
65
+ };
66
+ correction: Required<HfColorGradingSecondaryCorrection>;
67
+ }
16
68
  export type HfColorGradingDetailKey = (typeof COLOR_GRADING_DETAIL_KEYS)[number];
17
69
  export type HfColorGradingDetails = Partial<Record<HfColorGradingDetailKey, number>>;
18
70
  export type HfColorGradingEffectKey = (typeof COLOR_GRADING_EFFECT_KEYS)[number];
@@ -26,25 +78,39 @@ export interface HfColorGrading {
26
78
  preset?: HfColorGradingPresetId | string | null;
27
79
  intensity?: number;
28
80
  adjust?: HfColorGradingAdjust;
81
+ wheels?: HfColorGradingWheels;
82
+ curves?: HfColorGradingCurves;
83
+ hueCurves?: HfColorGradingHueCurves;
84
+ secondaries?: readonly HfColorGradingSecondary[];
29
85
  details?: HfColorGradingDetails;
30
86
  effects?: HfColorGradingEffects;
31
87
  palette?: readonly string[] | null;
32
88
  lut?: HfColorGradingLutRef | string | null;
33
89
  colorSpace?: typeof HF_COLOR_GRADING_COLOR_SPACE | string;
34
90
  }
35
- export declare const HF_COLOR_GRADING_TOP_LEVEL_KEYS: readonly ["enabled", "preset", "intensity", "adjust", "details", "effects", "palette", "lut", "colorSpace"];
91
+ export declare const HF_COLOR_GRADING_TOP_LEVEL_KEYS: readonly ["enabled", "preset", "intensity", "adjust", "wheels", "curves", "hueCurves", "secondaries", "details", "effects", "palette", "lut", "colorSpace"];
36
92
  export declare const HF_COLOR_GRADING_LUT_KEYS: readonly ["src", "intensity"];
37
93
  export interface NormalizedHfColorGrading {
38
94
  enabled: boolean;
39
95
  preset: HfColorGradingPresetId | string | null;
40
96
  intensity: number;
41
97
  adjust: Record<HfColorGradingAdjustKey, number>;
98
+ wheels?: NormalizedHfColorGradingWheels;
99
+ curves?: NormalizedHfColorGradingCurves;
100
+ hueCurves?: NormalizedHfColorGradingHueCurves;
101
+ secondaries?: readonly NormalizedHfColorGradingSecondary[];
42
102
  details: Record<HfColorGradingDetailKey, number>;
43
103
  effects: Record<HfColorGradingEffectKey, number>;
44
104
  palette: readonly string[] | null;
45
105
  lut: HfColorGradingLutRef | null;
46
106
  colorSpace: typeof HF_COLOR_GRADING_COLOR_SPACE | string;
47
107
  }
108
+ export interface ResolvedHfColorGrading extends NormalizedHfColorGrading {
109
+ wheels: NormalizedHfColorGradingWheels;
110
+ curves: NormalizedHfColorGradingCurves;
111
+ hueCurves: NormalizedHfColorGradingHueCurves;
112
+ secondaries: readonly NormalizedHfColorGradingSecondary[];
113
+ }
48
114
  export interface HfColorGradingTarget {
49
115
  id?: string | null;
50
116
  hfId?: string | null;
@@ -137,6 +203,9 @@ export declare const HF_COLOR_GRADING_PALETTES: readonly [{
137
203
  }];
138
204
  export type HfColorGradingVariableMap = Record<string, unknown>;
139
205
  export declare const HF_COLOR_GRADING_ADJUST_KEYS: readonly ["exposure", "contrast", "highlights", "shadows", "whites", "blacks", "temperature", "tint", "vibrance", "saturation"];
206
+ export declare const HF_COLOR_GRADING_WHEEL_KEYS: readonly ["shadows", "midtones", "highlights"];
207
+ export declare const HF_COLOR_GRADING_CURVE_KEYS: readonly ["master", "red", "green", "blue"];
208
+ export declare const HF_COLOR_GRADING_HUE_CURVE_KEYS: readonly ["hueVsHue", "hueVsSaturation", "hueVsLuma"];
140
209
  export declare const HF_COLOR_GRADING_DETAIL_KEYS: readonly ["vignette", "vignetteMidpoint", "vignetteRoundness", "vignetteFeather", "grain", "grainSize", "grainRoughness"];
141
210
  export declare const HF_COLOR_GRADING_EFFECT_KEYS: readonly ["blur", "pixelate", "chromaBleed", "tapeDamage", "tapeTracking", "tapeNoise", "tapeSpeed", "filmArtifacts", "halftone", "halftoneSize", "twoInkPrint", "twoInkPrintSize", "ascii", "asciiSize", "asciiInvert", "asciiStyle", "asciiColor", "asciiRotation", "dither", "ditherSize", "bloom", "bloomRadius", "monoScreen", "monoScreenSize", "monoScreenAngle", "monoScreenSpread", "monoScreenShape", "monoScreenInvert", "scanlines", "scanlineCount", "scanlineSoftness", "chromaticAberration", "chromaticAngle", "crtCurvature", "digitalGlitch", "digitalGlitchColorSplit", "digitalGlitchLineTear", "digitalGlitchPixelate", "digitalGlitchBlockAmount", "digitalGlitchBlockDisplacement", "digitalGlitchBlockOpacity", "digitalGlitchSpeed", "engraving", "engravingSpacing", "engravingMinThickness", "engravingMaxThickness", "engravingAngle", "engravingContrast", "engravingSharpness", "engravingWave", "engravingWaveFrequency", "crosshatch", "crosshatchSpacing", "crosshatchThickness", "crosshatchAngle", "crosshatchContrast", "crosshatchEdges", "crosshatchLineWeight", "crosshatchWave", "crosshatchWaveFrequency", "kuwahara", "kuwaharaRadius", "kuwaharaSharpness", "kuwaharaSaturation"];
142
211
  export declare const HF_COLOR_GRADING_PRESETS: readonly HfColorGradingPreset[];
@@ -212,8 +281,8 @@ export declare function getHfColorGradingCapabilities(): {
212
281
  format: string;
213
282
  maxCubeSize: number;
214
283
  intensity: {
215
- min: number;
216
- max: number;
284
+ min: 0;
285
+ max: 1;
217
286
  };
218
287
  };
219
288
  presets: {
@@ -227,14 +296,239 @@ export declare function getHfColorGradingCapabilities(): {
227
296
  key: "exposure" | "contrast" | "highlights" | "shadows" | "whites" | "blacks" | "temperature" | "tint" | "vibrance" | "saturation";
228
297
  identity: number;
229
298
  }[];
299
+ wheels: {
300
+ zones: readonly ["shadows", "midtones", "highlights"];
301
+ controls: {
302
+ hue: {
303
+ identity: number;
304
+ unit: string;
305
+ wrap: boolean;
306
+ min: 0;
307
+ maxExclusive: 360;
308
+ };
309
+ amount: {
310
+ min: 0;
311
+ max: 1;
312
+ identity: number;
313
+ };
314
+ level: {
315
+ min: -1;
316
+ max: 1;
317
+ identity: number;
318
+ };
319
+ };
320
+ };
321
+ curves: {
322
+ channels: readonly ["master", "red", "green", "blue"];
323
+ input: {
324
+ min: number;
325
+ max: number;
326
+ };
327
+ output: {
328
+ min: number;
329
+ max: number;
330
+ };
331
+ minPoints: number;
332
+ maxPoints: number;
333
+ implicitEndpoints: boolean;
334
+ endpointsCountTowardMax: boolean;
335
+ };
336
+ hueCurves: {
337
+ channels: {
338
+ key: "hueVsHue" | "hueVsSaturation" | "hueVsLuma";
339
+ input: {
340
+ min: number;
341
+ maxExclusive: number;
342
+ unit: string;
343
+ wrap: boolean;
344
+ };
345
+ output: {
346
+ min: number;
347
+ max: number;
348
+ };
349
+ }[];
350
+ minPoints: number;
351
+ maxPoints: number;
352
+ };
353
+ secondaries: {
354
+ max: number;
355
+ hue: {
356
+ center: {
357
+ min: 0;
358
+ maxExclusive: 360;
359
+ unit: string;
360
+ wrap: boolean;
361
+ };
362
+ range: {
363
+ unit: string;
364
+ min: 0;
365
+ max: 180;
366
+ };
367
+ softness: {
368
+ unit: string;
369
+ min: 0;
370
+ max: 180;
371
+ };
372
+ rangePlusSoftnessMax: 180;
373
+ };
374
+ saturation: {
375
+ min: {
376
+ min: 0;
377
+ max: 1;
378
+ };
379
+ max: {
380
+ min: 0;
381
+ max: 1;
382
+ };
383
+ relation: string;
384
+ softness: {
385
+ min: 0;
386
+ max: 0.5;
387
+ };
388
+ };
389
+ luma: {
390
+ min: {
391
+ min: 0;
392
+ max: 1;
393
+ };
394
+ max: {
395
+ min: 0;
396
+ max: 1;
397
+ };
398
+ relation: string;
399
+ softness: {
400
+ min: 0;
401
+ max: 0.5;
402
+ };
403
+ };
404
+ correction: {
405
+ hueShift: {
406
+ unit: string;
407
+ min: -180;
408
+ max: 180;
409
+ };
410
+ saturation: {
411
+ min: -1;
412
+ max: 1;
413
+ };
414
+ luma: {
415
+ min: -1;
416
+ max: 1;
417
+ };
418
+ temperature: {
419
+ min: -1;
420
+ max: 1;
421
+ };
422
+ tint: {
423
+ min: -1;
424
+ max: 1;
425
+ };
426
+ };
427
+ };
428
+ effectFamilies: readonly [{
429
+ readonly id: "essentials";
430
+ readonly label: "Essentials";
431
+ readonly description: "Common optical, focus, and privacy-oriented primitives.";
432
+ }, {
433
+ readonly id: "retro-glitch";
434
+ readonly label: "Retro & Glitch";
435
+ readonly description: "Tape, film, CRT, channel separation, and digital disruption.";
436
+ }, {
437
+ readonly id: "print";
438
+ readonly label: "Print";
439
+ readonly description: "Halftone, limited-ink, dither, and screen-print rendering.";
440
+ }, {
441
+ readonly id: "art";
442
+ readonly label: "Art";
443
+ readonly description: "ASCII, engraved, crosshatched, and painterly rendering.";
444
+ }];
230
445
  finishing: {
231
446
  min: number;
232
447
  max: number;
233
448
  key: "vignette" | "vignetteMidpoint" | "vignetteRoundness" | "vignetteFeather" | "grain" | "grainSize" | "grainRoughness";
234
449
  identity: number;
235
450
  }[];
236
- effects: {
451
+ effects: ({
452
+ apply: {
453
+ blur?: number | undefined;
454
+ pixelate?: number | undefined;
455
+ chromaBleed?: number | undefined;
456
+ tapeDamage?: number | undefined;
457
+ tapeTracking?: number | undefined;
458
+ tapeNoise?: number | undefined;
459
+ tapeSpeed?: number | undefined;
460
+ filmArtifacts?: number | undefined;
461
+ halftone?: number | undefined;
462
+ halftoneSize?: number | undefined;
463
+ twoInkPrint?: number | undefined;
464
+ twoInkPrintSize?: number | undefined;
465
+ ascii?: number | undefined;
466
+ asciiSize?: number | undefined;
467
+ asciiInvert?: number | undefined;
468
+ asciiStyle?: number | undefined;
469
+ asciiColor?: number | undefined;
470
+ asciiRotation?: number | undefined;
471
+ dither?: number | undefined;
472
+ ditherSize?: number | undefined;
473
+ bloom?: number | undefined;
474
+ bloomRadius?: number | undefined;
475
+ monoScreen?: number | undefined;
476
+ monoScreenSize?: number | undefined;
477
+ monoScreenAngle?: number | undefined;
478
+ monoScreenSpread?: number | undefined;
479
+ monoScreenShape?: number | undefined;
480
+ monoScreenInvert?: number | undefined;
481
+ scanlines?: number | undefined;
482
+ scanlineCount?: number | undefined;
483
+ scanlineSoftness?: number | undefined;
484
+ chromaticAberration?: number | undefined;
485
+ chromaticAngle?: number | undefined;
486
+ crtCurvature?: number | undefined;
487
+ digitalGlitch?: number | undefined;
488
+ digitalGlitchColorSplit?: number | undefined;
489
+ digitalGlitchLineTear?: number | undefined;
490
+ digitalGlitchPixelate?: number | undefined;
491
+ digitalGlitchBlockAmount?: number | undefined;
492
+ digitalGlitchBlockDisplacement?: number | undefined;
493
+ digitalGlitchBlockOpacity?: number | undefined;
494
+ digitalGlitchSpeed?: number | undefined;
495
+ engraving?: number | undefined;
496
+ engravingSpacing?: number | undefined;
497
+ engravingMinThickness?: number | undefined;
498
+ engravingMaxThickness?: number | undefined;
499
+ engravingAngle?: number | undefined;
500
+ engravingContrast?: number | undefined;
501
+ engravingSharpness?: number | undefined;
502
+ engravingWave?: number | undefined;
503
+ engravingWaveFrequency?: number | undefined;
504
+ crosshatch?: number | undefined;
505
+ crosshatchSpacing?: number | undefined;
506
+ crosshatchThickness?: number | undefined;
507
+ crosshatchAngle?: number | undefined;
508
+ crosshatchContrast?: number | undefined;
509
+ crosshatchEdges?: number | undefined;
510
+ crosshatchLineWeight?: number | undefined;
511
+ crosshatchWave?: number | undefined;
512
+ crosshatchWaveFrequency?: number | undefined;
513
+ kuwahara?: number | undefined;
514
+ kuwaharaRadius?: number | undefined;
515
+ kuwaharaSharpness?: number | undefined;
516
+ kuwaharaSaturation?: number | undefined;
517
+ };
518
+ supportsPalette: boolean;
519
+ renderLane: string;
520
+ controls: {
521
+ min: number;
522
+ max: number;
523
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
524
+ identity: number;
525
+ recommended: number;
526
+ }[];
527
+ family: "essentials";
528
+ label: "Blur";
529
+ description: "Defocus or soften a full media layer.";
237
530
  key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
531
+ } | {
238
532
  apply: {
239
533
  blur?: number | undefined;
240
534
  pixelate?: number | undefined;
@@ -310,64 +604,1357 @@ export declare function getHfColorGradingCapabilities(): {
310
604
  identity: number;
311
605
  recommended: number;
312
606
  }[];
313
- }[];
314
- palettes: {
315
- id: "noir" | "ink-paper" | "terminal" | "amber-glow" | "handheld-green" | "golden-hour" | "deep-sea" | "arctic-night" | "synthwave" | "vaporwave" | "forest" | "sepia" | "blueprint" | "warm-print" | "electric-ink";
316
- label: "Noir" | "Ink & Paper" | "Terminal" | "Amber Glow" | "Handheld Green" | "Golden Hour" | "Deep Sea" | "Arctic Night" | "Synthwave" | "Vaporwave" | "Forest" | "Sepia" | "Blueprint" | "Warm Print" | "Electric Ink";
317
- group: "Classic" | "Mood" | "Mono" | "HyperFrames";
318
- colors: readonly ["#000000", "#ffffff"] | readonly ["#1a1a2e", "#f5f5dc"] | readonly ["#001100", "#00ff00"] | readonly ["#1a0f00", "#ffcc00"] | readonly ["#0f380f", "#306230", "#8bac0f", "#9bbc0f"] | readonly ["#1a1205", "#4a3510", "#8b6914", "#d4a017", "#fff8dc"] | readonly ["#0a1628", "#1a3a5c", "#2d6187", "#5ba4c9", "#a8dce8"] | readonly ["#0a0a14", "#1a2a4a", "#3a5a8a", "#6a9aca", "#cae8ff"] | readonly ["#120458", "#7b2cbf", "#e040fb", "#ff6ec7", "#fff59d"] | readonly ["#1a0a2e", "#3d1a5c", "#ff71ce", "#01cdfe", "#fffb96"] | readonly ["#1a2e1a", "#2d4a2d", "#4a7c4a", "#7ab37a", "#c8e6c8"] | readonly ["#1a1610", "#3d3020", "#6b5a40", "#a89070", "#e8dcc8"] | readonly ["#001830", "#003060", "#0050a0", "#0080e0", "#e0f0ff"] | readonly ["#17121a", "#824c50", "#e09873", "#f7ddb1"] | readonly ["#080717", "#3c185f", "#7e2278", "#d9339f", "#ff6b66", "#aafae0"];
319
- }[];
320
- animatable: readonly [{
321
- readonly path: "intensity";
322
- readonly name: "--hf-color-grading-intensity";
323
- readonly min: 0;
324
- readonly max: 1;
325
- }, {
326
- readonly path: "lut.intensity";
327
- readonly name: "--hf-color-grading-lut-intensity";
328
- readonly min: 0;
329
- readonly max: 1;
330
- }, {
331
- readonly path: "adjust.exposure";
332
- readonly name: "--hf-color-grading-exposure";
333
- readonly min: -2;
334
- readonly max: 2;
335
- }, {
336
- readonly path: "effects.blur";
337
- readonly name: "--hf-color-grading-blur";
338
- readonly min: 0;
339
- readonly max: 1;
340
- }, {
341
- readonly path: "effects.bloom";
342
- readonly name: "--hf-color-grading-bloom";
343
- readonly min: 0;
344
- readonly max: 3;
345
- }, {
346
- readonly path: "effects.kuwahara";
347
- readonly name: "--hf-color-grading-kuwahara";
348
- readonly min: 0;
349
- readonly max: 1;
350
- }, {
351
- readonly path: "effects.pixelate";
352
- readonly name: "--hf-color-grading-pixelate";
353
- readonly min: 0;
354
- readonly max: 1;
355
- }, {
356
- readonly path: "effects.ascii";
357
- readonly name: "--hf-color-grading-ascii";
358
- readonly min: 0;
359
- readonly max: 1;
360
- }, {
361
- readonly path: "effects.dither";
362
- readonly name: "--hf-color-grading-dither";
363
- readonly min: 0;
364
- readonly max: 1;
365
- }];
366
- };
367
- export type HfColorGradingCapabilities = ReturnType<typeof getHfColorGradingCapabilities>;
607
+ family: "essentials";
608
+ label: "Pixelate";
609
+ description: "Turn a media layer into a block mosaic.";
610
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
611
+ } | {
612
+ apply: {
613
+ blur?: number | undefined;
614
+ pixelate?: number | undefined;
615
+ chromaBleed?: number | undefined;
616
+ tapeDamage?: number | undefined;
617
+ tapeTracking?: number | undefined;
618
+ tapeNoise?: number | undefined;
619
+ tapeSpeed?: number | undefined;
620
+ filmArtifacts?: number | undefined;
621
+ halftone?: number | undefined;
622
+ halftoneSize?: number | undefined;
623
+ twoInkPrint?: number | undefined;
624
+ twoInkPrintSize?: number | undefined;
625
+ ascii?: number | undefined;
626
+ asciiSize?: number | undefined;
627
+ asciiInvert?: number | undefined;
628
+ asciiStyle?: number | undefined;
629
+ asciiColor?: number | undefined;
630
+ asciiRotation?: number | undefined;
631
+ dither?: number | undefined;
632
+ ditherSize?: number | undefined;
633
+ bloom?: number | undefined;
634
+ bloomRadius?: number | undefined;
635
+ monoScreen?: number | undefined;
636
+ monoScreenSize?: number | undefined;
637
+ monoScreenAngle?: number | undefined;
638
+ monoScreenSpread?: number | undefined;
639
+ monoScreenShape?: number | undefined;
640
+ monoScreenInvert?: number | undefined;
641
+ scanlines?: number | undefined;
642
+ scanlineCount?: number | undefined;
643
+ scanlineSoftness?: number | undefined;
644
+ chromaticAberration?: number | undefined;
645
+ chromaticAngle?: number | undefined;
646
+ crtCurvature?: number | undefined;
647
+ digitalGlitch?: number | undefined;
648
+ digitalGlitchColorSplit?: number | undefined;
649
+ digitalGlitchLineTear?: number | undefined;
650
+ digitalGlitchPixelate?: number | undefined;
651
+ digitalGlitchBlockAmount?: number | undefined;
652
+ digitalGlitchBlockDisplacement?: number | undefined;
653
+ digitalGlitchBlockOpacity?: number | undefined;
654
+ digitalGlitchSpeed?: number | undefined;
655
+ engraving?: number | undefined;
656
+ engravingSpacing?: number | undefined;
657
+ engravingMinThickness?: number | undefined;
658
+ engravingMaxThickness?: number | undefined;
659
+ engravingAngle?: number | undefined;
660
+ engravingContrast?: number | undefined;
661
+ engravingSharpness?: number | undefined;
662
+ engravingWave?: number | undefined;
663
+ engravingWaveFrequency?: number | undefined;
664
+ crosshatch?: number | undefined;
665
+ crosshatchSpacing?: number | undefined;
666
+ crosshatchThickness?: number | undefined;
667
+ crosshatchAngle?: number | undefined;
668
+ crosshatchContrast?: number | undefined;
669
+ crosshatchEdges?: number | undefined;
670
+ crosshatchLineWeight?: number | undefined;
671
+ crosshatchWave?: number | undefined;
672
+ crosshatchWaveFrequency?: number | undefined;
673
+ kuwahara?: number | undefined;
674
+ kuwaharaRadius?: number | undefined;
675
+ kuwaharaSharpness?: number | undefined;
676
+ kuwaharaSaturation?: number | undefined;
677
+ };
678
+ supportsPalette: boolean;
679
+ renderLane: string;
680
+ controls: {
681
+ min: number;
682
+ max: number;
683
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
684
+ identity: number;
685
+ recommended: number;
686
+ }[];
687
+ family: "essentials";
688
+ label: "Bloom";
689
+ description: "Add thresholded glow around bright image regions.";
690
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
691
+ } | {
692
+ apply: {
693
+ blur?: number | undefined;
694
+ pixelate?: number | undefined;
695
+ chromaBleed?: number | undefined;
696
+ tapeDamage?: number | undefined;
697
+ tapeTracking?: number | undefined;
698
+ tapeNoise?: number | undefined;
699
+ tapeSpeed?: number | undefined;
700
+ filmArtifacts?: number | undefined;
701
+ halftone?: number | undefined;
702
+ halftoneSize?: number | undefined;
703
+ twoInkPrint?: number | undefined;
704
+ twoInkPrintSize?: number | undefined;
705
+ ascii?: number | undefined;
706
+ asciiSize?: number | undefined;
707
+ asciiInvert?: number | undefined;
708
+ asciiStyle?: number | undefined;
709
+ asciiColor?: number | undefined;
710
+ asciiRotation?: number | undefined;
711
+ dither?: number | undefined;
712
+ ditherSize?: number | undefined;
713
+ bloom?: number | undefined;
714
+ bloomRadius?: number | undefined;
715
+ monoScreen?: number | undefined;
716
+ monoScreenSize?: number | undefined;
717
+ monoScreenAngle?: number | undefined;
718
+ monoScreenSpread?: number | undefined;
719
+ monoScreenShape?: number | undefined;
720
+ monoScreenInvert?: number | undefined;
721
+ scanlines?: number | undefined;
722
+ scanlineCount?: number | undefined;
723
+ scanlineSoftness?: number | undefined;
724
+ chromaticAberration?: number | undefined;
725
+ chromaticAngle?: number | undefined;
726
+ crtCurvature?: number | undefined;
727
+ digitalGlitch?: number | undefined;
728
+ digitalGlitchColorSplit?: number | undefined;
729
+ digitalGlitchLineTear?: number | undefined;
730
+ digitalGlitchPixelate?: number | undefined;
731
+ digitalGlitchBlockAmount?: number | undefined;
732
+ digitalGlitchBlockDisplacement?: number | undefined;
733
+ digitalGlitchBlockOpacity?: number | undefined;
734
+ digitalGlitchSpeed?: number | undefined;
735
+ engraving?: number | undefined;
736
+ engravingSpacing?: number | undefined;
737
+ engravingMinThickness?: number | undefined;
738
+ engravingMaxThickness?: number | undefined;
739
+ engravingAngle?: number | undefined;
740
+ engravingContrast?: number | undefined;
741
+ engravingSharpness?: number | undefined;
742
+ engravingWave?: number | undefined;
743
+ engravingWaveFrequency?: number | undefined;
744
+ crosshatch?: number | undefined;
745
+ crosshatchSpacing?: number | undefined;
746
+ crosshatchThickness?: number | undefined;
747
+ crosshatchAngle?: number | undefined;
748
+ crosshatchContrast?: number | undefined;
749
+ crosshatchEdges?: number | undefined;
750
+ crosshatchLineWeight?: number | undefined;
751
+ crosshatchWave?: number | undefined;
752
+ crosshatchWaveFrequency?: number | undefined;
753
+ kuwahara?: number | undefined;
754
+ kuwaharaRadius?: number | undefined;
755
+ kuwaharaSharpness?: number | undefined;
756
+ kuwaharaSaturation?: number | undefined;
757
+ };
758
+ supportsPalette: boolean;
759
+ renderLane: string;
760
+ controls: {
761
+ min: number;
762
+ max: number;
763
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
764
+ identity: number;
765
+ recommended: number;
766
+ }[];
767
+ family: "retro-glitch";
768
+ label: "Chroma Softening";
769
+ description: "Smear color like low-bandwidth video.";
770
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
771
+ } | {
772
+ apply: {
773
+ blur?: number | undefined;
774
+ pixelate?: number | undefined;
775
+ chromaBleed?: number | undefined;
776
+ tapeDamage?: number | undefined;
777
+ tapeTracking?: number | undefined;
778
+ tapeNoise?: number | undefined;
779
+ tapeSpeed?: number | undefined;
780
+ filmArtifacts?: number | undefined;
781
+ halftone?: number | undefined;
782
+ halftoneSize?: number | undefined;
783
+ twoInkPrint?: number | undefined;
784
+ twoInkPrintSize?: number | undefined;
785
+ ascii?: number | undefined;
786
+ asciiSize?: number | undefined;
787
+ asciiInvert?: number | undefined;
788
+ asciiStyle?: number | undefined;
789
+ asciiColor?: number | undefined;
790
+ asciiRotation?: number | undefined;
791
+ dither?: number | undefined;
792
+ ditherSize?: number | undefined;
793
+ bloom?: number | undefined;
794
+ bloomRadius?: number | undefined;
795
+ monoScreen?: number | undefined;
796
+ monoScreenSize?: number | undefined;
797
+ monoScreenAngle?: number | undefined;
798
+ monoScreenSpread?: number | undefined;
799
+ monoScreenShape?: number | undefined;
800
+ monoScreenInvert?: number | undefined;
801
+ scanlines?: number | undefined;
802
+ scanlineCount?: number | undefined;
803
+ scanlineSoftness?: number | undefined;
804
+ chromaticAberration?: number | undefined;
805
+ chromaticAngle?: number | undefined;
806
+ crtCurvature?: number | undefined;
807
+ digitalGlitch?: number | undefined;
808
+ digitalGlitchColorSplit?: number | undefined;
809
+ digitalGlitchLineTear?: number | undefined;
810
+ digitalGlitchPixelate?: number | undefined;
811
+ digitalGlitchBlockAmount?: number | undefined;
812
+ digitalGlitchBlockDisplacement?: number | undefined;
813
+ digitalGlitchBlockOpacity?: number | undefined;
814
+ digitalGlitchSpeed?: number | undefined;
815
+ engraving?: number | undefined;
816
+ engravingSpacing?: number | undefined;
817
+ engravingMinThickness?: number | undefined;
818
+ engravingMaxThickness?: number | undefined;
819
+ engravingAngle?: number | undefined;
820
+ engravingContrast?: number | undefined;
821
+ engravingSharpness?: number | undefined;
822
+ engravingWave?: number | undefined;
823
+ engravingWaveFrequency?: number | undefined;
824
+ crosshatch?: number | undefined;
825
+ crosshatchSpacing?: number | undefined;
826
+ crosshatchThickness?: number | undefined;
827
+ crosshatchAngle?: number | undefined;
828
+ crosshatchContrast?: number | undefined;
829
+ crosshatchEdges?: number | undefined;
830
+ crosshatchLineWeight?: number | undefined;
831
+ crosshatchWave?: number | undefined;
832
+ crosshatchWaveFrequency?: number | undefined;
833
+ kuwahara?: number | undefined;
834
+ kuwaharaRadius?: number | undefined;
835
+ kuwaharaSharpness?: number | undefined;
836
+ kuwaharaSaturation?: number | undefined;
837
+ };
838
+ supportsPalette: boolean;
839
+ renderLane: string;
840
+ controls: {
841
+ min: number;
842
+ max: number;
843
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
844
+ identity: number;
845
+ recommended: number;
846
+ }[];
847
+ family: "retro-glitch";
848
+ label: "Tape Damage";
849
+ description: "Add moving tracking errors and tape noise.";
850
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
851
+ } | {
852
+ apply: {
853
+ blur?: number | undefined;
854
+ pixelate?: number | undefined;
855
+ chromaBleed?: number | undefined;
856
+ tapeDamage?: number | undefined;
857
+ tapeTracking?: number | undefined;
858
+ tapeNoise?: number | undefined;
859
+ tapeSpeed?: number | undefined;
860
+ filmArtifacts?: number | undefined;
861
+ halftone?: number | undefined;
862
+ halftoneSize?: number | undefined;
863
+ twoInkPrint?: number | undefined;
864
+ twoInkPrintSize?: number | undefined;
865
+ ascii?: number | undefined;
866
+ asciiSize?: number | undefined;
867
+ asciiInvert?: number | undefined;
868
+ asciiStyle?: number | undefined;
869
+ asciiColor?: number | undefined;
870
+ asciiRotation?: number | undefined;
871
+ dither?: number | undefined;
872
+ ditherSize?: number | undefined;
873
+ bloom?: number | undefined;
874
+ bloomRadius?: number | undefined;
875
+ monoScreen?: number | undefined;
876
+ monoScreenSize?: number | undefined;
877
+ monoScreenAngle?: number | undefined;
878
+ monoScreenSpread?: number | undefined;
879
+ monoScreenShape?: number | undefined;
880
+ monoScreenInvert?: number | undefined;
881
+ scanlines?: number | undefined;
882
+ scanlineCount?: number | undefined;
883
+ scanlineSoftness?: number | undefined;
884
+ chromaticAberration?: number | undefined;
885
+ chromaticAngle?: number | undefined;
886
+ crtCurvature?: number | undefined;
887
+ digitalGlitch?: number | undefined;
888
+ digitalGlitchColorSplit?: number | undefined;
889
+ digitalGlitchLineTear?: number | undefined;
890
+ digitalGlitchPixelate?: number | undefined;
891
+ digitalGlitchBlockAmount?: number | undefined;
892
+ digitalGlitchBlockDisplacement?: number | undefined;
893
+ digitalGlitchBlockOpacity?: number | undefined;
894
+ digitalGlitchSpeed?: number | undefined;
895
+ engraving?: number | undefined;
896
+ engravingSpacing?: number | undefined;
897
+ engravingMinThickness?: number | undefined;
898
+ engravingMaxThickness?: number | undefined;
899
+ engravingAngle?: number | undefined;
900
+ engravingContrast?: number | undefined;
901
+ engravingSharpness?: number | undefined;
902
+ engravingWave?: number | undefined;
903
+ engravingWaveFrequency?: number | undefined;
904
+ crosshatch?: number | undefined;
905
+ crosshatchSpacing?: number | undefined;
906
+ crosshatchThickness?: number | undefined;
907
+ crosshatchAngle?: number | undefined;
908
+ crosshatchContrast?: number | undefined;
909
+ crosshatchEdges?: number | undefined;
910
+ crosshatchLineWeight?: number | undefined;
911
+ crosshatchWave?: number | undefined;
912
+ crosshatchWaveFrequency?: number | undefined;
913
+ kuwahara?: number | undefined;
914
+ kuwaharaRadius?: number | undefined;
915
+ kuwaharaSharpness?: number | undefined;
916
+ kuwaharaSaturation?: number | undefined;
917
+ };
918
+ supportsPalette: boolean;
919
+ renderLane: string;
920
+ controls: {
921
+ min: number;
922
+ max: number;
923
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
924
+ identity: number;
925
+ recommended: number;
926
+ }[];
927
+ family: "retro-glitch";
928
+ label: "Film Artifacts";
929
+ description: "Add deterministic dust and film wear.";
930
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
931
+ } | {
932
+ apply: {
933
+ blur?: number | undefined;
934
+ pixelate?: number | undefined;
935
+ chromaBleed?: number | undefined;
936
+ tapeDamage?: number | undefined;
937
+ tapeTracking?: number | undefined;
938
+ tapeNoise?: number | undefined;
939
+ tapeSpeed?: number | undefined;
940
+ filmArtifacts?: number | undefined;
941
+ halftone?: number | undefined;
942
+ halftoneSize?: number | undefined;
943
+ twoInkPrint?: number | undefined;
944
+ twoInkPrintSize?: number | undefined;
945
+ ascii?: number | undefined;
946
+ asciiSize?: number | undefined;
947
+ asciiInvert?: number | undefined;
948
+ asciiStyle?: number | undefined;
949
+ asciiColor?: number | undefined;
950
+ asciiRotation?: number | undefined;
951
+ dither?: number | undefined;
952
+ ditherSize?: number | undefined;
953
+ bloom?: number | undefined;
954
+ bloomRadius?: number | undefined;
955
+ monoScreen?: number | undefined;
956
+ monoScreenSize?: number | undefined;
957
+ monoScreenAngle?: number | undefined;
958
+ monoScreenSpread?: number | undefined;
959
+ monoScreenShape?: number | undefined;
960
+ monoScreenInvert?: number | undefined;
961
+ scanlines?: number | undefined;
962
+ scanlineCount?: number | undefined;
963
+ scanlineSoftness?: number | undefined;
964
+ chromaticAberration?: number | undefined;
965
+ chromaticAngle?: number | undefined;
966
+ crtCurvature?: number | undefined;
967
+ digitalGlitch?: number | undefined;
968
+ digitalGlitchColorSplit?: number | undefined;
969
+ digitalGlitchLineTear?: number | undefined;
970
+ digitalGlitchPixelate?: number | undefined;
971
+ digitalGlitchBlockAmount?: number | undefined;
972
+ digitalGlitchBlockDisplacement?: number | undefined;
973
+ digitalGlitchBlockOpacity?: number | undefined;
974
+ digitalGlitchSpeed?: number | undefined;
975
+ engraving?: number | undefined;
976
+ engravingSpacing?: number | undefined;
977
+ engravingMinThickness?: number | undefined;
978
+ engravingMaxThickness?: number | undefined;
979
+ engravingAngle?: number | undefined;
980
+ engravingContrast?: number | undefined;
981
+ engravingSharpness?: number | undefined;
982
+ engravingWave?: number | undefined;
983
+ engravingWaveFrequency?: number | undefined;
984
+ crosshatch?: number | undefined;
985
+ crosshatchSpacing?: number | undefined;
986
+ crosshatchThickness?: number | undefined;
987
+ crosshatchAngle?: number | undefined;
988
+ crosshatchContrast?: number | undefined;
989
+ crosshatchEdges?: number | undefined;
990
+ crosshatchLineWeight?: number | undefined;
991
+ crosshatchWave?: number | undefined;
992
+ crosshatchWaveFrequency?: number | undefined;
993
+ kuwahara?: number | undefined;
994
+ kuwaharaRadius?: number | undefined;
995
+ kuwaharaSharpness?: number | undefined;
996
+ kuwaharaSaturation?: number | undefined;
997
+ };
998
+ supportsPalette: boolean;
999
+ renderLane: string;
1000
+ controls: {
1001
+ min: number;
1002
+ max: number;
1003
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1004
+ identity: number;
1005
+ recommended: number;
1006
+ }[];
1007
+ family: "retro-glitch";
1008
+ label: "Scanlines";
1009
+ description: "Overlay configurable horizontal display lines.";
1010
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1011
+ } | {
1012
+ apply: {
1013
+ blur?: number | undefined;
1014
+ pixelate?: number | undefined;
1015
+ chromaBleed?: number | undefined;
1016
+ tapeDamage?: number | undefined;
1017
+ tapeTracking?: number | undefined;
1018
+ tapeNoise?: number | undefined;
1019
+ tapeSpeed?: number | undefined;
1020
+ filmArtifacts?: number | undefined;
1021
+ halftone?: number | undefined;
1022
+ halftoneSize?: number | undefined;
1023
+ twoInkPrint?: number | undefined;
1024
+ twoInkPrintSize?: number | undefined;
1025
+ ascii?: number | undefined;
1026
+ asciiSize?: number | undefined;
1027
+ asciiInvert?: number | undefined;
1028
+ asciiStyle?: number | undefined;
1029
+ asciiColor?: number | undefined;
1030
+ asciiRotation?: number | undefined;
1031
+ dither?: number | undefined;
1032
+ ditherSize?: number | undefined;
1033
+ bloom?: number | undefined;
1034
+ bloomRadius?: number | undefined;
1035
+ monoScreen?: number | undefined;
1036
+ monoScreenSize?: number | undefined;
1037
+ monoScreenAngle?: number | undefined;
1038
+ monoScreenSpread?: number | undefined;
1039
+ monoScreenShape?: number | undefined;
1040
+ monoScreenInvert?: number | undefined;
1041
+ scanlines?: number | undefined;
1042
+ scanlineCount?: number | undefined;
1043
+ scanlineSoftness?: number | undefined;
1044
+ chromaticAberration?: number | undefined;
1045
+ chromaticAngle?: number | undefined;
1046
+ crtCurvature?: number | undefined;
1047
+ digitalGlitch?: number | undefined;
1048
+ digitalGlitchColorSplit?: number | undefined;
1049
+ digitalGlitchLineTear?: number | undefined;
1050
+ digitalGlitchPixelate?: number | undefined;
1051
+ digitalGlitchBlockAmount?: number | undefined;
1052
+ digitalGlitchBlockDisplacement?: number | undefined;
1053
+ digitalGlitchBlockOpacity?: number | undefined;
1054
+ digitalGlitchSpeed?: number | undefined;
1055
+ engraving?: number | undefined;
1056
+ engravingSpacing?: number | undefined;
1057
+ engravingMinThickness?: number | undefined;
1058
+ engravingMaxThickness?: number | undefined;
1059
+ engravingAngle?: number | undefined;
1060
+ engravingContrast?: number | undefined;
1061
+ engravingSharpness?: number | undefined;
1062
+ engravingWave?: number | undefined;
1063
+ engravingWaveFrequency?: number | undefined;
1064
+ crosshatch?: number | undefined;
1065
+ crosshatchSpacing?: number | undefined;
1066
+ crosshatchThickness?: number | undefined;
1067
+ crosshatchAngle?: number | undefined;
1068
+ crosshatchContrast?: number | undefined;
1069
+ crosshatchEdges?: number | undefined;
1070
+ crosshatchLineWeight?: number | undefined;
1071
+ crosshatchWave?: number | undefined;
1072
+ crosshatchWaveFrequency?: number | undefined;
1073
+ kuwahara?: number | undefined;
1074
+ kuwaharaRadius?: number | undefined;
1075
+ kuwaharaSharpness?: number | undefined;
1076
+ kuwaharaSaturation?: number | undefined;
1077
+ };
1078
+ supportsPalette: boolean;
1079
+ renderLane: string;
1080
+ controls: {
1081
+ min: number;
1082
+ max: number;
1083
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1084
+ identity: number;
1085
+ recommended: number;
1086
+ }[];
1087
+ family: "retro-glitch";
1088
+ label: "CRT Curvature";
1089
+ description: "Warp media toward curved CRT geometry.";
1090
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1091
+ } | {
1092
+ apply: {
1093
+ blur?: number | undefined;
1094
+ pixelate?: number | undefined;
1095
+ chromaBleed?: number | undefined;
1096
+ tapeDamage?: number | undefined;
1097
+ tapeTracking?: number | undefined;
1098
+ tapeNoise?: number | undefined;
1099
+ tapeSpeed?: number | undefined;
1100
+ filmArtifacts?: number | undefined;
1101
+ halftone?: number | undefined;
1102
+ halftoneSize?: number | undefined;
1103
+ twoInkPrint?: number | undefined;
1104
+ twoInkPrintSize?: number | undefined;
1105
+ ascii?: number | undefined;
1106
+ asciiSize?: number | undefined;
1107
+ asciiInvert?: number | undefined;
1108
+ asciiStyle?: number | undefined;
1109
+ asciiColor?: number | undefined;
1110
+ asciiRotation?: number | undefined;
1111
+ dither?: number | undefined;
1112
+ ditherSize?: number | undefined;
1113
+ bloom?: number | undefined;
1114
+ bloomRadius?: number | undefined;
1115
+ monoScreen?: number | undefined;
1116
+ monoScreenSize?: number | undefined;
1117
+ monoScreenAngle?: number | undefined;
1118
+ monoScreenSpread?: number | undefined;
1119
+ monoScreenShape?: number | undefined;
1120
+ monoScreenInvert?: number | undefined;
1121
+ scanlines?: number | undefined;
1122
+ scanlineCount?: number | undefined;
1123
+ scanlineSoftness?: number | undefined;
1124
+ chromaticAberration?: number | undefined;
1125
+ chromaticAngle?: number | undefined;
1126
+ crtCurvature?: number | undefined;
1127
+ digitalGlitch?: number | undefined;
1128
+ digitalGlitchColorSplit?: number | undefined;
1129
+ digitalGlitchLineTear?: number | undefined;
1130
+ digitalGlitchPixelate?: number | undefined;
1131
+ digitalGlitchBlockAmount?: number | undefined;
1132
+ digitalGlitchBlockDisplacement?: number | undefined;
1133
+ digitalGlitchBlockOpacity?: number | undefined;
1134
+ digitalGlitchSpeed?: number | undefined;
1135
+ engraving?: number | undefined;
1136
+ engravingSpacing?: number | undefined;
1137
+ engravingMinThickness?: number | undefined;
1138
+ engravingMaxThickness?: number | undefined;
1139
+ engravingAngle?: number | undefined;
1140
+ engravingContrast?: number | undefined;
1141
+ engravingSharpness?: number | undefined;
1142
+ engravingWave?: number | undefined;
1143
+ engravingWaveFrequency?: number | undefined;
1144
+ crosshatch?: number | undefined;
1145
+ crosshatchSpacing?: number | undefined;
1146
+ crosshatchThickness?: number | undefined;
1147
+ crosshatchAngle?: number | undefined;
1148
+ crosshatchContrast?: number | undefined;
1149
+ crosshatchEdges?: number | undefined;
1150
+ crosshatchLineWeight?: number | undefined;
1151
+ crosshatchWave?: number | undefined;
1152
+ crosshatchWaveFrequency?: number | undefined;
1153
+ kuwahara?: number | undefined;
1154
+ kuwaharaRadius?: number | undefined;
1155
+ kuwaharaSharpness?: number | undefined;
1156
+ kuwaharaSaturation?: number | undefined;
1157
+ };
1158
+ supportsPalette: boolean;
1159
+ renderLane: string;
1160
+ controls: {
1161
+ min: number;
1162
+ max: number;
1163
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1164
+ identity: number;
1165
+ recommended: number;
1166
+ }[];
1167
+ family: "retro-glitch";
1168
+ label: "Channel Separation";
1169
+ description: "Offset color channels by angle.";
1170
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1171
+ } | {
1172
+ apply: {
1173
+ blur?: number | undefined;
1174
+ pixelate?: number | undefined;
1175
+ chromaBleed?: number | undefined;
1176
+ tapeDamage?: number | undefined;
1177
+ tapeTracking?: number | undefined;
1178
+ tapeNoise?: number | undefined;
1179
+ tapeSpeed?: number | undefined;
1180
+ filmArtifacts?: number | undefined;
1181
+ halftone?: number | undefined;
1182
+ halftoneSize?: number | undefined;
1183
+ twoInkPrint?: number | undefined;
1184
+ twoInkPrintSize?: number | undefined;
1185
+ ascii?: number | undefined;
1186
+ asciiSize?: number | undefined;
1187
+ asciiInvert?: number | undefined;
1188
+ asciiStyle?: number | undefined;
1189
+ asciiColor?: number | undefined;
1190
+ asciiRotation?: number | undefined;
1191
+ dither?: number | undefined;
1192
+ ditherSize?: number | undefined;
1193
+ bloom?: number | undefined;
1194
+ bloomRadius?: number | undefined;
1195
+ monoScreen?: number | undefined;
1196
+ monoScreenSize?: number | undefined;
1197
+ monoScreenAngle?: number | undefined;
1198
+ monoScreenSpread?: number | undefined;
1199
+ monoScreenShape?: number | undefined;
1200
+ monoScreenInvert?: number | undefined;
1201
+ scanlines?: number | undefined;
1202
+ scanlineCount?: number | undefined;
1203
+ scanlineSoftness?: number | undefined;
1204
+ chromaticAberration?: number | undefined;
1205
+ chromaticAngle?: number | undefined;
1206
+ crtCurvature?: number | undefined;
1207
+ digitalGlitch?: number | undefined;
1208
+ digitalGlitchColorSplit?: number | undefined;
1209
+ digitalGlitchLineTear?: number | undefined;
1210
+ digitalGlitchPixelate?: number | undefined;
1211
+ digitalGlitchBlockAmount?: number | undefined;
1212
+ digitalGlitchBlockDisplacement?: number | undefined;
1213
+ digitalGlitchBlockOpacity?: number | undefined;
1214
+ digitalGlitchSpeed?: number | undefined;
1215
+ engraving?: number | undefined;
1216
+ engravingSpacing?: number | undefined;
1217
+ engravingMinThickness?: number | undefined;
1218
+ engravingMaxThickness?: number | undefined;
1219
+ engravingAngle?: number | undefined;
1220
+ engravingContrast?: number | undefined;
1221
+ engravingSharpness?: number | undefined;
1222
+ engravingWave?: number | undefined;
1223
+ engravingWaveFrequency?: number | undefined;
1224
+ crosshatch?: number | undefined;
1225
+ crosshatchSpacing?: number | undefined;
1226
+ crosshatchThickness?: number | undefined;
1227
+ crosshatchAngle?: number | undefined;
1228
+ crosshatchContrast?: number | undefined;
1229
+ crosshatchEdges?: number | undefined;
1230
+ crosshatchLineWeight?: number | undefined;
1231
+ crosshatchWave?: number | undefined;
1232
+ crosshatchWaveFrequency?: number | undefined;
1233
+ kuwahara?: number | undefined;
1234
+ kuwaharaRadius?: number | undefined;
1235
+ kuwaharaSharpness?: number | undefined;
1236
+ kuwaharaSaturation?: number | undefined;
1237
+ };
1238
+ supportsPalette: boolean;
1239
+ renderLane: string;
1240
+ controls: {
1241
+ min: number;
1242
+ max: number;
1243
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1244
+ identity: number;
1245
+ recommended: number;
1246
+ }[];
1247
+ family: "retro-glitch";
1248
+ label: "Digital Glitch";
1249
+ description: "Compose tears, blocks, and color splits.";
1250
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1251
+ } | {
1252
+ apply: {
1253
+ blur?: number | undefined;
1254
+ pixelate?: number | undefined;
1255
+ chromaBleed?: number | undefined;
1256
+ tapeDamage?: number | undefined;
1257
+ tapeTracking?: number | undefined;
1258
+ tapeNoise?: number | undefined;
1259
+ tapeSpeed?: number | undefined;
1260
+ filmArtifacts?: number | undefined;
1261
+ halftone?: number | undefined;
1262
+ halftoneSize?: number | undefined;
1263
+ twoInkPrint?: number | undefined;
1264
+ twoInkPrintSize?: number | undefined;
1265
+ ascii?: number | undefined;
1266
+ asciiSize?: number | undefined;
1267
+ asciiInvert?: number | undefined;
1268
+ asciiStyle?: number | undefined;
1269
+ asciiColor?: number | undefined;
1270
+ asciiRotation?: number | undefined;
1271
+ dither?: number | undefined;
1272
+ ditherSize?: number | undefined;
1273
+ bloom?: number | undefined;
1274
+ bloomRadius?: number | undefined;
1275
+ monoScreen?: number | undefined;
1276
+ monoScreenSize?: number | undefined;
1277
+ monoScreenAngle?: number | undefined;
1278
+ monoScreenSpread?: number | undefined;
1279
+ monoScreenShape?: number | undefined;
1280
+ monoScreenInvert?: number | undefined;
1281
+ scanlines?: number | undefined;
1282
+ scanlineCount?: number | undefined;
1283
+ scanlineSoftness?: number | undefined;
1284
+ chromaticAberration?: number | undefined;
1285
+ chromaticAngle?: number | undefined;
1286
+ crtCurvature?: number | undefined;
1287
+ digitalGlitch?: number | undefined;
1288
+ digitalGlitchColorSplit?: number | undefined;
1289
+ digitalGlitchLineTear?: number | undefined;
1290
+ digitalGlitchPixelate?: number | undefined;
1291
+ digitalGlitchBlockAmount?: number | undefined;
1292
+ digitalGlitchBlockDisplacement?: number | undefined;
1293
+ digitalGlitchBlockOpacity?: number | undefined;
1294
+ digitalGlitchSpeed?: number | undefined;
1295
+ engraving?: number | undefined;
1296
+ engravingSpacing?: number | undefined;
1297
+ engravingMinThickness?: number | undefined;
1298
+ engravingMaxThickness?: number | undefined;
1299
+ engravingAngle?: number | undefined;
1300
+ engravingContrast?: number | undefined;
1301
+ engravingSharpness?: number | undefined;
1302
+ engravingWave?: number | undefined;
1303
+ engravingWaveFrequency?: number | undefined;
1304
+ crosshatch?: number | undefined;
1305
+ crosshatchSpacing?: number | undefined;
1306
+ crosshatchThickness?: number | undefined;
1307
+ crosshatchAngle?: number | undefined;
1308
+ crosshatchContrast?: number | undefined;
1309
+ crosshatchEdges?: number | undefined;
1310
+ crosshatchLineWeight?: number | undefined;
1311
+ crosshatchWave?: number | undefined;
1312
+ crosshatchWaveFrequency?: number | undefined;
1313
+ kuwahara?: number | undefined;
1314
+ kuwaharaRadius?: number | undefined;
1315
+ kuwaharaSharpness?: number | undefined;
1316
+ kuwaharaSaturation?: number | undefined;
1317
+ };
1318
+ supportsPalette: boolean;
1319
+ renderLane: string;
1320
+ controls: {
1321
+ min: number;
1322
+ max: number;
1323
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1324
+ identity: number;
1325
+ recommended: number;
1326
+ }[];
1327
+ family: "print";
1328
+ label: "Halftone";
1329
+ description: "Render source color through a print-dot raster.";
1330
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1331
+ } | {
1332
+ apply: {
1333
+ blur?: number | undefined;
1334
+ pixelate?: number | undefined;
1335
+ chromaBleed?: number | undefined;
1336
+ tapeDamage?: number | undefined;
1337
+ tapeTracking?: number | undefined;
1338
+ tapeNoise?: number | undefined;
1339
+ tapeSpeed?: number | undefined;
1340
+ filmArtifacts?: number | undefined;
1341
+ halftone?: number | undefined;
1342
+ halftoneSize?: number | undefined;
1343
+ twoInkPrint?: number | undefined;
1344
+ twoInkPrintSize?: number | undefined;
1345
+ ascii?: number | undefined;
1346
+ asciiSize?: number | undefined;
1347
+ asciiInvert?: number | undefined;
1348
+ asciiStyle?: number | undefined;
1349
+ asciiColor?: number | undefined;
1350
+ asciiRotation?: number | undefined;
1351
+ dither?: number | undefined;
1352
+ ditherSize?: number | undefined;
1353
+ bloom?: number | undefined;
1354
+ bloomRadius?: number | undefined;
1355
+ monoScreen?: number | undefined;
1356
+ monoScreenSize?: number | undefined;
1357
+ monoScreenAngle?: number | undefined;
1358
+ monoScreenSpread?: number | undefined;
1359
+ monoScreenShape?: number | undefined;
1360
+ monoScreenInvert?: number | undefined;
1361
+ scanlines?: number | undefined;
1362
+ scanlineCount?: number | undefined;
1363
+ scanlineSoftness?: number | undefined;
1364
+ chromaticAberration?: number | undefined;
1365
+ chromaticAngle?: number | undefined;
1366
+ crtCurvature?: number | undefined;
1367
+ digitalGlitch?: number | undefined;
1368
+ digitalGlitchColorSplit?: number | undefined;
1369
+ digitalGlitchLineTear?: number | undefined;
1370
+ digitalGlitchPixelate?: number | undefined;
1371
+ digitalGlitchBlockAmount?: number | undefined;
1372
+ digitalGlitchBlockDisplacement?: number | undefined;
1373
+ digitalGlitchBlockOpacity?: number | undefined;
1374
+ digitalGlitchSpeed?: number | undefined;
1375
+ engraving?: number | undefined;
1376
+ engravingSpacing?: number | undefined;
1377
+ engravingMinThickness?: number | undefined;
1378
+ engravingMaxThickness?: number | undefined;
1379
+ engravingAngle?: number | undefined;
1380
+ engravingContrast?: number | undefined;
1381
+ engravingSharpness?: number | undefined;
1382
+ engravingWave?: number | undefined;
1383
+ engravingWaveFrequency?: number | undefined;
1384
+ crosshatch?: number | undefined;
1385
+ crosshatchSpacing?: number | undefined;
1386
+ crosshatchThickness?: number | undefined;
1387
+ crosshatchAngle?: number | undefined;
1388
+ crosshatchContrast?: number | undefined;
1389
+ crosshatchEdges?: number | undefined;
1390
+ crosshatchLineWeight?: number | undefined;
1391
+ crosshatchWave?: number | undefined;
1392
+ crosshatchWaveFrequency?: number | undefined;
1393
+ kuwahara?: number | undefined;
1394
+ kuwaharaRadius?: number | undefined;
1395
+ kuwaharaSharpness?: number | undefined;
1396
+ kuwaharaSaturation?: number | undefined;
1397
+ };
1398
+ supportsPalette: boolean;
1399
+ renderLane: string;
1400
+ controls: {
1401
+ min: number;
1402
+ max: number;
1403
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1404
+ identity: number;
1405
+ recommended: number;
1406
+ }[];
1407
+ family: "print";
1408
+ label: "Two-Ink Print";
1409
+ description: "Reduce media to a two-ink print treatment.";
1410
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1411
+ } | {
1412
+ apply: {
1413
+ blur?: number | undefined;
1414
+ pixelate?: number | undefined;
1415
+ chromaBleed?: number | undefined;
1416
+ tapeDamage?: number | undefined;
1417
+ tapeTracking?: number | undefined;
1418
+ tapeNoise?: number | undefined;
1419
+ tapeSpeed?: number | undefined;
1420
+ filmArtifacts?: number | undefined;
1421
+ halftone?: number | undefined;
1422
+ halftoneSize?: number | undefined;
1423
+ twoInkPrint?: number | undefined;
1424
+ twoInkPrintSize?: number | undefined;
1425
+ ascii?: number | undefined;
1426
+ asciiSize?: number | undefined;
1427
+ asciiInvert?: number | undefined;
1428
+ asciiStyle?: number | undefined;
1429
+ asciiColor?: number | undefined;
1430
+ asciiRotation?: number | undefined;
1431
+ dither?: number | undefined;
1432
+ ditherSize?: number | undefined;
1433
+ bloom?: number | undefined;
1434
+ bloomRadius?: number | undefined;
1435
+ monoScreen?: number | undefined;
1436
+ monoScreenSize?: number | undefined;
1437
+ monoScreenAngle?: number | undefined;
1438
+ monoScreenSpread?: number | undefined;
1439
+ monoScreenShape?: number | undefined;
1440
+ monoScreenInvert?: number | undefined;
1441
+ scanlines?: number | undefined;
1442
+ scanlineCount?: number | undefined;
1443
+ scanlineSoftness?: number | undefined;
1444
+ chromaticAberration?: number | undefined;
1445
+ chromaticAngle?: number | undefined;
1446
+ crtCurvature?: number | undefined;
1447
+ digitalGlitch?: number | undefined;
1448
+ digitalGlitchColorSplit?: number | undefined;
1449
+ digitalGlitchLineTear?: number | undefined;
1450
+ digitalGlitchPixelate?: number | undefined;
1451
+ digitalGlitchBlockAmount?: number | undefined;
1452
+ digitalGlitchBlockDisplacement?: number | undefined;
1453
+ digitalGlitchBlockOpacity?: number | undefined;
1454
+ digitalGlitchSpeed?: number | undefined;
1455
+ engraving?: number | undefined;
1456
+ engravingSpacing?: number | undefined;
1457
+ engravingMinThickness?: number | undefined;
1458
+ engravingMaxThickness?: number | undefined;
1459
+ engravingAngle?: number | undefined;
1460
+ engravingContrast?: number | undefined;
1461
+ engravingSharpness?: number | undefined;
1462
+ engravingWave?: number | undefined;
1463
+ engravingWaveFrequency?: number | undefined;
1464
+ crosshatch?: number | undefined;
1465
+ crosshatchSpacing?: number | undefined;
1466
+ crosshatchThickness?: number | undefined;
1467
+ crosshatchAngle?: number | undefined;
1468
+ crosshatchContrast?: number | undefined;
1469
+ crosshatchEdges?: number | undefined;
1470
+ crosshatchLineWeight?: number | undefined;
1471
+ crosshatchWave?: number | undefined;
1472
+ crosshatchWaveFrequency?: number | undefined;
1473
+ kuwahara?: number | undefined;
1474
+ kuwaharaRadius?: number | undefined;
1475
+ kuwaharaSharpness?: number | undefined;
1476
+ kuwaharaSaturation?: number | undefined;
1477
+ };
1478
+ supportsPalette: boolean;
1479
+ renderLane: string;
1480
+ controls: {
1481
+ min: number;
1482
+ max: number;
1483
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1484
+ identity: number;
1485
+ recommended: number;
1486
+ }[];
1487
+ family: "print";
1488
+ label: "Ordered Dither";
1489
+ description: "Quantize media into an ordered limited palette.";
1490
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1491
+ } | {
1492
+ apply: {
1493
+ blur?: number | undefined;
1494
+ pixelate?: number | undefined;
1495
+ chromaBleed?: number | undefined;
1496
+ tapeDamage?: number | undefined;
1497
+ tapeTracking?: number | undefined;
1498
+ tapeNoise?: number | undefined;
1499
+ tapeSpeed?: number | undefined;
1500
+ filmArtifacts?: number | undefined;
1501
+ halftone?: number | undefined;
1502
+ halftoneSize?: number | undefined;
1503
+ twoInkPrint?: number | undefined;
1504
+ twoInkPrintSize?: number | undefined;
1505
+ ascii?: number | undefined;
1506
+ asciiSize?: number | undefined;
1507
+ asciiInvert?: number | undefined;
1508
+ asciiStyle?: number | undefined;
1509
+ asciiColor?: number | undefined;
1510
+ asciiRotation?: number | undefined;
1511
+ dither?: number | undefined;
1512
+ ditherSize?: number | undefined;
1513
+ bloom?: number | undefined;
1514
+ bloomRadius?: number | undefined;
1515
+ monoScreen?: number | undefined;
1516
+ monoScreenSize?: number | undefined;
1517
+ monoScreenAngle?: number | undefined;
1518
+ monoScreenSpread?: number | undefined;
1519
+ monoScreenShape?: number | undefined;
1520
+ monoScreenInvert?: number | undefined;
1521
+ scanlines?: number | undefined;
1522
+ scanlineCount?: number | undefined;
1523
+ scanlineSoftness?: number | undefined;
1524
+ chromaticAberration?: number | undefined;
1525
+ chromaticAngle?: number | undefined;
1526
+ crtCurvature?: number | undefined;
1527
+ digitalGlitch?: number | undefined;
1528
+ digitalGlitchColorSplit?: number | undefined;
1529
+ digitalGlitchLineTear?: number | undefined;
1530
+ digitalGlitchPixelate?: number | undefined;
1531
+ digitalGlitchBlockAmount?: number | undefined;
1532
+ digitalGlitchBlockDisplacement?: number | undefined;
1533
+ digitalGlitchBlockOpacity?: number | undefined;
1534
+ digitalGlitchSpeed?: number | undefined;
1535
+ engraving?: number | undefined;
1536
+ engravingSpacing?: number | undefined;
1537
+ engravingMinThickness?: number | undefined;
1538
+ engravingMaxThickness?: number | undefined;
1539
+ engravingAngle?: number | undefined;
1540
+ engravingContrast?: number | undefined;
1541
+ engravingSharpness?: number | undefined;
1542
+ engravingWave?: number | undefined;
1543
+ engravingWaveFrequency?: number | undefined;
1544
+ crosshatch?: number | undefined;
1545
+ crosshatchSpacing?: number | undefined;
1546
+ crosshatchThickness?: number | undefined;
1547
+ crosshatchAngle?: number | undefined;
1548
+ crosshatchContrast?: number | undefined;
1549
+ crosshatchEdges?: number | undefined;
1550
+ crosshatchLineWeight?: number | undefined;
1551
+ crosshatchWave?: number | undefined;
1552
+ crosshatchWaveFrequency?: number | undefined;
1553
+ kuwahara?: number | undefined;
1554
+ kuwaharaRadius?: number | undefined;
1555
+ kuwaharaSharpness?: number | undefined;
1556
+ kuwaharaSaturation?: number | undefined;
1557
+ };
1558
+ supportsPalette: boolean;
1559
+ renderLane: string;
1560
+ controls: {
1561
+ min: number;
1562
+ max: number;
1563
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1564
+ identity: number;
1565
+ recommended: number;
1566
+ }[];
1567
+ family: "print";
1568
+ label: "Mono Screen";
1569
+ description: "Build monochrome dot, shape, or line artwork.";
1570
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1571
+ } | {
1572
+ apply: {
1573
+ blur?: number | undefined;
1574
+ pixelate?: number | undefined;
1575
+ chromaBleed?: number | undefined;
1576
+ tapeDamage?: number | undefined;
1577
+ tapeTracking?: number | undefined;
1578
+ tapeNoise?: number | undefined;
1579
+ tapeSpeed?: number | undefined;
1580
+ filmArtifacts?: number | undefined;
1581
+ halftone?: number | undefined;
1582
+ halftoneSize?: number | undefined;
1583
+ twoInkPrint?: number | undefined;
1584
+ twoInkPrintSize?: number | undefined;
1585
+ ascii?: number | undefined;
1586
+ asciiSize?: number | undefined;
1587
+ asciiInvert?: number | undefined;
1588
+ asciiStyle?: number | undefined;
1589
+ asciiColor?: number | undefined;
1590
+ asciiRotation?: number | undefined;
1591
+ dither?: number | undefined;
1592
+ ditherSize?: number | undefined;
1593
+ bloom?: number | undefined;
1594
+ bloomRadius?: number | undefined;
1595
+ monoScreen?: number | undefined;
1596
+ monoScreenSize?: number | undefined;
1597
+ monoScreenAngle?: number | undefined;
1598
+ monoScreenSpread?: number | undefined;
1599
+ monoScreenShape?: number | undefined;
1600
+ monoScreenInvert?: number | undefined;
1601
+ scanlines?: number | undefined;
1602
+ scanlineCount?: number | undefined;
1603
+ scanlineSoftness?: number | undefined;
1604
+ chromaticAberration?: number | undefined;
1605
+ chromaticAngle?: number | undefined;
1606
+ crtCurvature?: number | undefined;
1607
+ digitalGlitch?: number | undefined;
1608
+ digitalGlitchColorSplit?: number | undefined;
1609
+ digitalGlitchLineTear?: number | undefined;
1610
+ digitalGlitchPixelate?: number | undefined;
1611
+ digitalGlitchBlockAmount?: number | undefined;
1612
+ digitalGlitchBlockDisplacement?: number | undefined;
1613
+ digitalGlitchBlockOpacity?: number | undefined;
1614
+ digitalGlitchSpeed?: number | undefined;
1615
+ engraving?: number | undefined;
1616
+ engravingSpacing?: number | undefined;
1617
+ engravingMinThickness?: number | undefined;
1618
+ engravingMaxThickness?: number | undefined;
1619
+ engravingAngle?: number | undefined;
1620
+ engravingContrast?: number | undefined;
1621
+ engravingSharpness?: number | undefined;
1622
+ engravingWave?: number | undefined;
1623
+ engravingWaveFrequency?: number | undefined;
1624
+ crosshatch?: number | undefined;
1625
+ crosshatchSpacing?: number | undefined;
1626
+ crosshatchThickness?: number | undefined;
1627
+ crosshatchAngle?: number | undefined;
1628
+ crosshatchContrast?: number | undefined;
1629
+ crosshatchEdges?: number | undefined;
1630
+ crosshatchLineWeight?: number | undefined;
1631
+ crosshatchWave?: number | undefined;
1632
+ crosshatchWaveFrequency?: number | undefined;
1633
+ kuwahara?: number | undefined;
1634
+ kuwaharaRadius?: number | undefined;
1635
+ kuwaharaSharpness?: number | undefined;
1636
+ kuwaharaSaturation?: number | undefined;
1637
+ };
1638
+ supportsPalette: boolean;
1639
+ renderLane: string;
1640
+ controls: {
1641
+ min: number;
1642
+ max: number;
1643
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1644
+ identity: number;
1645
+ recommended: number;
1646
+ }[];
1647
+ family: "art";
1648
+ label: "ASCII";
1649
+ description: "Render media as configurable procedural glyph cells.";
1650
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1651
+ } | {
1652
+ apply: {
1653
+ blur?: number | undefined;
1654
+ pixelate?: number | undefined;
1655
+ chromaBleed?: number | undefined;
1656
+ tapeDamage?: number | undefined;
1657
+ tapeTracking?: number | undefined;
1658
+ tapeNoise?: number | undefined;
1659
+ tapeSpeed?: number | undefined;
1660
+ filmArtifacts?: number | undefined;
1661
+ halftone?: number | undefined;
1662
+ halftoneSize?: number | undefined;
1663
+ twoInkPrint?: number | undefined;
1664
+ twoInkPrintSize?: number | undefined;
1665
+ ascii?: number | undefined;
1666
+ asciiSize?: number | undefined;
1667
+ asciiInvert?: number | undefined;
1668
+ asciiStyle?: number | undefined;
1669
+ asciiColor?: number | undefined;
1670
+ asciiRotation?: number | undefined;
1671
+ dither?: number | undefined;
1672
+ ditherSize?: number | undefined;
1673
+ bloom?: number | undefined;
1674
+ bloomRadius?: number | undefined;
1675
+ monoScreen?: number | undefined;
1676
+ monoScreenSize?: number | undefined;
1677
+ monoScreenAngle?: number | undefined;
1678
+ monoScreenSpread?: number | undefined;
1679
+ monoScreenShape?: number | undefined;
1680
+ monoScreenInvert?: number | undefined;
1681
+ scanlines?: number | undefined;
1682
+ scanlineCount?: number | undefined;
1683
+ scanlineSoftness?: number | undefined;
1684
+ chromaticAberration?: number | undefined;
1685
+ chromaticAngle?: number | undefined;
1686
+ crtCurvature?: number | undefined;
1687
+ digitalGlitch?: number | undefined;
1688
+ digitalGlitchColorSplit?: number | undefined;
1689
+ digitalGlitchLineTear?: number | undefined;
1690
+ digitalGlitchPixelate?: number | undefined;
1691
+ digitalGlitchBlockAmount?: number | undefined;
1692
+ digitalGlitchBlockDisplacement?: number | undefined;
1693
+ digitalGlitchBlockOpacity?: number | undefined;
1694
+ digitalGlitchSpeed?: number | undefined;
1695
+ engraving?: number | undefined;
1696
+ engravingSpacing?: number | undefined;
1697
+ engravingMinThickness?: number | undefined;
1698
+ engravingMaxThickness?: number | undefined;
1699
+ engravingAngle?: number | undefined;
1700
+ engravingContrast?: number | undefined;
1701
+ engravingSharpness?: number | undefined;
1702
+ engravingWave?: number | undefined;
1703
+ engravingWaveFrequency?: number | undefined;
1704
+ crosshatch?: number | undefined;
1705
+ crosshatchSpacing?: number | undefined;
1706
+ crosshatchThickness?: number | undefined;
1707
+ crosshatchAngle?: number | undefined;
1708
+ crosshatchContrast?: number | undefined;
1709
+ crosshatchEdges?: number | undefined;
1710
+ crosshatchLineWeight?: number | undefined;
1711
+ crosshatchWave?: number | undefined;
1712
+ crosshatchWaveFrequency?: number | undefined;
1713
+ kuwahara?: number | undefined;
1714
+ kuwaharaRadius?: number | undefined;
1715
+ kuwaharaSharpness?: number | undefined;
1716
+ kuwaharaSaturation?: number | undefined;
1717
+ };
1718
+ supportsPalette: boolean;
1719
+ renderLane: string;
1720
+ controls: {
1721
+ min: number;
1722
+ max: number;
1723
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1724
+ identity: number;
1725
+ recommended: number;
1726
+ }[];
1727
+ family: "art";
1728
+ label: "Engraving";
1729
+ description: "Translate luminance into directional engraved lines.";
1730
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1731
+ } | {
1732
+ apply: {
1733
+ blur?: number | undefined;
1734
+ pixelate?: number | undefined;
1735
+ chromaBleed?: number | undefined;
1736
+ tapeDamage?: number | undefined;
1737
+ tapeTracking?: number | undefined;
1738
+ tapeNoise?: number | undefined;
1739
+ tapeSpeed?: number | undefined;
1740
+ filmArtifacts?: number | undefined;
1741
+ halftone?: number | undefined;
1742
+ halftoneSize?: number | undefined;
1743
+ twoInkPrint?: number | undefined;
1744
+ twoInkPrintSize?: number | undefined;
1745
+ ascii?: number | undefined;
1746
+ asciiSize?: number | undefined;
1747
+ asciiInvert?: number | undefined;
1748
+ asciiStyle?: number | undefined;
1749
+ asciiColor?: number | undefined;
1750
+ asciiRotation?: number | undefined;
1751
+ dither?: number | undefined;
1752
+ ditherSize?: number | undefined;
1753
+ bloom?: number | undefined;
1754
+ bloomRadius?: number | undefined;
1755
+ monoScreen?: number | undefined;
1756
+ monoScreenSize?: number | undefined;
1757
+ monoScreenAngle?: number | undefined;
1758
+ monoScreenSpread?: number | undefined;
1759
+ monoScreenShape?: number | undefined;
1760
+ monoScreenInvert?: number | undefined;
1761
+ scanlines?: number | undefined;
1762
+ scanlineCount?: number | undefined;
1763
+ scanlineSoftness?: number | undefined;
1764
+ chromaticAberration?: number | undefined;
1765
+ chromaticAngle?: number | undefined;
1766
+ crtCurvature?: number | undefined;
1767
+ digitalGlitch?: number | undefined;
1768
+ digitalGlitchColorSplit?: number | undefined;
1769
+ digitalGlitchLineTear?: number | undefined;
1770
+ digitalGlitchPixelate?: number | undefined;
1771
+ digitalGlitchBlockAmount?: number | undefined;
1772
+ digitalGlitchBlockDisplacement?: number | undefined;
1773
+ digitalGlitchBlockOpacity?: number | undefined;
1774
+ digitalGlitchSpeed?: number | undefined;
1775
+ engraving?: number | undefined;
1776
+ engravingSpacing?: number | undefined;
1777
+ engravingMinThickness?: number | undefined;
1778
+ engravingMaxThickness?: number | undefined;
1779
+ engravingAngle?: number | undefined;
1780
+ engravingContrast?: number | undefined;
1781
+ engravingSharpness?: number | undefined;
1782
+ engravingWave?: number | undefined;
1783
+ engravingWaveFrequency?: number | undefined;
1784
+ crosshatch?: number | undefined;
1785
+ crosshatchSpacing?: number | undefined;
1786
+ crosshatchThickness?: number | undefined;
1787
+ crosshatchAngle?: number | undefined;
1788
+ crosshatchContrast?: number | undefined;
1789
+ crosshatchEdges?: number | undefined;
1790
+ crosshatchLineWeight?: number | undefined;
1791
+ crosshatchWave?: number | undefined;
1792
+ crosshatchWaveFrequency?: number | undefined;
1793
+ kuwahara?: number | undefined;
1794
+ kuwaharaRadius?: number | undefined;
1795
+ kuwaharaSharpness?: number | undefined;
1796
+ kuwaharaSaturation?: number | undefined;
1797
+ };
1798
+ supportsPalette: boolean;
1799
+ renderLane: string;
1800
+ controls: {
1801
+ min: number;
1802
+ max: number;
1803
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1804
+ identity: number;
1805
+ recommended: number;
1806
+ }[];
1807
+ family: "art";
1808
+ label: "Crosshatch";
1809
+ description: "Translate media into layered hand-hatched lines.";
1810
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1811
+ } | {
1812
+ apply: {
1813
+ blur?: number | undefined;
1814
+ pixelate?: number | undefined;
1815
+ chromaBleed?: number | undefined;
1816
+ tapeDamage?: number | undefined;
1817
+ tapeTracking?: number | undefined;
1818
+ tapeNoise?: number | undefined;
1819
+ tapeSpeed?: number | undefined;
1820
+ filmArtifacts?: number | undefined;
1821
+ halftone?: number | undefined;
1822
+ halftoneSize?: number | undefined;
1823
+ twoInkPrint?: number | undefined;
1824
+ twoInkPrintSize?: number | undefined;
1825
+ ascii?: number | undefined;
1826
+ asciiSize?: number | undefined;
1827
+ asciiInvert?: number | undefined;
1828
+ asciiStyle?: number | undefined;
1829
+ asciiColor?: number | undefined;
1830
+ asciiRotation?: number | undefined;
1831
+ dither?: number | undefined;
1832
+ ditherSize?: number | undefined;
1833
+ bloom?: number | undefined;
1834
+ bloomRadius?: number | undefined;
1835
+ monoScreen?: number | undefined;
1836
+ monoScreenSize?: number | undefined;
1837
+ monoScreenAngle?: number | undefined;
1838
+ monoScreenSpread?: number | undefined;
1839
+ monoScreenShape?: number | undefined;
1840
+ monoScreenInvert?: number | undefined;
1841
+ scanlines?: number | undefined;
1842
+ scanlineCount?: number | undefined;
1843
+ scanlineSoftness?: number | undefined;
1844
+ chromaticAberration?: number | undefined;
1845
+ chromaticAngle?: number | undefined;
1846
+ crtCurvature?: number | undefined;
1847
+ digitalGlitch?: number | undefined;
1848
+ digitalGlitchColorSplit?: number | undefined;
1849
+ digitalGlitchLineTear?: number | undefined;
1850
+ digitalGlitchPixelate?: number | undefined;
1851
+ digitalGlitchBlockAmount?: number | undefined;
1852
+ digitalGlitchBlockDisplacement?: number | undefined;
1853
+ digitalGlitchBlockOpacity?: number | undefined;
1854
+ digitalGlitchSpeed?: number | undefined;
1855
+ engraving?: number | undefined;
1856
+ engravingSpacing?: number | undefined;
1857
+ engravingMinThickness?: number | undefined;
1858
+ engravingMaxThickness?: number | undefined;
1859
+ engravingAngle?: number | undefined;
1860
+ engravingContrast?: number | undefined;
1861
+ engravingSharpness?: number | undefined;
1862
+ engravingWave?: number | undefined;
1863
+ engravingWaveFrequency?: number | undefined;
1864
+ crosshatch?: number | undefined;
1865
+ crosshatchSpacing?: number | undefined;
1866
+ crosshatchThickness?: number | undefined;
1867
+ crosshatchAngle?: number | undefined;
1868
+ crosshatchContrast?: number | undefined;
1869
+ crosshatchEdges?: number | undefined;
1870
+ crosshatchLineWeight?: number | undefined;
1871
+ crosshatchWave?: number | undefined;
1872
+ crosshatchWaveFrequency?: number | undefined;
1873
+ kuwahara?: number | undefined;
1874
+ kuwaharaRadius?: number | undefined;
1875
+ kuwaharaSharpness?: number | undefined;
1876
+ kuwaharaSaturation?: number | undefined;
1877
+ };
1878
+ supportsPalette: boolean;
1879
+ renderLane: string;
1880
+ controls: {
1881
+ min: number;
1882
+ max: number;
1883
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "tapeTracking" | "tapeNoise" | "tapeSpeed" | "filmArtifacts" | "halftone" | "halftoneSize" | "twoInkPrint" | "twoInkPrintSize" | "ascii" | "asciiSize" | "asciiInvert" | "asciiStyle" | "asciiColor" | "asciiRotation" | "dither" | "ditherSize" | "bloom" | "bloomRadius" | "monoScreen" | "monoScreenSize" | "monoScreenAngle" | "monoScreenSpread" | "monoScreenShape" | "monoScreenInvert" | "scanlines" | "scanlineCount" | "scanlineSoftness" | "chromaticAberration" | "chromaticAngle" | "crtCurvature" | "digitalGlitch" | "digitalGlitchColorSplit" | "digitalGlitchLineTear" | "digitalGlitchPixelate" | "digitalGlitchBlockAmount" | "digitalGlitchBlockDisplacement" | "digitalGlitchBlockOpacity" | "digitalGlitchSpeed" | "engraving" | "engravingSpacing" | "engravingMinThickness" | "engravingMaxThickness" | "engravingAngle" | "engravingContrast" | "engravingSharpness" | "engravingWave" | "engravingWaveFrequency" | "crosshatch" | "crosshatchSpacing" | "crosshatchThickness" | "crosshatchAngle" | "crosshatchContrast" | "crosshatchEdges" | "crosshatchLineWeight" | "crosshatchWave" | "crosshatchWaveFrequency" | "kuwahara" | "kuwaharaRadius" | "kuwaharaSharpness" | "kuwaharaSaturation";
1884
+ identity: number;
1885
+ recommended: number;
1886
+ }[];
1887
+ family: "art";
1888
+ label: "Kuwahara Paint";
1889
+ description: "Apply edge-preserving painterly smoothing.";
1890
+ key: "blur" | "pixelate" | "chromaBleed" | "tapeDamage" | "filmArtifacts" | "halftone" | "twoInkPrint" | "ascii" | "dither" | "bloom" | "monoScreen" | "scanlines" | "chromaticAberration" | "crtCurvature" | "digitalGlitch" | "engraving" | "crosshatch" | "kuwahara";
1891
+ })[];
1892
+ palettes: {
1893
+ id: "noir" | "ink-paper" | "terminal" | "amber-glow" | "handheld-green" | "golden-hour" | "deep-sea" | "arctic-night" | "synthwave" | "vaporwave" | "forest" | "sepia" | "blueprint" | "warm-print" | "electric-ink";
1894
+ label: "Noir" | "Ink & Paper" | "Terminal" | "Amber Glow" | "Handheld Green" | "Golden Hour" | "Deep Sea" | "Arctic Night" | "Synthwave" | "Vaporwave" | "Forest" | "Sepia" | "Blueprint" | "Warm Print" | "Electric Ink";
1895
+ group: "Classic" | "Mood" | "Mono" | "HyperFrames";
1896
+ colors: readonly ["#000000", "#ffffff"] | readonly ["#1a1a2e", "#f5f5dc"] | readonly ["#001100", "#00ff00"] | readonly ["#1a0f00", "#ffcc00"] | readonly ["#0f380f", "#306230", "#8bac0f", "#9bbc0f"] | readonly ["#1a1205", "#4a3510", "#8b6914", "#d4a017", "#fff8dc"] | readonly ["#0a1628", "#1a3a5c", "#2d6187", "#5ba4c9", "#a8dce8"] | readonly ["#0a0a14", "#1a2a4a", "#3a5a8a", "#6a9aca", "#cae8ff"] | readonly ["#120458", "#7b2cbf", "#e040fb", "#ff6ec7", "#fff59d"] | readonly ["#1a0a2e", "#3d1a5c", "#ff71ce", "#01cdfe", "#fffb96"] | readonly ["#1a2e1a", "#2d4a2d", "#4a7c4a", "#7ab37a", "#c8e6c8"] | readonly ["#1a1610", "#3d3020", "#6b5a40", "#a89070", "#e8dcc8"] | readonly ["#001830", "#003060", "#0050a0", "#0080e0", "#e0f0ff"] | readonly ["#17121a", "#824c50", "#e09873", "#f7ddb1"] | readonly ["#080717", "#3c185f", "#7e2278", "#d9339f", "#ff6b66", "#aafae0"];
1897
+ }[];
1898
+ animatable: readonly [{
1899
+ readonly path: "intensity";
1900
+ readonly name: "--hf-color-grading-intensity";
1901
+ readonly min: 0;
1902
+ readonly max: 1;
1903
+ }, {
1904
+ readonly path: "lut.intensity";
1905
+ readonly name: "--hf-color-grading-lut-intensity";
1906
+ readonly min: 0;
1907
+ readonly max: 1;
1908
+ }, {
1909
+ readonly path: "adjust.exposure";
1910
+ readonly name: "--hf-color-grading-exposure";
1911
+ readonly min: -2;
1912
+ readonly max: 2;
1913
+ }, {
1914
+ readonly path: "effects.blur";
1915
+ readonly name: "--hf-color-grading-blur";
1916
+ readonly min: 0;
1917
+ readonly max: 1;
1918
+ }, {
1919
+ readonly path: "effects.bloom";
1920
+ readonly name: "--hf-color-grading-bloom";
1921
+ readonly min: 0;
1922
+ readonly max: 3;
1923
+ }, {
1924
+ readonly path: "effects.kuwahara";
1925
+ readonly name: "--hf-color-grading-kuwahara";
1926
+ readonly min: 0;
1927
+ readonly max: 1;
1928
+ }, {
1929
+ readonly path: "effects.pixelate";
1930
+ readonly name: "--hf-color-grading-pixelate";
1931
+ readonly min: 0;
1932
+ readonly max: 1;
1933
+ }, {
1934
+ readonly path: "effects.ascii";
1935
+ readonly name: "--hf-color-grading-ascii";
1936
+ readonly min: 0;
1937
+ readonly max: 1;
1938
+ }, {
1939
+ readonly path: "effects.dither";
1940
+ readonly name: "--hf-color-grading-dither";
1941
+ readonly min: 0;
1942
+ readonly max: 1;
1943
+ }];
1944
+ };
1945
+ export type HfColorGradingCapabilities = ReturnType<typeof getHfColorGradingCapabilities>;
1946
+ /**
1947
+ * Mirrors the runtime shader's HSL-secondary qualifier for Studio mattes and
1948
+ * other non-WebGL verification surfaces.
1949
+ */
1950
+ export declare function calculateHfColorGradingSecondaryMask(hue: number, saturation: number, luma: number, key: NormalizedHfColorGradingSecondary["key"]): number;
368
1951
  export declare function resolveHfColorGradingVariables(raw: unknown, variables: HfColorGradingVariableMap): unknown;
369
- export declare function normalizeHfColorGrading(raw: unknown): NormalizedHfColorGrading | null;
370
- export declare function normalizeHfColorGradingWithVariables(raw: unknown, variables: HfColorGradingVariableMap): NormalizedHfColorGrading | null;
1952
+ export declare function normalizeHfColorGrading(raw: unknown): ResolvedHfColorGrading | null;
1953
+ export declare function normalizeHfColorGradingWithVariables(raw: unknown, variables: HfColorGradingVariableMap): ResolvedHfColorGrading | null;
1954
+ export declare function hasHfColorGradingRgbCurveValues(curves: NormalizedHfColorGradingCurves): boolean;
1955
+ export declare function hasHfColorGradingHueCurveValues(curves: NormalizedHfColorGradingHueCurves): boolean;
1956
+ export declare function hasHfColorGradingSecondaryValues(secondaries: readonly NormalizedHfColorGradingSecondary[]): boolean;
371
1957
  export declare function serializeHfColorGrading(grading: NormalizedHfColorGrading | HfColorGrading | null): string;
372
1958
  export declare function isHfColorGradingActive(grading: NormalizedHfColorGrading | null): grading is NormalizedHfColorGrading;
1959
+ export declare function hasHfColorGradingAuthoredValues(grading: NormalizedHfColorGrading | null): grading is NormalizedHfColorGrading;
373
1960
  //# sourceMappingURL=colorGrading.d.ts.map