## API Report File for "@uifabric/date-time"

> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).

```ts

import { DateRangeType } from '@fluentui/date-time-utilities';
import { DayOfWeek } from '@fluentui/date-time-utilities';
import { FirstWeekOfYear } from '@fluentui/date-time-utilities';
import { IBaseProps } from '@uifabric/utilities';
import { ICalendarStrings as ICalendarStrings_2 } from '@uifabric/date-time';
import { ICalloutProps } from 'office-ui-fabric-react/lib/Callout';
import { IComponentAs } from '@uifabric/utilities';
import { IDateGridStrings } from '@fluentui/date-time-utilities';
import { IDayGridOptions } from '@fluentui/date-time-utilities';
import { IProcessedStyleSet } from '@uifabric/styling';
import { IRefObject } from '@uifabric/utilities';
import { IStyle } from '@uifabric/styling';
import { IStyleFunctionOrObject } from '@uifabric/utilities';
import { ITextFieldProps } from 'office-ui-fabric-react/lib/TextField';
import { ITheme } from '@uifabric/styling';
import { IWeeklyDayPickerStrings as IWeeklyDayPickerStrings_2 } from '@uifabric/date-time';
import * as React from 'react';

// @public (undocumented)
export enum AnimationDirection {
    Horizontal = 0,
    Vertical = 1
}

// @public
export const Calendar: import("react").FunctionComponent<import("./Calendar.types").ICalendarProps & import("react").RefAttributes<HTMLDivElement>>;

// @public
export const DatePicker: import("react").FunctionComponent<import("./DatePicker.types").IDatePickerProps & import("react").RefAttributes<HTMLDivElement>>;

// @public (undocumented)
export const DatePickerBase: React.ForwardRefExoticComponent<IDatePickerProps & React.RefAttributes<HTMLDivElement>>;

export { DateRangeType }

export { DayOfWeek }

// @public (undocumented)
export const defaultDayPickerStrings: ICalendarStrings_2;

// @public (undocumented)
export const defaultWeeklyDayPickerStrings: IWeeklyDayPickerStrings_2;

export { FirstWeekOfYear }

// @public (undocumented)
export interface ICalendar {
    focus: () => void;
}

// @public (undocumented)
export interface ICalendarDayGridStyles {
    // (undocumented)
    bottomLeftCornerDate?: IStyle;
    // (undocumented)
    bottomRightCornerDate?: IStyle;
    dayButton?: IStyle;
    dayCell?: IStyle;
    dayIsToday?: IStyle;
    dayMarker?: IStyle;
    dayOutsideBounds?: IStyle;
    dayOutsideNavigatedMonth?: IStyle;
    daySelected?: IStyle;
    firstTransitionWeek?: IStyle;
    lastTransitionWeek?: IStyle;
    table?: IStyle;
    // (undocumented)
    topLeftCornerDate?: IStyle;
    topRightCornerDate?: IStyle;
    weekDayLabelCell?: IStyle;
    weekNumberCell?: IStyle;
    weekRow?: IStyle;
    wrapper?: IStyle;
}

// Warning: (ae-forgotten-export) The symbol "ICalendarDay" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "ICalendarDayGridProps" needs to be exported by the entry point index.d.ts
//
// @public (undocumented)
export interface ICalendarDayProps extends IBaseProps<ICalendarDay>, ICalendarDayGridProps {
    allFocusable?: boolean;
    className?: string;
    componentRef?: IRefObject<ICalendarDay>;
    dateTimeFormatter: ICalendarFormatDateCallbacks;
    maxDate?: Date;
    minDate?: Date;
    navigatedDate: Date;
    navigationIcons: ICalendarIconStrings;
    onDismiss?: () => void;
    onHeaderSelect?: () => void;
    onNavigateDate: (date: Date, focusOnNavigatedDay: boolean) => void;
    restrictedDates?: Date[];
    showCloseButton?: boolean;
    showSixWeeksByDefault?: boolean;
    showWeekNumbers?: boolean;
    strings: ICalendarStrings;
    // Warning: (ae-forgotten-export) The symbol "ICalendarDayStyleProps" needs to be exported by the entry point index.d.ts
    // Warning: (ae-forgotten-export) The symbol "ICalendarDayStyles" needs to be exported by the entry point index.d.ts
    styles?: IStyleFunctionOrObject<ICalendarDayStyleProps, ICalendarDayStyles>;
    theme?: ITheme;
}

// @public (undocumented)
export interface ICalendarFormatDateCallbacks {
    formatDay: (date: Date) => string;
    formatMonthDayYear: (date: Date, strings?: IDateGridStrings) => string;
    formatMonthYear: (date: Date, strings?: IDateGridStrings) => string;
    formatYear: (date: Date) => string;
}

// @public (undocumented)
export interface ICalendarIconStrings {
    closeIcon?: string;
    leftNavigation?: string;
    rightNavigation?: string;
}

// Warning: (ae-forgotten-export) The symbol "ICalendarMonth" needs to be exported by the entry point index.d.ts
//
// @public (undocumented)
export interface ICalendarMonthProps extends IBaseProps<ICalendarMonth> {
    allFocusable?: boolean;
    animationDirection?: AnimationDirection;
    className?: string;
    componentRef?: IRefObject<ICalendarMonth>;
    dateTimeFormatter?: ICalendarFormatDateCallbacks;
    highlightCurrentMonth?: boolean;
    highlightSelectedMonth?: boolean;
    maxDate?: Date;
    minDate?: Date;
    navigatedDate: Date;
    navigationIcons?: ICalendarIconStrings;
    onHeaderSelect?: () => void;
    onNavigateDate: (date: Date, focusOnNavigatedDay: boolean) => void;
    onSelectDate?: (date: Date, selectedDateRangeArray?: Date[]) => void;
    selectedDate: Date;
    strings: ICalendarStrings;
    // Warning: (ae-forgotten-export) The symbol "ICalendarMonthStyleProps" needs to be exported by the entry point index.d.ts
    // Warning: (ae-forgotten-export) The symbol "ICalendarMonthStyles" needs to be exported by the entry point index.d.ts
    styles?: IStyleFunctionOrObject<ICalendarMonthStyleProps, ICalendarMonthStyles>;
    theme?: ITheme;
    today?: Date;
    yearPickerHidden?: boolean;
}

// @public (undocumented)
export interface ICalendarProps extends IBaseProps<ICalendar> {
    allFocusable?: boolean;
    calendarDayProps?: Partial<ICalendarDayProps>;
    calendarMonthProps?: Partial<ICalendarMonthProps>;
    className?: string;
    componentRef?: IRefObject<ICalendar>;
    dateRangeType?: DateRangeType;
    dateTimeFormatter?: ICalendarFormatDateCallbacks;
    firstDayOfWeek?: DayOfWeek;
    firstWeekOfYear?: FirstWeekOfYear;
    highlightCurrentMonth?: boolean;
    highlightSelectedMonth?: boolean;
    isDayPickerVisible?: boolean;
    isMonthPickerVisible?: boolean;
    maxDate?: Date;
    minDate?: Date;
    navigationIcons?: ICalendarIconStrings;
    onDismiss?: () => void;
    onSelectDate?: (date: Date, selectedDateRangeArray?: Date[]) => void;
    restrictedDates?: Date[];
    showCloseButton?: boolean;
    showGoToToday?: boolean;
    showMonthPickerAsOverlay?: boolean;
    showSixWeeksByDefault?: boolean;
    showWeekNumbers?: boolean;
    strings?: ICalendarStrings;
    styles?: IStyleFunctionOrObject<ICalendarStyleProps, ICalendarStyles>;
    theme?: ITheme;
    today?: Date;
    value?: Date;
    workWeekDays?: DayOfWeek[];
}

// @public (undocumented)
export interface ICalendarStrings extends IDateGridStrings {
    closeButtonAriaLabel?: string;
    dayMarkedAriaLabel?: string;
    goToToday: string;
    monthPickerHeaderAriaLabel?: string;
    nextMonthAriaLabel?: string;
    nextYearAriaLabel?: string;
    nextYearRangeAriaLabel?: string;
    prevMonthAriaLabel?: string;
    prevYearAriaLabel?: string;
    prevYearRangeAriaLabel?: string;
    selectedDateFormatString?: string;
    todayDateFormatString?: string;
    weekNumberFormatString?: string;
    yearPickerHeaderAriaLabel?: string;
}

// @public (undocumented)
export interface ICalendarStyleProps {
    className?: string;
    isDayPickerVisible?: boolean;
    isMonthPickerVisible?: boolean;
    monthPickerOnly?: boolean;
    overlayedWithButton?: boolean;
    showGoToToday?: boolean;
    showMonthPickerAsOverlay?: boolean;
    showWeekNumbers?: boolean;
    theme: ITheme;
}

// @public (undocumented)
export interface ICalendarStyles {
    // (undocumented)
    divider: IStyle;
    // (undocumented)
    goTodayButton: IStyle;
    // (undocumented)
    liveRegion: IStyle;
    // (undocumented)
    monthPickerWrapper: IStyle;
    root: IStyle;
}

// @public (undocumented)
export interface IDatePicker {
    focus(): void;
    reset(): void;
    showDatePickerPopup(): void;
}

// @public (undocumented)
export interface IDatePickerProps extends IBaseProps<IDatePicker>, React.HTMLAttributes<HTMLElement> {
    allFocusable?: boolean;
    allowTextInput?: boolean;
    ariaLabel?: string;
    borderless?: boolean;
    calendarAs?: IComponentAs<ICalendarProps>;
    calendarProps?: ICalendarProps;
    calloutProps?: ICalloutProps;
    className?: string;
    componentRef?: IRefObject<IDatePicker>;
    dateTimeFormatter?: ICalendarFormatDateCallbacks;
    disableAutoFocus?: boolean;
    disabled?: boolean;
    firstDayOfWeek?: DayOfWeek;
    firstWeekOfYear?: FirstWeekOfYear;
    formatDate?: (date?: Date) => string;
    highlightCurrentMonth?: boolean;
    highlightSelectedMonth?: boolean;
    initialPickerDate?: Date;
    isMonthPickerVisible?: boolean;
    isRequired?: boolean;
    label?: string;
    maxDate?: Date;
    minDate?: Date;
    onAfterMenuDismiss?: () => void;
    onSelectDate?: (date: Date | null | undefined) => void;
    parseDateFromString?: (dateStr: string) => Date | null;
    pickerAriaLabel?: string;
    placeholder?: string;
    showCloseButton?: boolean;
    showGoToToday?: boolean;
    showMonthPickerAsOverlay?: boolean;
    showWeekNumbers?: boolean;
    strings?: IDatePickerStrings;
    styles?: IStyleFunctionOrObject<IDatePickerStyleProps, IDatePickerStyles>;
    tabIndex?: number;
    textField?: ITextFieldProps;
    theme?: ITheme;
    today?: Date;
    underlined?: boolean;
    value?: Date;
}

// @public (undocumented)
export interface IDatePickerStrings extends ICalendarStrings {
    invalidInputErrorMessage?: string;
    isOutOfBoundsErrorMessage?: string;
    isRequiredErrorMessage?: string;
}

// @public (undocumented)
export interface IDatePickerStyleProps {
    className?: string;
    // (undocumented)
    disabled?: boolean;
    // (undocumented)
    isDatePickerShown?: boolean;
    // (undocumented)
    label?: boolean;
    theme: ITheme;
}

// @public (undocumented)
export interface IDatePickerStyles {
    // (undocumented)
    callout: IStyle;
    // (undocumented)
    icon: IStyle;
    root: IStyle;
    // (undocumented)
    textField: IStyle;
}

// @public (undocumented)
export interface IWeeklyDayPicker {
    // (undocumented)
    focus(): void;
}

// @public (undocumented)
export interface IWeeklyDayPickerProps extends IBaseProps<IWeeklyDayPicker>, Partial<ICalendarDayGridProps> {
    animationDirection?: AnimationDirection;
    className?: string;
    componentRef?: IRefObject<IWeeklyDayPicker>;
    dateTimeFormatter?: ICalendarFormatDateCallbacks;
    firstDayOfWeek?: DayOfWeek;
    initialDate?: Date;
    maxDate?: Date;
    minDate?: Date;
    navigationIcons?: ICalendarIconStrings;
    onNavigateDate?: (date: Date) => void;
    onSelectDate?: (date: Date) => void;
    restrictedDates?: Date[];
    showFullMonth?: boolean;
    strings: IWeeklyDayPickerStrings;
    styles?: IStyleFunctionOrObject<IWeeklyDayPickerStyleProps, IWeeklyDayPickerStyles>;
    theme?: ITheme;
    today?: Date;
    weeksToShow?: number;
}

// @public (undocumented)
export interface IWeeklyDayPickerStrings extends ICalendarStrings {
    nextWeekAriaLabel?: string;
    prevWeekAriaLabel?: string;
}

// Warning: (ae-forgotten-export) The symbol "ICalendarDayGridStyleProps" needs to be exported by the entry point index.d.ts
//
// @public (undocumented)
export interface IWeeklyDayPickerStyleProps extends ICalendarDayGridStyleProps {
    className?: string;
    theme: ITheme;
}

// @public (undocumented)
export interface IWeeklyDayPickerStyles extends Partial<ICalendarDayGridStyles> {
    disabledStyle: IStyle;
    navigationIconButton: IStyle;
    root: IStyle;
}

// @public
export const WeeklyDayPicker: import("react").FunctionComponent<import("./WeeklyDayPicker.types").IWeeklyDayPickerProps>;


export * from "@fluentui/date-time-utilities/lib/dateMath/dateMath";
export * from "@fluentui/date-time-utilities/lib/dateValues/dateValues";

// (No @packageDocumentation comment for this package)

```
