import { PropertyValues, TemplateResult } from 'lit';
import { DDSElement } from "../../base/index.cjs";
/**
* The calendar component provides calendar elements. It has a function for selecting dates, and is also used in `daikin-date-picker`.
*
* @fires select - Fires when the date is selected.
* @fires selecting - Fires when the year or month is selected.
*
* @example
*
* ```js
* import "@daikin-oss/design-system-web-components/components/calendar/index.js";
* ```
*
* ```html
*
* ```
*/
export declare class DaikinCalendar extends DDSElement {
static readonly styles: import('lit').CSSResult;
/**
* The current value of the input, submitted as a name/value pair with form data.
*/
value: string;
/**
* The minimum date.
*
* @default "1900-01-01"
*/
min: string;
/**
* The maximum date.
*
* @default "2099-12-31"
*/
max: string;
/**
* The month that is initially displayed when the date picker is opened.
* If there is a `value` attribute, this is ignored.
*/
defaultValue: string | null;
/**
* _Internal use._
*
* Calendar view (day, month, or year)
*
* @private
* Intended for use only by `daikin-date-picker`.
*/
view: "year" | "month" | "day";
/**
* The date that was last focused.
* Used to preserve focus when tabbing out and back in.
*/
private _lastFocusedDate;
/**
* The date to be focused.
* Used to set focus on a date that is not in the current view (year and month).
*/
private _dateToBeFocused;
private get _value();
private get _min();
private get _max();
private get _defaultValue();
/**
* The date that serves as the basis for the current view.
* The year and month are used to determine the display range, and the date is used to update the value.
* The range of viewDate is not affected by min or max.
*/
private _viewDate;
/**
* The date that serves as the basis for the current view.
*/
get viewDate(): Date;
private _emitSelect;
private _emitSelecting;
private _canNavigateMonth;
private _navigateMonth;
private _handleCalendarClick;
private _handleMonthClick;
private _handleYearAndMonthPickerClick;
private _handleCalendarKeyDown;
private _handleYearAndMonthPickerKeyDown;
private _createYearAndMonthPickerContainer;
private _createYearAndMonthPickerButton;
private _createYearPicker;
private _createMonthPicker;
private _createDatePicker;
render(): TemplateResult<1>;
protected willUpdate(changedProperties: PropertyValues): void;
protected updated(changedProperties: PropertyValues & PropertyValues<{
_viewDate: Date;
}>): void;
}
declare global {
interface HTMLElementTagNameMap {
"daikin-calendar": DaikinCalendar;
}
}