import * as z from "zod"; export declare const MoonPositionSchema: z.ZodObject<{ altitude: z.ZodNumber; azimuth: z.ZodNumber; distance: z.ZodNumber; parallactic_angle: z.ZodNumber; phase_angle: z.ZodNumber; }, "strip", z.ZodTypeAny, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }>; export declare const MoonZodiacSchema: z.ZodObject<{ sun_sign: z.ZodString; moon_sign: z.ZodString; }, "strip", z.ZodTypeAny, { sun_sign: string; moon_sign: string; }, { sun_sign: string; moon_sign: string; }>; export declare const PhaseEventSchema: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; export declare const UpcomingPhasesSchema: z.ZodObject<{ new_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; first_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; full_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; last_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; }, "strip", z.ZodTypeAny, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }>; export declare const MoonDetailedSchema: z.ZodObject<{ position: z.ZodObject<{ altitude: z.ZodNumber; azimuth: z.ZodNumber; distance: z.ZodNumber; parallactic_angle: z.ZodNumber; phase_angle: z.ZodNumber; }, "strip", z.ZodTypeAny, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }>; visibility: z.ZodObject<{ visible_hours: z.ZodNumber; best_viewing_time: z.ZodString; visibility_rating: z.ZodString; illumination: z.ZodString; viewing_conditions: z.ZodObject<{ phase_quality: z.ZodString; recommended_equipment: z.ZodObject<{ filters: z.ZodString; telescope: z.ZodString; best_magnification: z.ZodString; }, "strip", z.ZodTypeAny, { filters: string; telescope: string; best_magnification: string; }, { filters: string; telescope: string; best_magnification: string; }>; }, "strip", z.ZodTypeAny, { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }, { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }>; }, "strip", z.ZodTypeAny, { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }, { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }>; upcoming_phases: z.ZodObject<{ new_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; first_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; full_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; last_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; }, "strip", z.ZodTypeAny, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }>; illumination_details: z.ZodObject<{ percentage: z.ZodNumber; visible_fraction: z.ZodNumber; phase_angle: z.ZodNumber; }, "strip", z.ZodTypeAny, { percentage: number; phase_angle: number; visible_fraction: number; }, { percentage: number; phase_angle: number; visible_fraction: number; }>; }, "strip", z.ZodTypeAny, { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }, { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }>; export declare const MoonEventsSchema: z.ZodObject<{ moonrise_visible: z.ZodBoolean; moonset_visible: z.ZodBoolean; optimal_viewing_period: z.ZodObject<{ start_time: z.ZodString; end_time: z.ZodString; duration_hours: z.ZodNumber; viewing_quality: z.ZodString; recommendations: z.ZodArray; }, "strip", z.ZodTypeAny, { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }, { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }>; }, "strip", z.ZodTypeAny, { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }, { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }>; export declare const LunarEclipseSchema: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; type: z.ZodString; visibility_regions: z.ZodString; }, "strip", z.ZodTypeAny, { type: string; timestamp: number; datestamp: string; visibility_regions: string; }, { type: string; timestamp: number; datestamp: string; visibility_regions: string; }>; export declare const MoonDataSchema: z.ZodObject<{ phase: z.ZodNumber; phase_name: z.ZodString; major_phase: z.ZodString; stage: z.ZodString; illumination: z.ZodString; age_days: z.ZodNumber; lunar_cycle: z.ZodString; emoji: z.ZodString; zodiac: z.ZodObject<{ sun_sign: z.ZodString; moon_sign: z.ZodString; }, "strip", z.ZodTypeAny, { sun_sign: string; moon_sign: string; }, { sun_sign: string; moon_sign: string; }>; moonrise: z.ZodString; moonrise_timestamp: z.ZodNumber; moonset: z.ZodString; moonset_timestamp: z.ZodNumber; next_lunar_eclipse: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; type: z.ZodString; visibility_regions: z.ZodString; }, "strip", z.ZodTypeAny, { type: string; timestamp: number; datestamp: string; visibility_regions: string; }, { type: string; timestamp: number; datestamp: string; visibility_regions: string; }>; detailed: z.ZodObject<{ position: z.ZodObject<{ altitude: z.ZodNumber; azimuth: z.ZodNumber; distance: z.ZodNumber; parallactic_angle: z.ZodNumber; phase_angle: z.ZodNumber; }, "strip", z.ZodTypeAny, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }>; visibility: z.ZodObject<{ visible_hours: z.ZodNumber; best_viewing_time: z.ZodString; visibility_rating: z.ZodString; illumination: z.ZodString; viewing_conditions: z.ZodObject<{ phase_quality: z.ZodString; recommended_equipment: z.ZodObject<{ filters: z.ZodString; telescope: z.ZodString; best_magnification: z.ZodString; }, "strip", z.ZodTypeAny, { filters: string; telescope: string; best_magnification: string; }, { filters: string; telescope: string; best_magnification: string; }>; }, "strip", z.ZodTypeAny, { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }, { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }>; }, "strip", z.ZodTypeAny, { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }, { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }>; upcoming_phases: z.ZodObject<{ new_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; first_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; full_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; last_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; }, "strip", z.ZodTypeAny, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }>; illumination_details: z.ZodObject<{ percentage: z.ZodNumber; visible_fraction: z.ZodNumber; phase_angle: z.ZodNumber; }, "strip", z.ZodTypeAny, { percentage: number; phase_angle: number; visible_fraction: number; }, { percentage: number; phase_angle: number; visible_fraction: number; }>; }, "strip", z.ZodTypeAny, { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }, { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }>; events: z.ZodObject<{ moonrise_visible: z.ZodBoolean; moonset_visible: z.ZodBoolean; optimal_viewing_period: z.ZodObject<{ start_time: z.ZodString; end_time: z.ZodString; duration_hours: z.ZodNumber; viewing_quality: z.ZodString; recommendations: z.ZodArray; }, "strip", z.ZodTypeAny, { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }, { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }>; }, "strip", z.ZodTypeAny, { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }, { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }>; }, "strip", z.ZodTypeAny, { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }, { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }>; export type MoonData = z.infer; export type MoonPosition = z.infer; export type MoonZodiac = z.infer; export type MoonDetailed = z.infer; export type MoonEvents = z.infer; export declare const MoonApiResponseSchema: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; plan: z.ZodString; sun: z.ZodAny; moon: z.ZodObject<{ phase: z.ZodNumber; phase_name: z.ZodString; major_phase: z.ZodString; stage: z.ZodString; illumination: z.ZodString; age_days: z.ZodNumber; lunar_cycle: z.ZodString; emoji: z.ZodString; zodiac: z.ZodObject<{ sun_sign: z.ZodString; moon_sign: z.ZodString; }, "strip", z.ZodTypeAny, { sun_sign: string; moon_sign: string; }, { sun_sign: string; moon_sign: string; }>; moonrise: z.ZodString; moonrise_timestamp: z.ZodNumber; moonset: z.ZodString; moonset_timestamp: z.ZodNumber; next_lunar_eclipse: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; type: z.ZodString; visibility_regions: z.ZodString; }, "strip", z.ZodTypeAny, { type: string; timestamp: number; datestamp: string; visibility_regions: string; }, { type: string; timestamp: number; datestamp: string; visibility_regions: string; }>; detailed: z.ZodObject<{ position: z.ZodObject<{ altitude: z.ZodNumber; azimuth: z.ZodNumber; distance: z.ZodNumber; parallactic_angle: z.ZodNumber; phase_angle: z.ZodNumber; }, "strip", z.ZodTypeAny, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }>; visibility: z.ZodObject<{ visible_hours: z.ZodNumber; best_viewing_time: z.ZodString; visibility_rating: z.ZodString; illumination: z.ZodString; viewing_conditions: z.ZodObject<{ phase_quality: z.ZodString; recommended_equipment: z.ZodObject<{ filters: z.ZodString; telescope: z.ZodString; best_magnification: z.ZodString; }, "strip", z.ZodTypeAny, { filters: string; telescope: string; best_magnification: string; }, { filters: string; telescope: string; best_magnification: string; }>; }, "strip", z.ZodTypeAny, { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }, { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }>; }, "strip", z.ZodTypeAny, { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }, { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }>; upcoming_phases: z.ZodObject<{ new_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; first_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; full_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; last_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; }, "strip", z.ZodTypeAny, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }>; illumination_details: z.ZodObject<{ percentage: z.ZodNumber; visible_fraction: z.ZodNumber; phase_angle: z.ZodNumber; }, "strip", z.ZodTypeAny, { percentage: number; phase_angle: number; visible_fraction: number; }, { percentage: number; phase_angle: number; visible_fraction: number; }>; }, "strip", z.ZodTypeAny, { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }, { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }>; events: z.ZodObject<{ moonrise_visible: z.ZodBoolean; moonset_visible: z.ZodBoolean; optimal_viewing_period: z.ZodObject<{ start_time: z.ZodString; end_time: z.ZodString; duration_hours: z.ZodNumber; viewing_quality: z.ZodString; recommendations: z.ZodArray; }, "strip", z.ZodTypeAny, { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }, { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }>; }, "strip", z.ZodTypeAny, { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }, { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }>; }, "strip", z.ZodTypeAny, { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }, { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }>; }, "strip", z.ZodTypeAny, { plan: string; timestamp: number; datestamp: string; moon: { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }; sun?: any; }, { plan: string; timestamp: number; datestamp: string; moon: { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }; sun?: any; }>; export type MoonApiResponse = z.infer; export declare const MoonCardPropsSchema: z.ZodObject<{ moonData: z.ZodOptional; moonrise: z.ZodString; moonrise_timestamp: z.ZodNumber; moonset: z.ZodString; moonset_timestamp: z.ZodNumber; next_lunar_eclipse: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; type: z.ZodString; visibility_regions: z.ZodString; }, "strip", z.ZodTypeAny, { type: string; timestamp: number; datestamp: string; visibility_regions: string; }, { type: string; timestamp: number; datestamp: string; visibility_regions: string; }>; detailed: z.ZodObject<{ position: z.ZodObject<{ altitude: z.ZodNumber; azimuth: z.ZodNumber; distance: z.ZodNumber; parallactic_angle: z.ZodNumber; phase_angle: z.ZodNumber; }, "strip", z.ZodTypeAny, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }>; visibility: z.ZodObject<{ visible_hours: z.ZodNumber; best_viewing_time: z.ZodString; visibility_rating: z.ZodString; illumination: z.ZodString; viewing_conditions: z.ZodObject<{ phase_quality: z.ZodString; recommended_equipment: z.ZodObject<{ filters: z.ZodString; telescope: z.ZodString; best_magnification: z.ZodString; }, "strip", z.ZodTypeAny, { filters: string; telescope: string; best_magnification: string; }, { filters: string; telescope: string; best_magnification: string; }>; }, "strip", z.ZodTypeAny, { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }, { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }>; }, "strip", z.ZodTypeAny, { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }, { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }>; upcoming_phases: z.ZodObject<{ new_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; first_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; full_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; last_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; }, "strip", z.ZodTypeAny, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }>; illumination_details: z.ZodObject<{ percentage: z.ZodNumber; visible_fraction: z.ZodNumber; phase_angle: z.ZodNumber; }, "strip", z.ZodTypeAny, { percentage: number; phase_angle: number; visible_fraction: number; }, { percentage: number; phase_angle: number; visible_fraction: number; }>; }, "strip", z.ZodTypeAny, { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }, { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }>; events: z.ZodObject<{ moonrise_visible: z.ZodBoolean; moonset_visible: z.ZodBoolean; optimal_viewing_period: z.ZodObject<{ start_time: z.ZodString; end_time: z.ZodString; duration_hours: z.ZodNumber; viewing_quality: z.ZodString; recommendations: z.ZodArray; }, "strip", z.ZodTypeAny, { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }, { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }>; }, "strip", z.ZodTypeAny, { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }, { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }>; }, "strip", z.ZodTypeAny, { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }, { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }>, z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; plan: z.ZodString; sun: z.ZodAny; moon: z.ZodObject<{ phase: z.ZodNumber; phase_name: z.ZodString; major_phase: z.ZodString; stage: z.ZodString; illumination: z.ZodString; age_days: z.ZodNumber; lunar_cycle: z.ZodString; emoji: z.ZodString; zodiac: z.ZodObject<{ sun_sign: z.ZodString; moon_sign: z.ZodString; }, "strip", z.ZodTypeAny, { sun_sign: string; moon_sign: string; }, { sun_sign: string; moon_sign: string; }>; moonrise: z.ZodString; moonrise_timestamp: z.ZodNumber; moonset: z.ZodString; moonset_timestamp: z.ZodNumber; next_lunar_eclipse: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; type: z.ZodString; visibility_regions: z.ZodString; }, "strip", z.ZodTypeAny, { type: string; timestamp: number; datestamp: string; visibility_regions: string; }, { type: string; timestamp: number; datestamp: string; visibility_regions: string; }>; detailed: z.ZodObject<{ position: z.ZodObject<{ altitude: z.ZodNumber; azimuth: z.ZodNumber; distance: z.ZodNumber; parallactic_angle: z.ZodNumber; phase_angle: z.ZodNumber; }, "strip", z.ZodTypeAny, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }, { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }>; visibility: z.ZodObject<{ visible_hours: z.ZodNumber; best_viewing_time: z.ZodString; visibility_rating: z.ZodString; illumination: z.ZodString; viewing_conditions: z.ZodObject<{ phase_quality: z.ZodString; recommended_equipment: z.ZodObject<{ filters: z.ZodString; telescope: z.ZodString; best_magnification: z.ZodString; }, "strip", z.ZodTypeAny, { filters: string; telescope: string; best_magnification: string; }, { filters: string; telescope: string; best_magnification: string; }>; }, "strip", z.ZodTypeAny, { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }, { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }>; }, "strip", z.ZodTypeAny, { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }, { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }>; upcoming_phases: z.ZodObject<{ new_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; first_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; full_moon: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; last_quarter: z.ZodObject<{ last: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; next: z.ZodObject<{ timestamp: z.ZodNumber; datestamp: z.ZodString; days_ago: z.ZodOptional; days_ahead: z.ZodOptional; name: z.ZodOptional; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }, { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }>; }, "strip", z.ZodTypeAny, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }, { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }>; }, "strip", z.ZodTypeAny, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }, { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }>; illumination_details: z.ZodObject<{ percentage: z.ZodNumber; visible_fraction: z.ZodNumber; phase_angle: z.ZodNumber; }, "strip", z.ZodTypeAny, { percentage: number; phase_angle: number; visible_fraction: number; }, { percentage: number; phase_angle: number; visible_fraction: number; }>; }, "strip", z.ZodTypeAny, { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }, { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }>; events: z.ZodObject<{ moonrise_visible: z.ZodBoolean; moonset_visible: z.ZodBoolean; optimal_viewing_period: z.ZodObject<{ start_time: z.ZodString; end_time: z.ZodString; duration_hours: z.ZodNumber; viewing_quality: z.ZodString; recommendations: z.ZodArray; }, "strip", z.ZodTypeAny, { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }, { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }>; }, "strip", z.ZodTypeAny, { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }, { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }>; }, "strip", z.ZodTypeAny, { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }, { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }>; }, "strip", z.ZodTypeAny, { plan: string; timestamp: number; datestamp: string; moon: { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }; sun?: any; }, { plan: string; timestamp: number; datestamp: string; moon: { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }; sun?: any; }>]>>; onClick: z.ZodOptional, z.ZodVoid>>; isLoading: z.ZodOptional; }, "strip", z.ZodTypeAny, { onClick?: (() => void) | undefined; isLoading?: boolean | undefined; moonData?: { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; } | { plan: string; timestamp: number; datestamp: string; moon: { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }; sun?: any; } | undefined; }, { onClick?: (() => void) | undefined; isLoading?: boolean | undefined; moonData?: { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; } | { plan: string; timestamp: number; datestamp: string; moon: { emoji: string; events: { moonrise_visible: boolean; moonset_visible: boolean; optimal_viewing_period: { start_time: string; end_time: string; duration_hours: number; viewing_quality: string; recommendations: string[]; }; }; illumination: string; phase: number; phase_name: string; major_phase: string; stage: string; age_days: number; lunar_cycle: string; zodiac: { sun_sign: string; moon_sign: string; }; moonrise: string; moonrise_timestamp: number; moonset: string; moonset_timestamp: number; next_lunar_eclipse: { type: string; timestamp: number; datestamp: string; visibility_regions: string; }; detailed: { position: { azimuth: number; altitude: number; distance: number; parallactic_angle: number; phase_angle: number; }; visibility: { visible_hours: number; best_viewing_time: string; visibility_rating: string; illumination: string; viewing_conditions: { phase_quality: string; recommended_equipment: { filters: string; telescope: string; best_magnification: string; }; }; }; upcoming_phases: { new_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; first_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; full_moon: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; last_quarter: { next: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; last: { timestamp: number; datestamp: string; name?: string | undefined; description?: string | undefined; days_ago?: number | undefined; days_ahead?: number | undefined; }; }; }; illumination_details: { percentage: number; phase_angle: number; visible_fraction: number; }; }; }; sun?: any; } | undefined; }>; export type MoonCardProps = z.infer;