vault66-crt-effect
Version:
A customizable CRT visual effect component for React
43 lines (42 loc) • 1.44 kB
TypeScript
/**
* CRT Effect Presets
*
* Each preset provides a complete configuration for achieving
* specific vintage monitor/terminal aesthetics.
*/
export interface PresetConfig {
theme?: "green" | "amber" | "blue" | "custom";
enabled?: boolean;
sweepDuration?: number;
sweepThickness?: number;
sweepStyle?: "classic" | "soft";
scanlineOpacity?: number;
scanlineThickness?: number;
scanlineGap?: number;
scanlineOrientation?: "horizontal" | "vertical";
enableScanlines?: boolean;
enableSweep?: boolean;
enableGlow?: boolean;
enableEdgeGlow?: boolean;
enableFlicker?: boolean;
enableVignette?: boolean;
enableGlitch?: boolean;
enableCurvature?: boolean;
enableGlare?: boolean;
enableNoise?: boolean;
glitchChromatic?: boolean;
curvatureIntensity?: number;
glareIntensity?: number;
noiseOpacity?: number;
glowColor?: string;
edgeGlowColor?: string;
edgeGlowSize?: number;
flickerIntensity?: "low" | "medium" | "high" | number;
flickerSpeed?: "low" | "medium" | "high" | number;
glitchIntensity?: "low" | "medium" | "high" | number;
glitchSpeed?: "low" | "medium" | "high" | number;
vignetteIntensity?: number;
scanlineColor?: string;
}
export type PresetName = "fallout" | "dos" | "cyberpunk" | "commodore64" | "apple2" | "arcade" | "vt100" | "minimal";
export declare const presets: Record<PresetName, PresetConfig>;