import { type VariantProps } from 'class-variance-authority'; declare const GLYPH_PRESETS: { readonly katakana: string; readonly hex: "0123456789ABCDEF{}[]<>/\\;:=$#@!*+-"; readonly binary: "01"; readonly symbols: "!@#$%^&*()_+-=[]{}|;:,.<>?/"; }; type GlyphPreset = keyof typeof GLYPH_PRESETS; declare const wrapperVariants: (props?: ({ background?: "transparent" | "solid" | null | undefined; vibe?: "ghost" | "terminal" | "clean" | "hologram" | "synthwave" | "oscilloscope" | null | undefined; mask?: "center" | "none" | null | undefined; maskRadius?: "sm" | "md" | "lg" | "xl" | "xs" | null | undefined; } & import("class-variance-authority/types").ClassProp) | undefined) => string; type Tone = 'primary' | 'accent' | 'success' | 'error' | 'info'; type Density = 'low' | 'medium' | 'high'; type Pace = 'gentle' | 'normal' | 'fast'; type Decay = 'none' | 'slow' | 'normal' | 'fast'; export interface MatrixRainProps extends VariantProps { /** Glyph preset name or a literal string of glyphs. Default `katakana`. */ glyphs?: GlyphPreset | string; /** Brand tone for the rain. Resolved against the active theme. */ tone?: Tone; /** Optional explicit colour — any CSS colour value. Overrides `tone` when set. */ color?: string; /** Glyph density — controls font-size. */ density?: Density; /** Animation pace — controls frame interval. */ pace?: Pace; /** Trail persistence — smaller decay = denser cumulative background. */ decay?: Decay; /** * Built-in surface beneath the rain. `transparent` (default) lets the * parent provide its own background; `solid` paints a near-black * surface so the rain reads cleanly without the consumer wrapping it * themselves — useful for standalone demos or full-bleed easter eggs. */ background?: 'transparent' | 'solid'; /** * Visual treatment. * - `clean` — just the rain. * - `terminal` — Fallout-CRT: vignette + scanlines + bloom + glow. * - `hologram` — sci-fi HUD: soft scanlines + slow opacity pulse. * - `synthwave` — 80s neon: heavy bloom + indigo horizon + accent→ * info gradient across columns (overrides `tone`). * - `oscilloscope` — vintage scope: sharp edges + dense scanlines + * animated horizontal beam sweep. * - `ghost` — production-friendly faint background variant. */ vibe?: 'clean' | 'terminal' | 'hologram' | 'synthwave' | 'oscilloscope' | 'ghost'; /** * When `true`, gives each column a stable random speed multiplier * (0.6×–1.4× of the base pace) and adds a small horizontal jitter to * each glyph. Pairs with any vibe — makes the rain feel alive vs. * metronomic. */ storm?: boolean; /** * Radial mask. `center` fades the canvas to fully transparent in the * middle so foreground content sitting over the rain stays readable * (e.g. code-block easter egg with copy in the middle). */ mask?: 'none' | 'center'; /** * Inner clear-zone radius for `mask="center"`. Ignored when `mask` * is `none`. T-shirt sizes map to: xs 15%, sm 22%, md 30% (default), * lg 42%, xl 55%. */ maskRadius?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'; /** Class merged onto the wrapper. */ className?: string; } export declare const MatrixRain: import("react").ForwardRefExoticComponent>; export {}; //# sourceMappingURL=matrix-rain.d.ts.map