import * as react_jsx_runtime from 'react/jsx-runtime'; import { ReactNode } from 'react'; import { AppointmentStatus } from './appointment-time-slot-picker.js'; interface AppointmentCalendarItem { id: string; status: AppointmentStatus; clientName: string; clientAvatarInitials: string; /** ISO date string — "2026-04-22" */ date: string; /** Display time — "10:00 AM" */ timeStart: string; /** Display time — "10:30 AM" */ timeEnd: string; } interface AppointmentWeekDay { /** Short weekday label — "Mon" */ label: string; /** ISO date string — "2026-04-20" */ date: string; /** Short date number — "20" */ short: string; } interface AppointmentCalendarViewProps { appointments: AppointmentCalendarItem[]; /** ISO date string for the "today" highlight — "2026-04-22" */ today: string; /** Label shown in the toolbar — "April 2026" */ periodLabel: string; /** Days shown in week view */ weekDays: AppointmentWeekDay[]; /** Hours displayed in day/week view — defaults to [9..17] */ hours?: number[]; /** ISO date controlling which day/month is displayed — defaults to `today` */ viewDate?: string; /** @deprecated Use `viewDate` instead */ dayViewDate?: string; defaultView?: "day" | "week" | "month"; onPrev?: () => void; onNext?: () => void; onToday?: () => void; onViewChange?: (view: "day" | "week" | "month") => void; onSelectAppointment?: (apt: AppointmentCalendarItem) => void; /** Slot rendered in the calendar toolbar right side */ toolbarActions?: ReactNode; } declare function AppointmentCalendarView({ appointments, today, periodLabel, weekDays, hours, viewDate, dayViewDate, defaultView, onPrev, onNext, onToday, onViewChange, onSelectAppointment, toolbarActions, }: AppointmentCalendarViewProps): react_jsx_runtime.JSX.Element; export { type AppointmentCalendarItem, AppointmentCalendarView, type AppointmentCalendarViewProps, AppointmentStatus, type AppointmentWeekDay };