import React from 'react';
export interface CalendarMiniProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect'> {
    /**
     * Currently selected date
     */
    selectedDate?: Date | null;
    /**
     * Initial month to display (defaults to current month)
     */
    currentMonth?: Date;
    /**
     * Callback fired when a date is selected
     */
    onDateSelect?: (date: Date) => void;
    /**
     * Callback fired when the visible month changes
     */
    onMonthChange?: (month: Date) => void;
    /**
     * Number of months to show in the month selection row
     * @default 7
     */
    visibleMonths?: number;
    /**
     * Number of dates to show in the date selection row
     * @default 7
     */
    visibleDates?: number;
    /**
     * Minimum selectable date
     */
    minDate?: Date;
    /**
     * Maximum selectable date
     */
    maxDate?: Date;
    /**
     * Array of dates that should be disabled
     */
    disabledDates?: Date[];
    /**
     * Whether to start from today or from the beginning of the month when viewing current month
     * @default 'today'
     */
    startFrom?: 'today' | 'monthStart';
    /**
     * Whether to show animations
     * @default true
     */
    shouldAnimate?: boolean;
    /**
     * Whether to show the "Today" quick-jump button
     * @default true
     */
    showTodayButton?: boolean;
    /**
     * Custom className for container
     */
    className?: string;
    /**
     * Theme overrides
     */
    theme?: CalendarMiniThemeOverrides;
}
export interface CalendarMiniThemeOverrides {
    /**
     * Base container style
     */
    baseStyle?: string;
    /**
     * Month row container style
     */
    monthRowStyle?: string;
    /**
     * Individual month item style (includes data-[state=active] styles)
     */
    monthItemStyle?: string;
    /**
     * Date row container style
     */
    dateRowStyle?: string;
    /**
     * Individual date item style (includes data-[state=selected], data-[state=today], data-[disabled] styles)
     */
    dateItemStyle?: string;
}
export interface CalendarMiniTheme {
    baseStyle: string;
    monthRowStyle: string;
    monthItemStyle: string;
    dateRowStyle: string;
    dateItemStyle: string;
}
