aura-glass
Version:
A comprehensive glassmorphism design system for React applications with 142+ production-ready components
89 lines • 2.69 kB
TypeScript
import React from "react";
export interface VortexRing {
radius: number;
rotation: number;
speed: number;
opacity: number;
color: [number, number, number];
thickness: number;
id: string;
}
export interface VortexParticle {
x: number;
y: number;
angle: number;
radius: number;
speed: number;
size: number;
opacity: number;
color: [number, number, number];
lifetime: number;
id: string;
}
export interface DimensionalShift {
x: number;
y: number;
intensity: number;
frequency: number;
type: "ripple" | "spiral" | "quantum" | "void";
id: string;
}
export interface GlassVortexPortalProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange"> {
/** Canvas width */
width?: number;
/** Canvas height */
height?: number;
/** Portal radius */
radius?: number;
/** Number of vortex rings */
ringCount?: number;
/** Base rotation speed */
rotationSpeed?: number;
/** Portal intensity (0-1) */
intensity?: number;
/** Portal depth effect */
depth?: number;
/** Portal type */
type?: "dimensional" | "energy" | "void" | "quantum" | "temporal";
/** Portal color scheme */
colorScheme?: "blue" | "purple" | "green" | "red" | "gold" | "cosmic";
/** Whether portal is active */
active?: boolean;
/** Whether portal is opening */
opening?: boolean;
/** Whether portal is closing */
closing?: boolean;
/** Particle count for effects */
particleCount?: number;
/** Whether to show dimensional distortion */
showDistortion?: boolean;
/** Distortion intensity */
distortionIntensity?: number;
/** Portal energy level */
energyLevel?: number;
/** Whether portal pulses */
pulsing?: boolean;
/** Pulse frequency */
pulseFrequency?: number;
/** Whether to show event horizon */
showEventHorizon?: boolean;
/** Whether portal is interactive */
interactive?: boolean;
/** Portal activation handler */
onActivate?: () => void;
/** Portal deactivation handler */
onDeactivate?: () => void;
/** Portal entry handler */
onEntry?: (x: number, y: number) => void;
/** Animation speed multiplier */
timeScale?: number;
/** Show portal controls */
showControls?: boolean;
/** Debug mode */
debug?: boolean;
/** Respect user's motion preferences */
respectMotionPreference?: boolean;
}
export declare const GlassVortexPortal: React.ForwardRefExoticComponent<GlassVortexPortalProps & React.RefAttributes<HTMLDivElement>>;
export default GlassVortexPortal;
//# sourceMappingURL=GlassVortexPortal.d.ts.map