import type { JSX } from '../../stencil-public-runtime';
import type { AutoCompletePropType, ButtonProps, DisabledPropType, FocusableElement, HideLabelPropType, HideMsgPropType, HintPropType, IconsHorizontalPropType, IdPropType, InputDateAPI, InputDateStates, InputDateTypePropType, InputTypeOnDefault, Iso8601, LabelWithExpertSlotPropType, MsgPropType, NamePropType, NumberString, ReadOnlyPropType, RequiredPropType, ShortKeyPropType, Stringified, SuggestionsPropType, SyncValueBySelectorPropType, TooltipAlignPropType } from '../../schema';
export declare class KolInputDate implements InputDateAPI, FocusableElement {
    private readonly host?;
    private inputRef?;
    private _initialValueType;
    private readonly catchRef;
    getValue(): Promise<string | Date | undefined | null>;
    focus(): Promise<void | undefined>;
    kolFocus(): Promise<void | undefined>;
    reset(): Promise<void>;
    private setInitialValueType;
    private remapValue;
    private readonly onBlur;
    private readonly onFocus;
    private readonly onChange;
    private readonly onInput;
    private readonly isNativeCalendarIconFocused;
    private readonly onKeyDown;
    private getFormFieldProps;
    private getInputProps;
    render(): JSX.Element;
    private readonly controller;
    _accessKey?: string;
    _autoComplete?: AutoCompletePropType;
    _disabled?: boolean;
    _hideMsg?: boolean;
    _hideLabel?: boolean;
    _hint?: string;
    _icons?: IconsHorizontalPropType;
    _id?: IdPropType;
    _label: LabelWithExpertSlotPropType;
    _max?: Iso8601 | Date;
    _min?: Iso8601 | Date;
    _msg?: Stringified<MsgPropType>;
    _name?: NamePropType;
    _on?: InputTypeOnDefault;
    _readOnly?: boolean;
    _required?: boolean;
    _shortKey?: ShortKeyPropType;
    _smartButton?: Stringified<ButtonProps>;
    _suggestions?: SuggestionsPropType;
    _syncValueBySelector?: SyncValueBySelectorPropType;
    _step?: number | NumberString;
    _tooltipAlign?: TooltipAlignPropType;
    _touched?: boolean;
    _type: InputDateTypePropType;
    _value?: Iso8601 | Date | null;
    state: InputDateStates;
    private inputHasFocus;
    constructor();
    private showAsAlert;
    validateAccessKey(value?: string): void;
    validateAutoComplete(value?: AutoCompletePropType): void;
    validateDisabled(value?: DisabledPropType): void;
    validateHideMsg(value?: HideMsgPropType): void;
    validateHideLabel(value?: HideLabelPropType): void;
    validateHint(value?: HintPropType): void;
    validateIcons(value?: IconsHorizontalPropType): void;
    validateId(value?: string): void;
    validateLabel(value?: LabelWithExpertSlotPropType): void;
    validateMax(value?: Iso8601 | Date): void;
    validateMin(value?: Iso8601 | Date): void;
    validateMsg(value?: Stringified<MsgPropType>): void;
    validateName(value?: string): void;
    validateOn(value?: InputTypeOnDefault): void;
    validateReadOnly(value?: ReadOnlyPropType): void;
    validateRequired(value?: RequiredPropType): void;
    validateShortKey(value?: ShortKeyPropType): void;
    validateSmartButton(value?: ButtonProps | string): void;
    validateSuggestions(value?: SuggestionsPropType): void;
    validateStep(value?: number | NumberString): void;
    validateSyncValueBySelector(value?: SyncValueBySelectorPropType): void;
    validateTouched(value?: boolean): void;
    validateType(value?: InputDateTypePropType): void;
    validateValue(value?: Iso8601 | Date | null): void;
    componentWillLoad(): void;
}
