import { DateRangeType, DayOfWeek, IDay } from '@fluentui/date-time-utilities';
import { IProcessedStyleSet } from '@fluentui/style-utilities';
import Vue from 'vue';
import { AnimationDirection } from '../Calendar/Calendar.types';
import { ICalendarDayGridStyleProps, ICalendarDayGridStyles } from './CalendarDayGrid.types';
export interface IWeekCorners {
    [key: string]: string;
}
export interface IDayInfo extends IDay {
    onSelected: () => void;
}
export declare const CalendarDayGridBase: import("vue/types/vue").ExtendedVue<Vue, {
    animateBackwards: boolean;
}, {
    onSelectDate(selectedDate: Date): void;
}, {
    classNames: IProcessedStyleSet<ICalendarDayGridStyles>;
    weeks: IDayInfo[][];
    weekCornerStyles: any;
    weekCorners: any;
    partialWeekProps: any;
}, {
    theme?: import("@fluentui/style-utilities").ITheme | undefined;
    styles?: import("@uifabric-vue/utilities").IStyleFunctionOrObject<ICalendarDayGridStyleProps, ICalendarDayGridStyles> | undefined;
    className?: string | undefined;
    onSelectDate?: void | ((date: Date, selectedDateRangeArray?: Date[] | undefined) => void);
    onDismiss?: void | (() => void);
    today?: Date | undefined;
    dateRangeType: DateRangeType;
    firstDayOfWeek: DayOfWeek;
    firstWeekOfYear: import("@fluentui/date-time-utilities").FirstWeekOfYear;
    showWeekNumbers?: boolean | undefined;
    strings: import("@fluentui/date-time-utilities").ICalendarStrings;
    dateTimeFormatter: import("@fluentui/date-time-utilities").IDateFormatting;
    minDate?: Date | undefined;
    maxDate?: Date | undefined;
    restrictedDates?: Date[] | undefined;
    workWeekDays?: DayOfWeek[] | undefined;
    showCloseButton?: boolean | undefined;
    allFocusable?: boolean | undefined;
    navigatedDate: Date;
    onNavigateDate?: void | ((date: Date, focusOnNavigatedDay: boolean) => void);
    selectedDate: Date;
    daysToSelectInDayView?: number | undefined;
    customDayCellRef?: void | ((element: HTMLElement, date: Date, classNames: IProcessedStyleSet<ICalendarDayGridStyles>) => void);
    weeksToShow?: number | undefined;
    labelledBy?: string | undefined;
    lightenDaysOutsideNavigatedMonth?: boolean | undefined;
    animationDirection?: AnimationDirection | undefined;
    getMarkedDays?: Date[] | ((startingDate: Date, endingDate: Date) => Date[]) | undefined;
    markedDays?: Date[] | undefined;
}>;
//# sourceMappingURL=CalendarDayGrid.base.d.ts.map