import * as react from 'react'; import { CSSProperties } from 'react'; type ShaderShape = "corners" | "wave" | "dots" | "truchet" | "ripple" | "blob" | "sphere"; type Intensity = "subtle" | "medium" | "loud"; type Speed = "still" | "slow" | "medium" | "fast"; type Grain = "none" | "soft" | "high"; interface NoirGlowBackgroundProps { /** Extra class names for the outer positioning wrapper. */ className?: string; /** Inline style for the outer positioning wrapper. */ style?: CSSProperties; /** Canvas/WebGL shape. `corners` matches Tollerud.no. */ shape?: ShaderShape; /** Visual strength of the yellow glow. */ intensity?: Intensity; /** Ambient animation speed. */ speed?: Speed; /** Shader grain/noise amount. */ grain?: Grain; /** Softness/falloff of the glow blooms. */ softness?: number; /** Background color behind the glow. */ colorBack?: string; /** Glow colors. Defaults to the Tollerud/Tia yellow ramp. */ colors?: string[]; /** Whether to render a readable center vignette on top of the shader. */ preserveCenter?: boolean; /** Add the grain/noise CSS overlay. */ noiseOverlay?: boolean; /** Prefer the CSS fallback even if shaders are available. Useful for docs/static contexts. */ forceCssFallback?: boolean; /** Disable pointer events so content above remains clickable. */ inert?: boolean; /** Horizontal shader offset (-1 to 1). Use for edge-biased layouts. */ offsetX?: number; /** Vertical shader offset (-1 to 1). */ offsetY?: number; /** Shader scale multiplier. Values > 1 push glow toward edges. */ scale?: number; } /** * NoirGlowBackground * * Tia/Tollerud signature background primitive. The defaults replicate * MathiasOki/tollerud-landing's `GradientBackground` component. * * Install dependency in consuming Next.js apps: * npm install @paper-design/shaders-react * * The CSS fallback classes live in `globals.css` and are used during Suspense, * reduced-motion contexts, or when `forceCssFallback` is true. */ declare function NoirGlowBackground({ className, style, shape, intensity, speed, grain, softness, colorBack, colors, preserveCenter, noiseOverlay, forceCssFallback, inert, offsetX, offsetY, scale, }: NoirGlowBackgroundProps): react.JSX.Element; export { NoirGlowBackground, type NoirGlowBackgroundProps };