import type * as React from 'react';
import { TextInputProps } from '../TextField/TextInput';
import { UseLabelPropsProps } from '../Label/useLabelProps';
import { UseHintProps } from '../Hint/useHint';
import { UseInlineErrorProps } from '../InlineError/useInlineError';
interface BaseSingleInputDateFieldProps {
    /**
     * The `input` field's `name` attribute
     */
    name: string;
    /**
     * Called anytime any date input is blurred
     */
    onBlur?: (event: React.FocusEvent<HTMLInputElement>) => any;
    /**
     * Called anytime any date input is changed. This function is called with two arguments.
     * The first argument should be used to update whatever state your application uses to
     * supply back to this component's `value` prop in a _controlled component_ pattern.
     *
     * @param updatedValue - The input's new value
     * @param formattedValue - The input's new value with date formatting applied, included
     *   for convenience. Do not use this value as the component's `value` prop. An appropriate
     *   use for this value would be to run date-validation checks against it.
     */
    onChange: (updatedValue: string, formattedValue: string) => any;
    /**
     * A unique ID for this element. A unique ID will be generated if one isn't provided.
     */
    id?: string;
    /**
     * Set to `true` to apply the "inverse" color scheme
     */
    inversed?: boolean;
    /**
     * Sets the input's `value`. Use in combination with an `onChange` handler to implement
     * a _controlled component_ pattern. This component expects the `value` to match
     * whatever string the user types (i.e., the first argument provided to your `onChange`
     * handler).
     */
    value?: string;
    /**
     * The initial month to show in the calendar picker. If not provided, defaults to the
     * month of the currently selected date.
     */
    defaultMonth?: Date;
    /**
     * Earliest day to start month navigation in the calendar picker.
     * (This does not restrict dates entered manually.)
     */
    fromDate?: Date;
    /**
     * Earliest month to start month navigation in the calendar picker.
     * (This does not restrict dates entered manually.)
     */
    fromMonth?: Date;
    /**
     * Earliest year to start month navigation in the calendar picker.
     * (This does not restrict dates entered manually.)
     */
    fromYear?: number;
    /**
     * Latest day to end month navigation in the calendar picker.
     * (This does not restrict dates entered manually.)
     */
    toDate?: Date;
    /**
     * Latest month to end month navigation in the calendar picker.
     * (This does not restrict dates entered manually.)
     */
    toMonth?: Date;
    /**
     * Latest year to end month navigation in the calendar picker.
     * (This does not restrict dates entered manually.)
     */
    toYear?: number;
}
export type SingleInputDateFieldProps = BaseSingleInputDateFieldProps & Omit<TextInputProps, keyof BaseSingleInputDateFieldProps | 'type'> & Omit<UseLabelPropsProps & UseHintProps & UseInlineErrorProps, 'id' | 'inversed'>;
/**
 * For information about how and when to use this component, refer to the
 * [Single Input Date Field](https://design.cms.gov/components/date-field/single-input-date-field/) and
 * [Calendar Picker](https://design.cms.gov/components/date-field/date-picker/) documentation pages.
 */
declare const SingleInputDateField: (props: SingleInputDateFieldProps) => import("react/jsx-runtime").JSX.Element;
export default SingleInputDateField;
