import React, { type InputHTMLAttributes } from "react";
import { type FormFieldProps } from "../form/useFormField";
interface DateInputContextProps {
    /**
     * Open state for popover
     */
    open: boolean;
    /**
     * Callback for onOpen toggle
     */
    onOpen: (caller?: "from" | "to") => void;
    /**
     * Aria-connected ID
     */
    ariaId?: string;
    /**
     * Flag for enabled-check
     */
    defined: boolean;
    /**
     * Caller for range datepicker, to differentiate between "from" and "to" input
     */
    caller: "from" | "to" | null;
}
export declare const DateInputContextProvider: React.FC<DateInputContextProps & {
    children: React.ReactNode;
    ref?: never;
}>, useDateInputContext: <S extends boolean = true>(strict?: S | undefined, errorMessageOverride?: string) => S extends true ? DateInputContextProps : DateInputContextProps | undefined;
export interface DateInputProps extends FormFieldProps, Omit<InputHTMLAttributes<HTMLInputElement>, "size"> {
    /**
     * Input label
     */
    label: React.ReactNode;
    /**
     * Shows label and description for screen readers only
     * @default false
     */
    hideLabel?: boolean;
    /**
     * Changes padding and font-sizes
     * @default "medium"
     */
    size?: "medium" | "small";
    /**
     * @private
     */
    variant?: "datepicker" | "monthpicker";
    /**
     * @private
     */
    setAnchorRef?: React.Dispatch<React.SetStateAction<HTMLButtonElement | null>>;
    /**
     * @private Used to differentiate between "from" and "to" input in range datepicker
     */
    callerName?: "from" | "to";
}
export declare const DatePickerInput: React.ForwardRefExoticComponent<DateInputProps & React.RefAttributes<HTMLInputElement>>;
export declare const MonthPickerInput: React.ForwardRefExoticComponent<DateInputProps & React.RefAttributes<HTMLInputElement>>;
export {};
