import { EventEmitter } from '../../../stencil-public-runtime';
import type { HTMLStencilElement } from '../../../stencil-public-runtime';
import { CalendarDatepickerValidation } from './calendar-datepicker-validation.enum';
/**
 * @swedishName Datumväljare
 */
export declare class CalendarDatepicker {
    hostElement: HTMLStencilElement;
    showWrongFormatError: boolean;
    showDisabledDateError: boolean;
    showCalendar: boolean;
    private futureYears;
    private screenReaderUpdateTrigger;
    userInput: string;
    /**
     * Sätter ett id attribut.
     * @en Sets an id attribute. Standard är slumpmässig sträng.
     */
    afId: string;
    /**
     * Texten till labelelementet
     * @en The label text
     */
    afLabel: string;
    /**
     * Valfri beskrivande text
     * @en Optional description text
     */
    afLabelDescription: string;
    /**
     * Aria-label till knappen som öppnar kalendern
     * @en Aria-label for the button that opens the calendar
     */
    afOpenCalendarAriaLabel: string;
    /**
     * Aria-label till knappen som stänger kalendern
     * @en Aria-label for the button that closes the calendar
     */
    afCloseCalendarAriaLabel: string;
    /**
     * Sätter valideringsstatus. Kan vara 'success', 'error', 'warning', 'neutral' eller ingenting.
     * @en Set input validation status
     */
    afValidation: CalendarDatepickerValidation;
    /**
     * Sätter valideringsmeddelandet
     * @en Set input validation message
     */
    afValidationText: string;
    /**
     * Sätter valideringsmeddelandet när du använder afInvalid
     * @en Set input validation message when using afInvalid property
     */
    afInvalid: boolean;
    /**
     * Sätter valideringsmeddelandet när du använder afInvalid
     * @en Set input validation message when using afInvalid property
     */
    afValidationMessage: string;
    /**
     * Sätter valideringsmeddelandet
     * @en Set input validation message
     */
    afValidationWrongFormat: string;
    /**
     * Sätter valideringsmeddelandet
     * @en Set input validation message
     */
    afValidationDisabledDate: string;
    /**
     * Sätter attributet 'required'.
     * @en Input required attribute
     */
    afRequired: boolean;
    /**
     * Sätt denna till true för att stänga av komponentens egna validering.
     * @en Set this to true to disable internal validation.
     */
    afDisableValidation: boolean;
    /**
     * Sätter text för afRequired.
     * @en Set text for afRequired.
     */
    afRequiredText: string;
    /**
     * Valda datum i kalendern
     * @en Selected dates in calendar
     */
    afSelectedDates: Array<Date>;
    /**
     * Sätter attributet 'value'
     * @en Input value attribute
     * @ignore
     */
    value: Array<Date>;
    valueChangeHandler(newVal: unknown): void;
    /**
     * Tidigaste valbara datumet
     * @en Earliest selectable date
     */
    afMinDate: Date;
    /**
     * Senaste valbara datumet
     * @en Latest selectable date
     */
    afMaxDate: Date;
    /**
     * Visa veckonummer i kalender. Förvalt är false
     * @en Show week number in the calander. Default is false
     */
    afShowWeekNumber: boolean;
    /**
     * Sätt denna till true för att kunna markera mer en ett datum i kalendern. Förvalt är false
     * @en Set this to true to be able to select multiple dates in the calander. Default is false
     */
    afMultipleDates: boolean;
    afMultipleDatesChangeHandler(): void;
    /**
     * Sätt denna till true om kalendern ska stängas när användaren väljer ett datum. Förvalt är false
     * @en Set this to true if the calendar should close when a date is selected. Default is false
     */
    afCloseOnSelect: boolean;
    /**
     * Sker vid datum uppdatering
     * @en When date is updated
     */
    afOnDateChange: EventEmitter<Date[] | string[] | []>;
    clickHandler(e: MouseEvent): void;
    connectedCallback(): void;
    disconnectedCallback(): void;
    componentDidLoad(): void;
    get cssModifiers(): {
        'digi-calendar-datepicker__show-week-numbers': boolean;
        'digi-calendar-datepicker__show-error': boolean;
        'digi-calendar-datepicker__show-calendar': boolean;
    };
    keyUpHandler(e: KeyboardEvent): void;
    focusOnCalendarButton(): void;
    toggleCalendar(): void;
    parseInputString(value: string): Date[];
    resetValueAndState(): void;
    validateInputAndShowErrors(dates: Date[]): void;
    setValue(value: Date[]): void;
    parseInput(evt: any): void;
    parseCalendar(evt: any): void;
    parseDateString(s: string): Date;
    getFullYear(s: string): string;
    isDateSelectable(date: Date): boolean;
    isBefore(a: Date, b: Date): boolean;
    isAfter(a: Date, b: Date): boolean;
    dateWithoutTime(date: Date): Date;
    getShowError(): boolean;
    getErrorText(): string;
    get inputValue(): string;
    datesToInputString(dates: Date[]): string;
    private get getSelectedDates();
    render(): any;
}
