import React from "react";
export interface WeatherCondition {
    type: "clear" | "cloudy" | "rainy" | "stormy" | "snowy" | "foggy" | "windy" | "sunny";
    intensity: number;
    temperature: number;
    humidity: number;
    pressure: number;
    windSpeed: number;
    windDirection: number;
    visibility: number;
    id: string;
}
export interface WeatherParticle {
    x: number;
    y: number;
    vx: number;
    vy: number;
    size: number;
    opacity: number;
    color: [number, number, number];
    type: "rain" | "snow" | "fog" | "dust" | "leaf" | "droplet";
    lifetime: number;
    rotation: number;
    rotationSpeed: number;
    id: string;
}
export interface AtmosphericEffect {
    type: "lightning" | "rainbow" | "aurora" | "halo" | "mist" | "heatwave";
    intensity: number;
    duration: number;
    position: {
        x: number;
        y: number;
    };
    color: [number, number, number];
    id: string;
}
export interface GlassWeatherGlassProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange"> {
    /** Canvas width */
    width?: number;
    /** Canvas height */
    height?: number;
    /** Current weather condition */
    weather?: WeatherCondition;
    /** Whether to auto-update weather */
    autoUpdate?: boolean;
    /** Update interval in milliseconds */
    updateInterval?: number;
    /** Particle count multiplier */
    particleDensity?: number;
    /** Whether to show atmospheric effects */
    showAtmosphericEffects?: boolean;
    /** Glass tint response to weather */
    weatherResponsive?: boolean;
    /** Temperature range for color mapping */
    temperatureRange?: [number, number];
    /** Whether to show weather info */
    showWeatherInfo?: boolean;
    /** Animation speed multiplier */
    animationSpeed?: number;
    /** Wind effect strength */
    windStrength?: number;
    /** Whether to show day/night cycle */
    dayNightCycle?: boolean;
    /** Current time of day (0-24) */
    timeOfDay?: number;
    /** Weather change handler */
    onWeatherChange?: (weather: WeatherCondition) => void;
    /** Atmospheric event handler */
    onAtmosphericEvent?: (effect: AtmosphericEffect) => void;
    /** Show controls */
    showControls?: boolean;
    /** Respect user's motion preferences */
    respectMotionPreference?: boolean;
}
export declare const GlassWeatherGlass: React.ForwardRefExoticComponent<GlassWeatherGlassProps & React.RefAttributes<HTMLDivElement>>;
export default GlassWeatherGlass;
//# sourceMappingURL=GlassWeatherGlass.d.ts.map